Change experimental setup

A method how to change several experimental setup is explained.

In order to change the settings of experiments, edit a configuration file (NAMELIST file), and specify the file to "-N" option of an execution. Here, it is explained by using a configuration file (NAMELIST file), dcpam_hs94_T21L20.conf which is used in Dry atmosphere dynamical core experiment by Held and Suarez (1994).

A NAMELIST group name "&xxxxxx_nml" is managed by "xxxxxx" module. List of NAMELIST group names managed in dcpam5 is dcpam5 NAMELIST. See this manual for details.

Change resolution

Resolution can be changed by using &gridset_nml in the configuration file (NAMELIST file).

In dcpam_hs94_T21L20.conf, it is set in the following way.

&gridset_nml
  nmax = 21,                  ! 最大全波数. 
                              ! Maximum truncated wavenumber
  imax = 64,                  ! 経度格子点数. 
                              ! Number of grid points in longitude
  jmax = 32,                  ! 緯度格子点数. 
                              ! Number of grid points in latitude
  kmax = 20                   ! 鉛直層数. 
                              ! Number of vertical level
/

They are for the resolution of T21L20 (the grid points are 64, 32, 20 in longitude, latitude and vertical, respectively). In order to change them into the resolution of T42L20, they are set as follows.

&gridset_nml
  nmax =  42,                 ! 最大全波数. 
                              ! Maximum truncated wavenumber
  imax = 128,                 ! 経度格子点数. 
                              ! Number of grid points in longitude
  jmax =  64,                 ! 緯度格子点数. 
                              ! Number of grid points in latitude
  kmax =  20                  ! 鉛直層数. 
                              ! Number of vertical level
/

When the vertical resolution (the number of grid point) is changed, the values of Sigma in &axesset_nml should be edited to set the levels of sigma coordinate. After edit, execute with '-N' (or '--namelist') option as follows.

$ ./bin/dcpam_main -N=./conf/dcpam_hs94_T21L20.conf | tee hs94-T21L20.log

Change integration period

The integration period is configured using &timeset_nml in the configuration file (NAMELIST file). Two kinds of methods for set up of the integration period are prepared in dcpam. One is to set the integration time, another is to specify the starting time and ending time.

In dcpam_hs94_T21L20.conf, the integration time is specified as below.

&timeset_nml
            : 
  IntegPeriodValue    = 10.0, 
                              ! 計算終了時刻. 
                              ! End time of calculation
  IntegPeriodUnit     = 'day', 
                              ! 計算開始時刻の単位. 
                              ! Unit of end time of calculation
            : 
/

This means that integration is performed for 10 days. The configuration for 20 days integration period is as follows:

&timeset_nml
            : 
  IntegPeriodValue    = 20.0, 
                              ! 計算終了時刻. 
                              ! End time of calculation
  IntegPeriodUnit     = 'day', 
                              ! 計算開始時刻の単位. 
                              ! Unit of end time of calculation
            : 
/

On the other hand, configuration for integration period using the starting time and ending time is as follows:

&timeset_nml
            : 
  cal_type          = 'noleap',
  InitialYear       =     1,
  InitialMonth      =     1,
  InitialDay        =     1,
  InitialHour       =     0,
  InitialMin        =     0,
  InitialSec        =     0.0d0,
  EndYear           =     1,
  EndMonth          =     1,
  EndDay            =     3,
  EndHour           =     0,
  EndMin            =     0,
  EndSec            =     0.0d0,
            : 
/

"cal_type" specifies a type of calendar, and "noleap means the calendar without a bissextile year. "InitialYear", "InitialMonth", ... mean the starting year, month, ... and "EndYea"r, "EndMonth", ... mean the end year, month, ... Please refer to gtool5 Tutorial,DCCalCreate for other items.

After edit, execute with '-N' (or '--namelist') option as follows.

$ ./bin/dcpam_main -N=./conf/dcpam_hs94_T21L20.nml | tee hs94-T21L20.log

Change constants of planet and planetary atmosphere

Constants for a planet and a planetary atmosphere are set using &constants_nml in the configuration file (NAMELIST file).

In dcpam_hs94_T21L20.conf, they are set as follows:

&constants_nml
  RPlanet    = 6.371e6,
                            ! $ a $ [m].
                            ! 惑星半径.
                            ! Radius of planet
  Omega      = 7.292e-5,
                            ! $ \Omega $ [s-1].
                            ! 回転角速度.
                            ! Angular velocity
  Grav       = 9.8,
                            ! $ g $ [m s-2].
                            ! 重力加速度.
                            ! Gravitational acceleration
  CpDry      = 1004.0,
                            ! $ C_p $ [J kg-1 K-1].
                            ! 乾燥大気の定圧比熱.
                            ! Specific heat of air at constant pressure
  GasRDry    = 286.85714285
                            ! $ R $ [J kg-1 K-1].
                            ! 乾燥大気の気体定数.
                            ! Gas constant of air
/

From the top to the bottom, the radius of the planet, angular velocity, gravitational acceleration, specific heat of air at constant pressure gas constant of air are specified. The vaules can be changed by modifying these items.

After edit, execute with '-N' (or '--namelist') option as follows.

$ ./bin/dcpam_main -N=./conf/dcpam_hs94_T21L20.nml | tee hs94-T21L20.log

Change output settings

Configuration for output of history data can be changed by editing &gtool_historyauto_nml. In the configuration file of dcpam_hs94_T21L20.conf, it is set in the following way.

! ヒストリデータ出力の全体設定
! Global settings about history data output
!
&gtool_historyauto_nml
  IntValue = 1.0,
                              ! ヒストリデータの出力間隔の数値. 
                              ! 負の値を与えると, 出力を抑止します. 
                              !
                              ! Numerical value for interval of history data output
                              ! Negative values suppress output.
  IntUnit = 'day',
                              ! ヒストリデータの出力間隔の単位. 
                              ! Unit for interval of history data output
  Precision = 'float',     ! 単精度
                              ! ヒストリデータの精度. 
                              ! Precision of history data
  FilePrefix = '',
                              ! ヒストリデータのファイル名の接頭詞. 
                              ! Prefixes of history data filenames
/
!
! ヒストリデータ出力の個別設定
! Individual settings about history data output
!
&gtool_historyauto_nml
  Name = 'U, V, Temp, Ps, QVap, Vor, Div, SigDot, DPiDt'
/
&gtool_historyauto_nml
  Name = 'Mass, KinEngy, IntEngy, PotEngy, LatEngy, TotEngy, Enstro', 
  SpaceAverage = .true., .true., .true., .true., .true.
/

Each configuration item is described below.

IntValue
(real) Value of the output interval
IntUnit
(string) Unit of the output interval. "sec", "min", "hour", "day", "month" , "year" and so on can be used. Detail of available units is described at "Characters list for unit" in gtool5 library: dc_date_types module
Precision
(string) Accuracy of data. "float" (real with single precision), "double" (real with double precision), "int" (integer) can be used.
SpaceAverage
(logical array) Flags for spartial average. The 1st, 2nd and 3rd components of the array corresponds to longitude, latitude and height (sigma) coordinates.

When Name is not configured or set a null string, it becomes a default configuration for all variables. The following items become effective only in this case.

FilePrefix
(string) Prefix of data file names. When "exp1-" is specified for exapmle, the output file name of "U" variable becomes "exp1-U.nc". You can also output data in a different place from the current directory by specifying strings with "/", such as "data01/".

Change initial (restart) data file name

In order to input initial data or restart data from a file, edit NAMELIST file as follows.

&restart_file_io_nml
  InputFile = 'init_T21L20.nc',    ! filename of input initial/restart data
            :
/

Specify a filename of initial data or restart data to "InputFile".

After change of NAMELIST file, start an experiment with -N or --namelist option and the NAMELIST file as follows.

$ ./bin/dcpam_main -N=./conf/dcpam_hs94_T21L20.conf | tee hs94.log

Starting an experiments, following data input messages may be displayed. Confirm them.

|*** MESSAGE [restart_file_io] ***  ----- Initialization Messages -----
|*** MESSAGE [restart_file_io] ***  Input::
|*** MESSAGE [restart_file_io] ***    InputFile  = init_T21L20.nc
|*** MESSAGE [restart_file_io] ***  Output::
|*** MESSAGE [restart_file_io] ***    OutputFile = restart.nc
|*** MESSAGE [restart_file_io] ***    IntTime    = 100. [day]
|*** MESSAGE [restart_file_io] ***  -- version = ...

r |ikawa Exp $

|*** MESSAGE [HistoryGetDouble3] ***  Input init_T21L20.nc@U,time=0.
|*** MESSAGE [HistoryGetDouble3] ***  Input init_T21L20.nc@V,time=0.
|*** MESSAGE [HistoryGetDouble3] ***  Input init_T21L20.nc@Temp,time=0.
|*** MESSAGE [HistoryGetDouble3] ***  Input init_T21L20.nc@QVap,time=0.
|*** MESSAGE [HistoryGetDouble2] ***  Input init_T21L20.nc@Ps,time=0.
|*** MESSAGE [restart_file_io] ***  Initial data (not restart data) is input from a data file "init_T21L20.nc". *

B | (t-dt) and *N (t) are same.

Set 'swamp condition'

You can set up 'swamp condition' by specifying the configuration file (NAMELIST file) as follows:

For example, when a sample configuration file "dcpam_ape_T21L16.conf" is modified, the above configuration can be realized by adding the following item (the other items are the default vaules).

&surface_data_nml
  SurfCond = 1
/

References


$Id: changesetup.rd,v 1.11 2012/02/24 08:20:44 takepiro Exp $