DASH v4.0.0
Woohoo! 🎉 😎
Summary
This release adds
- A tutorial,
- A number of new PSMs,
- The ability to implement totals (sums) across state vector dimensions,
- 1D covariance localization, and
- Improvements to the PSM interface
The release also includes a number of minor improvements and bug fixes.
Details
Major Additions
-
Tutorial
The HTML pages in the DASH docs now include a tutorial and introduction to DASH. -
PSM.identity
Added an identity PSM. This built-in PSM returns input values directly as outputs without running any forward model. -
PSM.pdsi
Added a PSM that estimates the Palmer Drought-Severity Index. -
PRYSM PSMs
Added PSMs to implement several of the sensor modules from the PRYSM python package. Specifically, these are the cellulose, coral, and icecore sensor modules. (SeePSM.prysm.cellulose
,PSM.prysm.coral
, andPSM.prysm.icecore
). Also added instructions for setting up PRYSM to run within Matlab (Seehelp PSM.prysm
). -
State vector totals
Added thestateVector.total
andstateVector.weightedTotal
commands. These commands are similar to thestateVector.mean
andstateVector.weightedMean
commands, but they implement a sum total (rather than a mean) over the indicated dimensions. For example, these new commands can be used to compute total precipitation over a spatial field. -
Covariance localization in 1D
Added thedash.localize.gc1d
function. This function allows users to calculate localization weights over a single dimension (such as height or depth). The outputs of this function can also be combined with 2D localization weights to implement localization over a 3D spatial array. -
PSM.download
Added an option forPSM.download
to download the latest commit of an external code. Previously, users could only download the officially supported commit. -
PSM memory
Added PSM memory to the informational properties in the PSM interface. Users can now see whether a PSM maintains memory of previous time steps (and should thus use a time-ordered ensemble) when using thePSM.info
method.
Minor changes
-
gridfile.new
Users can now use strings (in addition to logicals) to select overwriting options. -
dash.parse.nameValue
Flag parsing is now case-insensitive. -
PSM descriptions
Fixed some minor typos in the PSM descriptions. (i.e. "Baysian" -> "Bayesian") -
sv.variable
Fixed a bug in the console display of detailed variable dimensions wherein weighted means were reported as standard means.
Acknowledgements
Many thanks to:
@kanchukaitis For the suggestion of state vector totals
@amrhein For suggesting the identity PSM, and 1D covariance localization
@PaleoLipidRR For noting the typos in the PSM descriptions, and
@sylvia-dee For providing validation data for the PRYSM PSMs