Differences between revisions 6 and 7
Revision 6 as of 2008-01-15 10:50:52
Size: 4608
Editor: NicoleThomas
Comment:
Revision 7 as of 2008-01-15 11:11:46
Size: 5478
Editor: NicoleThomas
Comment:
Deletions are marked like this. Additions are marked like this.
Line 3: Line 3:

=== How to get the source code ===

The source code of the trajectory program is under control of the CVS (Concurrent Version System) utility.
To get the source code the environment variable CVSROOT must be set to ''/usr/local/icg/icg1/archive''.
The command
{{{
cvs co -P traj
}}}
creates a subdirectory ''traj'' in the current working directory and copies the current version of the trajectory package to this directory.

The directory traj include the following subdirectories:

 * ''doc'': latex file for documentation
 * ''mod'': module files
 * ''obj'': object files
 * ''source'': source code
 * ''templates'': templates for configuration file

=== Compiling ===

The program can be compiled on different platforms with the makefile stored in the directory ''traj'':
{{{
gmake traj
}}}
The program will be compiled for the used platform and an executable ''traj'' will be created.

Line 31: Line 59:
 * '''LAT''': latitudes in deg N, valid range [-90,90]
 * '''LON''': longitudes in deg E, valid range [0,360]
 * '''THETA''': potential temperature in K
 * '''TIME_INIT''': time in Julian Seconds
 * ''LAT'': latitudes in deg N, valid range [-90,90]
 * ''LON'': longitudes in deg E, valid range [0,360]
 * ''THETA'': potential temperature in K
 * ''TIME_INIT'': time in Julian Seconds
Line 45: Line 73:
 * '''LAT''': latitudes in deg N, valid range [-90,90]
 * '''LON''': longitudes in deg E, valid range [0,360]
 * '''THETA''': potential temperature in K (in ascending order)
 * '''time:''' (one) time in julian seconds
 * ''LAT'': latitudes in deg N, valid range [-90,90]
 * ''LON'': longitudes in deg E, valid range [0,360]
 * ''THETA'': potential temperature in K (in ascending order)
 * ''time'': (one) time in julian seconds
Line 54: Line 82:
 * '''U''': westerly wind
 * '''V:''' southerly wind
 * '''THETA_DOT''': vertical velocity (for 3d-runs)
 * '''TEMP''': temperature
 * '''PRESS''': pressure
 * '''PV''': potential vorticity
 * ''U'': westerly wind
 * ''V'': southerly wind
 * ''THETA_DOT'': vertical velocity (for 3d-runs)
 * ''TEMP'': temperature
 * ''PRESS'': pressure
 * ''PV'': potential vorticity
Line 76: Line 104:
 * '''time''': number of written timesteps
 * '''NPARTS''': number of start positions/trajectories
 * ''time'': number of written timesteps
 * ''NPARTS'': number of start positions/trajectories
Line 81: Line 109:
 * '''time'''(time): output times in julian seconds
 * '''DATE_TIME'''(time,7): readable time (year, month, day, hour, minute, second, millisecond)
 * '''LAT'''(time,NPARTS): latitudes in deg N
 * '''LON'''(time,NPARTS): longitudes in deg E
 * '''THETA'''(time,NPARTS): potential temperature in K
 * ''time''(time): output times in julian seconds
 * ''DATE_TIME''(time,7): readable time (year, month, day, hour, minute, second, millisecond)
 * ''LAT''(time,NPARTS): latitudes in deg N
 * ''LON''(time,NPARTS): longitudes in deg E
 * ''THETA''(time,NPARTS): potential temperature in K
Line 87: Line 115:
It also contains the variables specified in the configuration file (line 16). Possible output variables are: '''TEMP, PRESS, U, V, PV''' and '''SZA'''. It also contains the variables specified in the configuration file (line 16). Possible output variables are: ''TEMP, PRESS, U, V, PV'' and ''SZA''.
Line 91: Line 119:
If there are different starting times for the trajectories the data set also contains variables with the prefix '''start_''' (''start_time, start_LAT, start_LON'' etc.). These are arrays with the dimension ''NPARTS'' containing the values at the starting times of the trajectories. If there are different starting times for the trajectories the data set also contains variables with the prefix ''start_'' (''start_time, start_LAT, start_LON'' etc.). These are arrays with the dimension ''NPARTS'' containing the values at the starting times of the trajectories.
Line 93: Line 121:
If the trajectories end at different times, the values at the end times will be written on variables with the prefix '''end_''' (''end_time, end_LAT'' etc.). If the trajectories end at different times, the values at the end times will be written on variables with the prefix ''end_'' (''end_time, end_LAT'' etc.).

The package traj

The package traj allows to determine the trajectories of an ensemble of air parcels. Using assimilated winds and temperatures derived from meteorological data (currently UKMO or ECMWF), both forward and backward can be calculated. The numerical integration is based on the 4th order Runge-Kutta schema.

How to get the source code

The source code of the trajectory program is under control of the CVS (Concurrent Version System) utility. To get the source code the environment variable CVSROOT must be set to /usr/local/icg/icg1/archive. The command

cvs co -P traj

creates a subdirectory traj in the current working directory and copies the current version of the trajectory package to this directory.

The directory traj include the following subdirectories:

  • doc: latex file for documentation

  • mod: module files

  • obj: object files

  • source: source code

  • templates: templates for configuration file

Compiling

The program can be compiled on different platforms with the makefile stored in the directory traj:

gmake traj

The program will be compiled for the used platform and an executable traj will be created.

Configuration file

The options for the execution of traj can be set in the configuration file traj.inp:

example1/pos_EXP_97032512.nc  ! Name of initial positions file
/dat_icg1/rad/example         ! Input directory
I3U                           ! Prefix of wind files
outdir                        ! Output directory
TRU               ! Prefix for output file
24                ! 1/2/3/4/6/8/12/24 -> Data every n hours
y                 ! y/n - Backward/Forward trajectories
y                 ! y/n - 3d(with theta_dot)/2d(without theta_dot) run
1                 ! eq. starts (a=0) diff. starts: a=1/2 same end/length
12 23 03 1997     ! Endtime(hh dd mm yy) for a=0/1, lenght (hrs) for a=2
1800              ! First timestep in seconds
60                ! Second timestep in seconds
0 1 0             ! Writing frequency (minutes hours days)
N.Thomas          ! user name
4                 ! number of output parameters
TEMP              ! output parameters (one short name per line)
PRESS             ! possible parameters are: TEMP,PRESS,U,V,PV,SZA
PV
SZA

Initial positions of air parcels

This file includes the starting positions of the trajectories (longitudes, latitudes and theta) and the corresponding starting times. To create it the package pos can be used. It has to be a file in NetCDF data format with the following variables:

  • LAT: latitudes in deg N, valid range [-90,90]

  • LON: longitudes in deg E, valid range [0,360]

  • THETA: potential temperature in K

  • TIME_INIT: time in Julian Seconds

The filename must correspond to the following format:

  • pos_xxx_yymmddhh.nc
    xxx : 1-3 characters
    yymmddhh : starting time
    e.g.: pos_ABC_99022812.nc

Example for initial positions file

Meteorological data

The data files with meteorological data used by the trajectory program must contain the coordinate variables:

  • LAT: latitudes in deg N, valid range [-90,90]

  • LON: longitudes in deg E, valid range [0,360]

  • THETA: potential temperature in K (in ascending order)

  • time: (one) time in julian seconds

LAT and LON must build a regular grid.

Besides the files must include at least the four-dimensional data sets for the variables:

  • U: westerly wind

  • V: southerly wind

  • THETA_DOT: vertical velocity (for 3d-runs)

  • TEMP: temperature

  • PRESS: pressure

  • PV: potential vorticity

The filenames must correspond to the format:

  • isen_xxx_yymmddhh.nc
    xxx : 3 characters
    yymmddhh : valid time
    e. g.: isen_ABC_99022812.nc

Example for isentropic file

Outputs

The output file is created in NetCDF data format and is named:

  • traj_xxx_3d_yymmddhh_yymmddhh.nc

The characters xxx are read from the configuration file (line 5) and the two times are the start and end time of trajectory calculation.

The dimensions in the trajectory output file are:

  • time: number of written timesteps

  • NPARTS: number of start positions/trajectories

The file contains the following variables:

  • time(time): output times in julian seconds

  • DATE_TIME(time,7): readable time (year, month, day, hour, minute, second, millisecond)

  • LAT(time,NPARTS): latitudes in deg N

  • LON(time,NPARTS): longitudes in deg E

  • THETA(time,NPARTS): potential temperature in K

It also contains the variables specified in the configuration file (line 16). Possible output variables are: TEMP, PRESS, U, V, PV and SZA.

Further variables can be added to the trajectory output file using the program traj_add.

If there are different starting times for the trajectories the data set also contains variables with the prefix start_ (start_time, start_LAT, start_LON etc.). These are arrays with the dimension NPARTS containing the values at the starting times of the trajectories.

If the trajectories end at different times, the values at the end times will be written on variables with the prefix end_ (end_time, end_LAT etc.).

Example for trajectory output file

traj (last edited 2019-10-24 09:40:10 by NicoleThomas)