PROGRAM testphys1d ! to use 'getin' USE ioipsl_getincom, only: getin use dimphy, only : init_dimphy use mod_grid_phy_lmdz, only : regular_lonlat use infotrac, only: nqtot, tname use comsoil_h, only: volcapa, layer, mlayer, inertiedat, nsoilmx use comgeomfi_h, only: sinlat, ini_fillgeom use surfdat_h, only: albedodat, z0_default, emissiv, emisice, & albedice, iceradius, dtemisice, z0, & zmea, zstd, zsig, zgam, zthe, phisfi, & watercaptag use slope_mod, only: theta_sl, psi_sl use phyredem, only: physdem0,physdem1 use geometry_mod, only: init_geometry use planete_h, only: year_day, periheli, aphelie, peri_day, & obliquit, emin_turb, lmixmin use comcstfi_h, only: pi, rad, omeg, g, mugaz, rcp, r, cpp use time_phylmdz_mod, only: daysec, dtphys, day_step, & ecritphy, iphysiq use dimradmars_mod, only: tauscaling,tauvis USE comvert_mod, ONLY: ap,bp,aps,bps,pa,preff,sig USE logic_mod, ONLY: hybrid use physics_distribution_mod, only: init_physics_distribution use regular_lonlat_mod, only: init_regular_lonlat use mod_interface_dyn_phys, only: init_interface_dyn_phys USE phys_state_var_init_mod, ONLY: phys_state_var_init IMPLICIT NONE c======================================================================= c subject: c -------- c PROGRAM useful to run physical part of the martian GCM in a 1D column c c Can be compiled with a command like (e.g. for 25 layers) c "makegcm -p mars -d 25 testphys1d" c It requires the files "testphys1d.def" "callphys.def" c and a 'run.def' file (containing a "INCLUDEDEF=callphys.def" line) c and a file describing the sigma layers (e.g. "z2sig.def") c c author: Frederic Hourdin, R.Fournier,F.Forget c ------- c c update: 12/06/2003 including chemistry (S. Lebonnois) c and water ice (F. Montmessin) c c======================================================================= #include "dimensions.h" integer, parameter :: ngrid = 1 !(2+(jjm-1)*iim - 1/jjm) integer, parameter :: nlayer = llm !#include "dimradmars.h" !#include "comgeomfi.h" !#include "surfdat.h" !#include "slope.h" !#include "comsoil.h" !#include "comdiurn.h" #include "callkeys.h" !#include "comsaison.h" !#include "control.h" #include "netcdf.inc" #include "comg1d.h" !#include "advtrac.h" c -------------------------------------------------------------- c Declarations c -------------------------------------------------------------- c INTEGER unitstart ! unite d'ecriture de "startfi" INTEGER nlevel,nsoil,ndt INTEGER ilayer,ilevel,isoil,idt,iq LOGICAl firstcall,lastcall c real,parameter :: odpref=610. ! DOD reference pressure (Pa) c INTEGER day0 ! date initial (sol ; =0 a Ls=0) REAL day ! date durant le run REAL time ! time (0