The APSIM Met module provided daily meteorological information to all modules within an APSIM simulation.


The APSIM Met Module requires parameters to specify the climate of the site for each APSIM time step. This information is included in a ‘ weather’ , or ‘ met’ , file.
Climate data can exist in the met file in two ways :

As Constants or as Daily (Column) values.

Constant Values

Climate information for the simulation site that is independent of time can be specified at the top of the data section.
Examples of how constant values can be specified are the values:

site = toowoomba

latitude = -26.8 (degrees)

Daily (Column)Values

Information that needs to be specified for each day can be arranged in space-delimited columns. The data columns can be arranged in any order and contain any data of any type. The line following the list of column names must be followed by a line containing the units, in brackets ‘ ()’ , for the information in each column.

The only constraints are as follows:

column headers must use the standard APSIM state variable names so that the data can be recognised by the module communications. The list of columns must contain adequate information for identifying time for each row. This means that the list of columns must contain either:

‘ day’ and ‘ year’


‘ day_of_month’ , ‘ month’ and ‘ year’ .


site = toowoomba 
latitude = -26.8 (degrees)

year day radn    maxt mint rain
()   ()  (MJ/m2) (oC) (oC) (mm) 
1996 65   20     29   20.5  0 
1996 66   20     29   20    0 
1996 67   20     29   21    0 
1996 68   20     22.5 20    0 
1996 69   20     27.5 18.5  0 
.    .    .      .    .     . 
.    .    .      .    .     . 
.    .    .      .    .     .

Setting a Daily(Column) Value to a Constant Value

Sometimes you may want to switch off a column in your met file and replace it with a constant value.

For example you may want to instead of using the rain column in your met file, you may want to set the rain to always be a constant value of 0mm (so no rainfall).
Of course you can always just  the met file itself and change the column values to be zero, but this is time consuming.
A faster way is to just put the constant value,

rain=0 (mm)

at the top of your met file, and then rename the column heading for the rain column to something that won’t be recognised as an APSIM variable,




Resetting Met Variables (eg Climate Change scenario)

The APSIM Met Module can reset the values of any variables specified in the met file. Both constants and column values (apart from the time specification column values) for the current timestep can be reset using standard APSIM communication techniques.

However, changing met data dynamically dur
ing a simulation must only occur at a predefined stage during daily simulation execution. See example below.

Resetting met variables at ‘start_of_day’ or ‘end_of_day’ could result in critical modules (eg Soilwat2) missing the information due to process ordering. Setting met variables at the ‘preNewMet’ stage (see example) will avoid this risk.


Most modules in APSIM get their weather data from a newmet event that is produced by the MET module, so we need to change the weather variables before this event gets sent out. The MET module produces an event that makes this easy. It is called prenewmet. This event is fired just before a newmet event. So all we have to do is to trap this event and change the weather variables.

From the manager\sample\manager.par file:

maxt = maxt + 2
mint = mint + 2

When the prenewmet event fires, we increase the maximum and minimum temperature by 2 degrees, which then gets propagated to all other APSIM modules when the newmet event is sent by the MET module.

Module Output Variables

The APSIM Met Module can provide the values of several state variables for reporting to an output file or use by other modules.


Name Units Description
keyword as specified Each keyword climate constant is available for output by the user.
Column name as specified Each column data field is available for output by the user. The value for the current simulation timestep will be returned. The time specifiers (ie day, year, day_of_month, month) are not available for output.
Day_length hours Day length (hours of plant photosensitive light) for the current simulation day. This value is calculated using day of year and latitude and includes civil twilight with a sun angle of 6 degrees below the horizon.

Easy way to calculate the tav and amp constants
The software team provides a tool called TAV_AMP that will calculate these 2 constants and insert them into a met file. To download the too,l go to: TavAmpGUI

Full instructions for using the tool can be found here: tav_amp