Scheduled Downtime
On Tuesday 24 October 2023 @ 5pm MT the forums will be in read only mode in preparation for the downtime. On Wednesday 25 October 2023 @ 5am MT, this website will be down for maintenance and expected to return online later in the morning.
Normal Operations
The forums are back online with normal operations. If you notice any issues or errors related to the forums, please reach out to help@ucar.edu

FAQ: Data ocean slab mode (DOCN-SOM)

dbailey

CSEG and Liaisons
Staff member
That is correct that Tmix is prognostic. The temperature (salinity, and velocities) are initial conditions. Only temperature is prognostic though and the rest remain fixed.
 

zhaos

Siyu Zhao
New Member
Hello,

In pop_frc_mlt(mlann).ncl to derive SOM forcing files, a weight matrix M is applied to monthly climatological values. The effects seem to approximate:
VAL[current-month]=1.5*VAL[current-month]-0.5*VAL[previous-month]-0.5*VAL[next-month].

Is this a type of smoothing across time? what is the logic to determine this weight M?

Thanks very much for your help!
 

zhaos

Siyu Zhao
New Member
Thank you so much for your quick reply. Please excuse me for another question on this. invM seems to be:
1.43 -0.25 0.04 -0.01 0.00 -0.00 0.00 -0.00 0.00 -0.01 0.04 -0.25
-0.23 1.39 -0.23 0.04 -0.01 0.00 -0.00 0.00 -0.00 0.00 -0.01 0.04
0.04 -0.25 1.43 -0.25 0.04 -0.01 0.00 -0.00 0.00 -0.00 0.00 -0.01
-0.01 0.04 -0.24 1.41 -0.24 0.04 -0.01 0.00 -0.00 0.00 -0.00 0.00
0.00 -0.01 0.04 -0.25 1.42 -0.25 0.04 -0.01 0.00 -0.00 0.00 -0.00
-0.00 0.00 -0.01 0.04 -0.24 1.41 -0.24 0.04 -0.01 0.00 -0.00 0.00
0.00 -0.00 0.00 -0.01 0.04 -0.25 1.42 -0.24 0.04 -0.01 0.00 -0.00
-0.00 0.00 -0.00 0.00 -0.01 0.04 -0.24 1.42 -0.25 0.04 -0.01 0.00
0.00 -0.00 0.00 -0.00 0.00 -0.01 0.04 -0.24 1.41 -0.24 0.04 -0.01
-0.01 0.00 -0.00 0.00 -0.00 0.00 -0.01 0.04 -0.25 1.42 -0.25 0.04
0.04 -0.01 0.00 -0.00 0.00 -0.00 0.00 -0.01 0.04 -0.24 1.41 -0.24
-0.25 0.04 -0.01 0.00 -0.00 0.00 -0.00 0.00 -0.01 0.04 -0.25 1.42

This is different from the simple second order time differencing, e.g., Tt''=T(t+1)-2T(t)+T(t-1)?
Is there possibly a further explanation on this time differencing scheme?
 

wkrantz

Will Krantz
New Member
Hello all, I'm designing a simulation using CESM2 in slab ocean mode in which I'd like to modify the q-flux forcing in a partlcular region dynamically based on local conditions. I've been taking a look at docn_comp_mod.f90 where the calculation for the SST are done using the q-flux defined in the forcing file that is set by DOCN_SOM_FILENAME.

My thought was that the best way to implement a regional dynamic forcing would be to define a custom mask that is checked in docn_comp_run, along with a few lines to calculate the q-flux per grid cell in the region defined by the mask.

However, I'm struggling to figure out the best way to define a new spatial mask that can be used by the calculations in docn_comp_run. I see that there is already an imask variable that is checked, presumably to define ocean gridcells where SST calculations should be done, but I can't find where that mask is defined or read from.

I initially thought that adding a new variable to the q-flux forcing file would be a good route, but I'm also having trouble finding where that forcing file is read in by the model and how to add a new variable that can be passed to the docn_comp_run subroutine.

Thanks for your help!
 

dbailey

CSEG and Liaisons
Staff member
There were experiments done (Pacemaker ensemble) where the SST in the tropical pacific was nudged to observations. Have a look at this work as it might provide some insight here. Basically, I would recommend doing the q-flux masking based on a lat / lon box. That is, I would add code to docn_comp_mod.F90 to have an "if" block that checks that lat and lon.

 

wkrantz

Will Krantz
New Member
There were experiments done (Pacemaker ensemble) where the SST in the tropical pacific was nudged to observations. Have a look at this work as it might provide some insight here.
Thanks for the reply, Dave! I'll look more closely into the setup for the pacemaker simulations.

Basically, I would recommend doing the q-flux masking based on a lat / lon box. That is, I would add code to docn_comp_mod.F90 to have an "if" block that checks that lat and lon.
If I want to define a simple lat/lon box in docn_comp_mod, I see that the existing calculation loops over a single index of n. Is there a simple mapping between n and lat/lon?
 

dbailey

CSEG and Liaisons
Staff member
You just need an if block that checks for lat between certain values and lon between certain values. Shouldn't matter what the index n is.
 

wkrantz

Will Krantz
New Member
Hi Dave, thanks for your help so far. Like some others I have a question about achieving a stable equilibrium ocean temperature in a SOM setup. I am runing an 1850_CAM60_CLM50%SP_CICE_DOCN%SOM_MOSART_SGLC_SWAV compset with CESM2.1.3, and using the
pop_frc.b.e21.B1850.f09_g17.CMIP6-piControl.001_branch2.012120.nc forcing file from the inputdata directory.

After 30 years of simulation I'm still getting a steady warming (about 0.05 degrees C per year in global average SST). I'm wondering:
a) If I just need a longer spinup time to reach a steady state
b) If there is a mismatch between my configuration and the configuration that the forcing file is derived from
c) If it would be appropriate to apply a global offset to the forcing file to attempt to compensate for the energy imbalance

Any advice you have would be very helpful, thanks!
 

dbailey

CSEG and Liaisons
Staff member
It should equilibrate soon, but it might need a few more years. What is the TOA imbalance?
 

wkrantz

Will Krantz
New Member
The radiative balance at top-of-model (FSNT - FLNT, weighted by gw) is 0.15 W/m2 on average, and I double checked that the area weighted average of qdp in the SOM forcing file is also very close to zero (-0.0029 W/m2), which I assume is all what I want. I'll keep running it and hope the SST levels out soon.
 

Jerry

Cao
Member
Hi Dave, thanks for your help so far. Like some others I have a question about achieving a stable equilibrium ocean temperature in a SOM setup. I am runing an 1850_CAM60_CLM50%SP_CICE_DOCN%SOM_MOSART_SGLC_SWAV compset with CESM2.1.3, and using the
pop_frc.b.e21.B1850.f09_g17.CMIP6-piControl.001_branch2.012120.nc forcing file from the inputdata directory.

After 30 years of simulation I'm still getting a steady warming (about 0.05 degrees C per year in global average SST). I'm wondering:
a) If I just need a longer spinup time to reach a steady state
b) If there is a mismatch between my configuration and the configuration that the forcing file is derived from
c) If it would be appropriate to apply a global offset to the forcing file to attempt to compensate for the energy imbalance

Any advice you have would be very helpful, thanks!
Hi, Wkrantz,
I have run a case with the same compset "1850_CAM60_CLM50%SP_CICE_DOCN%SOM_MOSART_SGLC_SWAV".
But I don't find any ocn history output files. So I am wondering where you obtain the SST variable from.
I also want to check the trend of SST to assess whether my run has reached an equilibrium state.

 

dbailey

CSEG and Liaisons
Staff member
You can get the SST from the CICE component. Put the following in user_nl_cice:

histfreq = 'm','d','x','x','x'
histfreq = 1,1,1,1,1
f_sst = 'mdxxx'

This will give you monthly and daily SST.
 

Jerry

Cao
Member
You can get the SST from the CICE component. Put the following in user_nl_cice:

histfreq = 'm','d','x','x','x'
histfreq = 1,1,1,1,1
f_sst = 'mdxxx'

This will give you monthly and daily SST.
Thanks! That does work!
 

dbailey

CSEG and Liaisons
Staff member
The answer is in a previous post, but basically you need to use the compset long name:

1850_CAM60_CLM50%SP_CICE_DOCN%SOM_MOSART_SGLC_SWAV

Then you need to make sure to set the DOCN_SOM_FILENAME in env_run.xml.
 
Top