Opened 11 months ago

Last modified 11 months ago

#958 closed upgrade

Important: Updated standalonw NUOPC cap for UFS — at Initial Version

Reported by: arango Owned by:
Priority: major Milestone: Release ROMS/TOMS 4.2
Component: Nonlinear Version: 4.1
Keywords: Cc:

Description

We continue working on interfacing ROMS to the UFS for coupling. The standard alone NUOPC module cmeps_roms.F was updated to process the needed metadata from a generic input YAML configuration file. The fields to couple are controlled by the import_variables and export_variables tokens.

For example, the roms_cdeps_narr.yaml has:

convention: CF

project: UFS Costal ROMS Coupling

title:   Hurricane Irene Application using CDEPS/CMEPS

date: 2011-08-27T06:00:00Z                   # Starting date, Hurricane Irene

forecast_length: &ForecastLength PT48H       # 48 hours (ISO 8601)
 
coupling_step: &dt 60.0d0                    # 1 minutes (PT180S)

linked_grid:     1                           # linked ROMS nested grid number

ATM_component:   &ATM NCEP
DATA_component:  %DATA NARR
OCN_component:   &OCN ROMS

CoupledSet:      ESM_01
ExportState:     Export_ESM_01
ImportState:     Import_ESM_01

PETlayoutOption: 0

CouplingType:    1                           # explicit

DebugLevel:      2
TraceLevel:      0

standard_input:
  OCN_component: roms_irene.in
  ATM_component: none

import_variables: [dLWrad, SWrad_daily, Pair, Tair, Qair, rain, Uwind, Vwind]

#export_variables: [SSH, Usur, Vsur, SST]

################################
### Exported Fields Metadata ###
################################

export:

  - standard_name:       sea_surface_height_above_geopotential_datum
    long_name:           sea surface height
    short_name:          SSH
    data_variables:      [SSH, time]                            # zeta
    source_units:        meter
    destination_units:   meter
    source_grid:         cell_center
    destination_grid:    cell_center
    add_offset:          0.0d0
    scale:               1.0d0
    debug_write:         false
    connected_to:        *ATM
    map_type:            mapnstod
    map_norm:            none

  - standard_name:       surface_eastward_sea_water_velocity
    long_name:           surface eastward momentum component
    short_name:          Usur
    data_variables:      [Usur, time]                           # u
    source_units:        meter second-1
    destination_units:   meter second-1
    source_grid:         left_right_edge
    destination_grid:    cell_center
    add_offset:          0.0d0
    scale:               1.0d0
    debug_write:         false
    connected_to:        *ATM
    map_type:            mapbilnr
    map_norm:            none

  - standard_name:       surface_northward_sea_water_velocity
    long_name:           surface northward momentum component
    short_name:          Vsur
    data_variables:      [Vsur, time]                           # v
    source_units:        meter second-1
    destination_units:   meter second-1
    source_grid:         lower_upper_edge
    destination_grid:    cell_center
    add_offset:          0.0d0
    scale:               1.0d0
    debug_write:         false
    connected_to:        *ATM
    map_type:            mapbilnr
    map_norm:            none

  - standard_name:       sea_surface_temperature
    long_name:           sea surface temperature
    short_name:          SST
    data_variables:      [temperature, time]                    # t(:,:,:,itemp)
    source_units:        C
    destination_units:   K
    source_grid:         cell_center
    destination_grid:    cell_center
    add_offset:          273.15d0
    scale:               1.0d0
    debug_write:         false
    connected_to:        *ATM
    map_type:            mapnstod
    map_norm:            none

################################
### Imported Fields Metadata ###
################################

import:

  - standard_name:       surface_net_downward_longwave_flux
    long_name:           surface downward longwave radiation flux
    short_name:          dLWrad
    data_variables:      [lwrad_down, time]                     # dlwrfsf minus ulwrfsfc
    source_units:        W m-2
    destination_units:   W m-2
    source_grid:         cell_center
    destination_grid:    cell_center
    add_offset:          0.0d0
    scale:               1.0d0
    debug_write:         false
    connected_to:        *DATA
    map_type:            mapbilnr
    map_norm:            none

  - standard_name:       surface_net_longwave_flux
    long_name:           surface net longwave radiation flux
    short_name:          LWrad
    data_variables:      [lwrad, time]                          # dlwrfsfc
    source_units:        W m-2
    destination_units:   W m-2
    source_grid:         cell_center
    destination_grid:    cell_center
    add_offset:          0.0d0
    scale:               1.0d0
    debug_write:         false
    connected_to:        *DATA
    map_type:            mapbilnr
    map_norm:            none

  - standard_name:       net_downward_shortwave_flux_at_sea_water_surface
    long_name:           surface net shortwave radiation flux
    short_name:          SWrad
    data_variables:      [swrad_daily, time]                    # dlwrfsfc
    source_units:        W m-2
    destination_units:   W m-2
    source_grid:         cell_center
    destination_grid:    cell_center
    add_offset:          0.0d0
    scale:               1.0d0
    debug_write:         false
    connected_to:        *DATA
    map_type:            mapbilnr
    map_norm:            none

  - standard_name:       net_averaged_shortwave_flux_at_sea_water_surface
    long_name:           surface net averaged shortwave radiation flux
    short_name:          SWrad_daily
    data_variables:      [swrad_daily, time]                    # dswrfsfc minus uswrfsfc
    source_units:        W m-2
    destination_units:   W m-2
    source_grid:         cell_center
    destination_grid:    cell_center
    add_offset:          0.0d0
    scale:               1.0d0
    debug_write:         false
    connected_to:        *DATA
    map_type:            mapbilnr
    map_norm:            none

  - standard_name:       surface_air_pressure
    long_name:           surface air pressure
    short_name:          Pair
    data_variables:      [Pair, time]
    source_units:        mb
    destination_units:   mb
    source_grid:         cell_center
    destination_grid:    cell_center
    add_offset:          0.0d0
    scale:               1.0d0
    debug_write:         false
    connected_to:        *DATA
    map_type:            mapbilnr
    map_norm:            none

  - standard_name:       surface_air_temperature
    long_name:           surface (2m) air temperature
    short_name:          Tair
    data_variables:      [Tair, time]
    source_units:        C
    destination_units:   C
    source_grid:         cell_center
    destination_grid:    cell_center
    add_offset:          0.0d0
    scale:               1.0d0
    debug_write:         false
    connected_to:        *DATA
    map_type:            mapbilnr
    map_norm:            none

  - standard_name:       surface_relative_humidity
    long_name:           surface relative humidity
    short_name:          Qair
    data_variables:      [Qair, time]
    source_units:        percent
    destination_units:   fraction
    source_grid:         cell_center
    destination_grid:    cell_center
    add_offset:          0.0d0
    scale:               0.01d0
    debug_write:         false
    connected_to:        *DATA
    map_type:            mapbilnr
    map_norm:            none

  - standard_name:       precipitation_flux
    long_name:           precipitation rate
    short_name:          rain
    data_variables:      [rain, time]
    source_units:        kg m-2 s-1
    destination_units:   kg m-2 s-1
    source_grid:         cell_center
    destination_grid:    cell_center
    add_offset:          0.0d0
    scale:               1.0d0
    debug_write:         false
    connected_to:        *DATA
    map_type:            mapbilnr
    map_norm:            none

  - standard_name:       surface_eastward_wind
    long_name:           surface eastward wind at 10m
    short_name:          Uwind
    data_variables:      [Uwind, time]
    source_units:        m s-1
    destination_units:   m s-1
    source_grid:         cell_center
    destination_grid:    cell_center
    add_offset:          0.0d0
    scale:               1.0d0
    debug_write:         false
    connected_to:        *DATA
    map_type:            mapbilnr
    map_norm:            none

  - standard_name:       surface_northward_wind
    long_name:           surface northward wind at 10m
    short_name:          Vwind
    data_variables:      [Vwind, time]
    source_units:        m s-1
    destination_units:   m s-1
    source_grid:         cell_center
    destination_grid:    cell_center
    add_offset:          0.0d0
    scale:               1.0d0
    debug_write:         false
    connected_to:        *DATA
    map_type:            mapbilnr
    map_norm:            none

  - standard_name:       surface_downward_heat_flux_in_sea_water
    long_name:           surface net heat flux
    short_name:          shflux
    data_variables:      [shflux, time]
    source_units:        W m-2
    destination_units:   Celsius m s-1
    source_grid:         cell_center
    destination_grid:    cell_center
    add_offset:          0.0d0
    scale:               1.0d0
    debug_write:         false
    connected_to:        *ATM
    map_type:            mapbilnr
    map_norm:            none

  - standard_name:       surface_upward_water_flux
    long_name:           surface freshwater flux (E-P)
    short_name:          swflux
    data_variables:      [swflux, time]
    source_units:        kg m-2 s-1
    destination_units:   kg m-2 s-1
    source_grid:         cell_center
    destination_grid:    cell_center
    add_offset:          0.0d0
    scale:               1.0d0
    debug_write:         false
    connected_to:        *ATM
    map_type:            mapbilnr
    map_norm:            none

  - standard_name:       surface_downward_x_stress
    long_name:           surface eastward wind stress
    short_name:          sustr
    data_variables:      [sustr, time]
    source_units:        N m-2
    destination_units:   m-2 s-2
    source_grid:         cell_center
    destination_grid:    left_right_edge
    add_offset:          0.0d0
    scale:               1.0d0
    debug_write:         false
    connected_to:        *ATM
    map_type:            mapbilnr
    map_norm:            none

  - standard_name:       surface_downward_y_stress
    long_name:           surface northward wind stress
    short_name:          svstr
    data_variables:      [svstr, time]
    source_units:        N m-2
    destination_units:   m-2 s-2
    source_grid:         cell_center
    destination_grid:    lower_upper_edge
    add_offset:          0.0d0
    scale:               1.0d0
    debug_write:         false
    connected_to:        *ATM
    map_type:            mapbilnr
    map_norm:            none

It only uses the metadata for the variables specified in:

import_variables: [dLWrad, SWrad_daily, Pair, Tair, Qair, rain, Uwind, Vwind]
#export_variables: [SSH, Usur, Vsur, SST]

Since we are testing the coupling to the DATA component using CDEPS, the export_variables are commented out. Only the metadata for the variables specified in import_variables will be processed; the other metadata is ignored. There is no need to add or remove field metadata. It has everything that it needs for coupling ROMS in various configurations.

The cmeps_roms.F NUOPC module was updated accordingly.

Change History (0)

Note: See TracTickets for help on using tickets.