Regridding restarts for Fortuna 2.0: Difference between revisions
No edit summary |
|||
(28 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
Here are | Here are basic instructions on how to regrid restarts, based on a README by Larry Takacs. | ||
== Where to get MERRA Restarts == | |||
MERRA restarts are available on the NCCS discover cluster under the following directories: | |||
/archive/g_proj5/production/GEOSdas-2_1_4/d5_merra_jan79/rs/ | |||
/archive/g_proj5/production/GEOSdas-2_1_4/d5_merra_jan89/rs/ | |||
/archive/g_proj5/production/GEOSdas-2_1_4/d5_merra_jan98/rs/ | |||
Restarts are in subdirectories according to their respective year and month. The are in the form (as an example) <code>d5_merra_jan79.catch_internal_rst.19910128_21z.bin</code>, which you would otherwise know as <code>catch_internal_rst</code> (with the appropriate <code>cap_restart</code>). MERRA restart filenames need to be changed to the latter, "entropic" name for the regridding programs. | |||
== Required Restarts == | == Required Restarts == | ||
Line 5: | Line 15: | ||
The key restarts to modify are: | The key restarts to modify are: | ||
Required | Required upper-air related restarts: | ||
*fvcore_internal_rst | *<code>fvcore_internal_rst</code> | ||
*moist_internal_rst | *<code>moist_internal_rst</code> | ||
Required land-surface related restarts: | |||
* | *<code>catch_internal_rst</code> | ||
* | *<code>vegdyn_internal_rst</code> | ||
*<code>landice_internal_rst</code> | |||
*<code>lake_internal_rst</code> | |||
*<code>saltwater_internal_rst</code> | |||
Optional upper-air related restarts (if you have them): | |||
* | *<code>pchem_internal_rst</code> | ||
*<code>gocart_internal_rst</code> | |||
For DAS runs, you may also interpolate: | |||
*<code>agcm_import_rst</code> | |||
==Regridding Upper-Air Related Restarts== | ==Regridding Upper-Air Related Restarts== | ||
Line 28: | Line 37: | ||
Within your build, go to the directory: | Within your build, go to the directory: | ||
src/GMAO_Shared/GEOS_Util/post | |||
Here you will find the files: | Here you will find the files: | ||
rs_hinterp (script to compile the Fortran) | *<code>rs_hinterp</code> (script to compile the Fortran) | ||
rs_hinterp.F (Fortran source to regrid) | *<code>rs_hinterp.F</code> (Fortran source to regrid) | ||
By running | By running <code>rs_hinterp</code>, it should produce the executable: | ||
rs_hinterp_Linux.x | rs_hinterp_Linux.x | ||
Running rs_hinterp_Linux.x shows the usage: | Running <code>rs_hinterp_Linux.x</code> shows the usage: | ||
<pre> | |||
> rs_hinterp_Linux.x | > rs_hinterp_Linux.x | ||
Usage: | Usage: | ||
rs_hinterp_$ARCH.x -dyn DYNRST | rs_hinterp_$ARCH.x -dyn DYNRST | ||
-moist MOISTRST | |||
-other OtherRST1 OtherRST2 OtherRST3 ... | |||
-topo_old TOPO_OLD | |||
-topo_new TOPO_NEW | |||
-im IM_OUT | |||
-jm JM_OUT | |||
where: | where: | ||
Line 59: | Line 67: | ||
-moist MOISTRST: Filename for MOIST_INTERNAL_RESTART | -moist MOISTRST: Filename for MOIST_INTERNAL_RESTART | ||
-other OtherRST: Filename for Other Flat Binary_RESTART | -other OtherRST: Filename for Other Flat Binary_RESTART | ||
-topo_old TOPO_OLD: Filename for OLD Topography (associated with | -topo_old TOPO_OLD: Filename for OLD Topography (associated with INPUT resolution) | ||
INPUT resolution) | -topo_new TOPO_NEW: Filename for NEW Topography (associated with OUTPUT resolution) | ||
-topo_new TOPO_NEW: Filename for NEW Topography (associated with | |||
OUTPUT resolution) | |||
-im IM_OUT: IM Dimension for Output | -im IM_OUT: IM Dimension for Output | ||
-jm JM_OUT: JM Dimension for Output | -jm JM_OUT: JM Dimension for Output | ||
</pre> | |||
Line 71: | Line 77: | ||
to 1x1.25-deg, you have: | to 1x1.25-deg, you have: | ||
<pre> | |||
rs_hinterp_$ARCH.x -dyn fvcore_internal_rst | rs_hinterp_$ARCH.x -dyn fvcore_internal_rst | ||
-moist moist_internal_rst | -moist moist_internal_rst | ||
Line 79: | Line 86: | ||
-jm 181 | -jm 181 | ||
</pre> | |||
TOPO_OLD is linked to: | where <code>TOPO_OLD</code> is linked to: | ||
/discover/nobackup/dkokron/geos5/bcs/GEOSagcm-Eros-beta7p8/DC/144x91/topo_DYN_ave_144x91_DC.data | |||
TOPO_NEW is linked to: | and <code>TOPO_NEW</code> is linked to: | ||
/discover/nobackup/dkokron/geos5/bcs/GEOSagcm-Eros-beta7p8/DC/288x181/topo_DYN_ave_288x181_DC.data | |||
/discover/nobackup/dkokron/geos5/bcs/GEOSagcm-Eros-beta7p8/DC/288x181/topo_DYN_ave_288x181_DC.data | |||
Line 93: | Line 100: | ||
This will produce: | This will produce: | ||
fvcore_internal_rst.0288x0181 | fvcore_internal_rst.0288x0181 | ||
moist_internal_rst.0288x0181 | moist_internal_rst.0288x0181 | ||
pchem_internal_rst.0288x0181 | pchem_internal_rst.0288x0181 | ||
gocart_internal_rst.0288x0181 | gocart_internal_rst.0288x0181 | ||
These are the finished restarts. They will have to be renamed -- truncated after <code>rst</code> -- in order to be recognized by the model in its standard configuration. | |||
Note that even if you have no restarts that fall under the <code>-other</code> option, you still have to include that option (with nothing after it) in the command. | |||
==Regridding Land-Surface Related Restarts== | |||
Within your build, go to: | Within your build, go to: | ||
src/GEOSgcs_GridComp/GEOSgcm_GridComp/GEOSagcm_GridComp/GEOSphysics_GridComp/ ... | src/GEOSgcs_GridComp/GEOSgcm_GridComp/GEOSagcm_GridComp/GEOSphysics_GridComp/ ... | ||
GEOSsurface_GridComp/GEOSland_GridComp/GEOScatch_GridComp/mk_restarts | |||
At this point it is best to update your directory to the HEAD of CVS to | At this point it is best to update your directory to the HEAD of CVS to | ||
Line 111: | Line 121: | ||
cvs upd -A | cvs upd -A | ||
Under the mk_restarts directory you have the directories: | Under the <code>mk_restarts</code> directory you have the directories: | ||
InData | InData | ||
Line 117: | Line 127: | ||
The basic idea is: | The basic idea is: | ||
#Put your existing land-related restarts in the <code>InData</code> directory | |||
#Put the appropriate tile file for your current resolution in the <code>InData</code> directory | |||
#Put your target resolution tile file in the <code>OutData</code> directory | |||
Where to find the appropriate tile file depends on the Fortuna versions you are regridding ''from'' and ''to'', and is detailed below. | |||
Run <code>mk_Restarts</code> | |||
Your regridded restarts will be produced in the OutData directory. | Your regridded restarts will be produced in the <code>OutData</code> directory. | ||
Finally, ''in the case of Fortuna 2.0'', you will need to run <code>newcatch</code> on the catchment restart file. Rename <code>catch_internal_rst</code> to <code>catch_internal_rst_old</code>, and then run: | |||
../newcatch catch_internal_rst_old catch_internal_rst | |||
===Old and New Tile Files=== | |||
There are two possible scenarios for regridding land-surface related | There are two possible scenarios for regridding land-surface related | ||
restarts: | restarts: | ||
#Converting existing restarts to resolutions: 144x91, 288x181, 540x361, 1080x721 (old tile files for Fortuna 1.4 and earlier) | |||
576x361, | #Converting existing restarts to resolutions: 144x91, 288x181, 576x361, 1152x721 (new tile files for Fortuna 1.5 and later) | ||
The | The old tile files are currently archived in: | ||
/discover/nobackup/ltakacs/bcs/Fortuna-1_4/144x91/FV_144x91_DC_360x180_DE.til | /discover/nobackup/ltakacs/bcs/Fortuna-1_4/144x91/FV_144x91_DC_360x180_DE.til | ||
/discover/nobackup/ltakacs/bcs/Fortuna-1_4/288x181/FV_288x181_DC_360x180_DE.til | /discover/nobackup/ltakacs/bcs/Fortuna-1_4/288x181/FV_288x181_DC_360x180_DE.til | ||
/discover/nobackup/ltakacs/bcs/Fortuna-1_4/540x361/FV_540x361_DC_360x180_DE.til | /discover/nobackup/ltakacs/bcs/Fortuna-1_4/540x361/FV_540x361_DC_360x180_DE.til | ||
/discover/nobackup/ltakacs/bcs/Fortuna-1_4/1080x721/FV_1080x721_DC_360x180_DE.til | /discover/nobackup/ltakacs/bcs/Fortuna-1_4/1080x721/FV_1080x721_DC_360x180_DE.til | ||
The | The new tile files are located in: | ||
/discover/nobackup/ltakacs/bcs/Fortuna- | /discover/nobackup/ltakacs/bcs/Fortuna-2_0/144x91/FV_144x91_DC_360x180_DE.til | ||
/discover/nobackup/ltakacs/bcs/Fortuna- | /discover/nobackup/ltakacs/bcs/Fortuna-2_0/288x181/FV_288x181_DC_360x180_DE.til | ||
/discover/nobackup/ltakacs/bcs/Fortuna- | /discover/nobackup/ltakacs/bcs/Fortuna-2_0/576x361/FV_576x361_DC_360x180_DE.til | ||
/discover/nobackup/ltakacs/bcs/Fortuna- | /discover/nobackup/ltakacs/bcs/Fortuna-2_0/1152x721/FV_1152x721_DC_360x180_DE.til | ||
Depending on which | Depending on which tile file you are regridding to, there are two procedures: | ||
procedures: | |||
1) Target | ====1) Target tile file is from OLD set (model tags <code>Fortuna-1_4</code> and earlier)==== | ||
Since your target tile file is OLD (and not consistent with the new | |||
Since your target | <code>mosaic_veg_typs_fracs</code> data), you have to remove the | ||
mosaic_veg_typs_fracs data), you have to remove the | <code>mosaic_veg_typs_fracs</code> file from the <code>InData</code> direcory (or simply rename | ||
mosaic_veg_typs_fracs file from the InData direcory (or simply rename | it, eg: <code>mosaic_veg_typs_fracs.hold</code>). In its place you have to copy the | ||
it, eg: mosaic_veg_typs_fracs.hold). In its place you have to copy the | OLD <code>nirdf.dat</code>, <code>visdf.dat</code>, and <code>lai_grn_clim</code> boundary condition datasets | ||
OLD nirdf.dat, visdf.dat, and lai_grn_clim boundary condition datasets | into the <code>InData</code> directory. These can be found in the corresponding | ||
into the InData directory. These can be found in the corresponding | <code>/discover/nobackup/ltakacs/bcs/Fortuna-1_4</code> directories. Note, the names | ||
/discover/nobackup/ltakacs/bcs/Fortuna-1_4 directories. Note, the names | |||
that the Fortran program is looking for are not the same names in our | that the Fortran program is looking for are not the same names in our | ||
bcs directory. Therefore you need to link the old datasets to the | <code>bcs</code> directory. Therefore you need to link the old datasets to the | ||
proper names. For example, regridding FROM the old 540x361 resolution | proper names. For example, regridding FROM the old 540x361 resolution | ||
(eg. MERRA), you should have: | (eg. MERRA), you should have: | ||
nirdf.dat -> | <code>nirdf.dat -> | ||
/discover/nobackup/ltakacs/bcs/Fortuna-1_4/540x361/nirdf_540x361_DC.dat | /discover/nobackup/ltakacs/bcs/Fortuna-1_4/540x361/nirdf_540x361_DC.dat</code> | ||
<code>visdf.dat -> | |||
/discover/nobackup/ltakacs/bcs/Fortuna-1_4/540x361/visdf_540x361_DC.dat</code> | |||
<code>lai_grn_clim -> | |||
/discover/nobackup/ltakacs/bcs/Fortuna-1_4/540x361/lai_green_clim_540x361_DC.data</code> | |||
====2) Target tile file is from NEW set (model tags <code>Fortuna-1_5</code> and later)==== | |||
In this case, the target tile files are consistent with the <code>mosaic_veg_typs_fracs</code> dataset which resides in the <code>InData</code> directory. | |||
Therefore you do not have link in the old <code>nirdf.dat</code>, <code>visdf.dat</code>, and | |||
<code>lai_grn_clim</code> datasets. | |||
== Bootstrapping for a Complete Set of Restarts == | |||
The above procedure produces all the necessary restart files for the model to run, but others are needed for proper function. The model can produce them starting from the minimal set created by the regridding procedure; this requires some modification of the <code>AGCM.tmpl</code> file in your experiment home directory (probably under your account home directory). | |||
In <code>AGCM.tmpl</code> -- you probably want to keep a copy of the default version for normal runs -- and using <code>turb_import_rst</code> as an example, comment out the lines referring to <code>RESTART</code>: | |||
/ | |||
TURBULENCE_IMPORT_RESTART_FILE: turb_import_rst | |||
TURBULENCE_IMPORT_RESTART_TYPE: binary | |||
TURBULENCE_IMPORT_CHECKPOINT_FILE: turb_import_checkpoint | |||
TURBULENCE_IMPORT_CHECKPOINT_TYPE: binary | |||
#TURBULENCE_IMPORT_RESTART_FILE: turb_import_rst | |||
#TURBULENCE_IMPORT_RESTART_TYPE: binary | |||
TURBULENCE_IMPORT_CHECKPOINT_FILE: turb_import_checkpoint | |||
TURBULENCE_IMPORT_CHECKPOINT_TYPE: binary | |||
Running the model for a model day using this modified <code>AGCM.tmpl</code> will produce a full set of restart files, which can be used with the default model configuration. | |||
Latest revision as of 11:44, 15 February 2010
Here are basic instructions on how to regrid restarts, based on a README by Larry Takacs.
Where to get MERRA Restarts
MERRA restarts are available on the NCCS discover cluster under the following directories:
/archive/g_proj5/production/GEOSdas-2_1_4/d5_merra_jan79/rs/ /archive/g_proj5/production/GEOSdas-2_1_4/d5_merra_jan89/rs/ /archive/g_proj5/production/GEOSdas-2_1_4/d5_merra_jan98/rs/
Restarts are in subdirectories according to their respective year and month. The are in the form (as an example) d5_merra_jan79.catch_internal_rst.19910128_21z.bin
, which you would otherwise know as catch_internal_rst
(with the appropriate cap_restart
). MERRA restart filenames need to be changed to the latter, "entropic" name for the regridding programs.
Required Restarts
The key restarts to modify are:
Required upper-air related restarts:
fvcore_internal_rst
moist_internal_rst
Required land-surface related restarts:
catch_internal_rst
vegdyn_internal_rst
landice_internal_rst
lake_internal_rst
saltwater_internal_rst
Optional upper-air related restarts (if you have them):
pchem_internal_rst
gocart_internal_rst
For DAS runs, you may also interpolate:
agcm_import_rst
Regridding Upper-Air Related Restarts
Within your build, go to the directory:
src/GMAO_Shared/GEOS_Util/post
Here you will find the files:
rs_hinterp
(script to compile the Fortran)rs_hinterp.F
(Fortran source to regrid)
By running rs_hinterp
, it should produce the executable:
rs_hinterp_Linux.x
Running rs_hinterp_Linux.x
shows the usage:
> rs_hinterp_Linux.x Usage: rs_hinterp_$ARCH.x -dyn DYNRST -moist MOISTRST -other OtherRST1 OtherRST2 OtherRST3 ... -topo_old TOPO_OLD -topo_new TOPO_NEW -im IM_OUT -jm JM_OUT where: -dyn DYNRST: Filename for DYNAMICS_INTERNAL_RESTART -moist MOISTRST: Filename for MOIST_INTERNAL_RESTART -other OtherRST: Filename for Other Flat Binary_RESTART -topo_old TOPO_OLD: Filename for OLD Topography (associated with INPUT resolution) -topo_new TOPO_NEW: Filename for NEW Topography (associated with OUTPUT resolution) -im IM_OUT: IM Dimension for Output -jm JM_OUT: JM Dimension for Output
So, as an example, to regrid from an existing 2x2.5-deg set of restarts
to 1x1.25-deg, you have:
rs_hinterp_$ARCH.x -dyn fvcore_internal_rst -moist moist_internal_rst -other pchem_internal_rst gocart_internal_rst -topo_old TOPO_OLD -topo_new TOPO_NEW -im 288 -jm 181
where TOPO_OLD
is linked to:
/discover/nobackup/dkokron/geos5/bcs/GEOSagcm-Eros-beta7p8/DC/144x91/topo_DYN_ave_144x91_DC.data
and TOPO_NEW
is linked to:
/discover/nobackup/dkokron/geos5/bcs/GEOSagcm-Eros-beta7p8/DC/288x181/topo_DYN_ave_288x181_DC.data
This will produce:
fvcore_internal_rst.0288x0181 moist_internal_rst.0288x0181 pchem_internal_rst.0288x0181 gocart_internal_rst.0288x0181
These are the finished restarts. They will have to be renamed -- truncated after rst
-- in order to be recognized by the model in its standard configuration.
Note that even if you have no restarts that fall under the -other
option, you still have to include that option (with nothing after it) in the command.
Regridding Land-Surface Related Restarts
Within your build, go to:
src/GEOSgcs_GridComp/GEOSgcm_GridComp/GEOSagcm_GridComp/GEOSphysics_GridComp/ ... GEOSsurface_GridComp/GEOSland_GridComp/GEOScatch_GridComp/mk_restarts
At this point it is best to update your directory to the HEAD of CVS to be sure you have the latest datasets:
cvs upd -A
Under the mk_restarts
directory you have the directories:
InData OutData
The basic idea is:
- Put your existing land-related restarts in the
InData
directory - Put the appropriate tile file for your current resolution in the
InData
directory - Put your target resolution tile file in the
OutData
directory
Where to find the appropriate tile file depends on the Fortuna versions you are regridding from and to, and is detailed below.
Run mk_Restarts
Your regridded restarts will be produced in the OutData
directory.
Finally, in the case of Fortuna 2.0, you will need to run newcatch
on the catchment restart file. Rename catch_internal_rst
to catch_internal_rst_old
, and then run:
../newcatch catch_internal_rst_old catch_internal_rst
Old and New Tile Files
There are two possible scenarios for regridding land-surface related restarts:
- Converting existing restarts to resolutions: 144x91, 288x181, 540x361, 1080x721 (old tile files for Fortuna 1.4 and earlier)
- Converting existing restarts to resolutions: 144x91, 288x181, 576x361, 1152x721 (new tile files for Fortuna 1.5 and later)
The old tile files are currently archived in:
/discover/nobackup/ltakacs/bcs/Fortuna-1_4/144x91/FV_144x91_DC_360x180_DE.til /discover/nobackup/ltakacs/bcs/Fortuna-1_4/288x181/FV_288x181_DC_360x180_DE.til /discover/nobackup/ltakacs/bcs/Fortuna-1_4/540x361/FV_540x361_DC_360x180_DE.til /discover/nobackup/ltakacs/bcs/Fortuna-1_4/1080x721/FV_1080x721_DC_360x180_DE.til
The new tile files are located in:
/discover/nobackup/ltakacs/bcs/Fortuna-2_0/144x91/FV_144x91_DC_360x180_DE.til /discover/nobackup/ltakacs/bcs/Fortuna-2_0/288x181/FV_288x181_DC_360x180_DE.til /discover/nobackup/ltakacs/bcs/Fortuna-2_0/576x361/FV_576x361_DC_360x180_DE.til /discover/nobackup/ltakacs/bcs/Fortuna-2_0/1152x721/FV_1152x721_DC_360x180_DE.til
Depending on which tile file you are regridding to, there are two procedures:
1) Target tile file is from OLD set (model tags Fortuna-1_4
and earlier)
Since your target tile file is OLD (and not consistent with the new
mosaic_veg_typs_fracs
data), you have to remove the
mosaic_veg_typs_fracs
file from the InData
direcory (or simply rename
it, eg: mosaic_veg_typs_fracs.hold
). In its place you have to copy the
OLD nirdf.dat
, visdf.dat
, and lai_grn_clim
boundary condition datasets
into the InData
directory. These can be found in the corresponding
/discover/nobackup/ltakacs/bcs/Fortuna-1_4
directories. Note, the names
that the Fortran program is looking for are not the same names in our
bcs
directory. Therefore you need to link the old datasets to the
proper names. For example, regridding FROM the old 540x361 resolution
(eg. MERRA), you should have:
nirdf.dat ->
/discover/nobackup/ltakacs/bcs/Fortuna-1_4/540x361/nirdf_540x361_DC.dat
visdf.dat ->
/discover/nobackup/ltakacs/bcs/Fortuna-1_4/540x361/visdf_540x361_DC.dat
lai_grn_clim ->
/discover/nobackup/ltakacs/bcs/Fortuna-1_4/540x361/lai_green_clim_540x361_DC.data
2) Target tile file is from NEW set (model tags Fortuna-1_5
and later)
In this case, the target tile files are consistent with the mosaic_veg_typs_fracs
dataset which resides in the InData
directory.
Therefore you do not have link in the old nirdf.dat
, visdf.dat
, and
lai_grn_clim
datasets.
Bootstrapping for a Complete Set of Restarts
The above procedure produces all the necessary restart files for the model to run, but others are needed for proper function. The model can produce them starting from the minimal set created by the regridding procedure; this requires some modification of the AGCM.tmpl
file in your experiment home directory (probably under your account home directory).
In AGCM.tmpl
-- you probably want to keep a copy of the default version for normal runs -- and using turb_import_rst
as an example, comment out the lines referring to RESTART
:
TURBULENCE_IMPORT_RESTART_FILE: turb_import_rst TURBULENCE_IMPORT_RESTART_TYPE: binary TURBULENCE_IMPORT_CHECKPOINT_FILE: turb_import_checkpoint TURBULENCE_IMPORT_CHECKPOINT_TYPE: binary
#TURBULENCE_IMPORT_RESTART_FILE: turb_import_rst #TURBULENCE_IMPORT_RESTART_TYPE: binary TURBULENCE_IMPORT_CHECKPOINT_FILE: turb_import_checkpoint TURBULENCE_IMPORT_CHECKPOINT_TYPE: binary
Running the model for a model day using this modified AGCM.tmpl
will produce a full set of restart files, which can be used with the default model configuration.