Skip to main content

Computational science and engineering parameteric study workflows

Project description

https://img.shields.io/github/actions/workflow/status/lanl-aea/waves/pages.yml?branch=main&label=GitHub-Pages https://img.shields.io/github/v/release/lanl-aea/waves?label=GitHub-Release https://img.shields.io/conda/vn/conda-forge/waves https://img.shields.io/conda/dn/conda-forge/waves.svg?label=Conda%20downloads https://img.shields.io/pypi/v/waves-workflows?label=PyPI%20package https://img.shields.io/pypi/dm/waves-workflows?label=PyPI%20downloads https://zenodo.org/badge/591388602.svg

Description

WAVES (LANL code C23004) is a computational science and engineering workflow tool that integrates parametric studies with traditional software build systems.

In addition to the parametric study Python package and command line utilities, WAVES also includes SCons builders for common engineering software used by model simulation (modsim) repositories. The tutorial simulations in this project use SCons as the automated build system and translate software build system concepts in the language of engineering simulation and analysis. The SCons documentation should be consulted as a reference for additional build system concepts, command line options, and project configuration.

This project includes a MODSIM-TEMPLATE which is used for the tutorials and for integration and regression testing of the WAVES extensions to SCons. The template modsim project can be duplicated from the command line as waves fetch modsim_template after installation.

Installation

Conda

WAVES can be installed in a Conda environment with the Conda package manager. See the Conda installation and Conda environment management documentation for more details about using Conda.

$ conda install --channel conda-forge waves

pip

WAVES may also be installed from PyPI with pip under the distribution name waves-workflows: https://pypi.org/project/waves-workflows/. The package installs and imports as waves, so care must be taken to avoid name clashes with similarly named PyPI packages.

$ pip install waves-workflows

Spack

WAVES may be installed with the Spack package manager under the distribution name py-waves: https://packages.spack.io/package.html?name=py-waves. The package installs and imports as waves.

$ spack install py-waves

Documentation

The documentation is bundled with the Conda package and can be accessed locally without a network connection after installation from the command line as waves docs. The documentation is also web-hosted:

The MODSIM-TEMPLATE documentation is hosted as a separate webpage as a demonstration for what modsim project documentation can look like.

Developers

Developer Notes

The full developer manual can be found at:

Clone the project

  • GitHub

    $ git clone git@github.com:lanl-aea/waves.git
  • LANL

    $ git clone ssh://git@re-git.lanl.gov:10022/aea/python-projects/waves.git

Local development environments

SCons can be installed in a Conda environment with the Conda package manager. See the Conda installation and Conda environment management documentation for more details about using Conda.

  1. Create the environment if it doesn’t exist

    $ pwd
    path/to/local/git/clone/waves
    $ conda env create --name waves-env --file environment.yml
  2. Activate the environment

    $ conda activate waves-env

Documentation

The documentation build is automated with SCons as the documentation target.

  • Build the WAVES documentation

    $ pwd
    path/to/local/git/clone/waves/
    $ scons documentation

Project details


Download files

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

Source Distribution

waves_workflows-0.12.9.tar.gz (9.7 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

waves_workflows-0.12.9-py3-none-any.whl (10.1 MB view details)

Uploaded Python 3

File details

Details for the file waves_workflows-0.12.9.tar.gz.

File metadata

  • Download URL: waves_workflows-0.12.9.tar.gz
  • Upload date:
  • Size: 9.7 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for waves_workflows-0.12.9.tar.gz
Algorithm Hash digest
SHA256 097c7d8da33050487e83249ef69bf58d6e90b1e5714a686271de15e3de74039d
MD5 f822138272f1451a7041f8e7cf61c09d
BLAKE2b-256 cfdb13b81f7093623fac0a12fb93c7bacbd6e751df2b8cdb186575832b8a8b13

See more details on using hashes here.

Provenance

The following attestation bundles were made for waves_workflows-0.12.9.tar.gz:

Publisher: release.yml on lanl-aea/waves

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file waves_workflows-0.12.9-py3-none-any.whl.

File metadata

File hashes

Hashes for waves_workflows-0.12.9-py3-none-any.whl
Algorithm Hash digest
SHA256 03603f98c3f56ca37875a9cb953ae10aeeb0f2ca7f27924c326570cb7c0e1ce1
MD5 63cfd31d7b0a59d6a7d24944399e0598
BLAKE2b-256 6c8828e4c796fa9a0bf1c4ca1e4907ea083699ad117256c07d568cd27ba5ffd4

See more details on using hashes here.

Provenance

The following attestation bundles were made for waves_workflows-0.12.9-py3-none-any.whl:

Publisher: release.yml on lanl-aea/waves

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

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