Personal tools
User menu

Difference between revisions of "Running WRF-GC"

From atmoschem

Jump to: navigation, search
(Running WRF-GC)
 
(12 intermediate revisions by one other user not shown)
Line 1: Line 1:
The process of running WRF-GC is very similar to that for running WRF-Chem.
 
 
 
 
=Running the WPS=
 
=Running the WPS=
  
First, one must run the WRF Preprocessing System (WPS) to prepare the input data for driving WRF. The WPS configuration options are defined in the ''"namelist.wps"'' file. Please refer to the [http://www2.mmm.ucar.edu/wrf/users/docs/user_guide_V3.9/users_guide_chap3.html WRF User's Guide] for more detail.
+
First, one must run the WRF Preprocessing System (WPS) to prepare the input data for driving WRF. The WPS configuration options are defined in the ''"namelist.wps"'' file.
 
+
 
+
  
 
==Step 1: Defining model domains with geogrid==
 
==Step 1: Defining model domains with geogrid==
Line 84: Line 79:
 
         io_form_metgrid = 2,
 
         io_form_metgrid = 2,
 
         /
 
         /
 +
 +
  
 
=Preparing GEOS-Chem shared data directories=
 
=Preparing GEOS-Chem shared data directories=
Line 95: Line 92:
  
  
- '''CHEM_INPUT''': Non-emissions data for GEOS-Chem chemistry modules
+
- '''CHEM_INPUTS''': Non-emissions data for GEOS-Chem chemistry modules
  
:• Download the CHEM_INPUT data directories via anonymous FTP from the Harvard data directory archive (ftp.as.harvard.edu). Please refer to : http://wiki.seas.harvard.edu/geos-chem/index.php/Downloading_GEOS-Chem_source_code_and_data
+
:• Download the CHEM_INPUTS data directories via anonymous FTP from the Harvard data directory archive (ftp.as.harvard.edu). Please refer to : [http://wiki.seas.harvard.edu/geos-chem/index.php/Downloading_GEOS-Chem_source_code_and_data Downloading GEOS-Chem source code and data]
  
  
 
- '''HEMCO''': Emissions inventories for the HEMCO emissions component
 
- '''HEMCO''': Emissions inventories for the HEMCO emissions component
  
:• Download the HEMCO data directories with a pakeage provided by GEOS-Chem Support Team. Please refer to : http://wiki.seas.harvard.edu/geos-chem/index.php/HEMCO_data_directories#Downloading_the_HEMCO_data_directories
+
:• Download the HEMCO data directories with a pakeage provided by GEOS-Chem Support Team. Please refer to : [http://wiki.seas.harvard.edu/geos-chem/index.php/HEMCO_data_directories#Downloading_the_HEMCO_data_directories Downloading the HEMCO data]
  
  
Line 113: Line 110:
 
=Emissions for WRF-GC=
 
=Emissions for WRF-GC=
  
Preparing emission files is not required. WRF-GC uses the Harvard-NASA Emissions Component (HEMCO) with on-line regridding. Configure HEMCO refer to the ''"HEMCO_Config.rc"'' file inside the run directory for WRF. For more information on HEMCO data directories, please refer to [http://wiki.seas.harvard.edu/geoschem/index.php/HEMCO_data_directories the GEOS-Chem wiki]
+
Preparing emission files is not required. WRF-GC uses the Harvard-NASA Emissions Component (HEMCO) with on-line regridding. Configure HEMCO refer to the ''"HEMCO_Config.rc"'' file inside the run directory for WRF. For more information on HEMCO data directories, please refer to [http://wiki.seas.harvard.edu/geos-chem/index.php/HEMCO_data_directories#Overview the HEMCO wiki]
 +
 
  
 
=Preparing chemical initial/boundary condition data=
 
=Preparing chemical initial/boundary condition data=
Line 130: Line 128:
 
=Running WRF-GC=
 
=Running WRF-GC=
  
To Configure WRF-GC, you need to edit three files inside the WRF run directory.
+
To configure WRF-GC, you need to edit three files inside the WRF run directory.
  
- '''''HEMCO_Config.rc''''' (Please refer to: http://wiki.seas.harvard.edu/geos-chem/index.php/GEOS-Chem_Input_Files#The_HEMCO_Config.rc_file)
+
- '''''HEMCO_Config.rc''''' (Please refer to: [http://wiki.seas.harvard.edu/geos-chem/index.php/GEOS-Chem_Input_Files#The_HEMCO_Config.rc_file GEOS-Chem Input Files])
  
 
:• ''HEMCO_Config.rc'' file contains a set of switches to enable and disable emission inventories, such as:
 
:• ''HEMCO_Config.rc'' file contains a set of switches to enable and disable emission inventories, such as:
Line 147: Line 145:
  
  
- '''''input.geos''''' (Please refer to : http://wiki.seas.harvard.edu/geos-chem/index.php/GEOS-Chem_Input_Files)
+
- '''''input.geos''''' (Please refer to : [http://wiki.seas.harvard.edu/geos-chem/index.php/GEOS-Chem_Input_Files GEOS-Chem Input Files])
  
:• Simulation Menu (except '''Root data directory''') and Timestep Menu in ''input.geos'' can be safely ignored.
+
:• Simulation Menu (except '''Root data directory''') and Timestep Menu in ''input.geos'' can be safely ignored. You can configure the timestepping and operators using the WRF configuration namelist.
 
+
 
+
:• Determine the Advected Species Menu, Transport Menu, Convection Menu, Emission Menu, Aerosol Menu, Deposition Menu and Chemistry Menu according to your specific simulation.
+
  
  
Line 178: Line 173:
  
  
:The following ''"namelist.input"'' file has been tested. Options that are specific to your case have been highlighted in bold. We suggect that do not  
+
:The following ''"namelist.input"'' file has been tested. Options that are specific to your case have been highlighted in bold. We suggect that do not change the default of "&dynamics" and "&bdy_control" in the ''"namelist.input"'' file. (Please refer to : [http://www2.mmm.ucar.edu/wrf/users/docs/user_guide_V3.9/users_guide_chap5.htm#Namelist Description of Namelist Variables])
  
 
         &time_control
 
         &time_control
         '''run_days                         = 1,
+
         '''run_days                           = 1,'''
         run_hours                          = 0,
+
         '''run_hours                          = 0,'''
         run_minutes                        = 0,
+
         '''run_minutes                        = 0,'''
         run_seconds                        = 0,
+
         '''run_seconds                        = 0,'''
         start_year                          = 2015,
+
         '''start_year                          = 2015,'''
         start_month                        = 01,
+
         '''start_month                        = 01,'''
         start_day                          = 01,
+
         '''start_day                          = 01,'''
         start_hour                          = 00,
+
         '''start_hour                          = 00,'''
         start_minute                        = 00,
+
         '''start_minute                        = 00,'''
         start_second                        = 00,
+
         '''start_second                        = 00,'''
         end_year                            = 2015,
+
         '''end_year                            = 2015,'''
         end_month                          = 01,
+
         '''end_month                          = 01,'''
         end_day                            = 02,
+
         '''end_day                            = 02,'''
         end_hour                            = 00,
+
         '''end_hour                            = 00,'''
         end_minute                          = 00,
+
         '''end_minute                          = 00,'''
         end_second                          = 00,'''
+
         '''end_second                          = 00,'''
         interval_seconds                    = 21600,
+
         '''interval_seconds                    = 21600,'''
 
         input_from_file                    = .true.,
 
         input_from_file                    = .true.,
         history_interval                    = 60,
+
         '''history_interval                    = 60,'''
         frames_per_outfile                  = 1,
+
         '''frames_per_outfile                  = 1,'''
         restart                            = .false.,
+
         '''restart                            = .false.,'''
         restart_interval                    = 0,
+
         '''restart_interval                    = 0,'''
 
         io_form_history                    = 2,
 
         io_form_history                    = 2,
 
         io_form_restart                    = 2,
 
         io_form_restart                    = 2,
 
         io_form_input                      = 2,
 
         io_form_input                      = 2,
 
         io_form_boundary                    = 2,
 
         io_form_boundary                    = 2,
         '''debug_level                     = 0,'''
+
         '''debug_level                         = 0,'''
 
   
 
   
 
         auxinput5_inname                    = 'wrfchemi_d<domain>_<date>',
 
         auxinput5_inname                    = 'wrfchemi_d<domain>_<date>',
Line 229: Line 224:
 
         /
 
         /
  
        &domains
+
        &domains
         '''time_step                       = 120,   
+
         '''time_step                           = 120,'''  
         time_step_fract_num                = 0,
+
         '''time_step_fract_num                = 0,'''
         time_step_fract_den                = 1,
+
         '''time_step_fract_den                = 1,'''
 
         max_dom                            = 1,
 
         max_dom                            = 1,
         e_we                                = 245,
+
         '''e_we                                = 245,'''
         e_sn                                = 181,
+
         '''e_sn                                = 181,'''
         s_we                                =  1,
+
         '''s_we                                =  1,'''
         s_sn                                =  1,  
+
         '''s_sn                                =  1,'''
         e_vert                              = 50,  
+
         '''e_vert                              = 50,'''
         p_top_requested                    = 1000,
+
         '''p_top_requested                    = 1000,'''
         num_metgrid_levels                  = 27,
+
         '''num_metgrid_levels                  = 27,'''
         num_metgrid_soil_levels            = 4,
+
         '''num_metgrid_soil_levels            = 4,'''
         dx                                  = 27000,
+
         '''dx                                  = 27000,'''
         dy                                  = 27000,
+
         '''dy                                  = 27000,'''
 
         grid_id                            = 1,
 
         grid_id                            = 1,
 
         parent_id                          = 1,
 
         parent_id                          = 1,
Line 255: Line 250:
  
 
         &physics
 
         &physics
         '''mp_physics                       = 10,
+
         '''mp_physics                         = 10,'''
         ra_lw_physics                      = 4,
+
         '''ra_lw_physics                      = 4,'''
         ra_sw_physics                      = 4,
+
         '''ra_sw_physics                      = 4,'''
         radt                                = 15,
+
         '''radt                                = 15,'''
         sf_sfclay_physics                  = 1,  
+
         '''sf_sfclay_physics                  = 1,'''
         sf_surface_physics                  = 2,  
+
         '''sf_surface_physics                  = 2,'''
         sf_urban_physics                    = 0,  
+
         '''sf_urban_physics                    = 0,'''
         bl_pbl_physics                      = 1,  
+
         '''bl_pbl_physics                      = 1,'''
         bldt                                = 0,  
+
         '''bldt                                = 0,'''
         cu_physics                          = 16,  
+
         '''cu_physics                          = 16,'''
         cudt                                = 0,  
+
         '''cudt                                = 0,'''
         cu_diag                            = 1,   
+
         '''cu_diag                            = 1,'''  
         isfflx                              = 1,
+
         '''isfflx                              = 1,'''
         ifsnow                              = 1,
+
         '''ifsnow                              = 1,'''
         icloud                              = 1,
+
         '''icloud                              = 1,'''
         surface_input_source                = 1,
+
         '''surface_input_source                = 1,'''
         num_soil_layers                    = 4,
+
         '''num_soil_layers                    = 4,'''
         num_land_cat                        = 24,
+
         '''num_land_cat                        = 24,'''
         progn                              = 0,
+
         '''progn                              = 0,'''
         cu_rad_feedback                    = .true.,'''
+
         '''cu_rad_feedback                    = .true.,'''
 
         /
 
         /
  
Line 295: Line 290:
 
         /
 
         /
  
        &bdy_control
+
        &bdy_control
        spec_bdy_width                      = 5,
+
        spec_bdy_width                      = 5,
        spec_zone                          = 1,
+
        spec_zone                          = 1,
        relax_zone                          = 4,
+
        relax_zone                          = 4,
        specified                          = .true.,
+
        specified                          = .true.,
        nested                              = .false.,
+
        nested                              = .false.,
        /
+
        /
  
 
+
        &chem
        &chem
+
        '''kemit                              = 1,'''
        '''kemit                              = 1,
+
        chem_opt                            = 233,
        chem_opt                            = 233,
+
        '''chemdt                              = 10,'''
        chemdt                              = 10,
+
        '''gc_do_convection                    = 1,'''
        gc_do_convection                    = 1,
+
        '''gc_do_pblmix                        = 1,'''
        gc_do_pblmix                        = 1,
+
        '''gc_do_hemco                        = 1,'''
        gc_do_hemco                        = 1,
+
        '''gc_do_drydep                        = 1,'''
        gc_do_drydep                        = 1,
+
        '''gc_do_wetdep                        = 1,'''
        gc_do_wetdep                        = 1,
+
        '''gc_do_chemistry                    = 1,'''
        gc_do_chemistry                    = 1,
+
        have_bcs_chem                      = .false.,
        have_bcs_chem                      = .false.,
+
        ne_area                            = 150,'''
        ne_area                            = 150,'''
+
        /
        /
+
  
 
         &namelist_quilt
 
         &namelist_quilt
Line 338: Line 332:
  
  
Output from WRF&GEOS-Chem are unified into the WRF output format (NetCDF Classic) files named ''wrfout_d01_2015-01-01_00:00:00''.
+
Output from WRF&GEOS-Chem are unified into the WRF output format (NetCDF Classic) files named "''wrfout_d01_2015-01-01_00:00:00''".
 +
 
 +
=Notes=
 +
 
 +
Running WRF-GC is largely similar to running WRF-Chem, thus we invite you to navigate the [https://ruc.noaa.gov/wrf/wrf-chem/Users_guide.pdf WRF-Chem User's Guide] to familiarize with the workflow and diagnostic tools available at your disposal.

Latest revision as of 23:23, 25 December 2018

Running the WPS

First, one must run the WRF Preprocessing System (WPS) to prepare the input data for driving WRF. The WPS configuration options are defined in the "namelist.wps" file.

Step 1: Defining model domains with geogrid

In the "geogrid" namelist record, the projection of the simulation domain is defined. As of WRF-GC version 0.1, only two sets of map projections and specified parameters are supported:
  • Mercator /'mercator' (truelat1)
  • Unrotated regular latitude-longitude /'lat-lon' (pole_lat, pole_lon, stand_lon)
An example of "geogrid" namelist records in the "namelist.wps" file is shown below:
       &share 
        wrf_core = 'ARW',
        max_dom = 1,
        start_date = '2015-01-01_00:00:00',
        end_date   = '2015-01-02_00:00:00',
        interval_seconds = 21600
        io_form_geogrid = 2,
       /
       &geogrid
        parent_id         =   1,   
        parent_grid_ratio =   1,   
        i_parent_start    =   1,  
        j_parent_start    =   1,  
        e_we              =  245,
        e_sn              =  181, 
        geog_data_res = 'gtopo_2m+usgs_2m+nesdis_greenfrac+2m',
        dx = 27000,
        dy = 27000,
        map_proj = 'mercator',
        ref_lat   =  35.0,
        ref_lon   =  105.0,
        truelat1  =  30.0,
        stand_lon =  105.0,
        geog_data_path = '/users/wrf/data/geog'
       /

Step 2: Downloading and extracting meteorological data from GRIB files with ungrib

For a 'real' WRF case, you need to download the meteorological data that will be used as the initial and boundary condition to drive WRF. You have a number of choices. We use the NCEP FNL reanalyses product.
Available free datasets for driving WRF
An example of "ungrib" namelist records in the "namelist.wps" file is shown below:
       &share 
        wrf_core = 'ARW',
        max_dom = 1,
        start_date = '2015-01-01_00:00:00',
        end_date   = '2015-01-02_00:00:00',
        interval_seconds = 21600
        io_form_geogrid = 2,
       /
       &ungrib
        out_format = 'WPS',
        prefix = 'FILE',
       /

Step 3: Horizontally interpolating meteorological data with metgrid

An example of "metgrid" namelist records in the "namelist.wps" file is shown below:
       &share 
        wrf_core = 'ARW',
        max_dom = 1,
        start_date = '2015-01-01_00:00:00',
        end_date   = '2015-01-02_00:00:00',
        interval_seconds = 21600
        io_form_geogrid = 2,
       /
       &metgrid
       fg_name = 'FILE'
       io_form_metgrid = 2,
       /


Preparing GEOS-Chem shared data directories

The GEOS-Chem shared data directories contain many large files necessary for the WRF-GC. Please Set up the top-level root directory for GEOS-Chem shared data, which is called ExtData. Please create the /dir/to/data/ExtData and set your directories in the "input.geos" file:

       Root data directory : /dir/to/data/ExtData


The ExtData directory structure cotains two subdirectories:


- CHEM_INPUTS: Non-emissions data for GEOS-Chem chemistry modules

• Download the CHEM_INPUTS data directories via anonymous FTP from the Harvard data directory archive (ftp.as.harvard.edu). Please refer to : Downloading GEOS-Chem source code and data


- HEMCO: Emissions inventories for the HEMCO emissions component

• Download the HEMCO data directories with a pakeage provided by GEOS-Chem Support Team. Please refer to : Downloading the HEMCO data


• Set the HEMCO data directory in the "HEMCO_Config.rc" file
       Root : /dir/to/data/ExtData/HEMCO


Emissions for WRF-GC

Preparing emission files is not required. WRF-GC uses the Harvard-NASA Emissions Component (HEMCO) with on-line regridding. Configure HEMCO refer to the "HEMCO_Config.rc" file inside the run directory for WRF. For more information on HEMCO data directories, please refer to the HEMCO wiki


Preparing chemical initial/boundary condition data

Chemical initial and boundary condition data are used output from global simulation MOZART-4/GEOS-5 similar to WRF-Chem. Please download the data from :

https://www.acom.ucar.edu/wrf-chem/mozart.shtml


The Mozart data are processed by the WRF-Chem processor called mozbc. Please download the mozbc utility, including instructions and input files from :

https://www.acom.ucar.edu/wrf-chem/download.shtml


Running WRF-GC

To configure WRF-GC, you need to edit three files inside the WRF run directory.

- HEMCO_Config.rc (Please refer to: GEOS-Chem Input Files)

HEMCO_Config.rc file contains a set of switches to enable and disable emission inventories, such as:
      # ExtNr ExtName           on/off  Species
      0       Base              : on    *
          --> HEMCO_RESTART     :       false
          --> AEIC              :       true
          --> BIOFUEL           :       true
      ... etc not shown here ...


• Errors with HEMCO component when running a simulation are output into a log file called "HEMCO.log".


- input.geos (Please refer to : GEOS-Chem Input Files)

• Simulation Menu (except Root data directory) and Timestep Menu in input.geos can be safely ignored. You can configure the timestepping and operators using the WRF configuration namelist.


• Other Menus in "input.geos" can be safely ignored.


- namelist.input

• The WRF-GC model configuration options are determined in the "namelist.input" file. Please edit the "namelist.input" file to match your case.
• For WRF-GC chemistry powered by GEOS-Chem, choose chem_opt = 233.
• Cumulus Parameterization schemes (cu_physics) supported by WRF-GC v0.1 are New-Tiedtke scheme (recommended) and Zhang-McFarlene scheme.
• Microphysics schemes (mp_physics) supported by WRF-GC v0.1 are New Thompson et al. scheme, and Morrison Double-Monment scheme (recommended).
• You can configure processes by GEOS-Chem using the following switches in the "namelist.input" file.
  • Convection: gc_do_convection
  • Emissions: gc_do_hemco
  • Turbulence/PBL mixing: gc_do_pblmix
  • Chemistry: gc_do_chemistry
  • Dry deposition: gc_do_drydep
  • Wet deposition: gc_do_wetdep


The following "namelist.input" file has been tested. Options that are specific to your case have been highlighted in bold. We suggect that do not change the default of "&dynamics" and "&bdy_control" in the "namelist.input" file. (Please refer to : Description of Namelist Variables)
        &time_control
        run_days                            = 1,
        run_hours                           = 0,
        run_minutes                         = 0,
        run_seconds                         = 0,
        start_year                          = 2015,
        start_month                         = 01,
        start_day                           = 01,
        start_hour                          = 00,
        start_minute                        = 00,
        start_second                        = 00,
        end_year                            = 2015,
        end_month                           = 01,
        end_day                             = 02,
        end_hour                            = 00,
        end_minute                          = 00,
        end_second                          = 00,
        interval_seconds                    = 21600,
        input_from_file                     = .true.,
        history_interval                    = 60,
        frames_per_outfile                  = 1,
        restart                             = .false.,
        restart_interval                    = 0,
        io_form_history                     = 2,
        io_form_restart                     = 2,
        io_form_input                       = 2,
        io_form_boundary                    = 2,
        debug_level                         = 0,

        auxinput5_inname                    = 'wrfchemi_d<domain>_<date>',
        auxinput6_inname                    = 'wrfbiochemi_d<domain>',
        auxinput7_inname                    = 'wrffirechemi_d<domain>_<date>',
        auxinput8_inname                    = 'wrfchemi_gocart_bg_d<domain>',
        auxinput12_inname                   = 'wrf_chem_input',
        auxinput13_inname                   = 'wrfchemv_d<domain>',
        auxinput5_interval_m                = 60,
        auxinput7_interval_m                = 60,
        auxinput8_interval_m                = 14400, 14400,
        auxinput13_interval_m               = 14400, 14400,
        io_form_auxinput2                   = 2,
        io_form_auxinput5                   = 0,
        io_form_auxinput6                   = 0,
        io_form_auxinput7                   = 0,
        io_form_auxinput8                   = 0,
        io_form_auxinput12                  = 0,
        io_form_auxinput13                  = 0,
        /
        &domains
        time_step                           = 120,  
        time_step_fract_num                 = 0,
        time_step_fract_den                 = 1,
        max_dom                             = 1,
        e_we                                = 245,
        e_sn                                = 181,
        s_we                                =  1,
        s_sn                                =  1, 
        e_vert                              = 50, 
        p_top_requested                     = 1000,
        num_metgrid_levels                  = 27,
        num_metgrid_soil_levels             = 4,
        dx                                  = 27000,
        dy                                  = 27000,
        grid_id                             = 1,
        parent_id                           = 1,
        i_parent_start                      = 1,
        j_parent_start                      = 1,
        parent_grid_ratio                   = 1,
        parent_time_step_ratio              = 1,
        feedback                            = 0,
        smooth_option                       = 0
        /
        &physics
        mp_physics                          = 10,
        ra_lw_physics                       = 4,
        ra_sw_physics                       = 4,
        radt                                = 15,
        sf_sfclay_physics                   = 1, 
        sf_surface_physics                  = 2, 
        sf_urban_physics                    = 0, 
        bl_pbl_physics                      = 1, 
        bldt                                = 0, 
        cu_physics                          = 16, 
        cudt                                = 0, 
        cu_diag                             = 1,  
        isfflx                              = 1,
        ifsnow                              = 1,
        icloud                              = 1,
        surface_input_source                = 1,
        num_soil_layers                     = 4,
        num_land_cat                        = 24,
        progn                               = 0,
        cu_rad_feedback                     = .true.,
        /
        &dynamics
        w_damping                           = 1,
        diff_opt                            = 1,
        km_opt                              = 4,
        diff_6th_opt                        = 0,
        diff_6th_factor                     = 0.12,
        base_temp                           = 290.,
        damp_opt                            = 0,
        zdamp                               = 5000.,
        dampcoef                            = 0.01,
        khdif                               = 0,
        kvdif                               = 0,
        non_hydrostatic                     = .true.,
        moist_adv_opt                       = 2,
        scalar_adv_opt                      = 2,
        hybrid_opt                          = 2,
        /
        &bdy_control
        spec_bdy_width                      = 5,
        spec_zone                           = 1,
        relax_zone                          = 4,
        specified                           = .true.,
        nested                              = .false.,
        /
        &chem
        kemit                               = 1,
        chem_opt                            = 233,
        chemdt                              = 10,
        gc_do_convection                    = 1,
        gc_do_pblmix                        = 1,
        gc_do_hemco                         = 1,
        gc_do_drydep                        = 1,
        gc_do_wetdep                        = 1,
        gc_do_chemistry                     = 1,
        have_bcs_chem                       = .false.,
        ne_area                             = 150,
        /
       &namelist_quilt
       nio_tasks_per_group = 0,
       nio_groups = 1,
       /


To run the initialization program, type

       ./real.exe

To run WRF-GC, use the distributed-memory parallel version of WRF's wrf.exe, like -

       mpirun -np 6 ./wrf.exe


To monitor output from WRF&GEOS-Chem, you can tail the "rsl.out.0000" file:

       tail -f rsl.out.0000


Output from WRF&GEOS-Chem are unified into the WRF output format (NetCDF Classic) files named "wrfout_d01_2015-01-01_00:00:00".

Notes

Running WRF-GC is largely similar to running WRF-Chem, thus we invite you to navigate the WRF-Chem User's Guide to familiarize with the workflow and diagnostic tools available at your disposal.

  • This page was last modified on 25 December 2018, at 23:23.
  • This page has been accessed 22,182 times.