aerocore: defects in the aerosol path - #58
Conversation
The aerosol module compiles and is reachable through l_aero, but the code path has evidently never been run: it carries several independent defects that would show up immediately on a first use. They are fixed together here because they are found together and none is separable in a useful way. This is offered as groundwork rather than as a fix to observed behaviour. With l_aero at its default the module does nothing, so nothing in a current run changes; what changes is that the path is correct for anyone who turns it on. The details are in the diff, which is commented per defect. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
|
A cross-check that may help when you and Maureen scope the re-run: the viscosity exponent in this PR is confirmed by Cohen et al. (2024)'s own appendix. Their eq. A5 gives the Rosner (1986) parameterisation as
with m = 4.652e-26 kg, d = 3.64e-10 m and ε/k_B = 95.5 K for N₂. The code writes that exponent as So the paper documents 0.16 and the model computed 0. The size of it, using their own ε:
Settling goes as 1/η, so for temperate rocky planets around 250 K the particles were falling roughly 17% too fast. That is a systematic bias in the settling scheme rather than noise, and it is in the same direction everywhere, so it should show up as a coherent shift in the equilibrium haze burden rather than as scatter. Worth pairing with #60 (the radiation was using radmod's hardcoded 50 nm rather than the configured radius) and #61 (the bottom-layer sink) when deciding what a re-run needs to carry. |
The aerosol module compiles and is reachable through
l_aero, and carries several independent defects that would surface on a first use of that path. They are fixed together because they are found together and none is usefully separable.Offered as groundwork rather than as a fix to observed behaviour. With
l_aeroat its default the module does nothing, so no current run changes; what changes is that the path is correct for anyone who turns it on.The diff is commented per defect. Compiles cleanly.
I am happy to split this into one commit per defect if you would rather review them separately.