Ignore:
Timestamp:
Mar 20, 2014, 10:57:19 AM (10 years ago)
Author:
Laurent Fairhead
Message:

Merged trunk changes r1920:1997 into testing branch

Location:
LMDZ5/branches/testing
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • LMDZ5/branches/testing

  • LMDZ5/branches/testing/libf/phylmd/ozonecm_m.F90

    r1910 r1999  
    66contains
    77
    8   function ozonecm(rlat, paprs, rjour)
     8  function ozonecm(rlat, paprs,read_climoz, rjour)
    99
    1010    ! The ozone climatology is based on an analytic formula which fits the
     
    2727    REAL, INTENT (IN) :: paprs(:, :) ! (klon,klev+1)
    2828    REAL, INTENT (IN) :: rjour
     29    INTEGER, INTENT (IN) :: read_climoz
    2930
    3031    REAL ozonecm(klon,klev)
     
    4546    REAL, parameter:: an = 360., zo3q3 = 4E-8
    4647    REAL, parameter:: dobson_unit = 2.1415E-5 ! in kg m-2
    47     REAL gms, zslat, zsint, zcost, z, ppm, qpm, a
     48    REAL gms, zslat,zslat2, zsint, zcost, z, ppm, qpm, a
    4849    REAL asec, bsec, aprim, zo3a3
    4950
     
    5758       DO i = 1, klon
    5859          zslat = sin(pi / 180. * rlat(i))
     60          zslat2=zslat*zslat
     61          IF (read_climoz==-1) zslat=0. ! Imposing hemispheric symetry
    5962          zsint = sin(2 * pi * (rjour + 15.) / an)
    6063          zcost = cos(2 * pi * (rjour + 15.) / an)
    6164          z = 0.0531 + zsint * (-0.001595+0.009443*zslat) &
    6265               + zcost * (-0.001344-0.00346*zslat) &
    63                + zslat**2 * (.056222 + zslat**2 &
     66               + zslat2 * (.056222 + zslat2 &
    6467               * (-.037609+.012248*zsint+.00521*zcost+.008890*zslat))
    6568          zo3a3 = zo3q3/ps/2.
    6669          z = z - zo3q3*ps
    6770          gms = z
    68           ppm = 800. - (500.*zslat+150.*zcost)*zslat
    69           qpm = 1.74E-5 - (7.5E-6*zslat+1.7E-6*zcost)*zslat
    70           bsec = 2650. + 5000.*zslat**2
     71          ppm = 800. - 500.*zslat2 - 150.*zcost*zslat
     72          qpm = 1.74E-5 - 7.5E-6*zslat2 - 1.7E-6*zcost*zslat
     73          bsec = 2650. + 5000.*zslat2
    7174          a = 4.0*(bsec)**(3./2.)*(ppm)**(3./2.)*(1.0+(bsec/ps)**(3./2.))
    7275          a = a/(bsec**(3./2.)+ppm**(3./2.))**2
     
    8891    ozonecm = max(ozonecm, 1e-12)
    8992
     93    print*,'ozonecm Version2'
     94
    9095  END function ozonecm
    9196
Note: See TracChangeset for help on using the changeset viewer.