Ignore:
Timestamp:
Apr 12, 2018, 8:35:48 AM (7 years ago)
Author:
emillour
Message:

Mars GCM:
Code cleanup:

  • remove "comorbit.h" since it is no longer used.
  • turn "datafile.h" into module datafile_mod.F90 (and rename variable "datafile" as "datadir" since it stores the path to the datafile directory).

EM

Location:
trunk/LMDZ.MARS/libf/phymars
Files:
1 deleted
11 edited
1 moved

Legend:

Unmodified
Added
Removed
  • trunk/LMDZ.MARS/libf/phymars/albedocaps.F90

    r1779 r1918  
    9090use geometry_mod, only: latitude, longitude ! in radians
    9191use surfdat_h, only: albedice, TESice_Ncoef, TESice_Scoef
     92use datafile_mod, only: datadir
    9293use netcdf, only: nf90_open, NF90_NOWRITE, NF90_NOERR, &
    9394                  nf90_strerror, nf90_inq_varid, nf90_get_var, nf90_close
    9495                 
    9596implicit none
    96 include"datafile.h"
    9797
    9898! arguments:
     
    151151if (firstcall) then
    152152! Load TES albedoes for Northern Hemisphere
    153   ! Note: datafile() is defined in "datafile.h"
    154   ierr=nf90_open(trim(datafile)//"/npsc_albedo.nc",NF90_NOWRITE,nid)
     153  ierr=nf90_open(trim(datadir)//"/npsc_albedo.nc",NF90_NOWRITE,nid)
    155154  IF (ierr.NE.NF90_NOERR) THEN
    156155    write(*,*)'Problem opening npsc_albedo.nc (phymars/albedocaps.F90)'
    157     write(*,*)'It should be in :',trim(datafile),'/'
     156    write(*,*)'It should be in :',trim(datadir),'/'
    158157    write(*,*)'1) You can change this directory address in callfis.def with'
    159158    write(*,*)'   datadir=/path/to/datafiles'
     
    163162    CALL ABORT
    164163  ELSE
    165     write(*,*) "albedocaps: using file ",trim(datafile)//"/npsc_albedo.nc"
     164    write(*,*) "albedocaps: using file ",trim(datadir)//"/npsc_albedo.nc"
    166165  ENDIF
    167166 
     
    225224
    226225! Load albedoes for Southern Hemisphere
    227   ierr=nf90_open(trim(datafile)//"/spsc_albedo.nc",NF90_NOWRITE,nid)
     226  ierr=nf90_open(trim(datadir)//"/spsc_albedo.nc",NF90_NOWRITE,nid)
    228227  IF (ierr.NE.NF90_NOERR) THEN
    229228    write(*,*)'Problem opening spsc_albedo.nc (phymars/albedocaps.F90)'
    230     write(*,*)'It should be in :',trim(datafile),'/'
     229    write(*,*)'It should be in :',trim(datadir),'/'
    231230    write(*,*)'1) You can change this directory address in callfis.def with'
    232231    write(*,*)'   datadir=/path/to/datafiles'
     
    236235    CALL ABORT
    237236  ELSE
    238     write(*,*) "albedocaps: using file ",trim(datafile)//"/spsc_albedo.nc"
     237    write(*,*) "albedocaps: using file ",trim(datadir)//"/spsc_albedo.nc"
    239238  ENDIF
    240239
  • trunk/LMDZ.MARS/libf/phymars/callradite_mod.F

    r1776 r1918  
    1111     &     nuice,co2ice,clearsky,totcloudfrac)
    1212
    13       use aeropacity_mod
     13      use aeropacity_mod, only: aeropacity
    1414      use dimradmars_mod, only: ndomainsz, nflev, nsun, nir
    1515      use dimradmars_mod, only: naerkind, name_iaer,
     
    5959c   The names of the corresponding ASCII files have to be set in
    6060c   this subroutine (file_id variable), and files must be in the
    61 c   directory specified in datafile.h. Please make sure that the
     61c   directory specified in datafile_mod. Please make sure that the
    6262c   ASCII files are correctly written, and that the range
    6363c   of particle sizes is consistent with what you would expect.
  • trunk/LMDZ.MARS/libf/phymars/co2cloud.F

    r1913 r1918  
    1919     &     rho_ice_co2,r3n_q,rho_ice,nuice_sed
    2020      USE newsedim_mod, ONLY: newsedim
     21      USE datafile_mod, ONLY: datadir
    2122      IMPLICIT NONE
    2223
    23       include "datafile.h"
    2424      include "callkeys.h"
    2525      include "microphys.h"
     
    248248
    249249c   read the Qext values
    250         INQUIRE(FILE=datafile(1:LEN_TRIM(datafile))//
     250        INQUIRE(FILE=TRIM(datadir)//
    251251     &       '/optprop_co2ice_1mic.dat', EXIST=file_ok)
    252252        IF (.not. file_ok) THEN
    253253           write(*,*) 'file optprop_co2ice_1mic.dat should be in '
    254      &          ,datafile
     254     &          ,trim(datadir)
    255255           STOP
    256256        endif
    257 !        open(newunit=uQext,file=trim(datafile)//
    258         open(unit=uQext,file=trim(datafile)//
     257!        open(newunit=uQext,file=trim(datadir)//
     258        open(unit=uQext,file=trim(datadir)//
    259259     &       '/optprop_co2ice_1mic.dat'
    260260     &       ,FORM='formatted')
  • trunk/LMDZ.MARS/libf/phymars/conf_phys.F

    r1818 r1918  
    4141      use time_phylmdz_mod, only: ecritphy,day_step,iphysiq,ecritstart,
    4242     &                            daysec,dtphys
    43       use planete_h
    4443      use dimradmars_mod, only: naerkind, name_iaer,
    4544     &                      ini_scatterers,tauvis
     45      use datafile_mod, only: datadir
    4646
    4747      IMPLICIT NONE
    48 #include "callkeys.h"
    49 #include "datafile.h"
    50 #include "microphys.h"
     48      include "callkeys.h"
     49      include "microphys.h"
    5150
    5251      INTEGER,INTENT(IN) :: ngrid,nlayer,nq
     
    8584
    8685         write(*,*) "Directory where external input files are:"
    87          datafile="/u/lmdz/WWW/planets/mars/datadir"
    88          call getin("datadir",datafile) ! default path
    89          write(*,*) " datafile = ",trim(datafile)
     86         ! default path is set in datafile_mod
     87         call getin("datadir",datadir)
     88         write(*,*) " datadir = ",trim(datadir)
    9089
    9190         write(*,*) "Run with or without tracer transport ?"
  • trunk/LMDZ.MARS/libf/phymars/datafile_mod.F90

    r1916 r1918  
    11!-----------------------------------------------------------------------
    2 ! INCLUDE datafile.h
     2module datafile_mod
    33
    4 !  Address of the directory containing tables of data needed by the GCM   
    5       COMMON/datadirectory/datafile
    6       character (len=300) :: datafile
    7 ! NB: default value for 'datafile' is set in conf_phys.F
     4implicit none
     5
     6! root path to directory containing tables
     7! and datasets needed by the GCM
     8character(len=300),save :: datadir="/u/lmdz/WWW/planets/mars/datadir"
     9
     10end module datafile_mod
    811!-----------------------------------------------------------------------
  • trunk/LMDZ.MARS/libf/phymars/improvedCO2clouds.F

    r1913 r1918  
    1313     &                      rho_ice_co2
    1414      use conc_mod, only: mmean
     15      use datafile_mod, only: datadir
    1516
    1617      implicit none
     
    5556      include "callkeys.h"
    5657      include "microphys.h"
    57       include "datafile.h"
    5858c------------------------------------------------------------------
    5959c     Arguments:
     
    247247           ! Initialisation of the flux: it is constant and is it saved
    248248           !We must interpolate the table to the GCM pressures
    249            INQUIRE(FILE=datafile(1:LEN_TRIM(datafile))//
     249           INQUIRE(FILE=TRIM(datadir)//
    250250     &       '/Meteo_flux_Plane.dat', EXIST=file_ok)
    251251           IF (.not. file_ok) THEN
    252252              write(*,*) 'file Meteo_flux_Plane.dat should be in '
    253      &             ,datafile
     253     &             ,trim(datadir)
    254254              STOP
    255255           endif
    256256!used Variables
    257 !           open(newunit=uMeteor,file=trim(datafile)//
    258            open(unit=uMeteor,file=trim(datafile)//
     257!           open(newunit=uMeteor,file=trim(datadir)//
     258           open(unit=uMeteor,file=trim(datadir)//
    259259     &          '/Meteo_flux_Plane.dat'
    260260     &          ,FORM='formatted')
  • trunk/LMDZ.MARS/libf/phymars/nir_leedat.F

    r498 r1918  
    77c***********************************************************************
    88
     9      use datafile_mod, only: datadir
     10
    911      implicit none                                 
    1012                                               
    11       include 'datafile.h'
    1213      include 'nirdata.h'
    1314                                               
     
    2021c***********************************************************************
    2122
    22       open(43,file=trim(datafile)//'/NIRcorrection_feb2011.dat',
     23      open(43,file=trim(datadir)//'/NIRcorrection_feb2011.dat',
    2324     $       status='old')         
    2425      do ind=1,9
  • trunk/LMDZ.MARS/libf/phymars/nlte_calc.F

    r1124 r1918  
    3131      implicit none
    3232
    33       include 'datafile.h'
    3433      include 'nlte_paramdef.h'
    3534      include 'nlte_commons.h'
     
    228227      implicit none
    229228
    230       include 'datafile.h'
    231229      include 'nlte_paramdef.h'
    232230      include 'nlte_commons.h'
     
    793791      implicit none
    794792
    795       include 'datafile.h'
    796793      include 'nlte_paramdef.h'
    797794      include 'nlte_commons.h'
     
    13181315      implicit none
    13191316
    1320       include 'datafile.h'
    13211317      include 'nlte_paramdef.h'
    13221318      include 'nlte_commons.h'
     
    15851581      implicit none
    15861582
    1587       include 'datafile.h'
    15881583      include 'nlte_paramdef.h'
    15891584      include 'nlte_commons.h'
  • trunk/LMDZ.MARS/libf/phymars/nlte_setup.F

    r757 r1918  
    1717c***********************************************************************
    1818
     19      use datafile_mod, only: datadir
     20     
    1921      implicit none
    2022
    21       include   'datafile.h'
    2223      include   'nlte_paramdef.h'
    2324      include   'nlte_commons.h'
     
    4950         write (isotcode,132) indexisot(k)
    5051         open (lun1,
    51      $        file=trim(datafile)//'/NLTEDAT/enelow'
     52     $        file=trim(datadir)//'/NLTEDAT/enelow'
    5253     $        //isotcode//'.dat',status='old')
    5354         open (lun2,
    54      $        file=trim(datafile)//'/NLTEDAT/deltanu'
     55     $        file=trim(datadir)//'/NLTEDAT/deltanu'
    5556     $        //isotcode//'.dat',status='old')
    5657         read (lun1,*)
     
    7172c     *** Old LeeESCTVCISO_dlvr11 ***
    7273
    73       open( 11, file=trim(datafile)//
     74      open( 11, file=trim(datadir)//
    7475     $     '/NLTEDAT/parametp_Tstar_IAA1204.dat' )
    7576      read (11, *)
     
    8081      close (11)
    8182
    82       open( 12, file=trim(datafile)//
     83      open( 12, file=trim(datadir)//
    8384     $     '/NLTEDAT/parametp_VC_IAA1204.dat' )
    8485      read (12, *)
     
    104105c***********************************************************************
    105106
     107      use datafile_mod, only: datadir
     108
    106109      implicit none
    107110
    108       include 'datafile.h'
    109111      include   'nlte_paramdef.h'
    110112      include   'nlte_commons.h'
     
    119121                                ! Banda fundamental
    120122                                !
    121       hisfile = trim(datafile)//
     123      hisfile = trim(datadir)//
    122124     $     '/NLTEDAT/hid26-1.dat'
    123125      ihist = 1
     
    127129                                ! First Hot bands       
    128130                                !     
    129       hisfile = trim(datafile)//
     131      hisfile = trim(datadir)//
    130132     $     '/NLTEDAT/hid26-2.dat'
    131133      ihist = 2
    132134      call rhist_03 (ihist)
    133135
    134       hisfile = trim(datafile)//
     136      hisfile = trim(datadir)//
    135137     $     '/NLTEDAT/hid26-3.dat'
    136138      ihist = 3
    137139      call rhist_03 (ihist)
    138140
    139       hisfile = trim(datafile)//
     141      hisfile = trim(datadir)//
    140142     $     '/NLTEDAT/hid26-4.dat'
    141143      ihist = 4
  • trunk/LMDZ.MARS/libf/phymars/read_dust_scenario.F90

    r1861 r1918  
    55use netcdf
    66use geometry_mod, only: latitude, longitude ! in radians
     7use datafile_mod, only: datadir
    78implicit none
    89
    9 include "datafile.h"
    1010include "callkeys.h"
    1111
     
    9292   endif
    9393   
    94    ! Note: datafile() is defined in "datafile.h"
    95    !ierr=NF_OPEN(trim(datafile)//"/"//trim(filename),NF_NOWRITE,nid)
    96    ierr=nf90_open(trim(datafile)//"/"//trim(filename),NF90_NOWRITE,nid)
     94   ierr=nf90_open(trim(datadir)//"/"//trim(filename),NF90_NOWRITE,nid)
    9795   IF (ierr.NE.nf90_noerr) THEN
    9896     write(*,*)'Problem opening ',trim(filename),' (in phymars/read_dust_scenario.F90)'
    99      write(*,*)'It should be in :',trim(datafile),'/'
     97     write(*,*)'It should be in :',trim(datadir),'/'
    10098     write(*,*)'1) You can change this directory address in callfis.def with'
    10199     write(*,*)'   datadir=/path/to/datafiles'
  • trunk/LMDZ.MARS/libf/phymars/suaer.F90

    r1381 r1918  
    1111                    omegaREFvis, omegaREFir, &
    1212                    nsize
     13use datafile_mod, only: datadir
    1314IMPLICIT NONE
    1415!==================================================================
     
    4344! Includes:
    4445
    45 #include "callkeys.h"
    46 #include "datafile.h"
     46include "callkeys.h"
    4747
    4848! Optical properties (read in external ASCII files)
     
    188188!       1.1 Open the ASCII file
    189189
    190 INQUIRE(FILE=datafile(1:LEN_TRIM(datafile))//&
    191   '/'//file_id(iaer,idomain)(1:LEN_TRIM(file_id(iaer,idomain))),&
     190INQUIRE(FILE=TRIM(datadir)//&
     191  '/'//TRIM(file_id(iaer,idomain)),&
    192192  EXIST=file_ok)
    193193IF(.NOT.file_ok) THEN
    194194  write(*,*)'Problem opening ',&
    195     file_id(iaer,idomain)(1:LEN_TRIM(file_id(iaer,idomain)))
     195    TRIM(file_id(iaer,idomain))
    196196  write(*,*)'It should be in: ',&
    197     datafile(1:LEN_TRIM(datafile))
    198   write(*,*)'1) You can change this directory address in '
    199   write(*,*)' file phymars/datafile.h'
     197    TRIM(datadir)
     198  write(*,*)'1) You can change this directory address in callfis.def with'
     199  write(*,*)'   datadir=/path/to/datafiles'
    200200  write(*,*)'2) If ',&
    201     file_id(iaer,idomain)(1:LEN_TRIM(file_id(iaer,idomain))),&
     201    TRIM(file_id(iaer,idomain)),&
    202202    ' is a LMD reference datafile, it'
    203203  write(*,*)' can be obtained online on:'
     
    210210ENDIF
    211211OPEN(UNIT=file_unit,&
    212   FILE=datafile(1:LEN_TRIM(datafile))//&
    213   '/'//file_id(iaer,idomain)(1:LEN_TRIM(file_id(iaer,idomain))),&
     212  FILE=TRIM(datadir)//&
     213  '/'//TRIM(file_id(iaer,idomain)),&
    214214  FORM='formatted')
    215215
     
    222222  if (read_ok.ne.0) then
    223223    write(*,*)' readoptprop: Error reading file',&
    224     trim(datafile(1:LEN_TRIM(datafile))//&
    225     '/'//file_id(iaer,idomain)(1:LEN_TRIM(file_id(iaer,idomain))))
     224    TRIM(datadir)//&
     225    '/'//TRIM(file_id(iaer,idomain))
    226226    call abort
    227227  endif
     
    236236          trim(scanline)
    237237          write(*,*)'   of file',&
    238           trim(datafile(1:LEN_TRIM(datafile))//&
    239           '/'//file_id(iaer,idomain)(1:LEN_TRIM(file_id(iaer,idomain))))
     238          TRIM(datadir)//&
     239          '/'//TRIM(file_id(iaer,idomain))
    240240          call abort
    241241        endif
     
    247247          trim(scanline)
    248248          write(*,*)'   of file',&
    249           trim(datafile(1:LEN_TRIM(datafile))//&
    250           '/'//file_id(iaer,idomain)(1:LEN_TRIM(file_id(iaer,idomain))))
     249          TRIM(datadir)//&
     250          '/'//TRIM(file_id(iaer,idomain))
    251251          call abort
    252252        endif
  • trunk/LMDZ.MARS/libf/phymars/surfini.F

    r1543 r1918  
    11      SUBROUTINE surfini(ngrid,piceco2,qsurf,psolaralb)
    2    ! to use  'getin'
    3       USE ioipsl_getincom
     2
     3      USE ioipsl_getincom, only: getin
    44      use netcdf
    55      use tracer_mod, only: nqmx, noms
     
    1414      USE comcstfi_h
    1515      use mod_grid_phy_lmdz, only: nbp_lon, nbp_lat
     16      use datafile_mod, only: datadir
    1617      IMPLICIT NONE
    1718c=======================================================================
     
    2324c   Declarations:
    2425c   -------------
    25 #include "callkeys.h"
    26 #include "datafile.h"
     26      include "callkeys.h"
    2727
    2828      integer,intent(in) :: ngrid ! number of atmospheric columns
     
    173173
    174174           
    175          zedatafile = trim(datafile)
     175         zedatafile = trim(datadir)
    176176 
    177177       
Note: See TracChangeset for help on using the changeset viewer.