General usability improvements and clean-up.
This pull request makes a number of long-overdue changes including (but not limited to):
- Refactoring
Var
into separate types; this allowsParameter <: Var
to accept default values. - Adding support for "algebraic" variables/equations; mass matrix configuration happens automatically in
setup.jl
. - Improving the interface for customizing
ODEFunction
(Jacobian sparsity, mass matrix, etc); e.g. tridiagonal structure for heat conduction problems is now automatically inferred from theCryoGridSetup
type. - Removing forcing files from source control (they are now downloaded from AWI NextCloud, or provided by the user).
- Replacing remaining uses of
AxisArrays
in soil/temperature profiles withDimensionalData
to allow for more consistent handling of initial conditions. - Adding a convenience
getstate(integrator,layer)
function that builds the named tuple of state variables for a layer given an integrator and layer name. - Fixing a long-standing bug in
loadforcings
that prevented units from being applied in some cases. - Updating README.md