Changeset 1533


Ignore:
Timestamp:
Jun 3, 2011, 7:01:52 PM (14 years ago)
Author:
musat
Message:

Ajout fichier 1D mensuel paramLMDZ_phy.nc contenant

  • les parametres orbitaux
  • les taux des GES
  • les moyennes globales ((bils, evap, evap_land, flat, nettop0, nettop, precip, tsol, t2m, prw)

IM

Location:
LMDZ4/branches/LMDZ4_AR5/libf/phylmd
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • LMDZ4/branches/LMDZ4_AR5/libf/phylmd/ini_paramLMDZ_phy.h

    r996 r1533  
    1 cym    Non implemente en mode parallele
     1cIM    Implemente en modes sequentiel et parallele
    22
    3        IF (is_sequential) THEN 
     3       CALL gather(rlat,rlat_glo)
     4       CALL bcast(rlat_glo)
     5       CALL gather(rlon,rlon_glo)
     6       CALL bcast(rlon_glo)
     7
     8c$OMP MASTER
     9      if (is_mpi_root) then
    410c
    511       zstophy = dtime
    6        zout = ecrit_day
     12       zout = mth_len*un_jour
    713c
    814       idayref = day_ref
    915       CALL ymds2ju(annee_ref, 1, idayref, 0.0, zjulian)
    1016c
    11        CALL gr_fi_ecrit(1,klon,iim,jjmp1,rlon,zx_lon)
     17       CALL gr_fi_ecrit(1,klon,iim,jjmp1,rlon_glo,zx_lon)
    1218       if (iim.gt.1) then
    1319       DO i = 1, iim
    14          zx_lon(i,1) = rlon(i+1)
    15          zx_lon(i,jjmp1) = rlon(i+1)
     20         zx_lon(i,1) = rlon_glo(i+1)
     21         zx_lon(i,jjmp1) = rlon_glo(i+1)
    1622       ENDDO
    1723       endif
    18        CALL gr_fi_ecrit(1,klon,iim,jjmp1,rlat,zx_lat)
     24       CALL gr_fi_ecrit(1,klon,iim,jjmp1,rlat_glo,zx_lat)
    1925c
    2026       CALL histbeg("paramLMDZ_phy.nc",
    21      .                 iim,zx_lon(:,1), jjmp1,zx_lat(1,:),
     27     .                 np,zx_lon(np:np,1), np,zx_lat(1,np:np),
    2228     .                 1,1,1,1,
    2329     .                 itau_phy, zjulian, dtime,
    2430     .                 nhori, nid_ctesGCM)
    2531c
    26 c Variables type caractere : plusieurs valeurs possibles
    27 c
    28        CALL histdef(nid_ctesGCM, "ocean",
    29      .        "Type ocean utilise: 1=force, 2=slab, 3=couple",
    30      .                "-",iim,jjmp1,nhori, 1,1,1, -99, 32,
    31      .                "once", zstophy,zout)
    32 c
    33        CALL histdef(nid_ctesGCM, "type_run",
    34      .        "Type run: 1= CLIM ou ENSP, 2= AMIP ou CFMI",
    35      .                "-",iim,jjmp1,nhori, 1,1,1, -99, 32,
    36      .                "once", zstophy,zout)
    37 c
    38 c Variables logiques (1=true, 0=false)
    39 c
    40        CALL histdef(nid_ctesGCM, "ok_veget",
    41      .        "Type de modele de vegetation: 1=ORCHIDEE, 0=bucket",
    42      .                "-",iim,jjmp1,nhori, 1,1,1, -99, 32,
    43      .                "once", zstophy,zout)
    44 c
    45        CALL histdef(nid_ctesGCM, "ok_journe",
    46      .        "Creation du fichier histday: 1=true, 0=false",
    47      .                "-",iim,jjmp1,nhori, 1,1,1, -99, 32,
    48      .                "once", zstophy,zout)
    49 c
    50        CALL histdef(nid_ctesGCM, "ok_mensuel",
    51      .        "Creation du fichier histmth: 1=true, 0=false",
    52      .                "-",iim,jjmp1,nhori, 1,1,1, -99, 32,
    53      .                "once", zstophy,zout)
    54 c
    55        CALL histdef(nid_ctesGCM, "ok_instan",
    56      .        "Creation du fichier histins: 1=true, 0=false",
    57      .                "-",iim,jjmp1,nhori, 1,1,1, -99, 32,
    58      .                "once", zstophy,zout)
    59 c
    60        CALL histdef(nid_ctesGCM, "ok_ade",
    61      .        "Aerosol direct effect: 1=true, 0=false",
    62      .                "-",iim,jjmp1,nhori, 1,1,1, -99, 32,
    63      .                "once", zstophy,zout)
    64 c
    65        CALL histdef(nid_ctesGCM, "ok_aie",
    66      .        "Aerosol indirect effect: 1=true, 0=false",
    67      .                "-",iim,jjmp1,nhori, 1,1,1, -99, 32,
    68      .                "once", zstophy,zout)
    69 c
    70        CALL histdef(nid_ctesGCM, "bl95_b0",
    71      .        "Parameter in CDNC-maer link (Boucher&Lohmann 1995)",
    72      .                "-",iim,jjmp1,nhori, 1,1,1, -99, 32,
    73      .                "ave(X)", zstophy,zout)
    74 c
    75        CALL histdef(nid_ctesGCM, "bl95_b1",
    76      .        "Parameter in CDNC-maer link (Boucher&Lohmann 1995)",
    77      .                "-",iim,jjmp1,nhori, 1,1,1, -99, 32,
    78      .                "ave(X)", zstophy,zout)
    79 c
    80        CALL histdef(nid_ctesGCM, "ip_ebil_phy",
    81      .                "Niveau sortie diags bilan energie cote physique",
    82      .                "-",iim,jjmp1,nhori, 1,1,1, -99, 32,
    83      .                "ave(X)", zstophy,zout)
    84 c
    8532       CALL histdef(nid_ctesGCM, "R_ecc",
    8633     .                "Excentricite","-",
    87      .                iim,jjmp1,nhori, 1,1,1, -99, 32,
    88      .                "once", zstophy,zout)
     34     .                1,1,nhori, 1,1,1, -99, 32,
     35     .                "ave", zstophy,zout)
    8936c
    9037       CALL histdef(nid_ctesGCM, "R_peri",
    9138     .                "Equinoxe","-",
    92      .                iim,jjmp1,nhori, 1,1,1, -99, 32,
    93      .                "once", zstophy,zout)
     39     .                1,1,nhori, 1,1,1, -99, 32,
     40     .                "ave", zstophy,zout)
    9441c
    9542       CALL histdef(nid_ctesGCM, "R_incl",
    9643     .                "Inclinaison","deg",
    97      .                iim,jjmp1,nhori, 1,1,1, -99, 32,
    98      .                "once", zstophy,zout)
     44     .                1,1,nhori, 1,1,1, -99, 32,
     45     .                "ave", zstophy,zout)
    9946c
    10047       CALL histdef(nid_ctesGCM, "solaire",
    10148     .                "Constante solaire","W/m2",
    102      .                iim,jjmp1,nhori, 1,1,1, -99, 32,
    103      .                "once", zstophy,zout)
     49     .                1,1,nhori, 1,1,1, -99, 32,
     50     .                "ave", zstophy,zout)
    10451c
    10552       CALL histdef(nid_ctesGCM, "co2_ppm",
    10653     .                "Concentration du CO2", "ppm",
    107      .                iim,jjmp1,nhori, 1,1,1, -99, 32,
     54     .                1,1,nhori, 1,1,1, -99, 32,
    10855     .                "ave(X)", zstophy,zout)
    10956c
    11057       CALL histdef(nid_ctesGCM, "CH4_ppb",
    11158     .                "Concentration du CH4", "ppb",
    112      .                iim,jjmp1,nhori, 1,1,1, -99, 32,
     59     .                1,1,nhori, 1,1,1, -99, 32,
    11360     .                "ave(X)", zstophy,zout)
    11461c
    11562       CALL histdef(nid_ctesGCM, "N2O_ppb",
    11663     .                "Concentration du N2O", "ppb",
    117      .                iim,jjmp1,nhori, 1,1,1, -99, 32,
     64     .                1,1,nhori, 1,1,1, -99, 32,
    11865     .                "ave(X)", zstophy,zout)
    11966c
    12067       CALL histdef(nid_ctesGCM, "CFC11_ppt",
    12168     .                "Concentration du CFC11", "ppt",
    122      .                iim,jjmp1,nhori, 1,1,1, -99, 32,
     69     .                1,1,nhori, 1,1,1, -99, 32,
    12370     .                "ave(X)", zstophy,zout)
    12471c
    12572       CALL histdef(nid_ctesGCM, "CFC12_ppt",
    12673     .                "Concentration du CFC12", "ppt",
    127      .                iim,jjmp1,nhori, 1,1,1, -99, 32,
     74     .                1,1,nhori, 1,1,1, -99, 32,
    12875     .                "ave(X)", zstophy,zout)
    12976c
    130        CALL histdef(nid_ctesGCM, "epmax",
    131      .                "Efficacite precip", "-",
    132      .                iim,jjmp1,nhori, 1,1,1, -99, 32,
    133      .                "once", zstophy,zout)
     77       CALL histdef(nid_ctesGCM, "bils",
     78     .                "Surface total heat flux", "W m-2",
     79     .                1,1,nhori, 1,1,1, -99, 32,
     80     .                "ave", zstophy,zout)
    13481c
    135        CALL histdef(nid_ctesGCM, "ok_adj_ema",
    136      .                "ok_adj_ema: 1=true, 0=false", "-",
    137      .                iim,jjmp1,nhori, 1,1,1, -99, 32,
    138      .                "once", zstophy,zout)
     82       CALL histdef(nid_ctesGCM, "evap",
     83     .                "Evaporation", "kg m-2 s-1",
     84     .                1,1,nhori, 1,1,1, -99, 32,
     85     .                "ave", zstophy,zout)
    13986c
    140        CALL histdef(nid_ctesGCM, "iflag_clw",
    141      .                "iflag_clw", "-",
    142      .                iim,jjmp1,nhori, 1,1,1, -99, 32,
    143      .                "once", zstophy,zout)
     87       CALL histdef(nid_ctesGCM, "evap_land",
     88     .                "Land evaporation", "kg m-2 s-1",
     89     .                1,1,nhori, 1,1,1, -99, 32,
     90     .                "ave", zstophy,zout)
    14491c
    145        CALL histdef(nid_ctesGCM, "cld_lc_lsc",
    146      .                "cld_lc_lsc", "-",
    147      .                iim,jjmp1,nhori, 1,1,1, -99, 32,
    148      .                "once", zstophy,zout)
     92       CALL histdef(nid_ctesGCM, "flat",
     93     .                "Latent heat flux", "W m-2",
     94     .                1,1,nhori, 1,1,1, -99, 32,
     95     .                "ave", zstophy,zout)
    14996c
    150        CALL histdef(nid_ctesGCM, "cld_lc_con",
    151      .                "cld_lc_con", "-",
    152      .                iim,jjmp1,nhori, 1,1,1, -99, 32,
    153      .                "once", zstophy,zout)
     97       CALL histdef(nid_ctesGCM, "nettop0",
     98     .                "Clear sky net downward radiatif flux at TOA",
     99     .                "W m-2",
     100     .                1,1,nhori, 1,1,1, -99, 32,
     101     .                "ave", zstophy,zout)
    154102c
    155        CALL histdef(nid_ctesGCM, "cld_tau_lsc",
    156      .                "cld_tau_lsc", "-",
    157      .                iim,jjmp1,nhori, 1,1,1, -99, 32,
    158      .                "once", zstophy,zout)
     103       CALL histdef(nid_ctesGCM, "nettop",
     104     .                "Net downward radiatif flux at TOA", "W m-2",
     105     .                1,1,nhori, 1,1,1, -99, 32,
     106     .                "ave", zstophy,zout)
    159107c
    160        CALL histdef(nid_ctesGCM, "cld_tau_con",
    161      .                "cld_tau_con", "-",
    162      .                iim,jjmp1,nhori, 1,1,1, -99, 32,
    163      .                "once", zstophy,zout)
     108       CALL histdef(nid_ctesGCM, "precip",
     109     .                "Total precipitation (liq+sol)", "kg m-2 s-1",
     110     .                1,1,nhori, 1,1,1, -99, 32,
     111     .                "ave", zstophy,zout)
    164112c
    165        CALL histdef(nid_ctesGCM, "ffallv_lsc",
    166      .                "ffallv_lsc", "-",
    167      .                iim,jjmp1,nhori, 1,1,1, -99, 32,
    168      .                "once", zstophy,zout)
     113       CALL histdef(nid_ctesGCM, "tsol",
     114     .                "Surface temperature", "K",
     115     .                1,1,nhori, 1,1,1, -99, 32,
     116     .                "ave", zstophy,zout)
    169117c
    170        CALL histdef(nid_ctesGCM, "ffallv_con",
    171      .                "ffallv_con", "-",
    172      .                iim,jjmp1,nhori, 1,1,1, -99, 32,
    173      .                "once", zstophy,zout)
     118       CALL histdef(nid_ctesGCM, "t2m",
     119     .                "Temperature at 2m", "K",
     120     .                1,1,nhori, 1,1,1, -99, 32,
     121     .                "ave", zstophy,zout)
    174122c
    175        CALL histdef(nid_ctesGCM, "coef_eva",
    176      .                "coef_eva", "-",
    177      .                iim,jjmp1,nhori, 1,1,1, -99, 32,
    178      .                "once", zstophy,zout)
    179 c
    180        CALL histdef(nid_ctesGCM, "reevap_ice",
    181      .                "reevap_ice: 1=true, 0=false", "-",
    182      .                iim,jjmp1,nhori, 1,1,1, -99, 32,
    183      .                "once", zstophy,zout)
    184 c
    185        CALL histdef(nid_ctesGCM, "iflag_cldcon",
    186      .                "iflag_cldcon", "-",
    187      .                iim,jjmp1,nhori, 1,1,1, -99, 32,
    188      .                "once", zstophy,zout)
    189 c
    190        CALL histdef(nid_ctesGCM, "iflag_pdf",
    191      .                "iflag_pdf", "-",
    192      .                iim,jjmp1,nhori, 1,1,1, -99, 32,
    193      .                "once", zstophy,zout)
    194 c
    195        CALL histdef(nid_ctesGCM, "fact_cldcon",
    196      .                "fact_cldcon", "-",
    197      .                iim,jjmp1,nhori, 1,1,1, -99, 32,
    198      .                "once", zstophy,zout)
    199 c
    200        CALL histdef(nid_ctesGCM, "facttemps",
    201      .                "facttemps", "-",
    202      .                iim,jjmp1,nhori, 1,1,1, -99, 32,
    203      .                "once", zstophy,zout)
    204 c
    205        CALL histdef(nid_ctesGCM, "ok_newmicro",
    206      .                "Nouvelle micro-physique: 1=true, 0=false",
    207      .                "-",iim,jjmp1,nhori, 1,1,1, -99, 32,
    208      .                "once", zstophy,zout)
    209 c
    210        CALL histdef(nid_ctesGCM, "ratqsbas",
    211      .                "ratqsbas", "-",
    212      .                iim,jjmp1,nhori, 1,1,1, -99, 32,
    213      .                "once", zstophy,zout)
    214 c
    215        CALL histdef(nid_ctesGCM, "ratqshaut",
    216      .                "ratqshaut", "-",
    217      .                iim,jjmp1,nhori, 1,1,1, -99, 32,
    218      .                "once", zstophy,zout)
    219 c
    220        CALL histdef(nid_ctesGCM, "rad_froid",
    221      .                "rad_froid", "-",
    222      .                iim,jjmp1,nhori, 1,1,1, -99, 32,
    223      .                "once", zstophy,zout)
    224 c
    225        CALL histdef(nid_ctesGCM, "rad_chau1",
    226      .                "rad_chau1", "-",
    227      .                iim,jjmp1,nhori, 1,1,1, -99, 32,
    228      .                "once", zstophy,zout)
    229 c
    230        CALL histdef(nid_ctesGCM, "rad_chau2",
    231      .                "rad_chau2", "-",
    232      .                iim,jjmp1,nhori, 1,1,1, -99, 32,
    233      .                "once", zstophy,zout)
    234 c
    235        CALL histdef(nid_ctesGCM, "top_height",
    236      .                "top_height", "-",
    237      .                iim,jjmp1,nhori, 1,1,1, -99, 32,
    238      .                "once", zstophy,zout)
    239 c
    240        CALL histdef(nid_ctesGCM, "overlap",
    241      .                "overlap", "-",
    242      .                iim,jjmp1,nhori, 1,1,1, -99, 32,
    243      .                "once", zstophy,zout)
    244 c
    245        CALL histdef(nid_ctesGCM, "cdmmax",
    246      .                "cdmmax", "-",
    247      .                iim,jjmp1,nhori, 1,1,1, -99, 32,
    248      .                "once", zstophy,zout)
    249 c
    250        CALL histdef(nid_ctesGCM, "cdhmax",
    251      .                "cdhmax", "-",
    252      .                iim,jjmp1,nhori, 1,1,1, -99, 32,
    253      .                "once", zstophy,zout)
    254 c
    255        CALL histdef(nid_ctesGCM, "ksta",
    256      .                "ksta", "-",
    257      .                iim,jjmp1,nhori, 1,1,1, -99, 32,
    258      .                "once", zstophy,zout)
    259 c
    260        CALL histdef(nid_ctesGCM, "ksta_ter",
    261      .                "ksta_ter", "-",
    262      .                iim,jjmp1,nhori, 1,1,1, -99, 32,
    263      .                "once", zstophy,zout)
    264 c
    265        CALL histdef(nid_ctesGCM, "ok_kzmin",
    266      .                "ok_kzmin: 1=true, 0=false", "-",
    267      .                iim,jjmp1,nhori, 1,1,1, -99, 32,
    268      .                "once", zstophy,zout)
    269 c
    270        CALL histdef(nid_ctesGCM, "iflag_pbl",
    271      .                "iflag_pbl", "-",
    272      .                iim,jjmp1,nhori, 1,1,1, -99, 32,
    273      .                "once", zstophy,zout)
    274 c
    275        CALL histdef(nid_ctesGCM, "lev_histhf",
    276      .                "lev_histhf", "-",
    277      .                iim,jjmp1,nhori, 1,1,1, -99, 32,
    278      .                "once", zstophy,zout)
    279 c
    280        CALL histdef(nid_ctesGCM, "lev_histday",
    281      .                "lev_histday", "-",
    282      .                iim,jjmp1,nhori, 1,1,1, -99, 32,
    283      .                "once", zstophy,zout)
    284 c
    285        CALL histdef(nid_ctesGCM, "lev_histmth",
    286      .                "lev_histmth", "-",
    287      .                iim,jjmp1,nhori, 1,1,1, -99, 32,
    288      .                "once", zstophy,zout)
    289 c
    290        CALL histdef(nid_ctesGCM, "ok_isccp",
    291      .                "Creation fichier histISCCP: 1=true, 0=false",
    292      .                "-",iim,jjmp1,nhori, 1,1,1, -99, 32,
    293      .                "once", zstophy,zout)
    294 c
    295        CALL histdef(nid_ctesGCM, "lonmin_ins",
    296      .                "lonmin_ins", "-",
    297      .                iim,jjmp1,nhori, 1,1,1, -99, 32,
    298      .                "once", zstophy,zout)
    299 c
    300        CALL histdef(nid_ctesGCM, "lonmax_ins",
    301      .                "lonmax_ins", "-",
    302      .                iim,jjmp1,nhori, 1,1,1, -99, 32,
    303      .                "once", zstophy,zout)
    304 c
    305        CALL histdef(nid_ctesGCM, "latmin_ins",
    306      .                "latmin_ins", "-",
    307      .                iim,jjmp1,nhori, 1,1,1, -99, 32,
    308      .                "once", zstophy,zout)
    309 c
    310        CALL histdef(nid_ctesGCM, "latmax_ins",
    311      .                "latmax_ins", "-",
    312      .                iim,jjmp1,nhori, 1,1,1, -99, 32,
    313      .                "once", zstophy,zout)
    314 c
    315        CALL histdef(nid_ctesGCM, "ecrit_ins",
    316      .                "ecrit_ins", "-",
    317      .                iim,jjmp1,nhori, 1,1,1, -99, 32,
    318      .                "once", zstophy,zout)
    319 c
    320        CALL histdef(nid_ctesGCM, "ecrit_hf",
    321      .                "ecrit_hf", "-",
    322      .                iim,jjmp1,nhori, 1,1,1, -99, 32,
    323      .                "once", zstophy,zout)
    324 c
    325        CALL histdef(nid_ctesGCM, "ecrit_day",
    326      .                "ecrit_day", "-",
    327      .                iim,jjmp1,nhori, 1,1,1, -99, 32,
    328      .                "once", zstophy,zout)
    329 c
    330        CALL histdef(nid_ctesGCM, "ecrit_mth",
    331      .                "ecrit_mth", "-",
    332      .                iim,jjmp1,nhori, 1,1,1, -99, 32,
    333      .                "once", zstophy,zout)
    334 c
    335        CALL histdef(nid_ctesGCM, "ecrit_tra",
    336      .                "ecrit_tra", "-",
    337      .                iim,jjmp1,nhori, 1,1,1, -99, 32,
    338      .                "once", zstophy,zout)
    339 c
    340        CALL histdef(nid_ctesGCM, "ecrit_reg",
    341      .                "ecrit_reg", "-",
    342      .                iim,jjmp1,nhori, 1,1,1, -99, 32,
    343      .                "once", zstophy,zout)
    344 c
    345        CALL histdef(nid_ctesGCM, "freq_ISCCP",
    346      .                "freq_ISCCP", "-",
    347      .                iim,jjmp1,nhori, 1,1,1, -99, 32,
    348      .                "once", zstophy,zout)
    349 c
    350        CALL histdef(nid_ctesGCM, "ecrit_ISCCP",
    351      .                "ecrit_ISCCP", "-",
    352      .                iim,jjmp1,nhori, 1,1,1, -99, 32,
    353      .                "once", zstophy,zout)
    354 c
     123       CALL histdef(nid_ctesGCM, "prw",
     124     .                "Precipitable water", "kg m-2",
     125     .                1,1,nhori, 1,1,1, -99, 32,
     126     .                "ave", zstophy,zout)
    355127c=================================================================
    356128c
    357129       CALL histend(nid_ctesGCM)
    358130       
    359        ENDIF ! is_sequential
    360 c
     131       endif !(is_mpi_root)
     132c$OMP END MASTER
    361133c=================================================================
  • LMDZ4/branches/LMDZ4_AR5/libf/phylmd/physiq.F

    r1528 r1533  
    11501150c============================================================
    11511151      real :: mr_ozone(klon,klev)
     1152
     1153cIM sorties fichier 1D paramLMDZ_phy.nc
     1154      REAL :: zx_tmp_0d(1,1)
     1155      INTEGER, PARAMETER :: np=1
     1156      REAL,dimension(klon_glo)        :: rlat_glo
     1157      REAL,dimension(klon_glo)        :: rlon_glo
     1158      REAL gbils(1), gevap(1), gevapt(1), glat(1), gnet0(1), gnet(1)
     1159      REAL grain(1), gtsol(1), gt2m(1), gprw(1)
     1160
    11521161cIM for NMC files
    11531162      missing_val=nf90_fill_real
  • LMDZ4/branches/LMDZ4_AR5/libf/phylmd/write_paramLMDZ_phy.h

    r996 r1533  
    11c
    2       IF (is_sequential) THEN
    3      
     2c calcul moyennes globales
     3c
     4       zx_tmp_fi2d=bils*airephy
     5       CALL global_mean(zx_tmp_fi2d,airephy,.TRUE.,gbils)
     6       zx_tmp_fi2d=evap*airephy
     7       CALL global_mean(zx_tmp_fi2d,airephy,.TRUE.,gevap)
     8       zx_tmp_fi2d(:)=fevap(:, is_ter)*airephy(:)
     9       CALL global_mean(zx_tmp_fi2d,airephy,.TRUE.,gevapt)
     10       zx_tmp_fi2d=zxfluxlat*airephy
     11       CALL global_mean(zx_tmp_fi2d,airephy,.TRUE.,glat)
     12       zx_tmp_fi2d=(topsw0-toplw0)*airephy
     13       CALL global_mean(zx_tmp_fi2d,airephy,.TRUE.,gnet0)
     14       zx_tmp_fi2d=(topsw-toplw)*airephy
     15       CALL global_mean(zx_tmp_fi2d,airephy,.TRUE.,gnet)
     16       zx_tmp_fi2d=(rain_fall+snow_fall)*airephy
     17       CALL global_mean(zx_tmp_fi2d,airephy,.TRUE.,grain)
     18       zx_tmp_fi2d=zxtsol*airephy
     19       CALL global_mean(zx_tmp_fi2d,airephy,.TRUE.,gtsol)
     20       zx_tmp_fi2d=zt2m*airephy
     21       CALL global_mean(zx_tmp_fi2d,airephy,.TRUE.,gt2m)
     22       zx_tmp_fi2d=prw*airephy
     23       CALL global_mean(zx_tmp_fi2d,airephy,.TRUE.,gprw)
     24c
     25c$OMP MASTER
     26      if (is_mpi_root) then     
     27c
    428      ndex2d = 0
    529      itau_w = itau_phy + itap
    630c
    7 c Variables type caractere : plusieurs valeurs possibles
     31c Variables globales
    832c
    9       IF(type_ocean.EQ.'force ') THEN
    10        zx_tmp_2d(1:iim,1:jjmp1)=1.
    11       ELSE IF(type_ocean.EQ.'slab  ') THEN
    12        zx_tmp_2d(1:iim,1:jjmp1)=2.
    13       ELSE IF(type_ocean.EQ.'couple') THEN
    14        zx_tmp_2d(1:iim,1:jjmp1)=3.
    15       ENDIF
    16       CALL histwrite(nid_ctesGCM,"ocean",itau_w,
    17      .               zx_tmp_2d,iim*jjmp1,ndex2d)
     33      zx_tmp_0d=R_ecc
     34      CALL histwrite(nid_ctesGCM,"R_ecc",itau_w,
     35     .               zx_tmp_0d,np,ndex2d)
    1836c
    19       IF(type_run.EQ.'CLIM'.OR.type_run.EQ.'ENSP') THEN
    20        zx_tmp_2d(1:iim,1:jjmp1)=1.
    21       ELSE IF(type_run.EQ.'AMIP'.OR.type_run.EQ.'CFMI') THEN
    22        zx_tmp_2d(1:iim,1:jjmp1)=2.
    23       ENDIF
    24       CALL histwrite(nid_ctesGCM,"type_run",itau_w,
    25      .               zx_tmp_2d,iim*jjmp1,ndex2d)
     37      zx_tmp_0d=R_peri
     38      CALL histwrite(nid_ctesGCM,"R_peri",itau_w,
     39     .               zx_tmp_0d,np,ndex2d)
    2640c
    27 c Variables logiques (1=true, 2=false)
     41      zx_tmp_0d=R_incl
     42      CALL histwrite(nid_ctesGCM,"R_incl",itau_w,
     43     .               zx_tmp_0d,np,ndex2d)
    2844c
    29       IF(ok_veget) THEN
    30        zx_tmp_2d(1:iim,1:jjmp1)=1.
    31       ELSE
    32        zx_tmp_2d(1:iim,1:jjmp1)=0.
    33       ENDIF
    34       CALL histwrite(nid_ctesGCM,"ok_veget",itau_w,
    35      .               zx_tmp_2d,iim*jjmp1,ndex2d)
     45      zx_tmp_0d=solaire
     46      CALL histwrite(nid_ctesGCM,"solaire",itau_w,
     47     .               zx_tmp_0d,np,ndex2d)
    3648c
    37       IF(ok_journe) THEN
    38        zx_tmp_2d(1:iim,1:jjmp1)=1.
    39       ELSE
    40        zx_tmp_2d(1:iim,1:jjmp1)=0.
    41       ENDIF
    42       CALL histwrite(nid_ctesGCM,"ok_journe",itau_w,
    43      .               zx_tmp_2d,iim*jjmp1,ndex2d)
     49      zx_tmp_0d=co2_ppm
     50      CALL histwrite(nid_ctesGCM,"co2_ppm",itau_w,
     51     .               zx_tmp_0d,np,ndex2d)
    4452c
    45       IF(ok_mensuel) THEN
    46        zx_tmp_2d(1:iim,1:jjmp1)=1.
    47       ELSE
    48        zx_tmp_2d(1:iim,1:jjmp1)=0.
    49       ENDIF
    50       CALL histwrite(nid_ctesGCM,"ok_mensuel",itau_w,
    51      .               zx_tmp_2d,iim*jjmp1,ndex2d)
     53      zx_tmp_0d=CH4_ppb
     54      CALL histwrite(nid_ctesGCM,"CH4_ppb",itau_w,
     55     .               zx_tmp_0d,np,ndex2d)
    5256c
    53       IF(ok_instan) THEN
    54        zx_tmp_2d(1:iim,1:jjmp1)=1.
    55       ELSE
    56        zx_tmp_2d(1:iim,1:jjmp1)=0.
    57       ENDIF
    58       CALL histwrite(nid_ctesGCM,"ok_instan",itau_w,
    59      .               zx_tmp_2d,iim*jjmp1,ndex2d)
     57      zx_tmp_0d=N2O_ppb
     58      CALL histwrite(nid_ctesGCM,"N2O_ppb",itau_w,
     59     .               zx_tmp_0d,np,ndex2d)
    6060c
    61       IF(ok_ade) THEN
    62        zx_tmp_2d(1:iim,1:jjmp1)=1.
    63       ELSE
    64        zx_tmp_2d(1:iim,1:jjmp1)=0.
    65       ENDIF
    66       CALL histwrite(nid_ctesGCM,"ok_ade",itau_w,
    67      .               zx_tmp_2d,iim*jjmp1,ndex2d)
     61      zx_tmp_0d=CFC11_ppt
     62      CALL histwrite(nid_ctesGCM,"CFC11_ppt",itau_w,
     63     .               zx_tmp_0d,np,ndex2d)
    6864c
    69       IF(ok_aie) THEN
    70        zx_tmp_2d(1:iim,1:jjmp1)=1.
    71       ELSE
    72        zx_tmp_2d(1:iim,1:jjmp1)=0.
    73       ENDIF
    74       CALL histwrite(nid_ctesGCM,"ok_aie",itau_w,
    75      .               zx_tmp_2d,iim*jjmp1,ndex2d)
    76 c
    77 
    78 c
    79 c Champs 2D:
    80 c
    81       zx_tmp_2d(1:iim,1:jjmp1)=bl95_b0
    82       CALL histwrite(nid_ctesGCM,"bl95_b0",itau_w,
    83      .               zx_tmp_2d,iim*jjmp1,ndex2d)
    84 c
    85       zx_tmp_2d(1:iim,1:jjmp1)=bl95_b1
    86       CALL histwrite(nid_ctesGCM,"bl95_b1",itau_w,
    87      .               zx_tmp_2d,iim*jjmp1,ndex2d)
    88 c
    89       zx_tmp_2d(1:iim,1:jjmp1)=ip_ebil_phy
    90       CALL histwrite(nid_ctesGCM,"ip_ebil_phy",itau_w,
    91      .               zx_tmp_2d,iim*jjmp1,ndex2d)
    92 c
    93       zx_tmp_2d(1:iim,1:jjmp1)=R_ecc
    94       CALL histwrite(nid_ctesGCM,"R_ecc",itau_w,
    95      .               zx_tmp_2d,iim*jjmp1,ndex2d)
    96 c
    97       zx_tmp_2d(1:iim,1:jjmp1)=R_peri
    98       CALL histwrite(nid_ctesGCM,"R_peri",itau_w,
    99      .               zx_tmp_2d,iim*jjmp1,ndex2d)
    100 c
    101       zx_tmp_2d(1:iim,1:jjmp1)=R_incl
    102       CALL histwrite(nid_ctesGCM,"R_incl",itau_w,
    103      .               zx_tmp_2d,iim*jjmp1,ndex2d)
    104 c
    105       zx_tmp_2d(1:iim,1:jjmp1)=solaire
    106       CALL histwrite(nid_ctesGCM,"solaire",itau_w,
    107      .               zx_tmp_2d,iim*jjmp1,ndex2d)
    108 c
    109       zx_tmp_2d(1:iim,1:jjmp1)=co2_ppm
    110       CALL histwrite(nid_ctesGCM,"co2_ppm",itau_w,
    111      .               zx_tmp_2d,iim*jjmp1,ndex2d)
    112 c
    113       zx_tmp_2d(1:iim,1:jjmp1)=CH4_ppb
    114       CALL histwrite(nid_ctesGCM,"CH4_ppb",itau_w,
    115      .               zx_tmp_2d,iim*jjmp1,ndex2d)
    116 c
    117       zx_tmp_2d(1:iim,1:jjmp1)=N2O_ppb
    118       CALL histwrite(nid_ctesGCM,"N2O_ppb",itau_w,
    119      .               zx_tmp_2d,iim*jjmp1,ndex2d)
    120 c
    121       zx_tmp_2d(1:iim,1:jjmp1)=CFC11_ppt
    122       CALL histwrite(nid_ctesGCM,"CFC11_ppt",itau_w,
    123      .               zx_tmp_2d,iim*jjmp1,ndex2d)
    124 c
    125       zx_tmp_2d(1:iim,1:jjmp1)=CFC12_ppt
     65      zx_tmp_0d=CFC12_ppt
    12666      CALL histwrite(nid_ctesGCM,"CFC12_ppt",itau_w,
    127      .               zx_tmp_2d,iim*jjmp1,ndex2d)
    128 c
    129       zx_tmp_2d(1:iim,1:jjmp1)=epmax
    130       CALL histwrite(nid_ctesGCM,"epmax",itau_w,
    131      .               zx_tmp_2d,iim*jjmp1,ndex2d)
    132 c
    133 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
    134 ! FH 2008/05/09 On elimine toutes les clefs physiques dans la dynamique
    135 ! Mais est-il bien raisonable de stoker ces fichiers comme des
    136 ! champs 2D...
    137 ! WARNING :
    138 ! Il faudrait ici ajoute l'ecriture des champs
    139 !      cycle_diurne = cycle_diurne_omp
    140 !   soil_model = soil_model_omp
    141 !   new_oliq = new_oliq_omp
    142 !   ok_orodr = ok_orodr_omp
    143 !   ok_orolf = ok_orolf_omp
    144 !   ok_limitvrai = ok_limitvrai_omp
    145 !   nbapp_rad = nbapp_rad_omp
    146 !   iflag_con = iflag_con_omp
    147 ! qui se trouvaient auparavant dans gcm.def et maintenant dans
    148 ! physiq.def.
    149 ! Mais regarder d'abord a quoi ca sert ...
    150 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
    151 
    152 
    153 c
    154       IF(ok_adj_ema) THEN
    155        zx_tmp_2d(1:iim,1:jjmp1)=1.
    156       ELSE
    157        zx_tmp_2d(1:iim,1:jjmp1)=0.
    158       ENDIF
    159       CALL histwrite(nid_ctesGCM,"ok_adj_ema",itau_w,
    160      .               zx_tmp_2d,iim*jjmp1,ndex2d)
    161 c
    162       zx_tmp_2d(1:iim,1:jjmp1)=iflag_clw
    163       CALL histwrite(nid_ctesGCM,"iflag_clw",itau_w,
    164      .               zx_tmp_2d,iim*jjmp1,ndex2d)
    165 c
    166       zx_tmp_2d(1:iim,1:jjmp1)=cld_lc_lsc
    167       CALL histwrite(nid_ctesGCM,"cld_lc_lsc",itau_w,
    168      .               zx_tmp_2d,iim*jjmp1,ndex2d)
    169 c
    170       zx_tmp_2d(1:iim,1:jjmp1)=cld_lc_con
    171       CALL histwrite(nid_ctesGCM,"cld_lc_con",itau_w,
    172      .               zx_tmp_2d,iim*jjmp1,ndex2d)
    173 c
    174       zx_tmp_2d(1:iim,1:jjmp1)=cld_tau_lsc
    175       CALL histwrite(nid_ctesGCM,"cld_tau_lsc",itau_w,
    176      .               zx_tmp_2d,iim*jjmp1,ndex2d)
    177 c
    178       zx_tmp_2d(1:iim,1:jjmp1)=cld_tau_con
    179       CALL histwrite(nid_ctesGCM,"cld_tau_con",itau_w,
    180      .               zx_tmp_2d,iim*jjmp1,ndex2d)
    181 c
    182       zx_tmp_2d(1:iim,1:jjmp1)=ffallv_lsc
    183       CALL histwrite(nid_ctesGCM,"ffallv_lsc",itau_w,
    184      .               zx_tmp_2d,iim*jjmp1,ndex2d)
    185 c
    186       zx_tmp_2d(1:iim,1:jjmp1)=ffallv_con
    187       CALL histwrite(nid_ctesGCM,"ffallv_con",itau_w,
    188      .               zx_tmp_2d,iim*jjmp1,ndex2d)
    189 c
    190       zx_tmp_2d(1:iim,1:jjmp1)=coef_eva
    191       CALL histwrite(nid_ctesGCM,"coef_eva",itau_w,
    192      .               zx_tmp_2d,iim*jjmp1,ndex2d)
    193 c
    194       IF(reevap_ice) THEN
    195        zx_tmp_2d(1:iim,1:jjmp1)=1.
    196       ELSE
    197        zx_tmp_2d(1:iim,1:jjmp1)=0.
    198       ENDIF
    199       CALL histwrite(nid_ctesGCM,"reevap_ice",itau_w,
    200      .               zx_tmp_2d,iim*jjmp1,ndex2d)
    201 c
    202       zx_tmp_2d(1:iim,1:jjmp1)=iflag_cldcon
    203       CALL histwrite(nid_ctesGCM,"iflag_cldcon",itau_w,
    204      .               zx_tmp_2d,iim*jjmp1,ndex2d)
    205 c
    206       zx_tmp_2d(1:iim,1:jjmp1)=iflag_pdf
    207       CALL histwrite(nid_ctesGCM,"iflag_pdf",itau_w,
    208      .               zx_tmp_2d,iim*jjmp1,ndex2d)
    209 c
    210       zx_tmp_2d(1:iim,1:jjmp1)=fact_cldcon
    211       CALL histwrite(nid_ctesGCM,"fact_cldcon",itau_w,
    212      .               zx_tmp_2d,iim*jjmp1,ndex2d)
    213 c
    214       zx_tmp_2d(1:iim,1:jjmp1)=facttemps
    215       CALL histwrite(nid_ctesGCM,"facttemps",itau_w,
    216      .               zx_tmp_2d,iim*jjmp1,ndex2d)
    217 c
    218       IF(ok_newmicro) THEN
    219        zx_tmp_2d(1:iim,1:jjmp1)=1.
    220       ELSE
    221        zx_tmp_2d(1:iim,1:jjmp1)=0.
    222       ENDIF
    223       CALL histwrite(nid_ctesGCM,"ok_newmicro",itau_w,
    224      .               zx_tmp_2d,iim*jjmp1,ndex2d)
    225 c
    226       zx_tmp_2d(1:iim,1:jjmp1)=ratqsbas
    227       CALL histwrite(nid_ctesGCM,"ratqsbas",itau_w,
    228      .               zx_tmp_2d,iim*jjmp1,ndex2d)
    229 c
    230       zx_tmp_2d(1:iim,1:jjmp1)=ratqshaut
    231       CALL histwrite(nid_ctesGCM,"ratqshaut",itau_w,
    232      .               zx_tmp_2d,iim*jjmp1,ndex2d)
    233 c
    234       zx_tmp_2d(1:iim,1:jjmp1)=rad_froid
    235       CALL histwrite(nid_ctesGCM,"rad_froid",itau_w,
    236      .               zx_tmp_2d,iim*jjmp1,ndex2d)
    237 c
    238       zx_tmp_2d(1:iim,1:jjmp1)=rad_chau1
    239       CALL histwrite(nid_ctesGCM,"rad_chau1",itau_w,
    240      .               zx_tmp_2d,iim*jjmp1,ndex2d)
    241 c
    242       zx_tmp_2d(1:iim,1:jjmp1)=rad_chau2
    243       CALL histwrite(nid_ctesGCM,"rad_chau2",itau_w,
    244      .               zx_tmp_2d,iim*jjmp1,ndex2d)
    245 c
    246       zx_tmp_2d(1:iim,1:jjmp1)=top_height
    247       CALL histwrite(nid_ctesGCM,"top_height",itau_w,
    248      .               zx_tmp_2d,iim*jjmp1,ndex2d)
    249 c
    250       zx_tmp_2d(1:iim,1:jjmp1)=overlap
    251       CALL histwrite(nid_ctesGCM,"overlap",itau_w,
    252      .               zx_tmp_2d,iim*jjmp1,ndex2d)
    253 c
    254       zx_tmp_2d(1:iim,1:jjmp1)=cdmmax
    255       CALL histwrite(nid_ctesGCM,"cdmmax",itau_w,
    256      .               zx_tmp_2d,iim*jjmp1,ndex2d)
    257 c
    258       zx_tmp_2d(1:iim,1:jjmp1)=cdhmax
    259       CALL histwrite(nid_ctesGCM,"cdhmax",itau_w,
    260      .               zx_tmp_2d,iim*jjmp1,ndex2d)
    261 c
    262       zx_tmp_2d(1:iim,1:jjmp1)=ksta
    263       CALL histwrite(nid_ctesGCM,"ksta",itau_w,
    264      .               zx_tmp_2d,iim*jjmp1,ndex2d)
    265 c
    266       zx_tmp_2d(1:iim,1:jjmp1)=ksta_ter
    267       CALL histwrite(nid_ctesGCM,"ksta_ter",itau_w,
    268      .               zx_tmp_2d,iim*jjmp1,ndex2d)
    269 c
    270       IF(ok_kzmin) THEN
    271        zx_tmp_2d(1:iim,1:jjmp1)=1.
    272       ELSE
    273        zx_tmp_2d(1:iim,1:jjmp1)=0.
    274       ENDIF
    275       CALL histwrite(nid_ctesGCM,"ok_kzmin",itau_w,
    276      .               zx_tmp_2d,iim*jjmp1,ndex2d)
    277 c
    278       zx_tmp_2d(1:iim,1:jjmp1)=iflag_pbl
    279       CALL histwrite(nid_ctesGCM,"iflag_pbl",itau_w,
    280      .               zx_tmp_2d,iim*jjmp1,ndex2d)
    281 c
    282       zx_tmp_2d(1:iim,1:jjmp1)=lev_histhf
    283       CALL histwrite(nid_ctesGCM,"lev_histhf",itau_w,
    284      .               zx_tmp_2d,iim*jjmp1,ndex2d)
    285 c
    286       zx_tmp_2d(1:iim,1:jjmp1)=lev_histday
    287       CALL histwrite(nid_ctesGCM,"lev_histday",itau_w,
    288      .               zx_tmp_2d,iim*jjmp1,ndex2d)
    289 c
    290       zx_tmp_2d(1:iim,1:jjmp1)=lev_histmth
    291       CALL histwrite(nid_ctesGCM,"lev_histmth",itau_w,
    292      .               zx_tmp_2d,iim*jjmp1,ndex2d)
    293 c
    294       IF(ok_isccp) THEN
    295        zx_tmp_2d(1:iim,1:jjmp1)=1.
    296       ELSE
    297        zx_tmp_2d(1:iim,1:jjmp1)=0.
    298       ENDIF
    299       CALL histwrite(nid_ctesGCM,"ok_isccp",itau_w,
    300      .               zx_tmp_2d,iim*jjmp1,ndex2d)
    301 c
    302       zx_tmp_2d(1:iim,1:jjmp1)=lonmin_ins
    303       CALL histwrite(nid_ctesGCM,"lonmin_ins",itau_w,
    304      .               zx_tmp_2d,iim*jjmp1,ndex2d)
    305 c
    306       zx_tmp_2d(1:iim,1:jjmp1)=lonmax_ins
    307       CALL histwrite(nid_ctesGCM,"lonmax_ins",itau_w,
    308      .               zx_tmp_2d,iim*jjmp1,ndex2d)
    309 c
    310       zx_tmp_2d(1:iim,1:jjmp1)=latmin_ins
    311       CALL histwrite(nid_ctesGCM,"latmin_ins",itau_w,
    312      .               zx_tmp_2d,iim*jjmp1,ndex2d)
    313 c
    314       zx_tmp_2d(1:iim,1:jjmp1)=latmax_ins
    315       CALL histwrite(nid_ctesGCM,"latmax_ins",itau_w,
    316      .               zx_tmp_2d,iim*jjmp1,ndex2d)
    317 c
    318       zx_tmp_2d(1:iim,1:jjmp1)=ecrit_ins
    319       CALL histwrite(nid_ctesGCM,"ecrit_ins",itau_w,
    320      .               zx_tmp_2d,iim*jjmp1,ndex2d)
    321 c
    322       zx_tmp_2d(1:iim,1:jjmp1)=ecrit_hf
    323       CALL histwrite(nid_ctesGCM,"ecrit_hf",itau_w,
    324      .               zx_tmp_2d,iim*jjmp1,ndex2d)
    325 c
    326       zx_tmp_2d(1:iim,1:jjmp1)=ecrit_day
    327       CALL histwrite(nid_ctesGCM,"ecrit_day",itau_w,
    328      .               zx_tmp_2d,iim*jjmp1,ndex2d)
    329 c
    330       zx_tmp_2d(1:iim,1:jjmp1)=ecrit_mth
    331       CALL histwrite(nid_ctesGCM,"ecrit_mth",itau_w,
    332      .               zx_tmp_2d,iim*jjmp1,ndex2d)
    333 c
    334       zx_tmp_2d(1:iim,1:jjmp1)=ecrit_tra
    335       CALL histwrite(nid_ctesGCM,"ecrit_tra",itau_w,
    336      .               zx_tmp_2d,iim*jjmp1,ndex2d)
    337 c
    338       zx_tmp_2d(1:iim,1:jjmp1)=ecrit_reg
    339       CALL histwrite(nid_ctesGCM,"ecrit_reg",itau_w,
    340      .               zx_tmp_2d,iim*jjmp1,ndex2d)
    341 c
    342       zx_tmp_2d(1:iim,1:jjmp1)=freq_ISCCP
    343       CALL histwrite(nid_ctesGCM,"freq_ISCCP",itau_w,
    344      .               zx_tmp_2d,iim*jjmp1,ndex2d)
    345 c
    346       zx_tmp_2d(1:iim,1:jjmp1)=ecrit_ISCCP
    347       CALL histwrite(nid_ctesGCM,"ecrit_ISCCP",itau_w,
    348      .               zx_tmp_2d,iim*jjmp1,ndex2d)
     67     .               zx_tmp_0d,np,ndex2d)
    34968c
    35069c=================================================================
    351 c=================================================================
     70c moyennes globales
     71c
     72      CALL histwrite(nid_ctesGCM,"bils",itau_w,
     73     .               gbils,np,ndex2d)
     74      CALL histwrite(nid_ctesGCM,"evap",itau_w,
     75     .               gevap,np,ndex2d)
     76      CALL histwrite(nid_ctesGCM,"evap_land",itau_w,
     77     .               gevapt,np,ndex2d)
     78      CALL histwrite(nid_ctesGCM,"flat",itau_w,
     79     .               glat,np,ndex2d)
     80      CALL histwrite(nid_ctesGCM,"nettop0",itau_w,
     81     .               gnet0,np,ndex2d)
     82      CALL histwrite(nid_ctesGCM,"nettop",itau_w,
     83     .               gnet,np,ndex2d)
     84      CALL histwrite(nid_ctesGCM,"precip",itau_w,
     85     .               grain,np,ndex2d)
     86      CALL histwrite(nid_ctesGCM,"tsol",itau_w,
     87     .               gtsol,np,ndex2d)
     88      CALL histwrite(nid_ctesGCM,"t2m",itau_w,
     89     .               gt2m,np,ndex2d)
     90      CALL histwrite(nid_ctesGCM,"prw",itau_w,
     91     .               gprw,np,ndex2d)
    35292c=================================================================
    35393c
     
    35696      endif
    35797c
    358       ENDIF ! mono_cpu
     98      endif !(is_mpi_root) then     
     99c$OMP END MASTER
Note: See TracChangeset for help on using the changeset viewer.