53 | | * '''the old driver (src_driver/dim2driver)''', which assumes that scalar variables (Tair,Qair,Psurf) are instantaneous values at the timestamp, while flux variables (Rainf,Snowf, SWdown, LWdown) are mean values over the interval ending at the timestamp. |
54 | | * '''the new driver (src_driver/orchideedriver.f90) is more flexible''' and can normally deal with any temporal structure of the forcing datasets, provided the required attributes are inserted in the forcing files. This document [attachment:Description_Forcing_Files.pdf] provides detail of how forcing files need to be prepared. It addresses in particular the issues one may face when the fluxes are averaged and scalar variables instantaneous. The driver needs to take this into account else the diurnal cycle needs to be misplaced. Some data providers have different convention for representing averaged fluxes and this type of details matter. |
| 53 | * '''the old driver (src_driver/dim2driver)''', which assumes that scalar variables (Tair,Qair,Psurf,Wind) are instantaneous values at the timestamp, while flux variables (Rainf,Snowf, SWdown, LWdown) are mean values over the interval ending at the timestamp. This driver also requires that the first value of the annual files corresponds to 00UTC+dt_forcing (for insatnce 03UTC for a 3hourly forcing), and that the last value is for Dec 31st at 24UTC = 00UTC on Jan 1st of the following year. |
| 54 | * '''the new driver (src_driver/orchideedriver.f90) is more flexible''' and can normally deal with any temporal structure of the forcing datasets, provided the required attributes are inserted in the forcing files. Yet, orchideedriver is not yet compatible with libIGCM. This document [attachment:Description_Forcing_Files.pdf] provides details of how forcing files need to be prepared. It addresses in particular the issues one may face when the fluxes are averaged and scalar variables instantaneous. The driver needs to take this into account else the diurnal cycle can be misplaced. Some data providers have different convention for representing averaged fluxes and this type of details matter. |
74 | | - The '''missing_value''' attribute is mandatory in forcing files containing only land points, with a value outside of the valid range of the variables, for example missing_value=1.e+20. In flinget_mat, the default value is set to 0, if this value is kept, oceanic points will be filled with it and treated as land points because 0. is a valid value for some fields (Qair) but ORCHIDEE will crash because it's not valid for others (PSurf), causing the usual problems in qsatcalc. |
| 74 | - The spatial structure of ORCHIDEE forcing files can either be 2D, or 1D if we exclude the sea points to construct a vector of land points. In both cases, this imposes a land-sea mask, to define the land points on which ORCHIDEE will run if we use 2D files, or to construct the 1D files. |
| 75 | - To define the sea points, the '''missing_value''' attribute is mandatory in forcing files containing only land points, with a value outside of the valid range of the variables, for example missing_value=1.e+20. In flinget_mat, the default value is set to 0, if this value is kept, oceanic points will be filled with it and treated as land points because 0. is a valid value for some fields (Qair) but ORCHIDEE will crash because it's not valid for others (PSurf), causing the usual problems in qsatcalc. |
| 77 | * '''SPRED_PREC''' for forcings at 3 and 6 hourly time step: |
| 78 | - This externalizable keyword defines the nb of orchidee time steps on which the precipitation total of the forcing time step is spread. It can induce significant chnages on the model's behavior (interception and interception loss, infiltration, runoff and ET), although this hasn't been assessed in a systematic way. |
| 79 | - By default, we spread the precipitation over half the forcing time step (1.5h and 3h respectively for 3-hourly and 6-hourly files). |
| 80 | * '''New driver''': you need to add a time attribute to each variable, e.g. "time: instantaneous" our "time: mean(end)", further details in [attachment:Description_Forcing_Files.pdf]. |
| 81 | * '''Old driver''': |
| 82 | - The above time attributes are optional but recommended so the files can also be used by the new driver. |
| 83 | - This time attributes should be "time: instantaneous" for the scalars (Tair,Qair,Psurf,Wind), and "time: mean(end)" for the fluxes (Rainf,Snowf, SWdown, LWdown). If the physical definitions of your forcing variables do not fit this scheme, then you should avoid using this forcing with dim2driver, unless you manage to adapt your files to these constraints. |
| 84 | - dim2driver also requires that the first value of the annual files corresponds to 00UTC+dt_forcing (for instance 03UTC for a 3hourly forcing), and that the last value is for Dec 31st at 24UTC = 00UTC on Jan 1st of the following year. Your files must be prepared accordingly. |
| 85 | * '''Physical definition of the forcing variables''': both drivers follow the same conventions. In particular, the following measurement heights are assumed by default: 2m for Tair and Qair; 10m for Wind. Further details in [attachment:Description_Forcing_Files.pdf]. |