Non-local initialization
If we assume a Neumann upper boundary condition (i.e., ) as described elsewhere,
the most obvious way to translate a shallow-atmosphere state described in pressure coordinates is to use
and some method of calculating physical density
, such as
(which is physical pressure) and
the DA HOMME EOS:
and I have previously been enforcing this pointwise at model levels starting from the lower boundary where
and we rootfind on
for
.
This results in a very slightly imbalanced vertical structure in the atmosphere. In the DCMIP 2016 steady state test case in ne30 resolution with 30 levels,
this results in initial vertical motion on the order of
m/s for around 500 seconds, after which point
.
A rough analysis of the change in
is that there is an approximately 100 m adjustment in vertical levels in the uppermost levels of the atmosphere.
My current assumption is that this adjustment is due to the fact that initializing the atmosphere such that
pressure agrees at model levels does not guarantee that the discrete averaging used to reconstruct
pressure at interfaces, namely
is satisfied. That is, suppose we have profiles
given by a {data file, analytic sounding}. Then
having
and
does not guarantee
.
Note here that
are actually determined via (purely arithmetic) averaging, as geopotential lives on interfaces.
This makes it clear why this was not an issue when did not include an implicit dependence on height,
i.e., in SA HOMME.
In all previous analytic initializations within SA HOMME,
and
agree
and satsify HOMME's averaging relations by construction.
In my mind, this justifies my current attempt to initialize geopotential levels such that
.
This can follow a similar form as previous rootfinding code when you note that determines
,
which therefore determines
. This means that both
and
can be determined
from boundary conditions, and so enforcing the averaging condition for
involves only
one unknown:
.
It's possible that the systematic way to do this is to treat $$
misc garbage
and we integrate (assume no surface topo for the moment) to find
Other relevant constraints: