How to set up the radiation scheme for Palaeo-simulations? – in #9: CCLM

in #9: CCLM

<p> I am trying to use <span class="caps"> CCLM </span> for downscaling an <span class="caps"> AGCM </span> simulation during <br/> several time-slices in the last millennium (e.g. <span class="caps"> LIA </span> , <span class="caps"> MCA </span> ). I need to adapt the Green <br/> House Gas concentrations to that time. But the ico2_rad option do not <br/> allow me to do so. How should I adapt the model for <span class="caps"> GHG </span> concentrations in <br/> such simulations. </p>

  @bijanhassanabadifallah in #8ce06b4

<p> I am trying to use <span class="caps"> CCLM </span> for downscaling an <span class="caps"> AGCM </span> simulation during <br/> several time-slices in the last millennium (e.g. <span class="caps"> LIA </span> , <span class="caps"> MCA </span> ). I need to adapt the Green <br/> House Gas concentrations to that time. But the ico2_rad option do not <br/> allow me to do so. How should I adapt the model for <span class="caps"> GHG </span> concentrations in <br/> such simulations. </p>

How to set up the radiation scheme for Palaeo-simulations?

I am trying to use CCLM for downscaling an AGCM simulation during
several time-slices in the last millennium (e.g. LIA , MCA ). I need to adapt the Green
House Gas concentrations to that time. But the ico2_rad option do not
allow me to do so. How should I adapt the model for GHG concentrations in
such simulations.

View in channel
<p> There are two ways, a quick and a flexible one. For both first determine the equivalent CO2 concentration in ppm and convert it into mixing ratio by dividing by 658157.16 </p> <p> <em> The quick one: </em> <br/> In src_radiation.f90 after the ico2_rad select case assign your mixing ratio to the variable zqco2 <br/> <pre> <span class="caps">CASE</span> (10) ! RCP85 scenario (for 1950 &lt;= zyear &lt;= 2150) ! eff. CO2 (all GreeHouseGases (<span class="caps">GHG</span>) considered) zqco2 = ( – 4.0501145412E+07_ireals &amp; + 7.9386473439E+04_ireals * zyear &amp; – 5.8292720579E+01_ireals * zyear*zyear &amp; + 1.9002921793E-02_ireals * zyear**3 &amp; – 2.3202412328E-06_ireals * zyear**4) * 1.519E-06_ireals</pre> </p> <span class="caps"> END </span> <span class="caps"> SELECT </span> zqco2 = …. ! insert your mixing ratio here <p> <em> The flexible one: </em> <br/> in organize_physics.f90 change <br/> <pre> IF (ico2_rad.GT.10 ) ico2_rad = ico2_rad_d </pre> to <br/> <pre> IF (ico2_rad.GT.11 ) ico2_rad = ico2_rad_d </pre> <br/> in src_radiation change <br/> <pre> zyearmin = 1950 </pre> to <br/> <pre> IF (ico2_rad &lt; 11) THEN zyearmin = 1950 ELSE zyearmin = ! .... put a year lower than the start year of your simulation period here </pre> and change <br/> <pre> <span class="caps">CASE</span> (10) ! RCP85 scenario (for 1950 &lt;= zyear &lt;= 2150) ! eff. CO2 (all GreeHouseGases (<span class="caps">GHG</span>) considered) zqco2 = ( – 4.0501145412E+07_ireals &amp; + 7.9386473439E+04_ireals * zyear &amp; – 5.8292720579E+01_ireals * zyear*zyear &amp; + 1.9002921793E-02_ireals * zyear**3 &amp; – 2.3202412328E-06_ireals * zyear**4) * 1.519E-06_ireals</pre> </p> <span class="caps"> END </span> <span class="caps"> SELECT </span> to <pre> <span class="caps">CASE</span> (10) ! RCP85 scenario (for 1950 &lt;= zyear &lt;= 2150) ! eff. CO2 (all GreeHouseGases (<span class="caps">GHG</span>) considered) zqco2 = ( – 4.0501145412E+07_ireals &amp; + 7.9386473439E+04_ireals * zyear &amp; – 5.8292720579E+01_ireals * zyear*zyear &amp; + 1.9002921793E-02_ireals * zyear**3 &amp; – 2.3202412328E-06_ireals * zyear**4) * 1.519E-06_ireals <span class="caps">CASE</span> (11) !… last millenium zqco2 = !… insert your mixing ratio here <span class="caps">END</span> <span class="caps">SELECT</span> </pre> In the <span class="caps"> CCLM </span> namelist <span class="caps"> PHYCTL </span> set <pre> ico2_rad=11 </pre> In the same way you can define several different mixing ratios with additional numbers 12, 13, 14 etc.

  @burkhardtrockel in #3b93dbf

<p> There are two ways, a quick and a flexible one. For both first determine the equivalent CO2 concentration in ppm and convert it into mixing ratio by dividing by 658157.16 </p> <p> <em> The quick one: </em> <br/> In src_radiation.f90 after the ico2_rad select case assign your mixing ratio to the variable zqco2 <br/> <pre> <span class="caps">CASE</span> (10) ! RCP85 scenario (for 1950 &lt;= zyear &lt;= 2150) ! eff. CO2 (all GreeHouseGases (<span class="caps">GHG</span>) considered) zqco2 = ( – 4.0501145412E+07_ireals &amp; + 7.9386473439E+04_ireals * zyear &amp; – 5.8292720579E+01_ireals * zyear*zyear &amp; + 1.9002921793E-02_ireals * zyear**3 &amp; – 2.3202412328E-06_ireals * zyear**4) * 1.519E-06_ireals</pre> </p> <span class="caps"> END </span> <span class="caps"> SELECT </span> zqco2 = …. ! insert your mixing ratio here <p> <em> The flexible one: </em> <br/> in organize_physics.f90 change <br/> <pre> IF (ico2_rad.GT.10 ) ico2_rad = ico2_rad_d </pre> to <br/> <pre> IF (ico2_rad.GT.11 ) ico2_rad = ico2_rad_d </pre> <br/> in src_radiation change <br/> <pre> zyearmin = 1950 </pre> to <br/> <pre> IF (ico2_rad &lt; 11) THEN zyearmin = 1950 ELSE zyearmin = ! .... put a year lower than the start year of your simulation period here </pre> and change <br/> <pre> <span class="caps">CASE</span> (10) ! RCP85 scenario (for 1950 &lt;= zyear &lt;= 2150) ! eff. CO2 (all GreeHouseGases (<span class="caps">GHG</span>) considered) zqco2 = ( – 4.0501145412E+07_ireals &amp; + 7.9386473439E+04_ireals * zyear &amp; – 5.8292720579E+01_ireals * zyear*zyear &amp; + 1.9002921793E-02_ireals * zyear**3 &amp; – 2.3202412328E-06_ireals * zyear**4) * 1.519E-06_ireals</pre> </p> <span class="caps"> END </span> <span class="caps"> SELECT </span> to <pre> <span class="caps">CASE</span> (10) ! RCP85 scenario (for 1950 &lt;= zyear &lt;= 2150) ! eff. CO2 (all GreeHouseGases (<span class="caps">GHG</span>) considered) zqco2 = ( – 4.0501145412E+07_ireals &amp; + 7.9386473439E+04_ireals * zyear &amp; – 5.8292720579E+01_ireals * zyear*zyear &amp; + 1.9002921793E-02_ireals * zyear**3 &amp; – 2.3202412328E-06_ireals * zyear**4) * 1.519E-06_ireals <span class="caps">CASE</span> (11) !… last millenium zqco2 = !… insert your mixing ratio here <span class="caps">END</span> <span class="caps">SELECT</span> </pre> In the <span class="caps"> CCLM </span> namelist <span class="caps"> PHYCTL </span> set <pre> ico2_rad=11 </pre> In the same way you can define several different mixing ratios with additional numbers 12, 13, 14 etc.

There are two ways, a quick and a flexible one. For both first determine the equivalent CO2 concentration in ppm and convert it into mixing ratio by dividing by 658157.16

The quick one:
In src_radiation.f90 after the ico2_rad select case assign your mixing ratio to the variable zqco2

CASE (10)
    ! RCP85 scenario (for 1950 <= zyear <= 2150)
    !   eff. CO2 (all GreeHouseGases (GHG) considered)
    zqco2 = ( – 4.0501145412E+07_ireals               &
              + 7.9386473439E+04_ireals * zyear       &
              – 5.8292720579E+01_ireals * zyear*zyear &
              + 1.9002921793E-02_ireals * zyear**3    &
              – 2.3202412328E-06_ireals * zyear**4) * 1.519E-06_ireals

END SELECT zqco2 = …. ! insert your mixing ratio here

The flexible one:
in organize_physics.f90 change

  IF (ico2_rad.GT.10 )  ico2_rad  = ico2_rad_d
to
  IF (ico2_rad.GT.11 )  ico2_rad  = ico2_rad_d

in src_radiation change
  zyearmin = 1950
to
IF (ico2_rad < 11) THEN
  zyearmin = 1950
ELSE
  zyearmin =    ! .... put a year lower than the start year of your simulation period here 
and change
CASE (10)
    ! RCP85 scenario (for 1950 <= zyear <= 2150)
    !   eff. CO2 (all GreeHouseGases (GHG) considered)
    zqco2 = ( – 4.0501145412E+07_ireals               &
              + 7.9386473439E+04_ireals * zyear       &
              – 5.8292720579E+01_ireals * zyear*zyear &
              + 1.9002921793E-02_ireals * zyear**3    &
              – 2.3202412328E-06_ireals * zyear**4) * 1.519E-06_ireals

END SELECT to
CASE (10)
    ! RCP85 scenario (for 1950 <= zyear <= 2150)
    !   eff. CO2 (all GreeHouseGases (GHG) considered)
    zqco2 = ( – 4.0501145412E+07_ireals               &
              + 7.9386473439E+04_ireals * zyear       &
              – 5.8292720579E+01_ireals * zyear*zyear &
              + 1.9002921793E-02_ireals * zyear**3    &
              – 2.3202412328E-06_ireals * zyear**4) * 1.519E-06_ireals

  CASE (11)
!… last millenium
    zqco2  =     !… insert your mixing ratio here

  ENDSELECT
In the CCLM namelist PHYCTL set
ico2_rad=11
In the same way you can define several different mixing ratios with additional numbers 12, 13, 14 etc.
<p> I am also running some paleoclimate simulations with the cclm for different time slices starting 6000 years before present. I wanted to know, if I had to define several additional cases for different <span class="caps"> GHG </span> s concentration for every period of study, what should be the year I have to give to zyearmin for every time slice? in my case the first year of the simulations is called 8240 and it refers to the year 4000 BC. </p> <p> Thanks. </p>

  @redc_migration in #0011d8a

<p> I am also running some paleoclimate simulations with the cclm for different time slices starting 6000 years before present. I wanted to know, if I had to define several additional cases for different <span class="caps"> GHG </span> s concentration for every period of study, what should be the year I have to give to zyearmin for every time slice? in my case the first year of the simulations is called 8240 and it refers to the year 4000 BC. </p> <p> Thanks. </p>

I am also running some paleoclimate simulations with the cclm for different time slices starting 6000 years before present. I wanted to know, if I had to define several additional cases for different GHG s concentration for every period of study, what should be the year I have to give to zyearmin for every time slice? in my case the first year of the simulations is called 8240 and it refers to the year 4000 BC.

Thanks.

<p> Your case does not differ much from the case above. <code> zyearmin </code> and <code> zyearmax </code> are only needed, if you fit your <span class="caps"> GHG </span> concentration with a polygon. These values describe the validity range of the polygon. If you do not need this, you can comment out the following lines in src_radiation.f90: <br/> <pre> ! Define upper limits of fitted scenarios polynoms to avoid eloping zyearmin = 1950 IF (ico2_rad &lt; 7) <span class="caps">THEN</span> ! <span class="caps">SRES</span> fitting zyearmax = 2100 <span class="caps">ELSE</span> ! <span class="caps">RCP</span> fitting valid until 2150 zyearmax = 2150 <span class="caps">ENDIF</span></pre> </p> ! zyear can be modified, because it is only used for calculation of CO2 trends IF (zyear &lt; zyearmin) THEN zyear = zyearmin ELSEIF (zyear &gt; zyearmax) THEN zyear = zyearmax <span class="caps"> ENDIF </span> <p> </p>

  @burkhardtrockel in #788bdaa

<p> Your case does not differ much from the case above. <code> zyearmin </code> and <code> zyearmax </code> are only needed, if you fit your <span class="caps"> GHG </span> concentration with a polygon. These values describe the validity range of the polygon. If you do not need this, you can comment out the following lines in src_radiation.f90: <br/> <pre> ! Define upper limits of fitted scenarios polynoms to avoid eloping zyearmin = 1950 IF (ico2_rad &lt; 7) <span class="caps">THEN</span> ! <span class="caps">SRES</span> fitting zyearmax = 2100 <span class="caps">ELSE</span> ! <span class="caps">RCP</span> fitting valid until 2150 zyearmax = 2150 <span class="caps">ENDIF</span></pre> </p> ! zyear can be modified, because it is only used for calculation of CO2 trends IF (zyear &lt; zyearmin) THEN zyear = zyearmin ELSEIF (zyear &gt; zyearmax) THEN zyear = zyearmax <span class="caps"> ENDIF </span> <p> </p>

Your case does not differ much from the case above. zyearmin and zyearmax are only needed, if you fit your GHG concentration with a polygon. These values describe the validity range of the polygon. If you do not need this, you can comment out the following lines in src_radiation.f90:

    ! Define upper limits of fitted scenarios polynoms to avoid eloping
    zyearmin = 1950
    IF (ico2_rad < 7) THEN ! SRES fitting
      zyearmax = 2100
    ELSE                   ! RCP fitting valid until 2150
      zyearmax = 2150
    ENDIF

! zyear can be modified, because it is only used for calculation of CO2 trends IF (zyear < zyearmin) THEN zyear = zyearmin ELSEIF (zyear > zyearmax) THEN zyear = zyearmax ENDIF