MPAS-Dev/MPAS-Model

Leading backslash omitted on topography address for init_atmosphere

Opened this issue · 0 comments

If you reproduce the 2019 tutorial with MPAS-A 7.3, you will encounter this critical error in init_atmosphere when making static.nc:

ERROR: Error reading topography tile /flat6/Environmental_Data_Hub/UKCM_Code_Test_Repository/mpas_tutorial/geogtopo_gmted2010_30s/00001-01200.00001-01200
ERROR: Error reading global 30-arc-sec topography for GWD statistics
ERROR: ****************************************************************
ERROR: Error while trying to compute sub-grid-scale orography
ERROR: statistics for use with the GWDO scheme.
CRITICAL ERROR: ****************************************************************

If you dig into the files, you see that it is: /flat6/Environmental_Data_Hub/UKCM_Code_Test_Repository/mpas_tutorial/geog**/**topo_gmted2010_30s/00001-01200.00001-01200 that should be read. I have bolded the missing forward slash.

This bug can be corrected by changing:

src/core_init_atmosphere/mpas_init_atm_gwd.F at lines 137-160 to add the forward slashes as illustrated below:

select case(trim(config_topo_data))
         case('GTOPO30')
            call mpas_log_write('--- Using GTOPO30 terrain dataset for GWDO static fields')
            geog_sub_path = '/topo_30s/'
            start_lat =  -90.0_RKIND
            start_lon = -180.0_RKIND
         case('GMTED2010')
            call mpas_log_write('--- Using GMTED2010 terrain dataset for GWDO static fields')
            geog_sub_path = '/topo_gmted2010_30s/'

            ! NB: the GMTED2010 data on disk actually has start_lon = 0.0, but the read_global_30s_topo()
            !     routine will shift the dataset when writing to the topo array so that the start_lon seen
            !     by the rest of this code is -180.0.
            start_lat =  -90.0_RKIND
            start_lon = -180.0_RKIND
         case('default')
            call mpas_log_write('*****************************************************************', messageType=MPAS_LOG_ERR)
            call mpas_log_write('Invalid topography dataset '''//trim(config_topo_data) &
                                          //''' selected for config_topo_data',                      messageType=MPAS_LOG_ERR)
            call mpas_log_write('   Possible options are: ''GTOPO30'', ''GMTED2010''',               messageType=MPAS_LOG_ERR)
            call mpas_log_write('*****************************************************************', messageType=MPAS_LOG_ERR)
            call mpas_log_write('Please correct the namelist.', messageType=MPAS_LOG_CRIT)
      end select
      call mpas_log_write('')