<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<style type="text/css" style="display:none"><!-- p { margin-top: 0px; margin-bottom: 0px; } pre { background: transparent; } pre.western { font-family: "Liberation Mono", monospace; font-size: 10pt; } pre.cjk { font-family: "Noto Sans Mono CJK SC", monospace; font-size: 10pt; } pre.ctl { font-family: "Liberation Mono", monospace; font-size: 10pt; }--></style>
</head>
<body dir="ltr" style="font-size:12pt;color:#000000;background-color:#FFFFFF;font-family:Calibri,Arial,Helvetica,sans-serif;">
<p>Dear Charline,<br>
</p>
<p><br>
</p>
<p>Thanks for those additional information and update.<br>
</p>
<p><br>
</p>
<p>I agree, it looks to me as though there is a problem occurring in your CO2 flux calculation, but if you are imposing the CO2 flux and still getting NaNs in the ocean carbon system then I suspect that there is a different underlying problem. </p>
<p><br>
</p>
<p>The CO2 flux evaluation occurs in dic_surfforcing.F. <span style="font-size: 12pt;">Here, the model needs to calculate surface ocean pCO2 (either SR calc_pco2_approx in carbon_chem.F, or calc_pco2_solvesaphe in dic_solvesaphe.F, but let's focus on
</span><span style="font-size: 12pt;">calc_pco2_approx</span><span style="font-size: 12pt;">), which requires solving for ocean pH via evaluation of hydrogen ion concentration. It's uncommon, but possible, for the calculation of [H+] ions (lines 438-443 in
 carbon_chem.F) to produce negative values, which results in NaNs when pH is evaluated (-log10([H+])) </span><span style="font-size: 12pt;">on line 448</span><span style="font-size: 12pt;">. </span></p>
<p><br>
</p>
<p>To confirm negative [H+], I would put a "DEBUG_WRITE" statement in carbon_chem.F to print out the variable "hnew", or at least warn/STOP at negative values. There may be lots of output, so you could pick up from a point just before the model crashes.<br>
</p>
<p><br>
</p>
<p>I'm hoping that the Munhoven (2013) solvesaphe routine will remedy this because it is supposed to be more robust. However, I notice that in your data.dic, your "DIC_silicaFile" variable is empty. Silicate concentration has a minor, but important, contribution
 to ocean pH, so I would recommend supplying an input file for that, otherwise the model assumes a constant, spatially invariant value which could be at the root this unexpected behaviour. </p>
<p><br>
</p>
<p>Usually, we have supplied a spatially-varying monthly (annually repeating) field of concentrations from climatology (but it should be consistent with your "<span style="font-family:Calibri,Arial,Helvetica,sans-serif; font-size:16px; background-color:rgb(255,255,255)">externForcingPeriod</span>"
 and "<span style="font-family:Calibri,Arial,Helvetica,sans-serif; font-size:16px; background-color:rgb(255,255,255)">exter</span><span style="font-family:Calibri,Arial,Helvetica,sans-serif; font-size:16px; background-color:rgb(255,255,255)">nForcingCycle</span>", if
 you set these, or you can force a 12 month repeating cycle by setting "<span style="font-size:12pt">DIC_forcingPeriod" and "</span><span style="font-size:12pt">DIC_forcingCycle" instead). Try this with the default pCO2/pH solver and see if that helps?</span></p>
<p><span style="font-size:12pt"><br>
</span></p>
<p><span style="font-size:12pt">Best of luck,</span></p>
<p><br>
</p>
<p>Jonathan<br>
</p>
<div id="Signature">
<div style="font-family:Tahoma; font-size:13px">
<div style="font-family:Tahoma; font-size:13px">
<div>___________________________________________________________________________</div>
<div>Dr. Jonathan M. Lauderdale</div>
<div>Research Scientist</div>
<div>Department of Earth, Atmosphere and Planetary Sciences </div>
<div>Massachusetts Institute of Technology </div>
<div>77 Massachusetts Avenue </div>
<div>Cambridge, MA 02139, USA </div>
<div>Office: +1 617 324 3401 </div>
<div>Cell   : +1 617 304 5661</div>
<div>Email: mailto:jml1@mit.edu</div>
<div>Web: http://paocweb.mit.edu/people/jml1</div>
<div>Twitter: https://twitter.com/jon_lauderdale</div>
<div>Git: https://github.com/seamanticscience<br>
</div>
<div>___________________________________________________________________________</div>
</div>
</div>
</div>
<div style="color:rgb(33,33,33)">
<hr tabindex="-1" style="display:inline-block; width:98%">
<div id="divRplyFwdMsg" dir="ltr"><font face="Calibri, sans-serif" color="#000000" style="font-size:11pt"><b>From:</b> MITgcm-support <mitgcm-support-bounces@mitgcm.org> on behalf of Charline Ragon <Charline.Ragon@unige.ch><br>
<b>Sent:</b> 18 August 2021 12:21<br>
<b>To:</b> mitgcm-support@mitgcm.org<br>
<b>Subject:</b> Re: [MITgcm-support] Simulation with varying atmospheric pCO2</font>
<div> </div>
</div>
<div>
<p>Dear Jonathan,<br>
</p>
<p></p>
Thank you for your reply. I’m not sure to understand, what do you mean by log call ? I don't see conditions to limit a certain value in the files you pointed out.<br>
<br>
I started looking on your suggestions and what I can say for now is:<br>
<br>
(1) I copy the two files for ocean at the end of this message.<br>
<br>
(2a) By only checking available outputs every half-an-hour, it seems the atmospheric pCO2 concentration becomes equals to zero first. Unfortunately, as this is a homogeneous value for the whole atmosphere I cannot identify a local point where the problem occur.
 But following your suggestion (4) it seems the problem do not directly coming from here.
<br>
<br>
(2b) For the moment, I haven’t observe the problem but both atmospheric and oceanic pCO2 concentration are increasing. My simulation is still running so I will see if this solve the problem after spin-up time or not.<br>
<br>
(3) Yes, I tried and it also turn to the same problem.<br>
<br>
(4) Thank you for this suggestion. Looking on the additional prints, especially those related to dic_atmos.F file, leads me to believe that the problem first occur with the fluxCO2 variable in ocean - which is shared with atmosphere. Here I copy the relevant
 lines of debug output. <br>
<pre class="western" lang="en-US" style="font-style:normal; font-weight:normal; text-decoration:none"><font color="#000000"><font face="Liberation Mono, monospace"><font size="2" style="font-size:10pt"><span style="background:transparent"> QQ atmos C, total, pCo2     NaN NaN</span></font></font></font>
<font color="#000000"><font face="Liberation Mono, monospace"><font size="2" style="font-size:10pt"><span lang="en-US"><span style="font-style:normal"><span style="text-decoration:none"><span style="font-weight:normal"><span style="background:transparent"> QQ total C, current, old, dif</span></span></span></span></span></font></font></font><font color="#000000"><font face="Liberation Mono, monospace"><font size="2" style="font-size:10pt"><span lang="en-US"><span style="font-style:normal"><span style="text-decoration:none"><span style="font-weight:normal"><span style="background:transparent">f  </span></span></span></span></span></font></font></font><font color="#000000"><font face="Liberation Mono, monospace"><font size="2" style="font-size:10pt"><span lang="en-US"><span style="font-style:normal"><span style="text-decoration:none"><span style="font-weight:normal"><span style="background:transparent">  NaN   1.3077058455813389E+018       NaN</span></span></span></span></span></font></font></font>
<font color="#000000"><font face="Liberation Mono, monospace"><font size="2" style="font-size:10pt"><span lang="en-US"><span style="background:transparent"> QQ ocean C, current, old, diff   NaN   1.2264261974040456E+018       NaN</span></span></font></font></font>
<font color="#000000"><font face="Liberation Mono, monospace"><font size="2" style="font-size:10pt"><span lang="en-US"><span style="background:transparent"> QQ air-sea flux, addition diff    NaN NaN</span></span></font></font></font>
<font color="#000000"><font face="Liberation Mono, monospace"><font size="2" style="font-size:10pt"><span lang="en-US"><span style="background:transparent"> DEBUG_STATS_RL:             atpco2 (DIC_ATMOS)  min=  0.00000000000000E+00</span></span></font></font></font>
<font color="#000000"><font face="Liberation Mono, monospace"><font size="2" style="font-size:10pt"><span lang="en-US"><span style="background:transparent"> DEBUG_STATS_RL:             atpco2 (DIC_ATMOS)  max=  0.00000000000000E+00</span></span></font></font></font>
<font color="#000000"><font face="Liberation Mono, monospace"><font size="2" style="font-size:10pt"><span lang="en-US"><span style="background:transparent"> DEBUG_STATS_RL:             atpco2 (DIC_ATMOS) mean=  0.00000000000000E+00</span></span></font></font></font>
<font color="#000000"><font face="Liberation Mono, monospace"><font size="2" style="font-size:10pt"><span lang="en-US"><span style="background:transparent"> DEBUG_STATS_RL:             atpco2 (DIC_ATMOS) S.D.=  0.00000000000000E+00</span></span></font></font></font>
<font color="#000000"><font face="Liberation Mono, monospace"><font size="2" style="font-size:10pt"><span lang="en-US"><span style="background:transparent"> DEBUG_STATS_RL:           co2atmos (DIC_ATMOS)  min=  0.00000000000000E+00</span></span></font></font></font>
<font color="#000000"><font face="Liberation Mono, monospace"><font size="2" style="font-size:10pt"><span lang="en-US"><span style="background:transparent"> DEBUG_STATS_RL:           co2atmos (DIC_ATMOS)  max=  0.00000000000000E+00</span></span></font></font></font>
<font color="#000000"><font face="Liberation Mono, monospace"><font size="2" style="font-size:10pt"><span lang="en-US"><span style="background:transparent"> DEBUG_STATS_RL:           co2atmos (DIC_ATMOS) mean=  0.00000000000000E+00</span></span></font></font></font>
<font color="#000000"><font face="Liberation Mono, monospace"><font size="2" style="font-size:10pt"><span lang="en-US"><span style="background:transparent"> DEBUG_STATS_RL:           co2atmos (DIC_ATMOS) S.D.=  0.00000000000000E+00</span></span></font></font></font>
<font color="#000000"><font face="Liberation Mono, monospace"><font size="2" style="font-size:10pt"><span lang="en-US"><span style="background:transparent"> DEBUG_WRITE:                       atm_pCO2  val=                   NaN</span></span></font></font></font>
<font color="#000000"><font face="Liberation Mono, monospace"><font size="2" style="font-size:10pt"><span lang="en-US"><span style="background:transparent"> DEBUG_WRITE:                       dic_pCO2  val=  3.20000000000000E-04</span></span></font></font></font>
<font color="#000000"><font face="Liberation Mono, monospace"><font size="2" style="font-size:10pt"><span lang="en-US"><span style="background:transparent"> DEBUG_WRITE:                      tile_flux  val=  1.07455380469069E+09</span></span></font></font></font>
<font color="#000000"><font face="Liberation Mono, monospace"><font size="2" style="font-size:10pt"><span lang="en-US"><span style="background:transparent"> DEBUG_WRITE:             total_atmos_carbon  val=                   NaN</span></span></font></font></font>
<font color="#000000"><font face="Liberation Mono, monospace"><font size="2" style="font-size:10pt"><span lang="en-US"><span style="background:transparent"> DEBUG_WRITE:                     total_flux  val=                   NaN</span></span></font></font></font>
<font color="#000000"><font face="Liberation Mono, monospace"><font size="2" style="font-size:10pt"><span lang="en-US"><span style="background:transparent"> DEBUG_STATS_RL: dTtracerLev                     min= -2.00000000000000E+03</span></span></font></font></font>
<font color="#000000"><font face="Liberation Mono, monospace"><font size="2" style="font-size:10pt"><span lang="en-US"><span style="background:transparent"> DEBUG_STATS_RL: dTtracerLev                     max=  4.65311520000000E+09</span></span></font></font></font>
<font color="#000000"><font face="Liberation Mono, monospace"><font size="2" style="font-size:10pt"><span lang="en-US"><span style="background:transparent"> DEBUG_STATS_RL: dTtracerLev                    mean=  2.39551968956715E+07</span></span></font></font></font>
<font color="#000000"><font face="Liberation Mono, monospace"><font size="2" style="font-size:10pt"><span lang="en-US"><span style="background:transparent"> DEBUG_STATS_RL: dTtracerLev                    S.D.=  3.18669211791863E+08</span></span></font></font></font></pre>
<style type="text/css">
<!--
pre
        {background:transparent}
pre.western
        {font-family:"Liberation Mono",monospace;
        font-size:10pt}
pre.cjk
        {font-family:"Noto Sans Mono CJK SC",monospace;
        font-size:10pt}
pre.ctl
        {font-family:"Liberation Mono",monospace;
        font-size:10pt}
-->
</style><br>
There is points with fluxCO2 around -6.10⁻⁴ (so two order of magnitude smaller than elsewhere) at the limit between two faces (note there is no ice into this simulation). If I fix a lower limit for fluxCO2 then there is not anymore appearance of zeros, and
 atmospheric pCO2 stay in reasonable range. But, the oceanic pCO2 is largely increasing (up to 8000 ppm!) and there is still “NaN” in standard output related to oceanic carbon. I put below the corresponding lines of standard outputs:
<br>
<pre class="western" lang="en-US" style="font-style:normal; font-weight:normal; text-decoration:none"><font color="#000000"><span style="background:transparent"><font face="Liberation Mono, monospace"><font size="2" style="font-size:10pt"> QQ atmos C, total, pCo2   81393757432549728.  4.5985173690706060E-004</font></font></span></font>
<font color="#000000"><span style="background:transparent"> <font face="Liberation Mono, monospace"><font size="2" style="font-size:10pt"><span lang="en-US">QQ total C, current, old, diff  NaN   1.3077629004370186E+018      NaN</span></font></font></span></font>
<font color="#000000"><span style="background:transparent"> <font face="Liberation Mono, monospace"><font size="2" style="font-size:10pt"><span lang="en-US">QQ ocean C, current, old, diff   NaN   1.2264261974040456E+018     NaN</span></font></font></span></font>
<font color="#000000"><span style="background:transparent"> <font face="Liberation Mono, monospace"><font size="2" style="font-size:10pt"><span lang="en-US">QQ air-sea flux, addition diff  -57054399576804.773   NaN</span></font></font></span></font></pre>
<style type="text/css">
<!--
pre
        {background:transparent}
pre.western
        {font-family:"Liberation Mono",monospace;
        font-size:10pt}
pre.cjk
        {font-family:"Noto Sans Mono CJK SC",monospace;
        font-size:10pt}
pre.ctl
        {font-family:"Liberation Mono",monospace;
        font-size:10pt}
-->
</style>Is
 this flux can really be the initial source of the problem or am I wrong? Is make sense to limit it? I would have a look on it computation to better understand the problem and solve it but I can't found it, do you not in which file I should look?<br>
<br>
Best regards,<br>
<br>
Charline<br>
<br>
<br>
<br>
Here are the files:<br>
<br>
data.dic:<br>
<pre class="western" lang="en-US" style="font-style:normal; font-weight:normal; text-decoration:none"><font color="#000000"><font face="Liberation Mono, monospace"><font size="2" style="font-size:10pt"># DIC parameters </font></font></font>
<font color="#000000"> <font face="Liberation Mono, monospace"><font size="2" style="font-size:10pt"><span lang="en-US">&ABIOTIC_PARMS</span></font></font></font>
<font color="#000000">  <font face="Liberation Mono, monospace"><font size="2" style="font-size:10pt"><span lang="en-US">selectPHsolver=1</span></font></font></font>
<font color="#000000"> <font face="Liberation Mono, monospace"><font size="2" style="font-size:10pt"><span lang="en-US">&</span></font></font></font>

<font color="#000000"> <font face="Liberation Mono, monospace"><font size="2" style="font-size:10pt"><span lang="en-US">&BIOTIC_PARMS</span></font></font></font>
<font color="#000000">  <font face="Liberation Mono, monospace"><font size="2" style="font-size:10pt"><span lang="en-US">alphaUniform = 0.97e-10,</span></font></font></font>
<font color="#000000">  <font face="Liberation Mono, monospace"><font size="2" style="font-size:10pt"><span lang="en-US">rainRatioUniform = 5.e-2,</span></font></font></font>
<font color="#000000">  <font face="Liberation Mono, monospace"><font size="2" style="font-size:10pt"><span lang="en-US">KRemin = 0.95,</span></font></font></font>
<font color="#000000"> <font face="Liberation Mono, monospace"><font size="2" style="font-size:10pt"><span lang="en-US">&</span></font></font></font>

<font color="#000000"> <font face="Liberation Mono, monospace"><font size="2" style="font-size:10pt"><span lang="en-US">&DIC_FORCING</span></font></font></font>
<font color="#000000">  <font face="Liberation Mono, monospace"><font size="2" style="font-size:10pt"><span lang="en-US">dic_int1 = 3,</span></font></font></font>
<font color="#000000">  <font face="Liberation Mono, monospace"><font size="2" style="font-size:10pt"><span lang="en-US">dic_pCO2 = 320.E-6,</span></font></font></font>
<font color="#000000">  <font face="Liberation Mono, monospace"><font size="2" style="font-size:10pt"><span lang="en-US">DIC_iceFile=' ',</span></font></font></font>
<font color="#000000">  <font face="Liberation Mono, monospace"><font size="2" style="font-size:10pt"><span lang="en-US">DIC_windFile=' ',</span></font></font></font>
<font color="#000000">  <font face="Liberation Mono, monospace"><font size="2" style="font-size:10pt"><span lang="en-US">DIC_silicaFile=' ',</span></font></font></font>
<font color="#000000">  <font face="Liberation Mono, monospace"><font size="2" style="font-size:10pt"><span lang="en-US">DIC_atmospFile=' ',</span></font></font></font>
<font color="#000000"> <font face="Liberation Mono, monospace"><font size="2" style="font-size:10pt"><span lang="en-US">&</span></font></font></font></pre>
<style type="text/css">
<!--
pre
        {background:transparent}
pre.western
        {font-family:"Liberation Mono",monospace;
        font-size:10pt}
pre.cjk
        {font-family:"Noto Sans Mono CJK SC",monospace;
        font-size:10pt}
pre.ctl
        {font-family:"Liberation Mono",monospace;
        font-size:10pt}
-->
</style><br>
data.cpl:<br>
<br>
<pre class="western" lang="en-US" style="font-style:normal; font-weight:normal; text-decoration:none"><font color="#000000"><font face="Liberation Mono, monospace"><font size="2" style="font-size:10pt"># Coupling package parameters, OCN component: </font></font></font>
<font color="#000000"><font face="Liberation Mono, monospace"><font size="2" style="font-size:10pt"><span lang="en-US"># cpl_earlyExpImpCall :: call coupler early in the time stepping call sequence</span></font></font></font>
<font color="#000000"><font face="Liberation Mono, monospace"><font size="2" style="font-size:10pt"><span lang="en-US">#     useImportHFlx :: True => use the Imported HeatFlux from couler</span></font></font></font>
<font color="#000000"><font face="Liberation Mono, monospace"><font size="2" style="font-size:10pt"><span lang="en-US">#     useImportFW   :: True => use the Imported Fresh Water flux fr cpl</span></font></font></font>
<font color="#000000"><font face="Liberation Mono, monospace"><font size="2" style="font-size:10pt"><span lang="en-US">#     useImportTau  :: True => use the Imported Wind-Stress from couler</span></font></font></font>
<font color="#000000"><font face="Liberation Mono, monospace"><font size="2" style="font-size:10pt"><span lang="en-US">#     useImportSLP  :: True => use the Imported Sea-level Atmos. Pressure</span></font></font></font>
<font color="#000000"><font face="Liberation Mono, monospace"><font size="2" style="font-size:10pt"><span lang="en-US">#     useImportSIce :: True => use the Imported Sea-Ice loading</span></font></font></font>
<font color="#000000"><font face="Liberation Mono, monospace"><font size="2" style="font-size:10pt"><span lang="en-US">#     cpl_taveFreq  :: Frequency^-1 for time-Aver. output (s)</span></font></font></font>
<font color="#000000"> <font face="Liberation Mono, monospace"><font size="2" style="font-size:10pt"><span lang="en-US">&CPL_OCN_PARAM</span></font></font></font>
<font color="#000000"><font face="Liberation Mono, monospace"><font size="2" style="font-size:10pt"><span lang="en-US"># cpl_earlyExpImpCall=.FALSE.,</span></font></font></font>
<font color="#000000"><font face="Liberation Mono, monospace"><font size="2" style="font-size:10pt"><span lang="en-US"># useImportHFlx=.FALSE.,</span></font></font></font>
<font color="#000000"><font face="Liberation Mono, monospace"><font size="2" style="font-size:10pt"><span lang="en-US"># useImportFW  =.FALSE.,</span></font></font></font>
<font color="#000000">  <font face="Liberation Mono, monospace"><font size="2" style="font-size:10pt"><span lang="en-US">useImportTau =.TRUE.,</span></font></font></font>
<font color="#000000">  <font face="Liberation Mono, monospace"><font size="2" style="font-size:10pt"><span lang="en-US">useImportSLP =.FALSE.,</span></font></font></font>
<font color="#000000"><font face="Liberation Mono, monospace"><font size="2" style="font-size:10pt"><span lang="en-US"># useImportSIce=.FALSE.,</span></font></font></font>
<font color="#000000"><font face="Liberation Mono, monospace"><font size="2" style="font-size:10pt"><span lang="en-US"># 1 month average</span></font></font></font>
<font color="#000000"><font face="Liberation Mono, monospace"><font size="2" style="font-size:10pt"><span lang="en-US"># cpl_taveFreq=2592000.,</span></font></font></font>
<font color="#000000"><font face="Liberation Mono, monospace"><font size="2" style="font-size:10pt"><span lang="en-US"># 10 year average</span></font></font></font>
<font color="#000000">  <font face="Liberation Mono, monospace"><font size="2" style="font-size:10pt"><span lang="en-US">cpl_taveFreq=31104000000.,</span></font></font></font>
<font color="#000000"> <font face="Liberation Mono, monospace"><font size="2" style="font-size:10pt"><span lang="en-US">&</span></font></font></font>
</pre>
<br>
<pre class="moz-quote-pre">--
Charline RAGON
PhD Student
Group of Applied Physics & Institute for Environmental Sciences
University of Geneva, Switzerland
</pre>
<br>
<blockquote type="cite">
<pre class="moz-quote-pre">Dear Charline,

Thanks for your email, I?ll reply here for posterity. 

I?m not as familiar with the coupled set up as I would like, however we should be able to diagnose what?s going on. In my experience, abrupt NaNs in output like this are usually the result of illegal values in a log call. There?s one in ?pkg/aim_v23/phy_driver.F? and another in the pH solver for oceanic pCO2 in ?pkg/dic/carbon_chem.F? that I would target. I can see how the former could be the issue if aim_pco2 is invalid (negative or zero), which could happen if there is an issue in ?pkg/aim_v23/aim_do_co2.F?...I think you?d get warnings/errors or immediate crashes if your variable choices were an issue, and also the pCO2 appears to be increasing in your run with ?aim_select_pcO2 = 3?, not trending to zero,  but it wouldn?t hurt to check that the DIC package is indeed talking to the AIM package (for example, do you have "#define COMPONENT_MODULE? in your CPP_EEOPTIONS.h file?) On the other hand, the latter log-call is often at the root of many issues like this so I am wondering if th
 e problem instead lies in the DIC package itself.

So, a couple of things to test:
(1) Can you post your "data.cpl" and "data.dic" files?

(2a) Have a look at the ocean DIC/surface pCO2 and see if there are NaNs propogating there too. If you have fine enough output frequency around the crash you observe, you may be able to narrow down where geographically the issue is coming from (possibly a sea-ice region?).

(2b) If you are using the default pCO2 solver (which can be bit finicky), I would recompile with "#define CARBONCHEM_SOLVESAPHE" in ?DIC_OPTIONS.h? and set "selectPHsolver=1? in the ?ABIOTIC_PARMS? section of ?data.dic?. This uses a more robust (although possibly more expensive) pH/pCO2 solver.

(3) Have you tried restarting the model with variable absorption coefficient from the end of the run with constant absorption coefficient? I think sometimes there are too many moving parts which causes hard to pin-down erratic behavior as the model adjusts to the initial conditions. 

(4) If the above doesnt work you could use the debug framework (#define ALLOW_DEBUG in CPP_OPTIONS.h, set debugMode = .TRUE. in ?eedata? file, and set "debugLevel=5? in PARM01 section of your ?data? file ? lots of messages), plus adding a few print statements for identifying where the NaN first appears, such as maybe print out the relevant variables in ?pkg/aim_v23/aim_do_co2.F? and ?pkg/aim_v23/phy_driver.F?, as well as in ?pkg/dic/dic_atmos.F? and ?hnew?, ?gam? and ?stuff? variables in ?pkg/dic/carbon_chem.F? subroutine "CALC_PCO2_APPROX?.

Hope that helps!

Jonathan
___________________________________________________________________________
Dr. Jonathan M. Lauderdale
Research Scientist
Department of Earth, Atmosphere and Planetary Sciences 
Massachusetts Institute of Technology 
77 Massachusetts Avenue (54-1518)
Cambridge, MA 02139, USA 
Office: +1 617 324 1568 
Cell   : +1 617 304 5661
Email: <a class="moz-txt-link-freetext" href="mailto:jml1@mit.edu">mailto:jml1@mit.edu</a> <a class="moz-txt-link-rfc2396E" href="mailto:jml1@mit.edu"><mailto:jml1@mit.edu></a>
Web: <a class="moz-txt-link-freetext" href="http://paocweb.mit.edu/people/jml1">http://paocweb.mit.edu/people/jml1</a> <a class="moz-txt-link-rfc2396E" href="http://paocweb.mit.edu/people/jml1"><http://paocweb.mit.edu/people/jml1></a>
Twitter: <a class="moz-txt-link-freetext" href="https://twitter.com/jon_lauderdale">https://twitter.com/jon_lauderdale</a>
 <a class="moz-txt-link-rfc2396E" href="https://twitter.com/jon_lauderdale"><https://twitter.com/jon_lauderdale></a>Blog: <a class="moz-txt-link-freetext" href="https://seamanticscience.wordpress.com/">https://seamanticscience.wordpress.com/</a> <a class="moz-txt-link-rfc2396E" href="https://seamanticscience.wordpress.com/"><https://seamanticscience.wordpress.com/></a>
Git: <a class="moz-txt-link-freetext" href="https://github.com/seamanticscience">https://github.com/seamanticscience</a> <a class="moz-txt-link-rfc2396E" href="https://github.com/seamanticscience"><https://github.com/seamanticscience></a>
___________________________________________________________________________

</pre>
<blockquote type="cite" style="color:#007cff">
<pre class="moz-quote-pre">On Jul 19, 2021, at 8:09 AM, Charline Ragon <a class="moz-txt-link-rfc2396E" href="mailto:Charline.Ragon@unige.ch"><Charline.Ragon@unige.ch></a> wrote:

Dear all,

I'm performing simulations in a coupled atmosphere, ocean and sea-ice configuration, using the biogeochemical packages GCHEM, DIC and PTRACERS.

I would like to allow a CO2-flux between atmosphere and ocean but I have troubles as all diagnostics are suddenly moving to zero (NaN are appearing in standard outputs). I set parameters dic_int1 = 3 and aim_select_pCO2 = 3, but if I change the value of aim_select_pCO2, this problem is not appearing (at least, I haven't observed it).

I had a look on, and attached to this e-mail, the evolution of atmospheric pCO2 in three similar simulations where I only change the aim_select_pCO2 value to 1, 2 or 3. These runs start from nIter0=0 and tracers are initialized by files. Note that, in my case aim_pCO2 = aim_ref_pCO2 = 320 ppm so it seems the absorption in CO2-band is constant and equals 4 also when aim_select_pCO2 = 1 (so, similar to aim_select_pCO2 = 0).

As I understand it, when the absorption in CO2-band is prescribed the simulation no exhibits the problem even if partial pressure of CO2 is largely increasing in both atmosphere and ocean. So, the zero-appearing should be related to this coefficient but I'm unable to understand exactly what the problem is nor to solve it.

I'm wondering if someone know more about this, and maybe have suggestions for me ?

Thanks in advance for your help!

Best,
Charline


--
Charline RAGON
PhD Student
Group of Applied Physics & Institute for Environmental Sciences
University of Geneva, Switzerland</pre>
</blockquote>
</blockquote>
<br>
<style type="text/css">
<!--
pre
        {background:transparent}
pre.western
        {font-family:"Liberation Mono",monospace;
        font-size:10pt}
pre.cjk
        {font-family:"Noto Sans Mono CJK SC",monospace;
        font-size:10pt}
pre.ctl
        {font-family:"Liberation Mono",monospace;
        font-size:10pt}
-->
</style>
<pre class="western" style="margin-bottom:0.5cm"><style type="text/css">
<!--
pre
        {background:transparent}
pre.western
        {font-family:"Liberation Mono",monospace;
        font-size:10pt}
pre.cjk
        {font-family:"Noto Sans Mono CJK SC",monospace;
        font-size:10pt}
pre.ctl
        {font-family:"Liberation Mono",monospace;
        font-size:10pt}
-->
</style><pre class="western" style="margin-bottom:0.5cm; text-align:center"></pre><font color="#000000"><font face="Liberation Mono, monospace"><font size="2" style="font-size:10pt"><span lang="en-US"><span style="font-style:normal"><span style="text-decoration:none"><span style="font-weight:normal"></span></span></span></span></font></font></font></pre>
<style type="text/css">
<!--
pre
        {background:transparent}
pre.western
        {font-family:"Liberation Mono",monospace;
        font-size:10pt}
pre.cjk
        {font-family:"Noto Sans Mono CJK SC",monospace;
        font-size:10pt}
pre.ctl
        {font-family:"Liberation Mono",monospace;
        font-size:10pt}
-->
</style></div>
</div>
</body>
</html>