Add in our first approximation for the energy equation Jacobian, which only includes d\rho e_int/dT.
This does allow us to take much bigger timesteps, more comparable to our target of 15 minutes, except in the cases where the soil is freezing or the canopy is present. If we make the thermal mass of the canopy larger, we can take bigger steps.
-> need to think about how we handle soil freezing in terms of implicit stepping
-> canopy temp probably does need an implicit solver.
To-do
[] Review
Content
Alter imp/exp tendencies for soil energy hydrology
Alter update jacobian for soil energy hydrology
Increase timesteps in tutorials and some experiments. In cases with a canopy, this involved increasing ac_canopy as well. We can revert these changes if we want.
Add unit test/update unit tests
Adds a buildkite run showing performance as a function of timestep, similar to what we had in Richards equation. We simulation the exact same system, but in one case with T > T freeze, and in one case with T < Tfreeze. The timestep required is orders of magnitude different.
No Phase change:
With Phase change:
Note the differences in x and y axes. The solution at dt = 10, 100 seconds for the phase change one has lots of oscillations and is not good enough, although the relative error is not terrible
Purpose
Add in our first approximation for the energy equation Jacobian, which only includes d\rho e_int/dT.
This does allow us to take much bigger timesteps, more comparable to our target of 15 minutes, except in the cases where the soil is freezing or the canopy is present. If we make the thermal mass of the canopy larger, we can take bigger steps. -> need to think about how we handle soil freezing in terms of implicit stepping -> canopy temp probably does need an implicit solver.
To-do
[] Review
Content