Gemclim 3.3.3.1 nudging : Différence entre versions
m |
m |
||
Ligne 41: | Ligne 41: | ||
=== Controlling the strength === | === Controlling the strength === | ||
− | At each time step, the difference between RCM and driving data is calculated (for different wave lengths) and an increment, by which the model results would need to get nudged to match the driving data. But this increment is usually not fully applied at the current time step, but only a fraction of it. To control who much is applied, one does not say "I want to apply only 10% of this increment", but one rather sais "I want this increment to be applied over n hours". So if, for example, one wants to apply only 5% of the increment and the model time step is 30 minutes, the time needed to apply this increment fully is 10 hours. In this case one would set:<br> | + | At each time step, the difference between RCM and driving data is calculated (for different wave lengths) and an increment, by which the model results would need to get nudged to match the driving data. But this increment is usually not fully applied at the current time step, but only a fraction of it. To control who much is applied, one does not say "I want to apply only 10% of this increment", but one rather sais "I want this increment to be applied over n hours". So if, for example, one wants to apply only 5% of the increment and the model time step is 30 minutes, the time needed to apply this increment fully is 10 hours. In this case one would set:<br> |
− | '''Lam_spn_relax_hours = 10. ,''' | + | '''Lam_spn_relax_hours = 10. ,''' |
− | + | 10 is also the default value. | |
<br> | <br> |
Version depuis le 19 de septembre 2014 à 18:42
Matières
Spectral nudging
Spectral nudging is a way to force (nudge) the larger scales of an RCM towards the ones of its driving GCM resp. RCM.
The information below is for CRCM5/GEMCLIM v_3.3.3 and v_3.3.3.1 only!
Older version of CRCM5/GEMCLIM do not use the same spectral nudging, but a veeeery costly one which is controlled differently and might or might not work. - Sorry.
Grid size restrictions
To be able to use spectral nudging in CRCM5, the core grid needs to match the FFT criteria in x- and y-direction. You can use 'findfft' to get the possible values to set 'Grd_ni' and 'Grd_nj' in your gemclim_settings.nml. (You need to set the model environment first to have access to 'find'fft'.)
For example:
findfft -gnimax 500 -cfl Pil_maxcfl
where the key '-cfl' needs to be set to value of 'Pil_maxcfl' from your gemclim_settings.nml!!!!!
Your 'Grd_ni' and 'Grd_nj' will then have to be set to one of the values findfft is listing.
If your grid is larger than 500 points, just set '-gnimax' to a number large enough.
Activate spectral nudging in CRCM5
To activate spectral nudging in CRCM5 one has to set several parameters in the file 'gemclim_settings.nml' in the namelist 'gem_cfgs'.
Fields to nudge
In CRCM5 one has the option of nudging u-wind, v-wind, and/or temperature.
Tests have shown that it is sufficient to nudge u-wind and v-wind and that nudging the temperature as well does not change much the results. Therefore I suggest to set:
Lam_spn_nudging_S = 'UV' ,
Half responds wavelength
This is the wavelength at which equal weight is given to the driving data and the RCM solution. For longer wavelength more weight is given to the driving data, for shorter wavelength more weight is given to the RCM. Typical wavelengths are between 1000km and 2000km. For example set:
Lam_spn_half_respon = 1000. ,
Controlling the vertical profile
There are 3 parameters to control the nudging profile:
Lam_spn_up_const_lev : above this level (in hybrid values) the profile is set to 1, to full strength nudging (default 0.).
Lam_spn_start_lev : below this level (in hybrid values) the profile is set to 0, no nudging (default 1.).
Lam_spn_trans_shape_S : Between these two levels the profile goes from 0 to 1. Either linearly ('LINEAR') or with a cos2 ('COS2') function.
For example set:
Lam_spn_up_const_lev = 0. ,
Lam_spn_start_lev = 0.5 ,
Lam_spn_trans_shape_S = 'LINEAR' ,
Controlling the strength
At each time step, the difference between RCM and driving data is calculated (for different wave lengths) and an increment, by which the model results would need to get nudged to match the driving data. But this increment is usually not fully applied at the current time step, but only a fraction of it. To control who much is applied, one does not say "I want to apply only 10% of this increment", but one rather sais "I want this increment to be applied over n hours". So if, for example, one wants to apply only 5% of the increment and the model time step is 30 minutes, the time needed to apply this increment fully is 10 hours. In this case one would set:
Lam_spn_relax_hours = 10. ,
10 is also the default value.
Modifications to your executable
Unfortunately, the spectral nudging in GEMCLIM v_3.3.3 and v_3.3.3.1 is not exactly doing what it is supposed to do.
You therefore need a patch.
If you are running v_3.3.3, please talk to me (winger.katja@uqam.ca).
If you are running v_3.3.3.1, please follow the instructions below:
- Set the model environment (with 3331 resp. . s.ssmuse.dot gemclim_3.3.3.1-dev )
- Go into the directory in which you create your executables
- Get a copy of the corrected function:
cp ${gemclim}/Sources/Patches/spn_calfiltre.ftn . - Compile the corrected function:
make spn_calfiltre.o - Link and load the model executable:
make gemclimdm
Then launch your simulation as usual.