Changeset 4197 for dynamico_lmdz


Ignore:
Timestamp:
Dec 20, 2019, 10:45:29 AM (5 years ago)
Author:
dubos
Message:

simple_physics : cleanup radiative transfer

Location:
dynamico_lmdz/simple_physics/phyparam
Files:
1 deleted
1 edited
1 moved

Legend:

Unmodified
Added
Removed
  • dynamico_lmdz/simple_physics/phyparam/param/phyparam.F

    r4193 r4197  
    1414      USE astronomy
    1515      USE vdif_mod, ONLY : vdif
     16      USE radiative, ONLY : mucorr
    1617c     
    1718      IMPLICIT NONE
     
    163164
    164165      EXTERNAL convadj
    165       EXTERNAL mucorr
    166166      EXTERNAL ismin,ismax
    167167
  • dynamico_lmdz/simple_physics/phyparam/physics/radiative.F90

    r4196 r4197  
    1       SUBROUTINE mucorr(npts,pdeclin, plat, pmu, pfract,phaut,prad)
    2       IMPLICIT NONE
     1MODULE radiative
     2  IMPLICIT NONE
     3  SAVE
    34
    4 c=======================================================================
    5 c
    6 c   Calcul of equivalent solar angle and and fraction of day whithout
    7 c   diurnal cycle.
    8 c
    9 c   parmeters :
    10 c   -----------
    11 c
    12 c      Input :
    13 c      -------
    14 c         npts             number of points
    15 c         pdeclin          solar declinaison
    16 c         plat(npts)        latitude
    17 c         phaut            hauteur typique de l'atmosphere
    18 c         prad             rayon planetaire
    19 c
    20 c      Output :
    21 c      --------
    22 c         pmu(npts)          equivalent cosinus of the solar angle
    23 c         pfract(npts)       fractionnal day
    24 c
    25 c=======================================================================
     5CONTAINS
    266
    27 c-----------------------------------------------------------------------
    28 c
    29 c    0. Declarations :
    30 c    -----------------
     7  SUBROUTINE mucorr(npts,pdeclin, plat, pmu, pfract,phaut,prad)
    318
    32 c     Arguments :
    33 c     -----------
     9!=======================================================================
     10!
     11!   Calcul of equivalent solar angle and and fraction of day whithout
     12!   diurnal cycle.
     13!
     14!   parmeters :
     15!   -----------
     16!
     17!      Input :
     18!      -------
     19!         npts             number of points
     20!         pdeclin          solar declinaison
     21!         plat(npts)        latitude
     22!         phaut            hauteur typique de l'atmosphere
     23!         prad             rayon planetaire
     24!
     25!      Output :
     26!      --------
     27!         pmu(npts)          equivalent cosinus of the solar angle
     28!         pfract(npts)       fractionnal day
     29!
     30!=======================================================================
     31
     32!-----------------------------------------------------------------------
     33!
     34!    0. Declarations :
     35!    -----------------
     36
     37!     Arguments :
     38!     -----------
    3439      INTEGER npts
    3540      REAL plat(npts),pmu(npts), pfract(npts)
    3641      REAL phaut,prad,pdeclin
    37 c
    38 c     Local variables :
    39 c     -----------------
     42!
     43!     Local variables :
     44!     -----------------
    4045      INTEGER j
    4146      REAL pi
     
    4449      REAL alph
    4550
    46 c-----------------------------------------------------------------------
     51!-----------------------------------------------------------------------
    4752
    4853      print*,'npts,pdeclin'
     
    5762       print*,'cz,sz',cz,sz
    5863
    59       DO 20 j = 1, npts
     64      DO j = 1, npts
    6065
    6166         phi = plat(j)
     
    9196         IF (pmu(j).eq.0.) pfract(j) = 0.
    9297
    93    20 CONTINUE
     98      END DO
    9499
    95 c-----------------------------------------------------------------------
    96 c   correction de rotondite:
    97 c   ------------------------
     100!-----------------------------------------------------------------------
     101!   correction de rotondite:
     102!   ------------------------
    98103
    99104      alph=phaut/prad
    100       DO 30 j=1,npts
    101 c !!!!!!
     105      DO j=1,npts
     106! !!!!!!
    102107         pmu(j)=sqrt(1224.*pmu(j)*pmu(j)+1.)/35.
    103 c    $          (sqrt(alph*alph*pmu(j)*pmu(j)+2.*alph+1.)-alph*pmu(j))
    104 30    CONTINUE
     108!    $          (sqrt(alph*alph*pmu(j)*pmu(j)+2.*alph+1.)-alph*pmu(j))
     109      END DO
    105110
    106       RETURN
    107       END
     111    END SUBROUTINE mucorr
     112
     113  END MODULE radiative
Note: See TracChangeset for help on using the changeset viewer.