Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: add new pg2 topo instructions

...

No change in the procedure for generating domain files except that the physgrid grid and mapping files described above need to be used because the physics grid is used when communicating with the coupler, which is primarily where the domain files are needed. 


Topography

???There are two new topography tools to support physgrid.

The first is a simple converter. The input is an old GLL topography file. The output is a topography file in the new GLL-physgrid format. SGH, SGH30, LANDFRAC, and LANDM_COSLAT are not quite as good as with second tool, but this converter works in one step:

Code Block
$ cat input.nl
&ctl_nl
ne = 30
/
&vert_nl
/
&analysis_nl
tool = 'topo_convert'
infilenames = 'USGS-gtopo30_ne30np4_16xdel2-PFC-consistentSGH.nc', 'USGS-gtopo30_ne30np4pg2_16xdel2-PFC-consistentSGH_converted'
/

mpirun -np 8 homme_tool < input.nl

homme_tool is an executable in ${homme_build}/src/tool/homme_tool produced in a standard configuration and build of standalone homme.

The second tool provides the best-quality GLL-physgrid file. It has five steps, illustrated for the case of ne30pg2:

  1. TempestRemap:

    Code Block
    languagetext
    # Generate the element mesh.
    ${tempest_root}/bin/GenerateCSMesh --alt --res 30 --file topo2/ne30.g
    # Generate the target physgrid mesh.
    ${tempest_root}/bin/GenerateVolumetricMesh --in topo2/ne30.g --out topo2/ne30pg2.g --np 2 --uniform
    # Generate a high-res target physgrid mesh for cube_to_target.
    ${tempest_root}/bin/GenerateVolumetricMesh --in topo2/ne30.g --out topo2/ne30pg4.g --np 4 --uniform
    # Generate a SCRIP file for cube_to_target.
    ${tempest_root}/bin/ConvertExodusToSCRIP --in topo2/ne30pg4.g --out topo2/ne30pg4_scrip.nc


  2. cube_to_target, run 1:

    Code Block
    languagetext
    ${e3sm_root}/components/cam/tools/topo_tool/cube_to_target \
      --target-grid topo2/ne30pg4_scrip.nc \
      --input-topography topo2/USGS-topo-cube3000.nc \
      --output-topography topo2/ne30pg4_c2t_topo.nc

    These warnings appear to be innocuous:

    Code Block
    languagetext
    sum of weights is negative - negative area? -1.8651290104823655E-009 675 3000


  3. homme_tool:

    Code Block
    languagetext
    $ cat input.nl
    &ctl_nl
    ne = 30
    smooth_phis_numcycle = 16
    smooth_phis_nudt = 28e7
    hypervis_scaling = 0 
    hypervis_order = 2
    se_ftype = 2 ! actually output NPHYS; overloaded use of ftype
    /
    &vert_nl
    /
    &analysis_nl
    tool = 'topo_pgn_to_smoothed'
    infilenames = 'ne30pg4_c2t_topo.nc', 'ne30np4pg2_smoothed_phis'
    /
    
    mpirun -np 8 ./homme_tool < input.nl


  4. cube_to_target, run 2:

    Code Block
    languagetext
    ${e3sm_root}/components/cam/tools/topo_tool/cube_to_target \
      --target-grid ne30pg2_scrip.nc \
      --input-topography USGS-topo-cube3000.nc \
      --smoothed-topography ne30np4pg2_smoothed_phis1.nc \
      --output-topography USGS-gtopo30_ne30np4pg2_16xdel2.nc


  5. ncks

    Code Block
    languagetext
    ncks -A ne30np4pg2_smoothed_phis1.nc USGS-gtopo30_ne30np4pg2_16xdel2.nc


USGS-gtopo30_ne30np4pg2_16xdel2.nc is the final GLL-physgrid topography file.

Regional Refinement

Regionally refined grids require no special steps when using the physgrid because the regional refinement happens at the element level, and the physgrid only changes the physics column arrangement within the element. 

...