cape.pyus.options.util: Utilities for pyUS options module

This module provides tools to read, access, modify, and write settings for cape.pyfun. It is based off of the cape.cfdx.options.util module and provides a special class cape.cfdx.options.odict that is subclassed from the Python built-in dict. Behavior, such as opts['Namelist'] or opts.get('Namelist') are also present. In addition, many convenience methods such as opts.get_InputInp() are provided.

In addition, this module controls default values of each pyFun parameter in a three-step process. The precedence used to determine what the value of a given parameter should be is below.

  1. Values directly specified in the input file, pyFun.json

  2. Values specified in the default control file, $CAPE/settings/pyUS.default.json

  3. Hard-coded defaults from this module

See Also:
cape.pyus.options.util.getPyUSDefaults()

Read pyUS.default.json default settings file

Call:
>>> defs = getPyUS()
Outputs:
defs: dict

Dictionary of settings read from JSON file

Versions:
  • 2019-06-27 @ddalle: Version 1.0 (US3D)

  • 2021-03-01 @ddalle: Version 2.0; local JSON file

cape.pyus.options.util.getUS3DTemplate(fname)

Get full path to template with file name fname

Call:
>>> fabs = getUS3DTemplate(fname)
Inputs:
fname: str

Name of file, such as input.cntl

Outputs:
fabs: str

Full path to the file, $CAPE/templates/us3d/$fname

Versions:
  • 2016-04-27 @ddalle: Version 1.0

  • 2021-03-01 @ddalle: Version 2.0; local templates

cape.pyus.options.util.get_template(fname)

Get the absolute path to a template file by name

Call:
>>> fabs = get_template(fname)
Inputs:
fname: str

Name of file, such as input.cntl

Outputs:
fabs: str

Full path to file

Versions:
  • 2021-03-01 @ddalle: Version 1.0

cape.pyus.options.util.rc0(p)

Return default from cape.pyus.options.rc; ensure a scalar

Call:
>>> v = rc0(s)
Inputs:
s: str

Name of parameter to extract

Outputs:
v: any

Either rc[s] or rc[s][0], whichever is appropriate

Versions:
  • 2014-08-01 @ddalle: First version