Skip to main content

NEMS configuration generation

Project description

NEMSpy

tests build version oitnb license

NEMSpy generates configuration files (nems.configure, config.rc, model_configure, atm_namelist.rc) for coupled modeling applications run with a compiled NEMS binary (not included).

NEMS implements the National Unified Operational Prediction Capability (NUOPC), and configuration files built for NEMS will also work for most NUOPC applications.

Usage:

from datetime import datetime, timedelta

from nemspy import ModelingSystem
from nemspy.model import (
    ADCIRCEntry,
    AtmosphericMeshEntry,
    WaveMeshEntry,
)

# model run time
start_time = datetime(2020, 6, 1)
duration = timedelta(days=1)

# returning interval of main run sequence
interval = timedelta(hours=1)

# directory to which configuration files should be written
output_directory = '~/nems_configuration/'

# model entries
ocean_model = ADCIRCEntry(processors=11, verbose=True, DumpFields=False)
atmospheric_mesh = AtmosphericMeshEntry('~/wind_atm_fin_ch_time_vec.nc')
wave_mesh = WaveMeshEntry('~/ww3.Constant.20151214_sxy_ike_date.nc')

# instantiate model system with model entries
nems = ModelingSystem(
    start_time, duration, interval, ocn=ocean_model, atm=atmospheric_mesh, wav=wave_mesh,
)

# form connections between models
nems.connect('ATM', 'OCN')
nems.connect('WAV', 'OCN')

# define execution order
nems.sequence = [
    'ATM -> OCN',
    'WAV -> OCN',
    'ATM',
    'WAV',
    'OCN',
]

# write configuration files to the given directory
nems.write(output_directory, overwrite=True)

Output:

nems.configure

#############################################
####  NEMS Run-Time Configuration File  #####
#############################################

# EARTH #
EARTH_component_list: ATM WAV OCN
EARTH_attributes::
  Verbosity = min
::

# ATM #
ATM_model:                      atmesh
ATM_petlist_bounds:             0 0
ATM_attributes::
  Verbosity = min
::

# WAV #
WAV_model:                      ww3data
WAV_petlist_bounds:             1 1
WAV_attributes::
  Verbosity = min
::

# OCN #
OCN_model:                      adcirc
OCN_petlist_bounds:             2 12
OCN_attributes::
  Verbosity = max
  DumpFields = false
::

# Run Sequence #
runSeq::
  @3600
    ATM -> OCN   :remapMethod=redist
    WAV -> OCN   :remapMethod=redist
    ATM
    WAV
    OCN
  @
::

config.rc

 atm_dir: ~
 atm_nam: wind_atm_fin_ch_time_vec.nc
 wav_dir: ~
 wav_nam: ww3.Constant.20151214_sxy_ike_date.nc

model_configure

total_member:            1
print_esmf:              .true.
namelist:                atm_namelist
PE_MEMBER01:             13
start_year:              2020
start_month:             6
start_day:               1
start_hour:              0
start_minute:            0
start_second:            0
nhours_fcst:             24
RUN_CONTINUE:            .false.
ENS_SPS:                 .false.

Related:

Project details


Release history Release notifications | RSS feed

This version

0.4.1

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

nemspy-0.4.1.tar.gz (12.7 kB view details)

Uploaded Source

Built Distribution

nemspy-0.4.1-py3-none-any.whl (15.4 kB view details)

Uploaded Python 3

File details

Details for the file nemspy-0.4.1.tar.gz.

File metadata

  • Download URL: nemspy-0.4.1.tar.gz
  • Upload date:
  • Size: 12.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/47.1.0 requests-toolbelt/0.9.1 tqdm/4.50.0 CPython/3.8.5

File hashes

Hashes for nemspy-0.4.1.tar.gz
Algorithm Hash digest
SHA256 350ff80c8d2f1a7f5621cca8612dbbe720f8f762a60edc9886e8d222fe34a736
MD5 ac9f6fdd83f66aa64ac2846f315dc5c2
BLAKE2b-256 02eae638fb2cccc163f577997e00720ce0cf49ca838b18ea45fa1affc223d5ce

See more details on using hashes here.

Provenance

File details

Details for the file nemspy-0.4.1-py3-none-any.whl.

File metadata

  • Download URL: nemspy-0.4.1-py3-none-any.whl
  • Upload date:
  • Size: 15.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/47.1.0 requests-toolbelt/0.9.1 tqdm/4.50.0 CPython/3.8.5

File hashes

Hashes for nemspy-0.4.1-py3-none-any.whl
Algorithm Hash digest
SHA256 f1dc14adbf0cf2592bcab08d31beb103ec742d1bec4e0cfcce85d1d30e5db3c1
MD5 27acb09d2f325c3bfa7f83e7298062bc
BLAKE2b-256 b9a224e58d3ca03c9ced46a6f77954d4bc6ae6b20ac7a9e9e5d1df1c4ba8519f

See more details on using hashes here.

Provenance

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page