Skip to main content

Distributed Wind Generation Model

Project description

Distributed Wind Generation Model (dWind)

License PyPI - Version Jupyter Book

Pre-commit isort Ruff

Please note that at this time the model can only be run on NREL's Kestrel HPC system. Though a savvy user could recreate our data in their own computing environment and update the internal pointers in the example configuration at examples/larimer_county_btm_baseline_2025.toml and examples/model_config.toml.

Installing dwind

  1. Install Anaconda or Miniconda (recommended) if not already installed.

  2. Clone the repository

    git clone https://github.com/NREL/dwind.git
    
  3. Navigate to the dwind repository.

    cd /path/to/dwind
    
  4. Create your dwind environment using our recommended settings and all required dependencies.

    conda env create -f environment.yml
    

Running

Configuring

dWind relies on 2 configuration files: 1) a system-wise setting that can be shared among a team, and 2) a run-specific configuration file. Both will be described below.

Primary model configuration

The primary model configuration should look exactly like (or be compatible with) examples/model_config.toml to ensure varying fields are read correctly throughout the model.

Internally, dWind is able to convert the following data to adhere to internal usage:

  • Any field with "DIR" is converted to a Python pathlib.Path object for robust file handling
  • SQL credentials and constructor strings are automatically formed in the [sql] table for easier construction of generic connection strings. Specifically the {USER} and {PASSWORD} fields get replaced with their corresponding setting in the same table.

Configuration, the primary class handling this data allows for dot notation and dictionary-style attribute calling at all levels of nesting. This means, config.pysam.outputs.btm and config.pysam.outputs["btm"] are equivalent. This makes for more intuitive dynamic attribute fetching when updating the code for varying cases.

Run configuration

The run-specific configuration should look like examples/larimer_county_btm_baseline_2025.toml, which controls all the dynamic model settings, HPC configurations, and a pointer to the primary model configuration described above.

Run the model

dwind has a robust CLI interface allowing for the usage of python path/to/dwind/dwind/main.py or by directly callingdwind. For more details on using the CLI, use the --help flag, or visit our CLI documentation page https://nrel.github.io/dwind/cli.html

To run the model, it is recommended to use the following workflow from your analysis folder.

  1. Start a new screen session on Kestrel.

    screen -S <analysis-name>
    
  2. Load your conda environment with dwind installed.

    module load conda
    conda activate <env_name>
    
  3. Navigate to your analysis folder if your relative data locations in your run configuration are relative to the analysis folder.

    cd /path/to/analysis/location
    
  4. Run the model.

    dwind run config examples/larimer_county_btm_baseline_2025.toml
    
  5. Disconnect your screen Ctrl + a + d and wait for the analysis to complete and view your results.

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

dwind-0.3.3.tar.gz (60.6 kB view details)

Uploaded Source

Built Distribution

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

dwind-0.3.3-py3-none-any.whl (49.8 kB view details)

Uploaded Python 3

File details

Details for the file dwind-0.3.3.tar.gz.

File metadata

  • Download URL: dwind-0.3.3.tar.gz
  • Upload date:
  • Size: 60.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for dwind-0.3.3.tar.gz
Algorithm Hash digest
SHA256 5b11607674cd570dda0ed0a58ec022f000601172216ef73b4c91199cd2666d4c
MD5 0b8bc686ac3fe0ae61a10834876ab19d
BLAKE2b-256 007314c0b285ffff6d83edbbb37ffde9cbff5082771976dc6cbc87076d23aeb0

See more details on using hashes here.

Provenance

The following attestation bundles were made for dwind-0.3.3.tar.gz:

Publisher: python-publish.yml on NREL/dwind

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

File details

Details for the file dwind-0.3.3-py3-none-any.whl.

File metadata

  • Download URL: dwind-0.3.3-py3-none-any.whl
  • Upload date:
  • Size: 49.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for dwind-0.3.3-py3-none-any.whl
Algorithm Hash digest
SHA256 2f19318ddeccb9d93d300376c99b8925603bc687e7081ebfc56b5561326eb537
MD5 917b41041e72a88f373df84ce04760b8
BLAKE2b-256 ae3d942fa212b0f6eb0828d6d27dbc304924ba54acfb3840da0f66dd2c82e4c3

See more details on using hashes here.

Provenance

The following attestation bundles were made for dwind-0.3.3-py3-none-any.whl:

Publisher: python-publish.yml on NREL/dwind

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