From ff846cbbc1bc3d568560de491cc56d8eb75366c9 Mon Sep 17 00:00:00 2001 From: AbhineetGupta Date: Fri, 12 Jan 2024 10:00:53 -0700 Subject: [PATCH] Testing for readthedocs build of v2.9.0 documentation --- .readthedocs.yaml | 7 ++-- docs/conf.py | 3 +- docs/index.rst | 44 +++++++++++++------ docs/requirements.txt | 1 - docs/source/figures/ROSCOFramework.svg | 4 ++ docs/source/figures/ROSCO_toolbox.svg | 58 ++++++++++++++++---------- docs/source/standard_use.rst | 29 +++++++++++++ pyproject.toml | 2 +- 8 files changed, 108 insertions(+), 40 deletions(-) create mode 100644 docs/source/figures/ROSCOFramework.svg diff --git a/.readthedocs.yaml b/.readthedocs.yaml index 66971b94..c43aa44a 100644 --- a/.readthedocs.yaml +++ b/.readthedocs.yaml @@ -9,10 +9,9 @@ version: 2 build: os: ubuntu-22.04 tools: - python: "3.8" - # nodejs: "18" - # rust: "1.64" - # golang: "1.19" + python: "3.10" + conda: + environment: environment.yml # Build documentation in the docs/ directory with Sphinx sphinx: diff --git a/docs/conf.py b/docs/conf.py index 27397c02..952f6936 100644 --- a/docs/conf.py +++ b/docs/conf.py @@ -52,6 +52,7 @@ def __getattr__(cls, name): "sphinx.ext.intersphinx", "sphinx.ext.graphviz", "sphinx.ext.autosectionlabel", + "sphinx_rtd_theme", # "sphinxcontrib.bibtex", ] @@ -84,7 +85,7 @@ def __getattr__(cls, name): # The theme to use for HTML and HTML Help pages. See the documentation for # a list of builtin themes. # -html_theme = "furo" +html_theme = "sphinx_rtd_theme" # Add any paths that contain custom static files (such as style sheets) here, # relative to this directory. They are copied after the builtin static files, diff --git a/docs/index.rst b/docs/index.rst index 1e60107e..8e0de255 100644 --- a/docs/index.rst +++ b/docs/index.rst @@ -3,6 +3,38 @@ ROSCO Documentation :Version: |release| :Date: |today| +NREL's "Reference Open Source Controller" (ROSCO) is a reference controller framework that facilitates design and implementation of wind turbine and wind farm controllers for fixed and floating offshore wind turbines. + +ROSCO frameworks includes a large set of available controllers and advanced functionalities that can be combined in a modular fashion based on the intended application and can be easily adapted to a wide variety wind turbines. +For example, ROSCO can be used to design turbine yaw controller along with an individual blade pitch controller with floating platform feedback for an offshore turbine while simulating a pitch actuator fault and running a user-defined torque controller. + +ROSCO provides a single framework for designing controllers for onshore and offshore turbines of varying sizes. +It can be used to run representative dynamic simulations using OpenFAST. +This helps researchers perform 'apples-to-apples' comparison of controller capabilities across turbines. +Control engineers can also design their own controllers and compare them with reference controller design using ROSCO for existing and new turbines. +ROSCO has been used to provide reference controllers for many recent reference turbines including the `IEA 3.4-MW `_ , `IEA 10-MW `_ , `IEA 15-MW `_ and the upcoming `IEA 22-MW `_ turbines. + +The ROSCO framework also includes a python based toolbox that primarily enables tuning the controllers. +The tuning process is extemely simple where only a tuning parameters need to be provided. +It is not necessary to run aeroelastic simulations or provide linearized state-space models to tune the controller to tune the controllers. +The toolbox has other capabilities like simple 1-DOF turbine simulations for quick controller capability verifications, linear model analysis, and parsing of input and output files. + +ROSCO can be found in this `github repository `_. + +**Documentation Directory** + +.. toctree:: + :maxdepth: 3 + :numbered: + + source/standard_use.rst + source/install.rst + source/rosco_toolbox.rst + source/rosco.rst + source/api_change.rst + source/toolbox_input.rst + source/ROSCO_instructions_for_Bladed.rst + NREL's Reference OpenSource Controller (ROSCO) tool-set for wind turbine applications designed to ease controller implementation for the wind turbine researcher. The purpose of these documents is to provide information for the use of the tool-set. :numref:`fig-RT` shows the general workflow for the ROSCO tool-chain. with OpenFAST @@ -67,15 +99,3 @@ distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. - -.. toctree:: - :maxdepth: 3 - :numbered: - - source/install.rst - source/standard_use.rst - source/rosco_toolbox.rst - source/rosco.rst - source/api_change.rst - source/toolbox_input.rst - source/ROSCO_instructions_for_Bladed.rst diff --git a/docs/requirements.txt b/docs/requirements.txt index 6ff6c653..5bb77330 100644 --- a/docs/requirements.txt +++ b/docs/requirements.txt @@ -1,4 +1,3 @@ # File: docs/requirements.txt sphinx>4.0.0 -furo \ No newline at end of file diff --git a/docs/source/figures/ROSCOFramework.svg b/docs/source/figures/ROSCOFramework.svg new file mode 100644 index 00000000..9ef35b0c --- /dev/null +++ b/docs/source/figures/ROSCOFramework.svg @@ -0,0 +1,4 @@ + + + +
Tuning.yaml
Tuning.yaml
ROSCO
Toolbox
ROSCO...
OpenFAST
Model
OpenFAST...
DISCON.IN
DISCON.IN
ROSCO
Controller
ROSCO...
OpenFAST
OpenFAST
Text is not SVG - cannot display
\ No newline at end of file diff --git a/docs/source/figures/ROSCO_toolbox.svg b/docs/source/figures/ROSCO_toolbox.svg index 8bbc5587..2ba1daf5 100644 --- a/docs/source/figures/ROSCO_toolbox.svg +++ b/docs/source/figures/ROSCO_toolbox.svg @@ -1,13 +1,5 @@ image/svg+xmlROSCOControllerROSCO`_ demonstrate the functionality of the ROSCO toolbox and controller. diff --git a/pyproject.toml b/pyproject.toml index ed0cf689..cfc4f5cf 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -50,7 +50,7 @@ dependencies = [ "pyYAML", "pyzmq", "treon", - "wisdem", + #"wisdem", ] # List additional groups of dependencies here (e.g. development