From 2ba5b32aeea03b5e3c2980765ec3d836e88be8bf Mon Sep 17 00:00:00 2001 From: ppinchuk Date: Wed, 21 Jan 2026 19:32:59 -0700 Subject: [PATCH 1/8] update name --- .github/ISSUE_TEMPLATE/bug_report.yaml | 4 +- .github/ISSUE_TEMPLATE/config.yml | 2 +- .../documentation_improvement.yaml | 6 +- .github/ISSUE_TEMPLATE/feature_request.yaml | 2 +- .../ISSUE_TEMPLATE/installation_issue.yaml | 2 +- .github/workflows/pr_rev_tests.yml | 2 +- README.rst | 65 +++++---- bin/rex-Conda-3 | 2 +- conda.recipe/meta.yaml | 8 +- conda_build.sh | 2 +- docs/source/misc/examples.nlr_data.rst | 5 + docs/source/misc/examples.nrel_data.rst | 5 - docs/source/misc/examples.rst | 2 +- examples/HSDS/README.rst | 40 +++--- examples/{NREL_Data => NLR_Data}/README.rst | 80 +++++------ .../example_resource_nsrdb.py | 0 .../example_resource_wtk.py | 0 .../example_resourcex.py | 0 .../example_resourcex_solar.py | 0 examples/NSRDB/NSRDB.ipynb | 135 ++++++++++-------- examples/NSRDB/README.rst | 6 +- examples/README.rst | 6 +- examples/US_Wave/README.rst | 20 +-- examples/WIND/README.rst | 26 ++-- examples/fsspec/README.rst | 8 +- examples/xarray/README.rst | 14 +- examples/xarray/daily_agg.ipynb | 8 +- examples/zarr/README.rst | 2 +- pyproject.toml | 18 +-- rex/__init__.py | 2 +- rex/external/rexarray.py | 15 +- rex/multi_time_resource.py | 2 +- rex/resource.py | 7 +- rex/resource_extraction/README.rst | 8 +- rex/resource_extraction/US_wave_cli.py | 2 +- rex/sam_resource.py | 2 +- rex/utilities/solar_position.py | 2 +- rex/utilities/utilities.py | 2 +- tests/h5pyd_tests.py | 2 +- tests/test_s3.py | 2 +- 40 files changed, 267 insertions(+), 249 deletions(-) create mode 100644 docs/source/misc/examples.nlr_data.rst delete mode 100644 docs/source/misc/examples.nrel_data.rst rename examples/{NREL_Data => NLR_Data}/README.rst (79%) rename examples/{NREL_Data => NLR_Data}/example_resource_nsrdb.py (100%) rename examples/{NREL_Data => NLR_Data}/example_resource_wtk.py (100%) rename examples/{NREL_Data => NLR_Data}/example_resourcex.py (100%) rename examples/{NREL_Data => NLR_Data}/example_resourcex_solar.py (100%) diff --git a/.github/ISSUE_TEMPLATE/bug_report.yaml b/.github/ISSUE_TEMPLATE/bug_report.yaml index 5cbd4661c..350110630 100644 --- a/.github/ISSUE_TEMPLATE/bug_report.yaml +++ b/.github/ISSUE_TEMPLATE/bug_report.yaml @@ -13,7 +13,7 @@ body: required: true - label: > I have confirmed this bug exists on the - [latest version](https://github.com/NREL/rex/releases/latest) of rex. + [latest version](https://github.com/NatLabRockies/rex/releases/latest) of rex. required: true - label: > I have confirmed this bug exists on the main branch of rex. @@ -77,4 +77,4 @@ body: attributes: label: Charge code placeholder: > - If you are at NREL and fixing this bug is urgent, please provide a charge code + If you are at NLR and fixing this bug is urgent, please provide a charge code diff --git a/.github/ISSUE_TEMPLATE/config.yml b/.github/ISSUE_TEMPLATE/config.yml index e03343949..f62a3e382 100644 --- a/.github/ISSUE_TEMPLATE/config.yml +++ b/.github/ISSUE_TEMPLATE/config.yml @@ -1,7 +1,7 @@ blank_issues_enabled: true contact_links: - name: Question - url: https://github.com/NREL/reV/discussions + url: https://github.com/NatLabRockies/reV/discussions about: | Ask questions about the reV suite (including rex) and discuss with the developers and other users here. If you have a question like "How do I read data from the WTK?", please diff --git a/.github/ISSUE_TEMPLATE/documentation_improvement.yaml b/.github/ISSUE_TEMPLATE/documentation_improvement.yaml index 82e46d31b..77e6cbe58 100644 --- a/.github/ISSUE_TEMPLATE/documentation_improvement.yaml +++ b/.github/ISSUE_TEMPLATE/documentation_improvement.yaml @@ -10,7 +10,7 @@ body: options: - label: > I have checked that the issue still exists on the latest versions of the docs - on `main` [here](https://nrel.github.io/rex/) + on `main` [here](https://natlabrockies.github.io/rex/) required: true - type: textarea id: location @@ -19,8 +19,8 @@ body: description: > Please provide the location of the documentation, e.g. ``rex.resource.Resource`` or the URL of the documentation, e.g. - "https://nrel.github.io/rex/_autosummary/rex.resource.Resource.html#rex.resource.Resource" - placeholder: https://nrel.github.io/rex/_autosummary/rex.resource.Resource.html#rex.resource.Resource + "https://natlabrockies.github.io/rex/_autosummary/rex.resource.Resource.html#rex.resource.Resource" + placeholder: https://natlabrockies.github.io/rex/_autosummary/rex.resource.Resource.html#rex.resource.Resource validations: required: true - type: textarea diff --git a/.github/ISSUE_TEMPLATE/feature_request.yaml b/.github/ISSUE_TEMPLATE/feature_request.yaml index 427a2e1fb..19487a979 100644 --- a/.github/ISSUE_TEMPLATE/feature_request.yaml +++ b/.github/ISSUE_TEMPLATE/feature_request.yaml @@ -59,4 +59,4 @@ body: attributes: label: Charge code placeholder: > - If you are at NREL and implementing this feature is urgent, please provide a charge code + If you are at NLR and implementing this feature is urgent, please provide a charge code diff --git a/.github/ISSUE_TEMPLATE/installation_issue.yaml b/.github/ISSUE_TEMPLATE/installation_issue.yaml index eb15a3ea7..2d98f7d7b 100644 --- a/.github/ISSUE_TEMPLATE/installation_issue.yaml +++ b/.github/ISSUE_TEMPLATE/installation_issue.yaml @@ -8,7 +8,7 @@ body: label: Installation check options: - label: > - I have read the [installation guide](https://nrel.github.io/rex/#installing-rex). + I have read the [installation guide](https://natlabrockies.github.io/rex/#installing-rex). required: true - type: input id: platform diff --git a/.github/workflows/pr_rev_tests.yml b/.github/workflows/pr_rev_tests.yml index fefcb17e5..9d161b235 100644 --- a/.github/workflows/pr_rev_tests.yml +++ b/.github/workflows/pr_rev_tests.yml @@ -13,7 +13,7 @@ jobs: - name: checkout reV uses: actions/checkout@v3 with: - repository: nrel/reV + repository: NatLabRockies/reV fetch-depth: 1 path: reV - name: Set up Python diff --git a/README.rst b/README.rst index 66fc5915a..ab6c53380 100644 --- a/README.rst +++ b/README.rst @@ -4,20 +4,20 @@ Welcome to The REsource eXtraction (rex) tool! |Docs| |Tests| |Linter| |PyPi| |PythonV| |Conda| |Licence| |CodeCov| |Zeonodo| -.. |Docs| image:: https://github.com/NREL/rex/workflows/Documentation/badge.svg - :target: https://nrel.github.io/rex/ +.. |Docs| image:: https://github.com/NatLabRockies/rex/workflows/Documentation/badge.svg + :target: https://natlabrockies.github.io/rex/ -.. |Tests| image:: https://github.com/NREL/rex/workflows/Pytests/badge.svg - :target: https://github.com/NREL/rex/actions?query=workflow%3A%22Pytests%22 +.. |Tests| image:: https://github.com/NatLabRockies/rex/workflows/Pytests/badge.svg + :target: https://github.com/NatLabRockies/rex/actions?query=workflow%3A%22Pytests%22 -.. |Linter| image:: https://github.com/NREL/rex/workflows/Lint%20Code%20Base/badge.svg - :target: https://github.com/NREL/rex/actions?query=workflow%3A%22Lint+Code+Base%22 +.. |Linter| image:: https://github.com/NatLabRockies/rex/workflows/Lint%20Code%20Base/badge.svg + :target: https://github.com/NatLabRockies/rex/actions?query=workflow%3A%22Lint+Code+Base%22 -.. |PyPi| image:: https://img.shields.io/pypi/pyversions/NREL-rex.svg - :target: https://pypi.org/project/NREL-rex/ +.. |PyPi| image:: https://img.shields.io/pypi/pyversions/NLR-rex.svg + :target: https://pypi.org/project/NLR-rex/ -.. |PythonV| image:: https://badge.fury.io/py/NREL-rex.svg - :target: https://badge.fury.io/py/NREL-rex +.. |PythonV| image:: https://badge.fury.io/py/NLR-rex.svg + :target: https://badge.fury.io/py/NLR-rex .. |Conda| image:: https://anaconda.org/nrel/nrel-rex/badges/version.svg :target: https://anaconda.org/nrel/nrel-rex @@ -25,8 +25,8 @@ Welcome to The REsource eXtraction (rex) tool! .. |Licence| image:: https://anaconda.org/nrel/nrel-rex/badges/license.svg :target: https://anaconda.org/nrel/nrel-rex -.. |CodeCov| image:: https://codecov.io/gh/nrel/rex/branch/main/graph/badge.svg?token=WQ95L11SRS - :target: https://codecov.io/gh/nrel/rex +.. |CodeCov| image:: https://codecov.io/gh/natlabrockies/rex/branch/main/graph/badge.svg?token=WQ95L11SRS + :target: https://codecov.io/gh/natlabrockies/rex .. |Zeonodo| image:: https://zenodo.org/badge/253541811.svg :target: https://zenodo.org/badge/latestdoi/253541811 @@ -38,20 +38,20 @@ What is rex? ``rex`` stands for **REsource eXtraciton** tool. ``rex`` enables the efficient and scalable extraction, manipulation, and -computation with NRELs flagship renewable resource datasets such as: the Wind +computation with NLRs flagship renewable resource datasets such as: the Wind Integration National Dataset (WIND Toolkit), the National Solar Radiation Database (NSRDB), the Ocean Surface Wave Hindcast (US Wave) Data, and the High-resolution downscaled climate change data (Sup3rCC). -To get started accessing NREL's datasets, see the primer on `NREL Renewable +To get started accessing NLR's datasets, see the primer on `NLR Renewable Energy Resource Data -`_ or the -`installation instructions `_. +`_ or the +`installation instructions `_. You might also want to check out the basic `Resource Class -`_ that -can be used to efficiently query NREL data, or our various `example use cases -`_. +`_ that +can be used to efficiently query NLR data, or our various `example use cases +`_. Installing rex ============== @@ -70,16 +70,15 @@ Option 1: Install from PIP or Conda (recommended for analysts): ``conda activate rex`` 3. Basic ``rex`` install: - 1) ``pip install NREL-rex`` - 2) or ``conda install nrel-rex --channel=nrel`` + ``pip install NLR-rex`` -4. Install for users outside of NREL that want to access data via HSDS or S3 as per the instructions `here `_: - 1) ``pip install NREL-rex[hsds]`` for more performant access of the data on HSDS with slightly more setup as per `this hsds example `_. Note that the highest version of Python currently supported by ``hsds`` is Python 3.11. +4. Install for users outside of NLR that want to access data via HSDS or S3 as per the instructions `here `_: + 1) ``pip install NLR-rex[hsds]`` for more performant access of the data on HSDS with slightly more setup as per `this hsds example `_. Note that the highest version of Python currently supported by ``hsds`` is Python 3.11. Option 2: Clone repo (recommended for developers) ------------------------------------------------- -1. from home dir, ``git clone git@github.com:NREL/rex.git`` +1. from home dir, ``git clone git@github.com:NatLabRockies/rex.git`` 2. Create ``rex`` environment and install package 1) Create a conda env: ``conda create -n rex`` @@ -103,12 +102,12 @@ Option 2: Clone repo (recommended for developers) rex command line tools ====================== -- `rex `_ -- `NSRDBX `_ -- `WINDX `_ -- `US-wave `_ -- `WaveX `_ -- `MultiYearX `_ -- `rechunk `_ -- `temporal-stats `_ -- `wind-rose `_ +- `rex `_ +- `NSRDBX `_ +- `WINDX `_ +- `US-wave `_ +- `WaveX `_ +- `MultiYearX `_ +- `rechunk `_ +- `temporal-stats `_ +- `wind-rose `_ diff --git a/bin/rex-Conda-3 b/bin/rex-Conda-3 index eedc431ce..ce9a3b088 100644 --- a/bin/rex-Conda-3 +++ b/bin/rex-Conda-3 @@ -32,7 +32,7 @@ proc ModulesHelp { } { puts stdout "Build: $PKG_NAME-$PKG_VERSION" puts stdout "URL: " puts stdout "Description: Resource Extraction Tool" - puts stdout "For assistance contact michael.rossol@nrel.gov" + puts stdout "For assistance contact michael.rossol@nlr.gov" puts stdout " " puts stdout "Note: " puts stdout " " diff --git a/conda.recipe/meta.yaml b/conda.recipe/meta.yaml index 438159ae9..0bb43b92f 100644 --- a/conda.recipe/meta.yaml +++ b/conda.recipe/meta.yaml @@ -1,5 +1,5 @@ package: - name: nrel-rex + name: nlr-rex version: {{ environ.get('GIT_DESCRIBE_TAG','').replace('v', '', 1) }} source: @@ -48,8 +48,8 @@ requirements: - h5pyd about: - home: "https://github.com/NREL/rex" + home: "https://github.com/NatLabRockies/rex" license: BSD 3-Clause summary: "REsource eXtraction (rex) tool" - doc_url: "https://nrel.github.io/rex" - dev_url: "https://github.com/NREL/rex" + doc_url: "https://natlabrockies.github.io/rex" + dev_url: "https://github.com/NatLabRockies/rex" diff --git a/conda_build.sh b/conda_build.sh index 7f93f4ffc..a4100c287 100644 --- a/conda_build.sh +++ b/conda_build.sh @@ -6,7 +6,7 @@ export CONDA_BLD_PATH=~/conda-bld conda build conda.recipe/ -anaconda upload -u nrel $(conda build conda.recipe/ --output) +anaconda upload -u nlr $(conda build conda.recipe/ --output) echo "Building and uploading conda package done!" rm -rf $CONDA_BLD_PATH/* diff --git a/docs/source/misc/examples.nlr_data.rst b/docs/source/misc/examples.nlr_data.rst new file mode 100644 index 000000000..b1d650f86 --- /dev/null +++ b/docs/source/misc/examples.nlr_data.rst @@ -0,0 +1,5 @@ +NLR Renewable Energy Resource Data +================================== + +.. include:: ../../../examples/NLR_Data/README.rst + :start-line: 2 diff --git a/docs/source/misc/examples.nrel_data.rst b/docs/source/misc/examples.nrel_data.rst deleted file mode 100644 index d2af75839..000000000 --- a/docs/source/misc/examples.nrel_data.rst +++ /dev/null @@ -1,5 +0,0 @@ -NREL Renewable Energy Resource Data -=================================== - -.. include:: ../../../examples/NREL_Data/README.rst - :start-line: 2 diff --git a/docs/source/misc/examples.rst b/docs/source/misc/examples.rst index 4837134b8..cefaf6d90 100644 --- a/docs/source/misc/examples.rst +++ b/docs/source/misc/examples.rst @@ -2,7 +2,7 @@ Examples ======== .. toctree:: - examples.nrel_data + examples.nlr_data examples.nsrdb examples.wind examples.us_wave diff --git a/examples/HSDS/README.rst b/examples/HSDS/README.rst index 956fd7164..bce8229b4 100644 --- a/examples/HSDS/README.rst +++ b/examples/HSDS/README.rst @@ -3,18 +3,18 @@ Highly Scalable Data Service (HSDS) `The Highly Scalable Data Service (HSDS) `_ is a -cloud-optimized solution for storing and accessing HDF5 files, e.g. the NREL -wind and solar datasets. You can access NREL data via HSDS in a few ways. Read +cloud-optimized solution for storing and accessing HDF5 files, e.g. the NLR +wind and solar datasets. You can access NLR data via HSDS in a few ways. Read below to find out more. -Note that raw NREL .h5 data files are hosted on AWS S3. In contrast, the files +Note that raw NLR .h5 data files are hosted on AWS S3. In contrast, the files on HSDS are not real "files". They are just domains that you can access with h5pyd or rex tools to stream small chunks of the files stored on S3. The multi-terabyte .h5 files on S3 would be incredibly cumbersome to access otherwise. -You can now use HSDS with ``xarray`` to open NREL datasets remotely! See the guide -`here `_ for details. +You can now use HSDS with ``xarray`` to open NLR datasets remotely! See the guide +`here `_ for details. Extra Requirements ------------------ @@ -24,26 +24,26 @@ You may need some additional software beyond the basic ``rex`` install to run th .. code-block:: bash - pip install NREL-rex[hsds] + pip install NLR-rex[hsds] -NREL Developer API ------------------- +NLR Developer API +----------------- The easiest way to get started with HSDS is to get a developer API key via the -`NREL Developer Network `_. Once you have +`NLR Developer Network `_. Once you have your API key, create an HSDS config file at ``~/.hscfg`` with the following entries (make sure you update the ``hs_api_key`` entry): .. code-block:: bash - # NREL dev api + # NLR dev api hs_endpoint = https://developer.nrel.gov/api/hsds hs_api_key = your_api_key_goes_here -You should then be able to access NREL hsds data using ``rex`` and ``h5pyd`` as +You should then be able to access NLR hsds data using ``rex`` and ``h5pyd`` as per the `usage examples below -`_. -Note that this API is hosted on an NREL server and will have limits on the +`_. +Note that this API is hosted on an NLR server and will have limits on the amount of data you can access via HSDS. If you get a the ``OSError: Error retrieving data: None`` errors, it's probably because you're hitting the public IO limits. You can confirm this by trying to extract a very small amount of @@ -62,15 +62,15 @@ If this simple query succeeds while larger data slices fail, it is almost defini Setting up a Local HSDS Server ------------------------------ -Setting up an HSDS server on an EC2 instance or your local machine isn't too hard. The instruction set here is intended to be comprehensive and followed *exactly*. Most of these instructions are adapted from the `HSDS Repository `_ and the `h5pyd repository `_, but this tutorial is intended to be comprehensive and regularly maintained for NREL use. Please note the minor differences in the Unix- and Windows-specific instructions below and be sure to follow these subtleties exactly! +Setting up an HSDS server on an EC2 instance or your local machine isn't too hard. The instruction set here is intended to be comprehensive and followed *exactly*. Most of these instructions are adapted from the `HSDS Repository `_ and the `h5pyd repository `_, but this tutorial is intended to be comprehensive and regularly maintained for NLR use. Please note the minor differences in the Unix- and Windows-specific instructions below and be sure to follow these subtleties exactly! Make sure you have python 3.x (we recommend 3.10), pip, and git installed. We find it easiest to manage your HSDS environment by installing `miniconda `_ and creating a clean HSDS environment. Once you have that setup, follow these instructions: -#. In your shell, install nrel-rex >= v0.2.88 using pip, making sure to include the optional HSDS dependency: +#. In your shell, install nlr-rex >= v0.2.88 using pip, making sure to include the optional HSDS dependency: .. code-block:: bash - pip install "nrel-rex[hsds]>=0.2.88" + pip install "nlr-rex[hsds]>=0.2.88" #. Set your environment variables (if using windows, use ``set`` instead of ``export``) (this has to be done every time you login to a shell unless you set these in your ``.bashrc``): @@ -113,14 +113,14 @@ Make sure you have python 3.x (we recommend 3.10), pip, and git installed. We fi with h5pyd.Folder('/nrel/') as f: print(list(f)) -#. Assuming you see a list of NREL public dataset directories (e.g. ``['nsrdb', 'wtk', ...]``, congratulations! You have setup HSDS and h5pyd correctly. +#. Assuming you see a list of NLR public dataset directories (e.g. ``['nsrdb', 'wtk', ...]``, congratulations! You have setup HSDS and h5pyd correctly. HSDS and rex Usage Examples --------------------------- Now that you have an HSDS server running locally and h5pyd set up, you can -access NREL data as if you were on the NREL supercomputer. First, start by -browsing the NREL HSDS data offerings by exploring the HSDS folder structure: +access NLR data as if you were on the NLR supercomputer. First, start by +browsing the NLR HSDS data offerings by exploring the HSDS folder structure: .. code-block:: python @@ -138,4 +138,4 @@ These commands can also be run by using the HSDS CLI utility: ``$ hsls /nrel/``. Once you find a file you want to access, you can use the ``rex`` utilities to read the data. See the docs page `here -`_ for more details. +`_ for more details. diff --git a/examples/NREL_Data/README.rst b/examples/NLR_Data/README.rst similarity index 79% rename from examples/NREL_Data/README.rst rename to examples/NLR_Data/README.rst index 783cbcfbb..8a5e3f2f5 100644 --- a/examples/NREL_Data/README.rst +++ b/examples/NLR_Data/README.rst @@ -1,10 +1,10 @@ -NREL Renewable Energy Resource Data -=================================== +NLR Renewable Energy Resource Data +================================== -Welcome to the docs page for NREL's renewable energy resource datasets! These -docs apply to all of the NREL spatiotemporal meteorological datasets stored in +Welcome to the docs page for NLR's renewable energy resource datasets! These +docs apply to all of the NLR spatiotemporal meteorological datasets stored in HDF5 files including data for solar, wind, wave, and temperature variables. For -example, these docs apply to these NREL data products (not an exhaustive +example, these docs apply to these NLR data products (not an exhaustive list!): - The National Solar Radiation Database (NSRDB) @@ -12,28 +12,28 @@ list!): - Other wind data stored in the WIND Toolkit AWS bucket (e.g., NOW-23, PR-100, Sup3rWind, international wind data, etc...) - High-resolution downscaled climate change data (Sup3rCC) - High Resolution Ocean Surface Wave Hindcast (US Wave) Data - - Other spatiotemporal meteorological data from NREL! + - Other spatiotemporal meteorological data from NLR! Definitions ----------- - - ``attributes`` - Meta data associated with an NREL h5 file or a dataset within that h5 file. This can be information about how the file was created, the software versions used to create the data, physical units of datasets, scale factors for compressed integer storage, or something else. ``attributes`` are stored in namespaces similar to python dictionaries for every h5 file and every dataset in every h5 file. This is not typically spatial meta data and is not related to the ``meta`` dataset. For more information, see the `h5py attributes docs `_. + - ``attributes`` - Meta data associated with an NLR h5 file or a dataset within that h5 file. This can be information about how the file was created, the software versions used to create the data, physical units of datasets, scale factors for compressed integer storage, or something else. ``attributes`` are stored in namespaces similar to python dictionaries for every h5 file and every dataset in every h5 file. This is not typically spatial meta data and is not related to the ``meta`` dataset. For more information, see the `h5py attributes docs `_. - ``chunks`` - Data arrays in an h5 dataset are stored in ``chunks`` which are subsets of the data array stored sequentially on disk. When reading an h5 file, you only have to read one chunk of data at a time, so if a file has a 1TB dataset with shape (8760, N) but the chunk shape is (8760, 100), you don't have to read the full 1TB of data to access a single ``gid``, you only have to read the single chunk of data (in this case a 8760x100 array). For more details, see the `h5py chunks docs `_. - ``CLI`` - Command Line Interface (CLI). A program you can run from a command line call in a shell e.g., ``hsds``, ``hsls``, etc... - - ``datasets`` - Named arrays (e.g., "windspeed_100m", "ghi", "temperature_2m", etc...) stored in an h5 file. These are frequently 2D arrays with dimensions (time, space) and can be sliced with a ``[idy, idx]`` syntax. See the `h5py dataset docs `_ for details. We also refer to all our NREL data products as "datasets" so sorry for the confusion! - - ``gid`` - We commonly refer to locations in a spatiotemporal NREL dataset by the location's ``gid`` which is the spatial index of the location of interest (zero-indexed). For example, in a 2D dataset with shape (time, space), ``gid=99`` (zero-indexed) would be the 100th column (1-indexed) in the 2D array. - - ``h5`` - File extension for the heirarchical data format (e.g., "HDF5") that is widely used for spatiotemporal data at NREL. See the `h5py `_ library for more details. - - ``h5pyd`` - The python library that provides the HDF REST interface to NREL data hosted on the cloud. This allows for the public to access small parts of large cloud-hosted datasets. See the `h5pyd `_ library for more details. - - ``hsds`` - The highly scalable data service (HSDS) that we recommend to access small chunks of very large cloud-hosted NREL datasets. See the `hsds `_ library for more details. - - ``meta`` - The ``dataset`` in an NREL h5 file that contains information about the spatial axis. This is typically a `pandas DataFrame `_ with columns such as "latitude", "longitude", "state", etc... The DataFrame is typically converted to a records array for storage in an h5 ``dataset``. The length of the meta data should match the length of axis 1 of a 2D spatiotemporal ``dataset``. + - ``datasets`` - Named arrays (e.g., "windspeed_100m", "ghi", "temperature_2m", etc...) stored in an h5 file. These are frequently 2D arrays with dimensions (time, space) and can be sliced with a ``[idy, idx]`` syntax. See the `h5py dataset docs `_ for details. We also refer to all our NLR data products as "datasets" so sorry for the confusion! + - ``gid`` - We commonly refer to locations in a spatiotemporal NLR dataset by the location's ``gid`` which is the spatial index of the location of interest (zero-indexed). For example, in a 2D dataset with shape (time, space), ``gid=99`` (zero-indexed) would be the 100th column (1-indexed) in the 2D array. + - ``h5`` - File extension for the heirarchical data format (e.g., "HDF5") that is widely used for spatiotemporal data at NLR. See the `h5py `_ library for more details. + - ``h5pyd`` - The python library that provides the HDF REST interface to NLR data hosted on the cloud. This allows for the public to access small parts of large cloud-hosted datasets. See the `h5pyd `_ library for more details. + - ``hsds`` - The highly scalable data service (HSDS) that we recommend to access small chunks of very large cloud-hosted NLR datasets. See the `hsds `_ library for more details. + - ``meta`` - The ``dataset`` in an NLR h5 file that contains information about the spatial axis. This is typically a `pandas DataFrame `_ with columns such as "latitude", "longitude", "state", etc... The DataFrame is typically converted to a records array for storage in an h5 ``dataset``. The length of the meta data should match the length of axis 1 of a 2D spatiotemporal ``dataset``. - ``S3`` - Amazon Simple Storage Service (S3) is a basic cloud file storage system we use to store raw .h5 files in their full volume. Downloading files directly from S3 may not be the easiest way to access the data because each file tends to be multiple terabytes. Instead, you can stream small chunks of the files via HSDS. - ``scale_factor`` - We frequently scale data by a multiplicative factor, round the data to integer precision, and store the data in integer arrays. The ``scale_factor`` is an attribute associated with the relevant h5 ``dataset`` that defines the factor required to unscale the data from integer storage to the original physical units. The data should be divided by the ``scale_factor`` to scale back from integer to physical units. - - ``time_index`` - The ``dataset`` in an NREL h5 file that contains information about the temporal axis. This is typically a `pandas DatetimeIndex `_ that has been converted to a string array for storage in an h5 ``dataset``. The length of this ``dataset`` should match the length of axis 0 of a 2D spatiotemporal ``dataset``. + - ``time_index`` - The ``dataset`` in an NLR h5 file that contains information about the temporal axis. This is typically a `pandas DatetimeIndex `_ that has been converted to a string array for storage in an h5 ``dataset``. The length of this ``dataset`` should match the length of axis 0 of a 2D spatiotemporal ``dataset``. Data Format ----------- -NREL data is frequently provided in heirarchical data format (HDF5 or .h5). +NLR data is frequently provided in heirarchical data format (HDF5 or .h5). Each file contains many datasets, with each ``dataset`` representing a physical variable or meta data. Datasets are commonly 2 dimensional time-series arrays with dimensions (time, space). The temporal axis is defined by ``time_index``, @@ -44,12 +44,12 @@ units for each variable are also commonly provided as an attribute called ``units``. -Many NREL tools have been developed based on the assumption that the data format +Many NLR tools have been developed based on the assumption that the data format will follow a pseudo-standard definition. Data creators can adhere to the following specifications for seamless integration into `SAM `_, `reV `_, -`rex `_, +`rex `_, and the data download APIs for `solar `_, `wind `_, @@ -127,7 +127,7 @@ and the data download APIs for ``h5_val / scale_factor = actual_val`` - *fill_value*: The value that is used to represent NULL. *\* NOTE that empty values in an HDF5 file are technically allowable but will - result in errors during data post-processing by NREL tools, hence it is + result in errors during data post-processing by NLR tools, hence it is important to include a fill value in datasets where NULLs are possible* - *units*: The string representation of the units that apply to the raw data. Only necessary when you want values in Kelvin to be @@ -186,7 +186,7 @@ Common Data Formatting Errors ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ These are some common data formatting errors that we see when integrating new data products into our tools. These are not limitations of the HDF5 format, but -rather are conventions NREL tools have adopted. +rather are conventions NLR tools have adopted. - NaNs in H5s - Array sizes between different years of the same resource and/or different @@ -211,12 +211,12 @@ rather are conventions NREL tools have adopted. way would be to create multiple datasets for each variable at each elevation. E.g. *wind_speed_40m*, *wind_speed_60M*, *wind_speed_80m*, etc. -Data Location - NREL Users --------------------------- +Data Location - NLR Users +------------------------- -If you are at NREL, the easiest way to access this data is on the NREL -high-performance computing system (HPC). Go to the `NREL HPC website -`_ and request access via an NREL project with an +If you are at NLR, the easiest way to access this data is on the NLR +high-performance computing system (HPC). Go to the `NLR HPC website +`_ and request access via an NLR project with an HPC allocation. Once you are on the HPC, you can find that datasets in the ``/datasets/`` directory (e.g., run the linux command ``$ ls /datasets/``). Go through the directory tree until you find the .h5 files you are looking for. @@ -224,12 +224,12 @@ This datasets directory should not be confused with a ``dataset`` from an h5 file. When using the ``rex`` examples below, update the file paths with the relevant -NREL HPC file paths in ``/datasets/``. +NLR HPC file paths in ``/datasets/``. Data Location - External Users ------------------------------ -If you are not at NREL, you can't just download these files. They are massive +If you are not at NLR, you can't just download these files. They are massive and downloading the full files would crash your computer. The easiest way to access this data is probably with ``fsspec``, which allows you to access files directly on S3 with only one additional installation and no server setup. @@ -237,23 +237,23 @@ However, this method is slow. The most performant method is via ``HSDS``. ``HSDS`` provides a solution to stream small chunks of the data to your laptop or server for just the time or space domain you're interested in. -See `this docs page `_ +See `this docs page `_ for easy (but slow) access of the source .h5 files on s3 with ``fsspec`` that requires basically zero setup. To find relevant S3 files, you can explore the S3 directory structure on `OEDI `_ or with the `AWS CLI `_ -See `this docs page `_ for +See `this docs page `_ for instructions on how to set up HSDS for more performant data access that requires a bit of setup. To find relevant HSDS files, you can use HSDS and -h5pyd to explore the NREL public data directory listings. For example, if you +h5pyd to explore the NLR public data directory listings. For example, if you are running an HSDS local server, you can use the CLI utility ``hsls``, for example, run: ``$ hsls /nrel/`` or ``$ hsls /nrel/nsrdb/v3/``. You can also use h5pyd to do the same thing. In a python kernel, ``import h5pyd`` and then run: ``print(list(h5pyd.Folder('/nrel/')))`` to list the ``/nrel/`` directory. There is also an experiment with using `zarr -`_, but the examples below +`_, but the examples below may not work with these utilities and the zarr example is not regularly tested. The `Open Energy Data Initiative (OEDI) `_ @@ -265,10 +265,10 @@ data. Data Access Examples -------------------- -If you are on the NREL HPC, update the file paths with the relevant NREL HPC +If you are on the NLR HPC, update the file paths with the relevant NLR HPC file paths in ``/datasets/``. -If you are not at NREL, see the "Data Location - External Users" section above +If you are not at NLR, see the "Data Location - External Users" section above for S3 instructions or for how to setup HSDS and how to find the files that you're interested in. Then update the file paths to the files you want either on HSDS or S3. @@ -278,7 +278,7 @@ The rex Resource Class ~~~~~~~~~~~~~~~~~~~~~~ Data access in rex is built on the ``Resource`` class. The class can be used to -open and explore NREL h5 files, extract and automatically unscale data, and +open and explore NLR h5 files, extract and automatically unscale data, and retrieve ``time_index`` and ``meta`` datasets in their native pandas datatypes. .. code-block:: python @@ -296,12 +296,12 @@ Here, we are retrieving the ``ghi`` dataset for all time indices (axis=0) for ``gid`` 500 and also printing other useful meta data. For a full description the ``Resource`` class API see the docs `here -`_. +`_. There are also special ``Resource`` subclasses for many of the renewable energy resource types. For a list of these classes and their corresponding documentation, see the docs page `here -`_. For +`_. For example, the ``WindResource`` class can be used to open files in the WIND Toolkit bucket (including datasets like NOW-23 and Sup3rWind) and will interpolate windspeeds to the desired hub height, even if the requested @@ -337,7 +337,7 @@ Note that in this example, the ``ResourceX`` object first has to download the full ``meta`` data, build a ``KDTree``, then query the tree. This takes a lot of time for a single coordinate query. If you are querying multiple coordinates, take a look at other methods like `ResourceX.lat_lon_gid -`_ +`_ that get the ``gid`` for multiple coordinates at once. Also consider saving the ``gid`` indices you are interested in and reusing them instead of querying these methods repeatedly. @@ -355,11 +355,11 @@ the System Advisor Model (SAM). For example, try: For a full list of ``ResourceX`` classes with additional features specific to various renewable energy resource types, see the docs `here -`_. +`_. Using rex with xarray ~~~~~~~~~~~~~~~~~~~~~ -You can now use ``rex`` with ``xarray`` to open NREL datasets on the NREL HPC -and remotely outside of NREL! See the guide `here -`_ for details. +You can now use ``rex`` with ``xarray`` to open NLR datasets on the NLR HPC +and remotely outside of NLR! See the guide `here +`_ for details. diff --git a/examples/NREL_Data/example_resource_nsrdb.py b/examples/NLR_Data/example_resource_nsrdb.py similarity index 100% rename from examples/NREL_Data/example_resource_nsrdb.py rename to examples/NLR_Data/example_resource_nsrdb.py diff --git a/examples/NREL_Data/example_resource_wtk.py b/examples/NLR_Data/example_resource_wtk.py similarity index 100% rename from examples/NREL_Data/example_resource_wtk.py rename to examples/NLR_Data/example_resource_wtk.py diff --git a/examples/NREL_Data/example_resourcex.py b/examples/NLR_Data/example_resourcex.py similarity index 100% rename from examples/NREL_Data/example_resourcex.py rename to examples/NLR_Data/example_resourcex.py diff --git a/examples/NREL_Data/example_resourcex_solar.py b/examples/NLR_Data/example_resourcex_solar.py similarity index 100% rename from examples/NREL_Data/example_resourcex_solar.py rename to examples/NLR_Data/example_resourcex_solar.py diff --git a/examples/NSRDB/NSRDB.ipynb b/examples/NSRDB/NSRDB.ipynb index f81f3d722..bb6a06090 100644 --- a/examples/NSRDB/NSRDB.ipynb +++ b/examples/NSRDB/NSRDB.ipynb @@ -1,30 +1,8 @@ { - "metadata": { - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 3 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython3", - "version": "3.7.10" - }, - "orig_nbformat": 4, - "kernelspec": { - "name": "python3", - "display_name": "Python 3.7.10 64-bit ('base': conda)" - }, - "interpreter": { - "hash": "061af7d531878ddeb4696a1637b324abf07dec75946e612f93016d0c8495988a" - } - }, - "nbformat": 4, - "nbformat_minor": 2, "cells": [ { + "cell_type": "markdown", + "metadata": {}, "source": [ "# National Solar Radiation Database (NSRDB)\n", "\n", @@ -82,11 +60,11 @@ "- cloud_press_acha\n", "- Reduced ozone vertical pathlength (ozone)\n", "- Aerosol single-scatter albedo (ssa)" - ], - "cell_type": "markdown", - "metadata": {} + ] }, { + "cell_type": "markdown", + "metadata": {}, "source": [ "## Data Format\n", "\n", @@ -98,11 +76,11 @@ "integer. The scale-factor is provided in the ``psm_scale-factor`` attribute.\n", "The units for the variable data is also provided as an attribute\n", "(``psm_units``)." - ], - "cell_type": "markdown", - "metadata": {} + ] }, { + "cell_type": "markdown", + "metadata": {}, "source": [ "## Data Access Examples\n", "\n", @@ -110,9 +88,9 @@ "are provided below:\n", "\n", "The easiest way to access and extract data is by using the Resource eXtraction\n", - "tool `rex `_.\n", + "tool `rex `_.\n", "\n", - "To use `rex` with `HSDS `_ you will need\n", + "To use `rex` with `HSDS `_ you will need\n", "to install `h5pyd`:\n", "\n", "```bash\n", @@ -145,18 +123,16 @@ "You can also add the above contents to a configuration file at `~/.hscfg`\n", "\n", "NOTE: When using the `rex` resource handlers with HSDS you need to set `hsds=True`" - ], - "cell_type": "markdown", - "metadata": {} + ] }, { + "cell_type": "markdown", + "metadata": {}, "source": [ "### NSRDBX Resource Handler\n", "\n", "The [NSRDBX](https://nrel.github.io/rex/_rex/rex.resource_extraction.NSRDBX.html#rex-resource-extraction-nsrdbx) Resource handler provides a simple wrapper on `h5py` and `h5pyd` to simplify extraction of NSRDB data" - ], - "cell_type": "markdown", - "metadata": {} + ] }, { "cell_type": "code", @@ -178,11 +154,11 @@ ] }, { + "cell_type": "markdown", + "metadata": {}, "source": [ "`NSRDBX` also allows easy extraction of the nearest site to a desired (lat, lon) location:" - ], - "cell_type": "markdown", - "metadata": {} + ] }, { "cell_type": "code", @@ -193,19 +169,19 @@ "from rex import NSRDBX\n", "\n", "nsrdb_file = '/nrel/nsrdb/v3/nsrdb_2018.h5'\n", - "nrel = (39.741931, -105.169891)\n", + "nlr = (39.741931, -105.169891)\n", "with NSRDBX(nsrdb_file, hsds=True) as f:\n", - " nrel_dni = f.get_lat_lon_df('dni', nrel)\n", + " nlr_dni = f.get_lat_lon_df('dni', nlr)\n", "\n", - "display(nrel_dni)" + "display(nlr_dni)" ] }, { + "cell_type": "markdown", + "metadata": {}, "source": [ "or to extract all sites in a given region:" - ], - "cell_type": "markdown", - "metadata": {} + ] }, { "cell_type": "code", @@ -226,12 +202,12 @@ ] }, { + "cell_type": "markdown", + "metadata": {}, "source": [ "Lastly, `NSRDBX` can be used to extract all variables needed to run SAM at a\n", "given location:" - ], - "cell_type": "markdown", - "metadata": {} + ] }, { "cell_type": "code", @@ -242,19 +218,19 @@ "from rex import NSRDBX\n", "\n", "nsrdb_file = '/nrel/nsrdb/v3/nsrdb_2018.h5'\n", - "nrel = (39.741931, -105.169891)\n", + "nlr = (39.741931, -105.169891)\n", "with NSRDBX(nsrdb_file, hsds=True) as f:\n", - " nrel_sam_vars = f.get_SAM_lat_lon(nrel)\n", + " nlr_sam_vars = f.get_SAM_lat_lon(nlr)\n", "\n", - "display(nrel_sam_vars)" + "display(nlr_sam_vars)" ] }, { + "cell_type": "markdown", + "metadata": {}, "source": [ "`NSRDBX` can also be run from the command line using the [NSRDBX CLI](https://nrel.github.io/rex/rex/rex.resource_extaction.nsrdb_cli.html#nsrdbx), the CLI will automatically infer whether a file is local or being sourced via HSDS" - ], - "cell_type": "markdown", - "metadata": {} + ] }, { "cell_type": "code", @@ -262,10 +238,27 @@ "metadata": {}, "outputs": [ { - "output_type": "stream", "name": "stdout", + "output_type": "stream", "text": [ - "Usage: NSRDBX [OPTIONS] COMMAND [ARGS]...\n\n NSRDBX Command Line Interface\n\nOptions:\n --version Show the version and exit.\n -h5, --solar_h5 PATH Path to Resource .h5 file [required]\n -o, --out_dir PATH Directory to dump output files [required]\n -log, --log_file PATH Path to .log file, if None only log to stdout\n -v, --verbose Flag to turn on debug logging. Default is not\n verbose.\n\n --help Show this message and exit.\n\nCommands:\n dataset Extract a single dataset\n sam-datasets Extract all datasets needed for SAM for the nearest\n pixel(s)...\n" + "Usage: NSRDBX [OPTIONS] COMMAND [ARGS]...\n", + "\n", + " NSRDBX Command Line Interface\n", + "\n", + "Options:\n", + " --version Show the version and exit.\n", + " -h5, --solar_h5 PATH Path to Resource .h5 file [required]\n", + " -o, --out_dir PATH Directory to dump output files [required]\n", + " -log, --log_file PATH Path to .log file, if None only log to stdout\n", + " -v, --verbose Flag to turn on debug logging. Default is not\n", + " verbose.\n", + "\n", + " --help Show this message and exit.\n", + "\n", + "Commands:\n", + " dataset Extract a single dataset\n", + " sam-datasets Extract all datasets needed for SAM for the nearest\n", + " pixel(s)...\n" ] } ], @@ -280,5 +273,29 @@ "outputs": [], "source": [] } - ] + ], + "metadata": { + "interpreter": { + "hash": "061af7d531878ddeb4696a1637b324abf07dec75946e612f93016d0c8495988a" + }, + "kernelspec": { + "display_name": "Python 3.7.10 64-bit ('base': conda)", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.7.10" + }, + "orig_nbformat": 4 + }, + "nbformat": 4, + "nbformat_minor": 2 } diff --git a/examples/NSRDB/README.rst b/examples/NSRDB/README.rst index 2681014cf..c3624f047 100644 --- a/examples/NSRDB/README.rst +++ b/examples/NSRDB/README.rst @@ -3,7 +3,7 @@ National Solar Radiation Database (NSRDB) This page describes some of the unique attributes of the NSRDB. For instructions on how to access the data, see the docs page `here -`_. +`_. Description ----------- @@ -71,7 +71,7 @@ The following variables are provided by the NSRDB: NSRDB CLI --------- -The `NSRDBX `_ +The `NSRDBX `_ command line utility provides the following options and commands: .. code-block:: bash @@ -97,7 +97,7 @@ command line utility provides the following options and commands: References ---------- -For more information about the NSRDB please see the `website `_ +For more information about the NSRDB please see the `website `_ Users of the NSRDB should please cite: - `Sengupta, M., Y. Xie, A. Lopez, A. Habte, G. Maclaurin, and J. Shelby. 2018. "The National Solar Radiation Data Base (NSRDB)." Renewable and Sustainable Energy Reviews 89 (June): 51-60. `_ diff --git a/examples/README.rst b/examples/README.rst index b07f0f4e2..4ca6507d2 100644 --- a/examples/README.rst +++ b/examples/README.rst @@ -1,6 +1,6 @@ rex Examples ============= -`National Solar Radiation Database (NSRDB) `_ -`Wind Integration National Dataset (WIND) Toolkit `_ -`High Resolution Ocean Surface Wave Hindcast (US Wave) Data `_ +`National Solar Radiation Database (NSRDB) `_ +`Wind Integration National Dataset (WIND) Toolkit `_ +`High Resolution Ocean Surface Wave Hindcast (US Wave) Data `_ diff --git a/examples/US_Wave/README.rst b/examples/US_Wave/README.rst index d123c3b62..409336963 100644 --- a/examples/US_Wave/README.rst +++ b/examples/US_Wave/README.rst @@ -1,9 +1,9 @@ High Resolution Ocean Surface Wave Hindcast =========================================== -This page describes some of the unique attributes of the NREL Wave Data. For +This page describes some of the unique attributes of the NLR Wave Data. For instructions on how to access the data, see the docs page `here -`_. +`_. Description ----------- @@ -23,7 +23,7 @@ design, to offshore aquaculture production and blue economy development, to coastal communities for extreme hazards mitigation, to global shipping companies and fisherman for a better understanding of weather windows and seasonal wave climate patterns at a spatial resolution that does not exist -elsewhere. The NREL Offshore Wind group has expressed significant interest in +elsewhere. The NLR Offshore Wind group has expressed significant interest in this dataset for device structural modeling, array design, and economic modeling. @@ -95,7 +95,7 @@ The SWAN and IEC valiable names are also provide under the attributes WaveX CLI --------- -The `WaveX `_ +The `WaveX `_ command line utility provides the following options and commands: .. code-block:: bash @@ -123,7 +123,7 @@ Direct Access via h5pyd Here is an example for if you would rather access the US Wave data directly using h5pyd. However, we recommend using the ``rex`` utilities described in the -docs page `here `_. +docs page `here `_. .. code-block:: python @@ -180,8 +180,8 @@ Please cite the most relevant publication below when referencing this dataset: Disclaimer and Attribution -------------------------- -The National Renewable Energy Laboratory (“NREL”) is operated for the U.S. -Department of Energy (“DOE”) by the Alliance for Sustainable Energy, LLC +The National Laboratory of the Rockies (NLR) is operated for the U.S. +Department of Energy (“DOE”) by the Alliance for Energy Innovation, LLC ("Alliance"). Pacific Northwest National Laboratory (PNNL) is managed and operated by Battelle Memorial Institute ("Battelle") for DOE. As such the following rules apply: @@ -193,19 +193,19 @@ FROM ANY EXPRESS OR IMPLIED WARRANTY OF ANY KIND, INCLUDING BUT NOT LIMITED TO ANY IMPLIED WARRANTIES SUCH AS MERCHANTABILITY AND/OR FITNESS FOR ANY PARTICULAR PURPOSE. Furthermore, NEITHER THE UNITED STATES GOVERNMENT NOR ANY OF ITS ASSOCITED ENTITES OR CONTRACTORS INCLUDING BUT NOT LIMITED TO THE -DOE/PNNL/NREL/BATTELLE/ALLIANCE ASSUME ANY LEGAL LIABILITY OR RESPONSIBILITY +DOE/PNNL/NLR/BATTELLE/ALLIANCE ASSUME ANY LEGAL LIABILITY OR RESPONSIBILITY FOR THE ACCURACY, COMPLETENESS, OR USEFULNESS OF THE DATA, OR REPRESENT THAT ITS USE WOULD NOT INFRINGE PRIVATELY OWNED RIGHTS. NO ENDORSEMENT OF THE DATA OR ANY REPRESENTATIONS MADE IN CONNECTION WITH THE DATA IS PROVIDED. IN NO EVENT SHALL ANY PARTY BE LIABLE FOR ANY DAMAGES, INCLUDING BUT NOT LIMITED TO SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES ARISING FROM THE PROVISION OF THIS DATA; TO THE EXTENT PERMITTED BY LAW USER AGREES TO INDEMNIFY -DOE/PNNL/NREL/BATTELLE/ALLIANCE AND ITS SUBSIDIARIES, AFFILIATES, OFFICERS, +DOE/PNNL/NLR/BATTELLE/ALLIANCE AND ITS SUBSIDIARIES, AFFILIATES, OFFICERS, AGENTS, AND EMPLOYEES AGAINST ANY CLAIM OR DEMAND RELATED TO USER'S USE OF THE DATA, INCLUDING ANY REASONABLE ATTORNEYS FEES INCURRED. The user is granted the right, without any fee or cost, to use or copy the Data, provided that this entire notice appears in all copies of the Data. In the event that user engages in any scientific or technical publication -utilizing this data user agrees to credit DOE/PNNL/NREL/BATTELLE/ALLIANCE in +utilizing this data user agrees to credit DOE/PNNL/NLR/BATTELLE/ALLIANCE in any such publication consistent with respective professional practice. diff --git a/examples/WIND/README.rst b/examples/WIND/README.rst index 4fc29510d..f77be24c0 100644 --- a/examples/WIND/README.rst +++ b/examples/WIND/README.rst @@ -1,9 +1,9 @@ -NREL Wind Datasets -================== +NLR Wind Datasets +================= -This page describes some of the unique attributes of NREL wind datasets. For +This page describes some of the unique attributes of NLR wind datasets. For instructions on how to access the data, see the docs page `here -`_. +`_. WIND Toolkit v1.0.0 ------------------- @@ -41,32 +41,32 @@ provided in three sets of files: Note that the WIND Toolkit version 1.0.0 (described above) includes the 2007-2013 years of the files located at the following hsds domain: `/nrel/wtk/conus/` -The next generation WIND Toolkit version 1.2.0 includes years 2018-2020 in the same HSDS directory `/nrel/wtk/conus/` but with different meta data. +The next generation WIND Toolkit version 1.2.0 includes years 2018-2020 in the same HSDS directory `/nrel/wtk/conus/` but with different meta data. WIND Toolkit References *********************** -For more information about the WIND Toolkit please see the `website. `_ +For more information about the WIND Toolkit please see the `website. `_ Users of the WIND Toolkit should use the following citations: -- `Draxl, C., B.M. Hodge, A. Clifton, and J. McCaa. 2015. Overview and Meteorological Validation of the Wind Integration National Dataset Toolkit (Technical Report, NREL/TP-5000-61740). Golden, CO: National Renewable Energy Laboratory. `_ +- `Draxl, C., B.M. Hodge, A. Clifton, and J. McCaa. 2015. Overview and Meteorological Validation of the Wind Integration National Dataset Toolkit (Technical Report, NREL/TP-5000-61740). Golden, CO: National Renewable Energy Laboratory. `_ - `Draxl, C., B.M. Hodge, A. Clifton, and J. McCaa. 2015. "The Wind Integration National Dataset (WIND) Toolkit." Applied Energy 151: 355366. `_ -- `Lieberman-Cribbin, W., C. Draxl, and A. Clifton. 2014. Guide to Using the WIND Toolkit Validation Code (Technical Report, NREL/TP-5000-62595). Golden, CO: National Renewable Energy Laboratory. `_ -- `King, J., A. Clifton, and B.M. Hodge. 2014. Validation of Power Output for the WIND Toolkit (Technical Report, NREL/TP-5D00-61714). Golden, CO: National Renewable Energy Laboratory. `_ +- `Lieberman-Cribbin, W., C. Draxl, and A. Clifton. 2014. Guide to Using the WIND Toolkit Validation Code (Technical Report, NREL/TP-5000-62595). Golden, CO: National Renewable Energy Laboratory. `_ +- `King, J., A. Clifton, and B.M. Hodge. 2014. Validation of Power Output for the WIND Toolkit (Technical Report, NREL/TP-5D00-61714). Golden, CO: National Renewable Energy Laboratory. `_ 2023 National Offshore Wind data set (NOW-23) --------------------------------------------- - + The 2023 National Offshore Wind data set (NOW-23) is the latest wind resource data set for offshore regions in the United States, which supersedes, for its offshore component, the Wind Integration National Dataset (WIND) Toolkit v1.0.0, which was published about a decade ago and is currently one of the primary resources for stakeholders conducting wind resource assessments in the continental United States. The NOW-23 data set was produced using the Weather Research and Forecasting Model (WRF) version 4.2.1. A regional approach was used: for each offshore region, the WRF setup was selected based on validation against available observations. The WRF model was initialized with the European Centre for Medium Range Weather Forecasts 5 Reanalysis (ERA-5) data set, using a 6-hour refresh rate. The model is configured with an initial horizontal grid spacing of 6 km and an internal nested domain that refined the spatial resolution to 2 km. The model is run with 61 vertical levels, with 12 levels in the lower 300m of the atmosphere, stretching from 5 m to 45 m in height. The MYNN planetary boundary layer and surface layer schemes were used the North Atlantic, Mid Atlantic, Great Lakes, Hawaii, and North Pacific regions. On the other hand, using the YSU planetary boundary layer and MM5 surface layer schemes resulted in a better skill in the South Atlantic, Gulf of Mexico, and South Pacific regions. A more detailed description of the WRF model setup can be found in the WRF namelist files linked at the bottom of this page. For all regions, the NOW-23 data set coverage starts on January 1, 2000. For Hawaii and the North Pacific regions, NOW-23 goes until December 31, 2019. For the South Pacific region, the model goes until 31 December, 2022. For all other regions, the model covers until December 31, 2020. Outputs are available at 5 minute resolution, and for all regions we have also included output files at hourly resolution. - + The following variables are available: - + -Planetary boundary layer height (m) -Pressure at 0m, 100m, 200m, and 300m (Pa) -Temperature at 2m, 10m, 20-m intervals between 20m and 300m, 400m, and 500m (°C) @@ -104,7 +104,7 @@ Bodini, N., Optis, M., Redfern, S., Rosencrans, D., Rybchuk, A., Lundquist, J. K WINDX CLI --------- -The `WINDX `_ +The `WINDX `_ command line utility provides the following options and commands: .. code-block:: bash diff --git a/examples/fsspec/README.rst b/examples/fsspec/README.rst index de58cc5d5..cec302ef6 100644 --- a/examples/fsspec/README.rst +++ b/examples/fsspec/README.rst @@ -1,12 +1,12 @@ fsspec ====== -Filesystem utilities from ``fsspec`` enable users outside of NREL to open h5 resource files hosted on AWS S3 on your local computer. In our internal tests, this is slower than the `HSDS `_ and `zarr `_ examples, but as of ``rex`` version v0.2.92 it requires zero setup beyond installing ``rex`` and ``fsspec`` as described below. This may be a good option for people outside of NREL trying to access small to medium amounts of NREL .h5 data in applications that are not sensitive to IO performance. +Filesystem utilities from ``fsspec`` enable users outside of NLR to open h5 resource files hosted on AWS S3 on your local computer. In our internal tests, this is slower than the `HSDS `_ and `zarr `_ examples, but as of ``rex`` version v0.2.92 it requires zero setup beyond installing ``rex`` and ``fsspec`` as described below. This may be a good option for people outside of NLR trying to access small to medium amounts of NLR .h5 data in applications that are not sensitive to IO performance. For more info on ``fsspec``, read the docs `here `_ -You can now use ``fsspec`` with ``xarray`` to open NREL datasets remotely! See the guide -`here `_ for details. +You can now use ``fsspec`` with ``xarray`` to open NLR datasets remotely! See the guide +`here `_ for details. Code Example @@ -15,7 +15,7 @@ Code Example To open an .h5 file hosted on AWS S3, simply use a path to an S3 resource with any of the ``rex`` file handlers: - Change ``fp`` to your desired AWS .h5 resource paths (find the s3 paths on `OEDI `_ or with the `AWS CLI `_). -- Running this example on a laptop, it takes ~14 seconds to read the meta data, and another ~14 seconds to read the GHI timeseries. This may be faster when running on AWS services in the same region hosting the .h5 file. It is much slower when running on the NREL VPN. +- Running this example on a laptop, it takes ~14 seconds to read the meta data, and another ~14 seconds to read the GHI timeseries. This may be faster when running on AWS services in the same region hosting the .h5 file. It is much slower when running on the NLR VPN. .. code-block:: python diff --git a/examples/xarray/README.rst b/examples/xarray/README.rst index f117dffeb..f07e0a0f6 100644 --- a/examples/xarray/README.rst +++ b/examples/xarray/README.rst @@ -1,7 +1,7 @@ Using Xarray ============ -As of rex ``v0.2.99``, you can read `NREL data files `_ +As of rex ``v0.2.99``, you can read `NLR data files `_ using the popular open-source library `xarray `_. You can learn more about the benefits of using ``xarray`` `here `_. @@ -11,7 +11,7 @@ Basic Usage Opening a single file ^^^^^^^^^^^^^^^^^^^^^ -To read in an NREL data file, simply ``pip install NREL-rex`` and then supply ``engine="rex"`` to the xarray +To read in an NLR data file, simply ``pip install NLR-rex`` and then supply ``engine="rex"`` to the xarray `open_dataset `_ function: @@ -217,7 +217,7 @@ For more information on using dask with xarray, see `this `_ +access to the NLR HPC, this guide is for you. See instructions +`here `_ on where to find these file paths on S3 and HSDS. Files on S3 @@ -353,7 +353,7 @@ Files on HSDS ^^^^^^^^^^^^^ A more performant option is to use HSDS (see -`this guide `_ +`this guide `_ on setting up your own local hsds server): .. code-block:: python @@ -606,4 +606,4 @@ Case Studies Once you have opened the file with ``xarray``, you can take full advantage of the library's powerful features to perform data analysis tasks. Check out some examples of this below: -- `Daily Aggregations using Xarray `_ +- `Daily Aggregations using Xarray `_ diff --git a/examples/xarray/daily_agg.ipynb b/examples/xarray/daily_agg.ipynb index bfe6763b1..5f6bf79bf 100644 --- a/examples/xarray/daily_agg.ipynb +++ b/examples/xarray/daily_agg.ipynb @@ -12,7 +12,7 @@ "\n", "Requirements:\n", "\n", - "- Install rex: `pip install NREL-rex --upgrade`\n", + "- Install rex: `pip install NLR-rex --upgrade`\n", "- Install dask-distributed: `pip install distributed --upgrade`\n", "- Initialize a dask client for parallel processing (see below)\n", "- Set dask compute chunks appropriately (see below)\n", @@ -21,7 +21,7 @@ "\n", "- Performance is really sensitive (perhaps unsurprisingly) to the dask compute chunk size you specify. The h5 chunks on disk are way too small and result in too many operations, adding too much overhead to performance. You can get worse performance with xarray + dask vs. a serial process when working if your compute chunks are too small. Here, we find that `(8760, 50000)` is a good compute chunk size. Note that the storage chunk shape on disk is `(2000, 500)`.\n", "\n", - "- The `memory_limit` argument is the limit *per worker*. If you are memory constrained, try using less workers and setting a lower memory limit and reducing the compute chunk size. Here, we're processing on a large NREL HPC node with 104 cores and 256 GB of memory.\n", + "- The `memory_limit` argument is the limit *per worker*. If you are memory constrained, try using less workers and setting a lower memory limit and reducing the compute chunk size. Here, we're processing on a large NLR HPC node with 104 cores and 256 GB of memory.\n", "\n", "- Setting up the full aggregate dataset lazily and then doing one `.compute()` call tended to break things. Smaller multiple compute calls seem to work better. \n", "\n", @@ -753,7 +753,7 @@ }, { "cell_type": "code", - "execution_count": 8, + "execution_count": null, "id": "c19765fd-2b4c-4fc5-a34e-23a2ae5f7bc7", "metadata": {}, "outputs": [ @@ -768,7 +768,7 @@ ], "source": [ "%%time\n", - "# reshape NREL data format from (time, gid) to (time, lat, lon) and set attrs\n", + "# reshape NLR data format from (time, gid) to (time, lat, lon) and set attrs\n", "\n", "ds_out = ds_out.set_index(gid=['latitude', 'longitude'])\n", "ds_out = ds_out.unstack('gid')\n", diff --git a/examples/zarr/README.rst b/examples/zarr/README.rst index fa94ec4a3..835a8ada2 100644 --- a/examples/zarr/README.rst +++ b/examples/zarr/README.rst @@ -1,7 +1,7 @@ Zarr ==== -You can use `Zarr `_ to open NREL h5 resource files hosted on AWS S3 on your local computer. In our internal tests, this has comparable performance to reading data with an `HSDS `_ local server. The benefit of this approach is that you don't need to run an HSDS server, the drawback is that you need to handle a large meta data file for every .h5 file you access on S3. +You can use `Zarr `_ to open NLR h5 resource files hosted on AWS S3 on your local computer. In our internal tests, this has comparable performance to reading data with an `HSDS `_ local server. The benefit of this approach is that you don't need to run an HSDS server, the drawback is that you need to handle a large meta data file for every .h5 file you access on S3. We currently do not have this integrated into the ``rex`` resource handler classes and are evaluating whether or not this is worthwhile. diff --git a/pyproject.toml b/pyproject.toml index 14a4c89de..ff4830f26 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -6,20 +6,20 @@ requires = [ build-backend = 'setuptools.build_meta' [project] -name="NREL-rex" +name="NLR-rex" dynamic = ["version"] -description = "National Renewable Energy Laboratory's (NREL's) REsource eXtraction tool: rex" +description = "National Laboratory of the Rockies' (NLR's) REsource eXtraction tool: rex" readme = {file = "README.rst", content-type = "text/x-rst"} authors = [ - {name = "Michael Rossol", email = "michael.rossol@nrel.gov"}, + {name = "Michael Rossol", email = "michael.rossol@nlr.gov"}, ] maintainers = [ - {name = "Grant Buster", email = "gbuster@nrel.gov"}, - {name = "Paul Pinchuk", email = "ppinchuk@nrel.gov"}, - {name = "Brandon Benton", email = "brandon.benton@nrel.gov"}, + {name = "Grant Buster", email = "gbuster@nlr.gov"}, + {name = "Paul Pinchuk", email = "ppinchuk@nlr.gov"}, + {name = "Brandon Benton", email = "brandon.benton@nlr.gov"}, ] license = "BSD-3-Clause" -keywords = ["rex", "NREL"] +keywords = ["rex", "NLR"] requires-python = ">= 3.9" classifiers=[ "Development Status :: 4 - Beta", @@ -72,8 +72,8 @@ build = [ [project.urls] homepage = "https://www2.nrel.gov/gis/renewable-energy-potential" -documentation = "https://nrel.github.io/rex/" -repository = "https://github.com/NREL/rex" +documentation = "https://natlabrockies.github.io/rex/" +repository = "https://github.com/NatLabRockies/rex" [project.scripts] rex = "rex.resource_extraction.resource_cli:main" diff --git a/rex/__init__.py b/rex/__init__.py index 85d26031e..f4deb5a09 100644 --- a/rex/__init__.py +++ b/rex/__init__.py @@ -41,7 +41,7 @@ from rex.version import __version__ __author__ = """Michael Rossol""" -__email__ = "michael.rossol@nrel.gov" +__email__ = "michael.rossol@nlr.gov" REXDIR = os.path.dirname(os.path.realpath(__file__)) TESTDATADIR = os.path.join(os.path.dirname(REXDIR), 'tests', 'data') diff --git a/rex/external/rexarray.py b/rex/external/rexarray.py index 84806e294..6f11969ac 100644 --- a/rex/external/rexarray.py +++ b/rex/external/rexarray.py @@ -229,7 +229,7 @@ def get_array(self, needs_lock=True): class RexStore(AbstractDataStore): - """Store for reading NREL-rex style data via h5py""" + """Store for reading NLR-rex style data via h5py""" __slots__ = ("_filename", "_group", "manager", "mode", "is_remote", "lock", "_ds_shape", "hsds") @@ -569,15 +569,15 @@ def close(self, **kwargs): class RexBackendEntrypoint(BackendEntrypoint): - """Backend for NREL rex-style files + """Backend for NLR rex-style files See Also -------- backends.RexStore """ - description = "Open NREL-rex style HDF5 files in Xarray" - url = ("https://nrel.github.io/rex/_autosummary/" + description = "Open NLR-rex style HDF5 files in Xarray" + url = ("https://natlabrockies.github.io/rex/_autosummary/" "rex.external.rexarray.RexBackendEntrypoint.html") open_dataset_parameters = ["filename_or_obj", "drop_variables", "group", "lock", "h5_driver", "h5_driver_kwds", "hsds", @@ -825,7 +825,7 @@ def _load_rex_dataset(store, drop_variables): def open_mfdataset_hsds(paths, **kwargs): - """Open multiple NREL spatiotemporal datasets stored in cloud-optimized + """Open multiple NLR spatiotemporal datasets stored in cloud-optimized HSDS paths into an xarray dataset object. Parameters @@ -833,8 +833,9 @@ def open_mfdataset_hsds(paths, **kwargs): paths : str | sequence of str Either a string glob in the form "/path/to/my/hsds/files/*.h5" or an explicit list of HSDS file paths to open. HSDS filepaths - typically start with "/nrel/*" and can be found using h5pyd. See `this - instruction set `_ + typically start with "/nrel/*" and can be found using h5pyd. See + `this instruction set + `_ for more details on HSDS files. **kwargs Keyword-value argument pairs to pass to :func:`open_mfdataset`. diff --git a/rex/multi_time_resource.py b/rex/multi_time_resource.py index be8b94f0d..212ab0b2c 100644 --- a/rex/multi_time_resource.py +++ b/rex/multi_time_resource.py @@ -235,7 +235,7 @@ def _get_hsds_file_paths(h5_path, hsds_kwargs=None): except Exception as e: msg = (f'Tried to open hsds file path: "{h5_path}" with ' 'h5pyd but could not import, try ' - '`pip install NREL-rex[hsds]`') + '`pip install NLR-rex[hsds]`') logger.error(msg) raise ImportError(msg) from e diff --git a/rex/resource.py b/rex/resource.py index 3e19182f5..25db34a93 100644 --- a/rex/resource.py +++ b/rex/resource.py @@ -512,9 +512,10 @@ def _extract_ds_slice(self, ds_slice): msg += (' Detected OSError/IOError from h5pyd. ' 'This is not a rex error and please do not submit ' 'a bug report. this is likely due to HSDS server ' - 'limits, especially if you are using an NREL ' + 'limits, especially if you are using an NLR ' 'developer API key. For more details, see: ' - 'https://nrel.github.io/rex/misc/examples.hsds.html') + 'https://natlabrockies.github.io/rex/misc/' + 'examples.hsds.html') logger.error(msg) raise ResourceRuntimeError(msg) from e @@ -1110,7 +1111,7 @@ def open_dataset(self, ds_name): @classmethod def open_file(cls, file_path, mode='r', hsds=False, hsds_kwargs=None): - """Open a filepath to an h5, s3, or hsds nrel resource file with the + """Open a filepath to an h5, s3, or hsds NLR resource file with the appropriate python object. Parameters diff --git a/rex/resource_extraction/README.rst b/rex/resource_extraction/README.rst index db207bee8..22449ca34 100644 --- a/rex/resource_extraction/README.rst +++ b/rex/resource_extraction/README.rst @@ -17,7 +17,7 @@ Command Line Interfaces (CLIs) They extraction handlers are also available from the command line: -- `rex `_ -- `NSRDBX `_ -- `WINDX `_ -- `MultiYearX `_ +- `rex `_ +- `NSRDBX `_ +- `WINDX `_ +- `MultiYearX `_ diff --git a/rex/resource_extraction/US_wave_cli.py b/rex/resource_extraction/US_wave_cli.py index 3888c5d8a..05ab6754a 100644 --- a/rex/resource_extraction/US_wave_cli.py +++ b/rex/resource_extraction/US_wave_cli.py @@ -40,7 +40,7 @@ @click.option('--buoy', '-b', is_flag=True, help="Boolean flag to use access virtual buoy data") @click.option('--eagle', '-hpc', is_flag=True, - help="Boolean flag to use access data on NRELs HPC vs. via HSDS") + help="Boolean flag to use access data on NLRs HPC vs. via HSDS") @click.option('--log_file', '-log', default=None, type=click.Path(), show_default=True, help='Path to .log file, if None only log to stdout') diff --git a/rex/sam_resource.py b/rex/sam_resource.py index dc315bab9..386514fc2 100644 --- a/rex/sam_resource.py +++ b/rex/sam_resource.py @@ -131,7 +131,7 @@ class SAMResource: 'surface_pressure': (300, 1100)} # valid data ranges for wind resource in SAM based on the cpp file: - # https://github.com/NREL/ssc/blob/develop/shared/lib_windfile.cpp + # https://github.com/NatLabRockies/ssc/blob/develop/shared/lib_windfile.cpp WIND_DATA_RANGES = {'windspeed': (0, 120), 'winddirection': (0, 360), 'pressure': (0.5, 1.099), diff --git a/rex/utilities/solar_position.py b/rex/utilities/solar_position.py index 78b0565c8..d6ec8e7cb 100644 --- a/rex/utilities/solar_position.py +++ b/rex/utilities/solar_position.py @@ -10,7 +10,7 @@ class SolarPosition: """ Class to compute solar position for time(s) and site(s) Based off of SAM Solar Position Function: - https://github.com/NREL/ssc/blob/develop/shared/lib_irradproc.cpp + https://github.com/NatLabRockies/ssc/blob/develop/shared/lib_irradproc.cpp """ def __init__(self, time_index, lat_lon): """ diff --git a/rex/utilities/utilities.py b/rex/utilities/utilities.py index a5cc8522b..7506d513f 100644 --- a/rex/utilities/utilities.py +++ b/rex/utilities/utilities.py @@ -1153,7 +1153,7 @@ def import_io_module_or_fail(module_name, file_path=None): maybe_fn = "" if file_path is None else f': "{file_path}"' maybe_help_text = "" if module_name == "h5pyd": - maybe_help_text = ", try `pip install NREL-rex[hsds]`" + maybe_help_text = ", try `pip install NLR-rex[hsds]`" try: # pylint: disable=import-outside-toplevel module = importlib.import_module(module_name) diff --git a/tests/h5pyd_tests.py b/tests/h5pyd_tests.py index f2358c686..96a2c8d44 100644 --- a/tests/h5pyd_tests.py +++ b/tests/h5pyd_tests.py @@ -1,6 +1,6 @@ # -*- coding: utf-8 -*- """ -pytests for accessing NREL .h5 files on the cloud via hsds/h5pyd +pytests for accessing NLR .h5 files on the cloud via hsds/h5pyd Note that this file cannot be named "test_*.py" because it is run with a separate github action that sets up a local hsds server before running the diff --git a/tests/test_s3.py b/tests/test_s3.py index 7f457d58d..4c2af557f 100644 --- a/tests/test_s3.py +++ b/tests/test_s3.py @@ -1,6 +1,6 @@ # -*- coding: utf-8 -*- """ -pytests for accessing NREL .h5 files on the cloud via hsds/h5pyd +pytests for accessing NLR .h5 files on the cloud via hsds/h5pyd """ import numpy as np import xarray as xr From a0d4d7c77a0b3874098c4cd1abf9a1d9b99e1f3b Mon Sep 17 00:00:00 2001 From: ppinchuk Date: Wed, 21 Jan 2026 19:33:19 -0700 Subject: [PATCH 2/8] Bump version --- rex/version.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/rex/version.py b/rex/version.py index d32596b8a..2f6b86e37 100644 --- a/rex/version.py +++ b/rex/version.py @@ -1,3 +1,3 @@ """rex Version number""" -__version__ = "0.4.3" +__version__ = "0.5.0" From ada4ff38226ed28346ca068d7b6841adc0892015 Mon Sep 17 00:00:00 2001 From: ppinchuk Date: Wed, 21 Jan 2026 19:35:17 -0700 Subject: [PATCH 3/8] Few more updates --- docs/source/conf.py | 2 +- examples/NLR_Data/README.rst | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/docs/source/conf.py b/docs/source/conf.py index 9ab7c74b9..d72f0968e 100644 --- a/docs/source/conf.py +++ b/docs/source/conf.py @@ -114,7 +114,7 @@ html_context = { "display_github": True, - "github_user": "nrel", + "github_user": "natlabrockies", "github_repo": "rex", "github_version": "main", "conf_py_path": "/docs/source/", diff --git a/examples/NLR_Data/README.rst b/examples/NLR_Data/README.rst index 8a5e3f2f5..fe3dc7304 100644 --- a/examples/NLR_Data/README.rst +++ b/examples/NLR_Data/README.rst @@ -48,7 +48,7 @@ Many NLR tools have been developed based on the assumption that the data format will follow a pseudo-standard definition. Data creators can adhere to the following specifications for seamless integration into `SAM `_, -`reV `_, +`reV `_, `rex `_, and the data download APIs for `solar `_, @@ -216,7 +216,7 @@ Data Location - NLR Users If you are at NLR, the easiest way to access this data is on the NLR high-performance computing system (HPC). Go to the `NLR HPC website -`_ and request access via an NLR project with an +`_ and request access via an NLR project with an HPC allocation. Once you are on the HPC, you can find that datasets in the ``/datasets/`` directory (e.g., run the linux command ``$ ls /datasets/``). Go through the directory tree until you find the .h5 files you are looking for. From d081fb722f0dbc4a58360a64559fd3f2b832d786 Mon Sep 17 00:00:00 2001 From: ppinchuk Date: Wed, 21 Jan 2026 19:38:18 -0700 Subject: [PATCH 4/8] update GHA --- .github/workflows/pr_revx_tests.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/pr_revx_tests.yml b/.github/workflows/pr_revx_tests.yml index 73ae6832d..f7d91fe56 100644 --- a/.github/workflows/pr_revx_tests.yml +++ b/.github/workflows/pr_revx_tests.yml @@ -13,7 +13,7 @@ jobs: - name: checkout reVX uses: actions/checkout@v2 with: - repository: nrel/reVX + repository: NatLabRockies/reVX fetch-depth: 1 path: reVX - name: Set up Python From 99627ed541d9762dc1aeab1f64d800b5d3ef8976 Mon Sep 17 00:00:00 2001 From: ppinchuk Date: Wed, 21 Jan 2026 19:48:47 -0700 Subject: [PATCH 5/8] No pandas 3 yest --- pyproject.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pyproject.toml b/pyproject.toml index ff4830f26..d820411a0 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -38,7 +38,7 @@ dependencies = [ "h5py>=3.13.0", "h5pyd>=0.18.0", "numpy>=2.0.2", - "pandas>=2.2.3", + "pandas>=2.2.3,<3", "packaging>=24.2", "psutil>=7.0.0", "PyYAML>=6.0.2", From 0905081327535131d14b8adc106a187a20a93c07 Mon Sep 17 00:00:00 2001 From: ppinchuk Date: Wed, 21 Jan 2026 19:52:26 -0700 Subject: [PATCH 6/8] update path --- tests/h5pyd_tests.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/h5pyd_tests.py b/tests/h5pyd_tests.py index 96a2c8d44..4b647dc48 100644 --- a/tests/h5pyd_tests.py +++ b/tests/h5pyd_tests.py @@ -27,7 +27,7 @@ def test_file_list(): def test_nsrdb(): """Test retrieving NSRDB data""" - fp = '/nrel/nsrdb/v3/nsrdb_2020.h5' + fp = '/nrel/nsrdb/GOES/conus/v4.0.0/nsrdb_conus_2020.h5' with NSRDB(fp, hsds=True) as res: dsets = res.dsets ghi = res['ghi', :, int(1e5)] From dcba9d8dcea4ff714adb05853f7037e4d56777e3 Mon Sep 17 00:00:00 2001 From: ppinchuk Date: Wed, 21 Jan 2026 20:08:28 -0700 Subject: [PATCH 7/8] Fix test --- tests/test_multi_time_resource.py | 2 +- tests/test_multi_year_resource.py | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/tests/test_multi_time_resource.py b/tests/test_multi_time_resource.py index d94474f0c..2e1ba5fce 100644 --- a/tests/test_multi_time_resource.py +++ b/tests/test_multi_time_resource.py @@ -416,7 +416,7 @@ def test_map_hsds_files(): Test map hsds files method """ files = [f'/nrel/US_wave/West_Coast/West_Coast_wave_{year}.h5' - for year in range(1979, 2011)] + for year in range(1979, 2021)] hsds_kwargs = {'endpoint': 'https://developer.nrel.gov/api/hsds', 'api_key': 'oHP7dGu4VZeg4rVo8PZyb5SVmYigedRHxi3OfiqI'} path = '/nrel/US_wave/West_Coast/West_Coast_wave_*.h5' diff --git a/tests/test_multi_year_resource.py b/tests/test_multi_year_resource.py index 0376a846d..57e730b55 100644 --- a/tests/test_multi_year_resource.py +++ b/tests/test_multi_year_resource.py @@ -300,7 +300,7 @@ def test_map_hsds_files(): Test map hsds files method """ files = [f'/nrel/US_wave/West_Coast/West_Coast_wave_{year}.h5' - for year in range(1979, 2011)] + for year in range(1979, 2021)] hsds_kwargs = {'endpoint': 'https://developer.nrel.gov/api/hsds', 'api_key': 'oHP7dGu4VZeg4rVo8PZyb5SVmYigedRHxi3OfiqI'} path = '/nrel/US_wave/West_Coast/West_Coast_wave_*.h5' From 8549b98c62e65ab88d1830104767c244041ab977 Mon Sep 17 00:00:00 2001 From: ppinchuk Date: Wed, 21 Jan 2026 20:22:58 -0700 Subject: [PATCH 8/8] Update link --- examples/US_Wave/README.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/examples/US_Wave/README.rst b/examples/US_Wave/README.rst index 409336963..e9361bfd3 100644 --- a/examples/US_Wave/README.rst +++ b/examples/US_Wave/README.rst @@ -3,7 +3,7 @@ High Resolution Ocean Surface Wave Hindcast This page describes some of the unique attributes of the NLR Wave Data. For instructions on how to access the data, see the docs page `here -`_. +`_. Description -----------