!$Id: getm.inp,v 1.3 2010-03-15 14:20:55 kb Exp $ !------------------------------------------------------------------------------- ! The namelists 'param','time','domain', 'meteo', 'rivers', ! 'io_spec','m2d', 'm3d', 'temp', 'salt', 'eqstate' ! They have to come in this order. !------------------------------------------------------------------------------- !------------------------------------------------------------------------------- ! General model setup is here - initialise.F90 ! ! dryrun= used to test setup - .true. or .false. ! runid= used for naming output files ! title= title of simulation ! parallel= parallel simulation - .true. or .false. ! runtype= 1=2D, 2=3D (no density), 3=3D (frosen density), 4=3D (full) ! hotstart= read initial fields from file - .true. or .false. ! use_epoch= use a common time origin for a serious of hotstart simulations ! save_initial= save initial values i.e. before entering the time loop !------------------------------------------------------------------------------- ¶m dryrun=.false. runid='orosei' title='Golfo di Orosei test case' parallel=.false. runtype=4 hotstart=.true. use_epoch=.false. save_initial=.true. / !------------------------------------------------------------------------------- !Specify time related formats and variables here - time.F90 ! ! timestep= micro timestep (as a real numer in seconds) ! timefmt= 1,2,3 - implicitly uses timestep=dt ! 1- maxn only - fake start time used. ! 2- start and stop - MaxN calculated. ! 3- start and MaxN - stop calculated. ! nlast= do loop from n=1 to n=nlast ! start= initial time: YYYY/MM/DD HH:MM:SS ! stop= final time: YYYY/MM/DD HH:MM:SS !------------------------------------------------------------------------------- &time timestep=0.6, timefmt=2, nlast=10000, start='2001-02-02 00:00:00' stop='2001-02-15 00:00:00' / !------------------------------------------------------------------------------- !Information on the calculation domain - domain/domain.F90 ! ! vert_cord= 1: sigma, 2: z-level, 3: general vertical coordinates (gvc) ! maxdepth= maximum depth in active calculation domain, ! needed for vert_cord=3 and cord_relax > 0 (see m3d). ! bathymetry= name of file with bathymetry and grid ! longitude= used for calculating short wave radiation ! (if not from topo.nc) ! latitude= used for calculating the Coriolis force (if not from topo.nc) ! f_plane= if .true. : constant f computed from 'latitude' in 'getm.inp' ! if .false. : varying f computed from (lat,lon) in bathymetry ! openbdy= set to .true. if any open boundaries ! bdyinfofile= read if 'openbdy' is .true. - contains boundary info ! crit_depth= the critical depth - when the drying procedure starts ! min_depth= the absolute minimum depth ! kdum= number of layers in the vertical - only used when -DDYNAMIC ! ddu,ddl= upper and lower zooming parameters (in coodinates.F90), ! >=0.: no zooming, =1.: weak zooming, =3.: strong zooming, etc. ! d_gamma= for vert_cord=3: ! depth below which sigma coordinates are used. For larger ! depth, surface or bottom layer thickness at depth=d_gamma is ! kept, depending on gamma_surf. ! gamma_surf= for vert_cord=3: ! if .true., then layer thickness constant at surface, ! else at bottom, see also d_gamma. ! z0_method= how to set bottom roughness ! 0- constant - using z0_const ! 1- space varying - read from topo.nc (name MUST be z0) ! z0_const= constant bottom roughness (m) !------------------------------------------------------------------------------- &domain vert_cord=1 maxdepth=1000. bathymetry='topo.nc' longitude=0. latitude=45.0 f_plane=.true. openbdy=.true. bdyinfofile='bdyinfo.dat' crit_depth=0.1 min_depth=0.2 kdum=30 ddu=1. ddl=1. d_gamma=40. gamma_surf=.true. il=-1 ih=-1 jl=-1 jh=-1 z0_method=0 z0_const=0.010 / !------------------------------------------------------------------------------- ! Specify variables related to meteo forcing - meteo/meteo.F90 ! ! metforcing= .true. or .false. ! on_grid= Are meteo given on grid-points? - .true. or .false. ! calc_met= Are the fluxes already given? - .true. or .false. ! met_method= 1 = constant, 2 = from file ! fwf_method= 0 = none ! 1 = constant, use precip_const and evap_const ! 2 = both evapotation and precipitation from file ! 3 = evapotation is calculated, precipitation from file ! 4 = evapotation is calculated, NO precipitation ! spinup= spin forcing up over 'spinup' micro time steps ! metfmt= format of meteofile: 1-ASCII, 2-NetCDF ! meteo_file= name of meteofile ! tx= constant x stress (Pa) ! ty= constant y stress (Pa) ! swr_const= constant short wave radiation (W/m^2) ! shf_const= constant surface heat flux (W/m^2) ! evap_const= constant evapotation (m/s) ! precip_const= constant precipitation (m/s) ! evap_factor= applied to data from file to convert to m/s ! precip_factor= applied to data from file to convert to m/s !------------------------------------------------------------------------------- &meteo metforcing=.true. on_grid=.false. calc_met=.true. met_method=2 fwf_method=0 spinup=0 metfmt=1 meteo_file='meteofiles.dat' tx=0.1 ty=-0.1 swr_const=0. shf_const=0. evap_const=0. precip_const=0. evap_factor=1. precip_factor=1. / !------------------------------------------------------------------------------- ! Specify variables related to rivers - 3d/rivers.F90 ! ! river_method= 0:none,1:const,2:from file ! river_info= name of file with river specifications ! river_format= 1=ASCII,2=NetCDF ! river_data= name of file with actual river data ! river_ramp= ramp on river flows - in micro time steps ! river_factor= to be applied to all read values - e.g. m3/day --> m3/s ! use_river_salt= use salinity info - if present in rivers.nc ! use_river_temp= use temperature info - if present in rivers.nc !------------------------------------------------------------------------------- &rivers river_method=2 river_info='riverinfo.dat' river_format=2 river_data='rivers.nc' river_ramp=-1 river_factor=1.0 use_river_salt=.false. use_river_temp=.false. / !------------------------------------------------------------------------------- ! Specify variables related to 2D model - 2d/m2d.F90 ! ! MM= number of micro timesteps between call to bottom_friction() ! vel_depth_method= 0: using mean value of neigboring H points (default) ! 1: using minimum value of neigboring H points ! 2: a mixture of 0,1: see code for details ! Am= constant horizontal momentum diffusion coefficient (m2/s) ! if < 0. no diffusion ! An_method= method for constant horizontal numerical diffusion coefficient ! (m2/s) used to filter the surface elevation ! =0 --> disabled ! =1 --> constant value An_const ! =2 --> variable 2D from file ! An_const= value to use if An_method=1 ! An_file= name of netcdf file with variable An, used if An_method=2 ! residual= compute vertically integrated residual currents ! every 'residual' time step ! if < 0. no residual computed ! sealevel_check= switch for making a check for NaN's in sealevels ! =0 --> check is disabled (default) ! <> --> check is done every abs(sealevel_check) time step ! >0 --> error condition - abort program ! <0 --> warning only ! bdy2d= open boundaries exist - .true. or .false. ! bdyfmt_2d= format of boundary specifications ! -1 (no data needed), 0 (analytical), 1 (ascii), 2 (NetCDF) ! bdyramp_2d= spin elevation bdy up over ramp time steps ! bdyfile_2d= name of file with boundary data !------------------------------------------------------------------------------- &m2d MM=1 vel_depth_method=0 Am=-1. An_method=0 An_const=0. An_file='field_An.nc' residual=-1 sealevel_check=0 bdy2d=.true. bdyfmt_2d=-1 bdyramp_2d=-1 bdyfile_2d='bdy_2d.nc' / ! Advection methods implemented sofar: 1=UPSTREAM,2=UPSTREAM_SPLIT,3=TVD !------------------------------------------------------------------------------- ! Specify variables related to 3D model - 3d/m3d.F90 ! ! M= split factor - number of micro timesteps between call ! to 3D model ! cnpar= Cranck-Nicolson factor - between 0. and 1. (close to 1.) ! cord_relax= vert_cord=3: coordinate relaxation time scale in s. ! The parameter r=cord_relax/dt*H(i,j)/maxdepth regulates how ! strongly new layer distribution is relaxed to the old one. ! bdy3d= open boundaries exist - .true. or .false. ! bdyfmt_3d= format of boundary specification ! 1 (ascii), 2 (NetCDF) ! bdyramp_3d= spin bdy up over ramp time steps ! bdyfile_3d= name of file with boundary data ! bdy3d_tmrlx= use temporal relaxation coeff. - .true. or .false. ! bdy3d_tmrlx_min= minimum relaxation coefficient ! bdy3d_tmrlx_max= maximum relaxation coefficient ! bdy3d_tmrlx_ucut=velocity threshold [m/s] ! vel_hor_adv= horizontal advection method for momentum (see below) ! vel_ver_adv= vertical advection method for momentum (see below) ! vel_adv_split= spitting scheme for advection ! ! if vel_hor_adv=1: 3D first-order upstream ! for all other setting -DUV_TVD has to be set in Makefile ! ! vel_adv_split can have the following values: ! 0: 1D split --> full u, full v, full w ! 1: 1D split --> half u, half v, full w, half v, half u ! hor_adv and ver_adv may be 2,3,4,5,6 ! 2: upstream (first-order, monotone) ! 3: P2-PDM (third-order, non-monotone) ! 4: TVD-Superbee (second-order, monotone) ! 5: TVD-MUSCL (second-order, monotone) ! 6: TVD-P2-PDM (third-order, monotone) ! 2: 2D-hor-1D-vert split --> full uv, full w ! hor_adv must be 2 (2D-upstream) or 7 (2D-FCT) ! ! calc_temp= solve temperature equation - .true. or .false. ! calc_salt= solve salinity equation - .true. or .false. ! avmback= background viscosity ! avhback= background diffusivity ! ip_method= internal pressure method ! 1: Blumberg and Mellor ! 2: Blumberg and Mellor (linear) ! 3: z-interpolation ! 4: Song and Wright ! 5: Chu and Fan ! 6: Shchepetkin and McWilliams (2003) ! 7: Stelling and van Kester (1994) ! ip_ramp= spin-up internal pressure over ip_ramp time steps ! <=0 nothing done ! must be a multiplum of M (spltfactor) ! vel_check= switch for making a check for out-of-bounds velocities ! =0 --> check is disabled (default) ! <> --> check is done every abs(vel_check) time step ! >0 --> error condition - abort program ! <0 --> warning only !------------------------------------------------------------------------------- &m3d M=30 cnpar=1.0 cord_relax=0. bdy3d=.true. bdyfmt_3d=2 bdyramp_3d=-1 bdyfile_3d='bdy_3d.nc' bdy3d_tmrlx=.false. bdy3d_tmrlx_min=0. bdy3d_tmrlx_max=0.25 bdy3d_tmrlx_ucut=0.02 vel_hor_adv=1 vel_ver_adv=1 vel_adv_split=0 calc_temp=.true. calc_salt=.true. avmback=0. avhback=0. ip_method=1 ip_ramp=-1 vel_check=0 min_vel=-4. max_vel=4. / !------------------------------------------------------------------------------- ! Specify variables related to temperature - 3d/temperature.F90 ! ! temp_method= 1:const, 2:homogeneous stratification, 3:from 3D field ! temp_const= constant initial temperature ! temp_file= name of file with initial temperature distribution ! temp_format= 1=ASCII,2=NetCDF ! temp_name= name of the temperature variable (used if NetCDF format) ! temp_field_no= what number to read initial data from (used if NetCDF format) ! temp_hor_adv= horizontal advection method for temperature ! temp_ver_adv= vertical advection method for temperature ! temp_adv_split= spitting scheme for advection ! all advection schemes correspond to those of momentum ! (see above) ! temp_AH= horizontal diffusivity of heat ! attenuation_method=switch - default=0 ! =0 --> spatially constant coefficients - see jerlov below ! =1 --> spatially and temporally varying - read from file ! jerlov= switch - default=1 ! =1-6 -> specific Jerlov class ! <>1-6 -> use specified A_const,g1_const,g2_const ! attenuation_file= name of file with varying coefficients ! A_const= use if jerlov not in [1..6] ! g1_const= use if jerlov not in [1..6] ! g2_const= use if jerlov not in [1..6] ! temp_check= switch for making a check for out-of-bounds temperature ! =0 --> check is disabled (default) ! <> --> check is done every abs(temp_check) time step ! >0 --> error condition - abort program ! <0 --> warning only ! min_temp= lower bound for temperature ! max_temp= upper bound for temperature !------------------------------------------------------------------------------- &temp temp_method=2 temp_const=20.0 temp_format=1 temp_file='prof_temp_26022005.txt' temp_name='temp' temp_field_no=1 temp_hor_adv=1 temp_ver_adv=1 temp_adv_split=0 temp_AH=-1. attenuation_method=0 attenuation_file='attenuation.nc' jerlov=1 A_const=0.58 g1_const=0.35 g2_const=23.0 temp_check=0 min_temp=-2. max_temp=35. / !------------------------------------------------------------------------------- ! Specify variables related to salinity - 3d/salinity.F90 ! ! salt_method= 1:const, 2:homogeneous stratification, 3:from 3D field ! salt_const= constant initial salinity ! salt_file= name of file with initial salinity distribution ! salt_format= 1=ASCII,2=NetCDF ! salt_name= name of the salinity variable (used if NetCDF format) ! salt_field_no= what number to read initial data from (used if NetCDF format) ! salt_hor_adv= horizontal advection method for salinity ! salt_ver_adv= vertical advection method for salinity ! salt_adv_split= splitting scheme for advection ! all advection schemes correspond to those of momentum ! (see above) ! salt_AH= horizontal diffusivity of salt ! salt_check= switch for making a check for out-of-bounds salinity ! =0 --> check is disabled (default) ! <> --> check is done every abs(salt_check) time step ! >0 --> error condition - abort program ! <0 --> warning only ! min_salt= lower bound for salinity ! max_salt= upper bound for salinity !------------------------------------------------------------------------------- &salt salt_method=2 salt_const=0.0 salt_format=1 salt_file='prof_salt_26022005.txt' salt_name='salt' salt_field_no=1 salt_hor_adv=1 salt_ver_adv=1 salt_adv_split=0 salt_AH=-1. salt_check=0 min_salt=0. max_salt=40. / !------------------------------------------------------------------------------- ! Specify variables related to the equation of state. ! ! method = ! 1: Linearisation of equation of state with T0,S0,dtr0,dsr0 ! 2: UNESCO equation of state no pressure adjustment. ! See -DUNPRESS for pressure effect ! T0= Reference temperature (deg C) for linear equation of state ! S0= Reference salinity (psu) for linear equation of state ! p0= Reference pressure (bar) for linear equation of state ! dtr0= thermal expansion coefficient for linear equation of state ! dsr0= saline expansion coefficient for linear equation of state !------------------------------------------------------------------------------- &eqstate eqstate_method=2 T0=10.0 S0=33.75 p0=0. dtr0=-0.17 dsr0=0.78 / !------------------------------------------------------------------------------- !Format for output and filename(s) - output/output.F90. ! ! out_fmt= 1=ASCII, 2=NetCDF ! hotin_fmt= 1=ASCII, 2=NetCDF, 3=BINARY ! hotout_fmt= 1=ASCII, 2=NetCDF, 3=BINARY ! in_dir= path to input directory ! out_dir= path to output directory ! save_meteo= save meteo data - .true. or .false. ! save_2d= save 2d fields - .true. or .false. ! save_3d= save 3d fields - .true. or .false. ! save_masks= save computational masks (az, au, av) - .true. or .false. ! save_vel= save velocities - .true. or .false. ! destag= save velocities at T-points - .true. or .false. ! save_strho= save any of salinity, temperature, density - .true. or .false. ! save_s= save salinity - .true. or .false. ! save_t= save temperature - .true. or .false. ! save_rho= save density - .true. or .false. ! save_rad= save solar radiation in water column - .true. or .false. ! save_turb= save any of the turb. quantities - .true. or .false. ! save_tke= save TKE - .true. or .false. ! save_eps= save dissipation rate - .true. or .false. ! save_num= save diffusivity of momentum - .true. or .false. ! save_nuh= save diffusivity of heat - .true. or .false. ! save_ss_nn= save shear stress and Brunt-Vaisala freq. - .true. or .false. ! first_2d= first (micro) time step to save 2D fields ! step_2d= save 2D fields every 'step_2d' ! first_3d= first (micro) time step to save 3D fields ! step_3d= save 3D fields every 'step_3d' ! hotout(3)= array to control generation of hot-start files ! hotout(1) - start ! hotout(2) - stop ! hotout(3) - stride ! all values in number micro of time steps - all default to -1 ! a) ! hotout(1) < 0 - no saving ! hotout(1) = 0 - make hot-start file at end of simulation ! b) ! hotout(2) < 0 --> hotout(2)='very large integer' ! hotout(3)=hotout(1) ! c) ! hotout(2) <= hotout(1) --> hotout(2)=hotout(1) ! hotout(3)=1 ! d) normal use ! ! a+b gives backward compatibility ! c allowu to store hot-start file during simulation ! d make hotstart from hotout(1) to hotout(2) every hotout(3) ! meanout= make average over 'meanout' timesteps if < 0 - no averaging ! if = 0 - average over entire run !------------------------------------------------------------------------------- &io_spec out_fmt=2 hotin_fmt=3 hotout_fmt=3 in_dir='.' out_dir='/els4/users/g3elfa/GETM_results/' save_meteo=.true. save_2d=.true. save_3d=.true. save_masks=.false. save_vel=.true. destag=.true. save_strho=.true. save_s=.true. save_t=.true. save_rho=.false. save_rad=.false. save_turb=.true. save_tke=.false. save_eps=.false. save_num=.true. save_nuh=.true. save_ss_nn=.true. first_2d=0 step_2d=6000 first_3d=0 step_3d=36000 hotout=36000 meanout=-1 /