Changeset 1229 for LMDZ4/branches


Ignore:
Timestamp:
Aug 17, 2009, 5:11:37 PM (15 years ago)
Author:
idelkadi
Message:
 
Location:
LMDZ4/branches/LMDZ4-dev
Files:
5 edited

Legend:

Unmodified
Added
Removed
  • LMDZ4/branches/LMDZ4-dev/libf/phylmd/clesphys.h

    r1227 r1229  
    4444!IM lev_histmth : niveau sorties mensuelles
    4545       INTEGER lev_histhf, lev_histday, lev_histmth
     46       Integer lev_histins, lev_histLES 
    4647       CHARACTER(len=4) type_run
    4748! aer_type: pour utiliser un fichier constant dans readaerosol
     
    6566     &     , f_cdrag_ter,f_cdrag_oce,f_rugoro                           &
    6667     &     , lev_histhf, lev_histday, lev_histmth                       &
     68     &     , lev_histins, lev_histLES                                   &
    6769     &     , type_run, ok_isccp, ok_regdyn                              &
    6870     &     , lonmin_ins, lonmax_ins, latmin_ins, latmax_ins             &
  • LMDZ4/branches/LMDZ4-dev/libf/phylmd/conf_phys.F90

    r1227 r1229  
    130130  REAL, SAVE ::  fmagic_omp, pmagic_omp
    131131  INTEGER,SAVE :: iflag_pbl_omp,lev_histhf_omp,lev_histday_omp,lev_histmth_omp
     132  Integer,save :: lev_histins_omp, lev_histLES_omp
    132133  CHARACTER*4, SAVE :: type_run_omp
    133134  LOGICAL,SAVE :: ok_isccp_omp
     
    10121013  lev_histmth_omp = 2
    10131014  call getin('lev_histmth',lev_histmth_omp)
    1014 
     1015!
     1016!Config Key  = lev_histins
     1017!Config Desc =
     1018!Config Def  = 1
     1019!Config Help =
     1020!
     1021  lev_histins_omp = 1
     1022  call getin('lev_histins',lev_histins_omp)
     1023  !
     1024!Config Key  = lev_histLES
     1025!Config Desc =
     1026!Config Def  = 1
     1027!Config Help =
     1028!
     1029  lev_histLES_omp = 1
     1030  call getin('lev_histLES',lev_histLES_omp)
    10151031  !
    10161032!Config Key  = type_run
     
    13351351    lev_histday = lev_histday_omp
    13361352    lev_histmth = lev_histmth_omp
     1353    lev_histins = lev_histins_omp
     1354    lev_histLES = lev_histLES_omp
    13371355
    13381356    type_ocean = type_ocean_omp
     
    15041522  write(numout,*)' lev_histday = ',lev_histday
    15051523  write(numout,*)' lev_histmth = ',lev_histmth
     1524  write(numout,*)' lev_histins = ',lev_histins
     1525  write(numout,*)' lev_histLES = ',lev_histLES
    15061526  write(numout,*)' iflag_pbl = ', iflag_pbl
    15071527  write(numout,*)' iflag_thermals = ', iflag_thermals
  • LMDZ4/branches/LMDZ4-dev/libf/phylmd/phys_output_mod.F90

    r1218 r1229  
    488488  CHARACTER(len=3)                      :: ctetaSTD(nbteta)
    489489  real, dimension(nfiles)               :: ecrit_files
    490   CHARACTER(len=20), dimension(nfiles)  :: name_files
     490  CHARACTER(len=20), dimension(nfiles)  :: phys_out_filenames
    491491  INTEGER, dimension(iim*jjmp1)         ::  ndex2d
    492492  INTEGER, dimension(iim*jjmp1*klev)    :: ndex3d
    493493  integer                               :: imin_ins, imax_ins
    494494  integer                               :: jmin_ins, jmax_ins
    495   CHARACTER(len=20), dimension(nfiles)  :: type_ecri_files
     495  integer, dimension(nfiles)            :: phys_out_levmin, phys_out_levmax
     496  integer, dimension(nfiles)            :: phys_out_filelevels
     497  CHARACTER(len=20), dimension(nfiles)  :: type_ecri_files, phys_out_filetypes
    496498  character(len=20), dimension(nfiles)  :: chtimestep   = (/ 'DefFreq', 'DefFreq','DefFreq', 'DefFreq', 'DefFreq' /)
     499  logical, dimension(nfiles)            :: phys_out_filekeys
    497500
    498501!!!!!!!!!! stockage dans une region limitee pour chaque fichier !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
    499 !                 entre [lonmin_reg,lonmax_reg] et [latmin_reg,latmax_reg]
    500 
    501   logical, dimension(nfiles), save  :: ok_reglim         = (/ .false., .false., .false., .false., .true. /)
    502   real, dimension(nfiles), save     :: lonmin_reg        = (/ 0., -45., 0., 0., -162. /)
    503   real, dimension(nfiles), save     :: lonmax_reg        = (/ 90., 45., 90., 90., -144. /)
    504   real, dimension(nfiles), save     :: latmin_reg        = (/ 0., -45., 0., 0., 7. /)
    505   real, dimension(nfiles), save     :: latmax_reg        = (/ 90., 90., 90., 90., 21. /)
     502!                 entre [phys_out_lonmin,phys_out_lonmax] et [phys_out_latmin,phys_out_latmax]
     503
     504  logical, dimension(nfiles), save  :: phys_out_regfkey       = (/ .false., .false., .false., .false., .false. /)
     505  real, dimension(nfiles), save     :: phys_out_lonmin        = (/ -180., -180., -180., -180., -180. /)
     506  real, dimension(nfiles), save     :: phys_out_lonmax        = (/ 180., 180., 180., 180., 180. /)
     507  real, dimension(nfiles), save     :: phys_out_latmin        = (/ -90., -90., -90., -90., -90. /)
     508  real, dimension(nfiles), save     :: phys_out_latmax        = (/ 90., 90., 90., 90., 90. /)
     509 
     510 
    506511
    507512!
     
    510515   levmax = (/ klev, klev, klev, klev, klev /)
    511516
    512    name_files(1) = 'histmth'
    513    name_files(2) = 'histday'
    514    name_files(3) = 'histhf'
    515    name_files(4) = 'histins'
    516    name_files(5) = 'histLES'
     517   phys_out_filenames(1) = 'histmth'
     518   phys_out_filenames(2) = 'histday'
     519   phys_out_filenames(3) = 'histhf'
     520   phys_out_filenames(4) = 'histins'
     521   phys_out_filenames(5) = 'histLES'
    517522
    518523   type_ecri(1) = 'ave(X)'
     
    531536   lev_files(2) = lev_histday
    532537   lev_files(3) = lev_histhf
    533    lev_files(4) = 1
    534    lev_files(5) = 1
     538   lev_files(4) = lev_histins
     539   lev_files(5) = lev_histLES
    535540
    536541
     
    543548!! Lectures des parametres de sorties dans physiq.def
    544549
    545    call getin('phys_out_regfkey',ok_reglim)
    546    call getin('phys_out_lonmin',lonmin_reg)
    547    call getin('phys_out_lonmax',lonmax_reg)
    548    call getin('phys_out_latmin',latmin_reg)
    549    call getin('phys_out_latmax',latmax_reg)
     550   call getin('phys_out_regfkey',phys_out_regfkey)
     551   call getin('phys_out_lonmin',phys_out_lonmin)
     552   call getin('phys_out_lonmax',phys_out_lonmax)
     553   call getin('phys_out_latmin',phys_out_latmin)
     554   call getin('phys_out_latmax',phys_out_latmax)
     555     phys_out_levmin(:)=levmin(:)
    550556   call getin('phys_out_levmin',levmin)
     557     phys_out_levmax(:)=levmax(:)
    551558   call getin('phys_out_levmax',levmax)
    552    call getin('phys_out_filenames',name_files)
     559   call getin('phys_out_filenames',phys_out_filenames)
     560     phys_out_filekeys(:)=clef_files(:)
    553561   call getin('phys_out_filekeys',clef_files)
     562     phys_out_filelevels(:)=lev_files(:)
    554563   call getin('phys_out_filelevels',lev_files)
    555564   call getin('phys_out_filetimesteps',chtimestep)
    556    call getin('phys_out_filetypes',type_ecri_files)
     565     phys_out_filetypes(:)=type_ecri(:)
     566   call getin('phys_out_filetypes',type_ecri)
    557567
    558568   type_ecri_files(:)=type_ecri(:)
    559569
    560    print*,'phys_out_lonmin=',lonmin_reg
    561    print*,'phys_out_lonmax=',lonmax_reg
    562    print*,'phys_out_latmin=',latmin_reg
    563    print*,'phys_out_latmax=',latmax_reg
    564    print*,'phys_out_filenames=',name_files
     570   print*,'phys_out_lonmin=',phys_out_lonmin
     571   print*,'phys_out_lonmax=',phys_out_lonmax
     572   print*,'phys_out_latmin=',phys_out_latmin
     573   print*,'phys_out_latmax=',phys_out_latmax
     574   print*,'phys_out_filenames=',phys_out_filenames
    565575   print*,'phys_out_filetypes=',type_ecri
    566576   print*,'phys_out_filekeys=',clef_files
     
    604614!!!!!!!!!!!!!!!!! Traitement dans le cas ou l'on veut stocker sur un domaine limite !!
    605615!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
    606      if (ok_reglim(iff)) then
     616     if (phys_out_regfkey(iff)) then
    607617
    608618        imin_ins=1
     
    614624        do i=1,iim
    615625           print*,'io_lon(i)=',io_lon(i)
    616            if (io_lon(i).le.lonmin_reg(iff)) imin_ins=i
    617            if (io_lon(i).le.lonmax_reg(iff)) imax_ins=i+1
     626           if (io_lon(i).le.phys_out_lonmin(iff)) imin_ins=i
     627           if (io_lon(i).le.phys_out_lonmax(iff)) imax_ins=i+1
    618628        enddo
    619629
    620630        do j=1,jjmp1
    621631            print*,'io_lat(j)=',io_lat(j)
    622             if (io_lat(j).ge.latmin_reg(iff)) jmax_ins=j+1
    623             if (io_lat(j).ge.latmax_reg(iff)) jmin_ins=j
     632            if (io_lat(j).ge.phys_out_latmin(iff)) jmax_ins=j+1
     633            if (io_lat(j).ge.phys_out_latmax(iff)) jmin_ins=j
    624634        enddo
    625635
     
    631641         io_lat(jmax_ins),io_lat(jmin_ins)
    632642
    633  CALL histbeg(name_files(iff),iim,io_lon,jjmp1,io_lat, &
     643 CALL histbeg(phys_out_filenames(iff),iim,io_lon,jjmp1,io_lat, &
    634644              imin_ins,imax_ins-imin_ins+1, &
    635645              jmin_ins,jmax_ins-jmin_ins+1, &
     
    637647!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
    638648       else
    639  CALL histbeg_phy(name_files(iff),itau_phy,zjulian,dtime,nhorim(iff),nid_files(iff))
     649 CALL histbeg_phy(phys_out_filenames(iff),itau_phy,zjulian,dtime,nhorim(iff),nid_files(iff))
    640650       endif
    641651 
  • LMDZ4/branches/LMDZ4-dev/libf/phylmd/physiq.F

    r1227 r1229  
    32393239C     est egale a la variation de la physique au pas de temps precedent.
    32403240C     Donc la somme de ces 2 variations devrait etre nulle.
     3241
    32413242        call diagphy(airephy,ztit,ip_ebil_phy
    32423243     e      , topsw, toplw, solsw, sollw, sens
  • LMDZ4/branches/LMDZ4-dev/makegcm

    r1206 r1229  
    552552if ( "$veget" == 'true' ) then
    553553   set cppflags="$cppflags -DCPP_VEGET"
    554    set link_veget=" -lsechiba -lparameters -lstomate -lorglob -lparallel"
     554#   set link_veget=" -lsechiba -lparameters -lstomate -lorglob -lparallel"
     555   set link_veget=" -lsechiba -lparameters -lstomate"
    555556   if ( $XNEC || $X8BRODIE || $X6NEC) then
    556       set link_veget=" -lsxsechiba -lsxparameters -lsxstomate -lsxorglob -lsxparallel"
     557#      set link_veget=" -lsxsechiba -lsxparameters -lsxstomate -lsxorglob -lsxparallel"
     558      set link_veget=" -lsxsechiba -lsxparameters -lsxstomate "
    557559   endif
    558560endif
Note: See TracChangeset for help on using the changeset viewer.