MERRA-2 implementation details: Difference between revisions
Line 254: | Line 254: | ||
--[[User:Bmy|Bob Y.]] ([[User talk:Bmy|talk]]) 18:17, 12 August 2015 (UTC) | --[[User:Bmy|Bob Y.]] ([[User talk:Bmy|talk]]) 18:17, 12 August 2015 (UTC) | ||
=== HEMCO/Core directory === | |||
The following modifications for MERRA2 were made in the <tt>HEMCO/Core</tt> directory: | |||
{| border=1 cellspacing=0 cellpadding=5 | |||
|- bgcolor="#CCCCCC" | |||
!width="175px"|File | |||
!width="800px"|Modifications made | |||
|-valign="top" | |||
|hco_chartools_mod.F90 | |||
|At the top of the module: | |||
*Extend the <tt>#ifdef</tt> statement to add the parameter <tt>DEF_MET = 'merra2'</tt> | |||
*Extend the <tt>#ifdef</tt> statement to add the parameter <tt>DEF_RES = '05x0625'</tt> | |||
|-valign="top" | |||
|hco_interp_mod.F90 | |||
|In routine MODLEV_INTERPOLATE: | |||
*Changed code to: <tt>#if defined( GEOS_5 ) || defined( MERRA ) || defined( GEOS_FP ) || defined( MERRA2 )</tt> | |||
|} | |||
=== HEMCO/Extensions directory === | |||
The following modifications for MERRA2 were made in the <tt>HEMCO/Extensions/tt> directory: | |||
{| border=1 cellspacing=0 cellpadding=5 | |||
|- bgcolor="#CCCCCC" | |||
!width="175px"|File | |||
!width="800px"|Modifications made | |||
|-valign="top" | |||
|hco_chartools_mod.F90 | |||
|At the top of the module: | |||
*Extend the <tt>#ifdef</tt> statement to add the parameter <tt>DEF_MET = 'merra2'</tt> | |||
*Extend the <tt>#ifdef</tt> statement to add the parameter <tt>DEF_RES = '05x0625'</tt> | |||
|-valign="top" | |||
|hco_interp_mod.F90 | |||
|In routine MODLEV_INTERPOLATE: | |||
*Changed code to: <tt>#if defined( GEOS_5 ) || defined( MERRA ) || defined( GEOS_FP ) || defined( MERRA2 )</tt> | |||
|} |
Revision as of 18:27, 12 August 2015
File:Page is under construction.jpg
Required coding changes in GEOS-Chem
As noted in the section above, the similarities between MERRA2 and GEOS-FP (especially of the vertical grids) means that in most cases we can just treat MERRA2 in the same way as for GEOS-FP. In many areas of the code, the coding changes are straightforward and simply involve an extension of C-preprocessor statements such as:
#if defined( GEOS_5 ) || defined( MERRA ) || defined( GEOS_FP )
to
#if defined( GEOS_5 ) || defined( MERRA ) || defined( GEOS_FP ) || defined( MERRA2 )
In other areas of GEOS-Chem the changes are more involved. Below we provide a description of the areas of GEOS-Chem that were modified for MERRA2:
Top-level directory
The following modifications for MERRA2 were made in the root GEOS-Chem directory:
File | Modifications made |
---|---|
Makefile_header.mk |
|
--Bob Y. (talk) 21:25, 11 August 2015 (UTC)
Headers directory
The following modifications for MERRA2 were made in the Headers/ directory:
File | Modifications made |
---|---|
CMN_SIZE_mod.F |
|
gigc_input_opt_mod.F90 |
|
gigc_state_met_mod.F90 | Multiple instances:
|
--Bob Y. (talk) 21:26, 11 August 2015 (UTC)
GeosUtil directory
The following modifications for MERRA2 were made in the GeosUtil/ directory:
File | Modifications made |
---|---|
bpch2_mod.F | In routine GET_MODELNAME:
In routine GET_NAME_EXT:
In routine GET_NAME_EXT_2D:
In routine GET_RES_EXT:
|
pressure_mod.F | In routines GET_PEDGE and GET_PEDGE_FULLGRID:
In routine INIT_PRESSURE:
|
time_mod.F | In routine GET_A1_TIME:
|
transfer_mod.F | In several routines:
|
--Bob Y. (talk) 21:40, 11 August 2015 (UTC)
GeosCore directory
The following modifications for MERRA2 were made in the GeosCore/ directory:
File | Modifications made |
---|---|
calcrate.F | Multiple instances:
|
carbon_mod.F | Multiple instances:
|
cldice_HbrHOBr_mod.F | Multiple instances:
|
convection_mod.F | In routine DO_CONVECTION:
|
dao_mod.F | In routine COPY_I6_FIELDS:
In routine INTERP:
|
depo_mercury_mod.F | In routine ADD_Hg2_SNOWPACK
|
dust_dead_mod.F | In routine DST_MBL:
|
fast_jx_mod.F | In routine FAST_JX:
|
gamap_mod.F | In routine INIT_TRACERINFO:
|
merra2_read_mod.F90 | *Added this module w/ routines to read GEOS-FP met data (in netCDF format) |
global_ch4_mod.F | In routines WETLAND_EMIS and READ_COPROD:
|
input_mod.F | In routine READ_SIMULATION_MENU:
In routine READ_CONVECTION_MENU:
In routine VALIDATE_DIRECTORIES:
|
land_mercury_mod.F |
In routines LAND_MERCURY_FLUX:
In routines SOILEMIS:
|
main.F |
|
mercury_mod.F | In routine CHEMMERCURY
|
ocean_mercury_mod.F | Multiple instances:
|
planeflight_mod.F | In routine PLANEFLIGHT
|
strat_chem_mod.F90 | Multiple instances:
In routine DO_SYNOZ:
|
sulfate_mod.F | In routine CHEM_SO2:
In routine INIT_SULFATE:
In routine SRCSFC30 (TOMAS-only):
|
tagged_ox_mod.F | In routine GET_REGIONAL_POX:
|
tpcore_bc_mod.F: | Multiple instances:
|
vdiff_mod.F90 | In routine VDIFFDR:
|
wetscav_mod.F | In routine DO_WETDEP:
In routine DO_WASHOUT_ONLY::
In routine MAKE_QQ:
In routine RAINOUT:
|
--Bob Y. (talk) 18:17, 12 August 2015 (UTC)
HEMCO/Core directory
The following modifications for MERRA2 were made in the HEMCO/Core directory:
File | Modifications made |
---|---|
hco_chartools_mod.F90 | At the top of the module:
|
hco_interp_mod.F90 | In routine MODLEV_INTERPOLATE:
|
HEMCO/Extensions directory
The following modifications for MERRA2 were made in the HEMCO/Extensions/tt> directory:
File | Modifications made |
---|---|
hco_chartools_mod.F90 | At the top of the module:
|
hco_interp_mod.F90 | In routine MODLEV_INTERPOLATE:
|