/[lmdze]/trunk/phylmd/clesphys.f
ViewVC logotype

Diff of /trunk/phylmd/clesphys.f

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

trunk/libf/phylmd/clesphys.f90 revision 12 by guez, Mon Jul 21 16:05:07 2008 UTC trunk/Sources/phylmd/clesphys.f revision 202 by guez, Wed Jun 8 12:23:41 2016 UTC
# Line 1  Line 1 
1  module clesphys  module clesphys
2    
3    ! v 1.3 2005/06/06 13:16:33 fairhead    ! From version 1.3 2005/06/06 13:16:33
4    
5    implicit none    implicit none
6    
7    LOGICAL bug_ozone    REAL co2_ppm ! concentration du gaz carbonique en ppmv
8    REAL co2_ppm, solaire    real solaire ! Constante solaire en W/m2
9    double precision RCO2, RCH4, RN2O, RCFC11, RCFC12      double precision RCO2 ! Concentration du CO2
10      double precision RCH4 ! Concentration du CH4
11      double precision RN2O ! Concentration du N2O
12      double precision RCFC11 ! Concentration du CFC11
13      double precision RCFC12 ! Concentration du CFC12
14    double precision CH4_ppb, N2O_ppb, CFC11_ppt, CFC12_ppt    double precision CH4_ppb, N2O_ppb, CFC11_ppt, CFC12_ppt
15    !IM simulateur ISCCP  
16    INTEGER top_height, overlap    ! Simulateur ISCCP:
17    !IM seuils cdrm, cdrh    INTEGER top_height
18    REAL cdmmax, cdhmax    INTEGER overlap ! 1, 2 or 3
19    !IM param. stabilite s/ terres et en dehors  
20    REAL ksta, ksta_ter    REAL cdmmax, cdhmax ! seuils cdrm, cdrh
21    !IM ok_kzmin : clef calcul Kzmin dans la CL de surface cf FH    REAL ksta, ksta_ter ! paramètres stabilité sur terres et en dehors
22    LOGICAL ok_kzmin    LOGICAL ok_kzmin ! calcul Kzmin dans la couche limite de surface
23    
24    INTEGER lev_histhf ! niveau sorties 6h    INTEGER lev_histhf ! niveau sorties 6h
25      ! 4: histhf3d.nc champs 3d niveaux modele
26    
27    integer lev_histday ! niveau sorties journalieres    integer lev_histday ! niveau sorties journalieres
28      ! 3: champs 3D => F. Lott
29      ! 4: + champs sous-surfaces
30    
31    integer lev_histmth ! niveau sorties mensuelles    integer lev_histmth ! niveau sorties mensuelles
32    CHARACTER(len=4) type_run    ! 3: albedo, rugosite sous-surfaces
33      ! 4: champs tendances 3d
34    
35      CHARACTER(len=4) type_run ! 'AMIP' ou 'ENSP'
36    LOGICAL ok_isccp, ok_regdyn    LOGICAL ok_isccp, ok_regdyn
37    
38    REAL lonmin_ins, lonmax_ins, latmin_ins, latmax_ins    REAL lonmin_ins, lonmax_ins, latmin_ins, latmax_ins
39    INTEGER ecrit_ins, ecrit_hf, ecrit_hf2mth, ecrit_day    ! longitude et latitude minimales et maximales pour la zone avec
40    INTEGER ecrit_mth, ecrit_tra, ecrit_reg    ! sorties instantanées tous les pas de temps de la physique,
41      ! fichier "histbilKP_ins.nc"
42    
43      INTEGER ecrit_ins
44      logical:: ok_instan = .false. ! sorties instantanees dans le fichier histins
45    
46    save    save
47    
48    contains
49    
50      subroutine read_clesphys
51    
52        use unit_nml_m, only: unit_nml
53    
54        namelist /clesphys_nml/ solaire, co2_ppm, CH4_ppb, N2O_ppb, CFC11_ppt, &
55             CFC12_ppt, top_height, overlap, cdmmax, cdhmax, ksta, &
56             ksta_ter, ok_kzmin, lev_histhf, lev_histday, lev_histmth, &
57             type_run, ok_isccp, ok_regdyn, lonmin_ins, lonmax_ins, latmin_ins, &
58             latmax_ins, ecrit_ins, ok_instan
59    
60        !---------------------------------------------------------
61    
62        solaire = 1365. ! AMIP II
63        co2_ppm = 348. ! AMIP II
64        CH4_ppb = 1650.
65        N2O_ppb = 306.
66        CFC11_ppt = 280.
67        CFC12_ppt = 484.
68        top_height = 3
69        overlap = 3
70        cdmmax = 1.3E-3
71        cdhmax = 1.1E-3
72        ksta = 1.0e-10
73        ksta_ter = 1.0e-10
74        ok_kzmin = .true.
75        lev_histhf = 0
76        lev_histday = 1
77        lev_histmth = 2
78        type_run = 'AMIP'
79        ok_isccp = .false.
80        ok_regdyn = .false.
81        lonmin_ins = 100.
82        lonmax_ins = 130.
83        latmin_ins = -20.
84        latmax_ins = 20.
85        ecrit_ins = NINT(86400./48.)
86    
87        print *, "Enter namelist 'clesphys_nml'."
88        read(unit=*, nml=clesphys_nml)
89        write(unit_nml, nml=clesphys_nml)
90    
91        RCO2 = co2_ppm * 1.0e-06 * 44.011/28.97
92        RCH4 = CH4_ppb * 1.0E-09 * 16.043/28.97
93        RN2O = N2O_ppb * 1.0E-09 * 44.013/28.97
94        RCFC11=CFC11_ppt* 1.0E-12 * 137.3686/28.97
95        RCFC12 = CFC12_ppt * 1.0E-12 * 120.9140/28.97
96    
97        print *, ' RCO2 = ', RCO2
98        print *, ' RCH4 = ', RCH4
99        print *, ' RN2O = ', RN2O
100        print *, ' RCFC11 = ', RCFC11
101        print *, ' RCFC12 = ', RCFC12
102    
103      end subroutine read_clesphys
104    
105  end module clesphys  end module clesphys

Legend:
Removed from v.12  
changed lines
  Added in v.202

  ViewVC Help
Powered by ViewVC 1.1.21