ECCO-GROUP / ECCO-v4-Configurations

This repository contains documentation (doc/) and model configuration files (code/, namelist/) for official releases of the ECCO version 4 ocean and sea-ice state estimates. Model configuration files allow users to reproduce the state estimate or conduct new simulation experiments.
16 stars 19 forks source link

Nonphysical downward shortwave radiation (EXFswdn) after optimization #56

Closed menemenlis closed 3 years ago

menemenlis commented 4 years ago

Downward shortwave radiation (EXFswdn) can be negative after optimization. This is problematic for driving ocean biology, causing negative photosynthetically available radiation (PAR), which leads to dead zones. Conversely, night-time radiation can be non-zero after adjustment. Some suggested fixes that we can consider include:

  1. setting to zero negative values of EXFswdn,
  2. setting to zero when prescribed atmospheric reanalysis EXFswdn is zero,
  3. adding problematic corrections to longwave radiation instead (EXFlwdn), and
  4. turning off shortwave adjustments altogether.
ifenty commented 4 years ago

In the open ocean case the corrections to LW and SW are essentially proportional to their relative uncertainties, which I believe are larger for LW at high latitudes. Because our control adjustments are longer than one day, and SW radiation can be zero (at night, polar winter, etc)., negative SW control adjustments lead to negative SW forcing.

The fact is we don't know the "correct" uncertainties for downwelling radiation. Our code does not yet accomodate time-varying uncertainties so even though we know that some "first-guess" SW values are zero (where we know there is no sunlight), we use some nonzero value. Because the uncertainties are nonzero, the line search can apply a nonzero control which is how we get into this predicament. Similar arguments can be made for other atmosphere control adjustments.

Practically speaking, zeroing out negative downwelling SW, LW, and precip would likely slightly degrade any existing optimized solution but the good news is one would expect that, after a few additional iterations, adjustments to other terms would compensate. If they don't, then we just have to accept a slightly poorer fit, pick up the pieces, and move on. In my opinion, solutions with negative downwelling radiation, precip, runoff, or aqh are unphysical and, although the model can solve the equations, I think we should set a higher bar!

Code to bound adjusted TIME-INVARIANT control terms is included in the generic control package. which we are using in v4.

An exerpt from the docs:

Additionally, bounds for the controls can be specified by setting xx_gen*_bounds. In forward mode, adjustments to the ith control are clipped so that they remain between xx_gen*_bounds(i,1) and xx_gen*_bounds(i,4)

We apply these xx_gen_bounds for some* of the tim-invariant controls. To wit: THETA:

https://github.com/ECCO-GROUP/ECCO-v4-Configurations/blob/c1de50e58c14448863917e09dd3a9116ad6db4b2/devel/V4r5_devel/input/data.ctrl#L74-L79

Line 76 specifies the bounds in the first and fourth spaces: minimum -2, maximum 40. xx_genarr3d_bounds(1:5,1)=-2.0,-1.9,39.,40.,0.,

The values -1.9 and 39 in the second and third positions tell the cost function to penalize the adjustments when the adjusted values start getting closer to the bounds (with no effect of foward solution).

The TIME-VARIABLE controls have similar 'bounds' variable. HOWEVER, these bounds only operate on the control adjustments themselves, not the adjusted fields. So, I went ahead and added bounds for 5 fields:

  1. swdown
  2. lwdown
  3. precip
  4. runoff
  5. aqh

All of these fields are only physical when 0 >= FIELD.

The new codes are in the ECCO-v4-Configurations/devel/V4r5_devel/code/ with PR #59

Now is an excellent time to transition the llc270 setup to the same configuration that we will use in V4r5. We need the configuration to be brought up to date if we are to use it for V5r1. Besides fixing the negative swdown and precip issue, there are many other benefits, especially with respect to adding new controls and cost terms for biogeochemistry. I hope that this is something that you @menemenlis and @hongandyan are willing to do?

ifenty commented 4 years ago

60 ensures NO SW adjustment is made when prescribed SW = 0

ifenty commented 3 years ago

@hongandyan @menemenlis We implemented several "physical" bounds on the adjusted atmospheric fields. these https://github.com/ECCO-GROUP/ECCO-v4-Configurations/tree/master/devel

Specifically, https://github.com/ECCO-GROUP/ECCO-v4-Configurations/blob/master/devel/V4r5_devel/code/exf_getffields.F

ifenty commented 3 years ago

I'm going to close this thread now.