Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

B/update wisdem #64

Closed
wants to merge 5 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion WISDEM/.github/workflows/CI_WISDEM.yml
Original file line number Diff line number Diff line change
Expand Up @@ -65,4 +65,4 @@ jobs:
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: |
coveralls
coveralls --service=github
9 changes: 2 additions & 7 deletions WISDEM/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,14 +9,9 @@ The Wind-Plant Integrated System Design and Engineering Model (WISDEM®) is a

Author: [NREL WISDEM Team](mailto:[email protected])


## Version

This software is a version 3.0.0.

## Documentation

See local documentation in the `docs`-directory or access the online version at <https://wisdem.readthedocs.io/en/latest/>
See local documentation in the `docs`-directory or access the online version at <https://wisdem.readthedocs.io/en/master/>

## Packages

Expand Down Expand Up @@ -59,7 +54,7 @@ The installation instructions below use the environment name, "wisdem-env," but
conda remove --force wisdem
conda install compilers # (Mac / Linux only)
conda install m2w64-toolchain libpython # (Windows only)
pip install simpy marmot-agents
pip install simpy marmot-agents
git clone https://github.com/WISDEM/WISDEM.git
cd WISDEM
git checkout develop
Expand Down
5 changes: 1 addition & 4 deletions WISDEM/docs/index.rst
Original file line number Diff line number Diff line change
Expand Up @@ -4,9 +4,6 @@
WISDEM Documentation
====================

.. warning::
This documentation is currently under development and is only valid for the develop branch of WISDEM. There is no guarantee of applicability for any version of WISDEM.

The Wind-plant Integrated System Design and Engineering Model (WISDEM) includes integrated assemblies for the assessment of system behavior of wind turbines and plants. These assemblies can be used as is, but a richer use-case involves treating the assemblies as temples, modifying the source code and `OpenMDAO <https://openmdao.org/>`_ problems to answer specific research questions. For example, any variable in these assemblies can be a design variable, an objective, or part of a constraint in a multidisciplinary optimization. WISDEM should therefore be viewed a toolbox of analysis tools and the basic structure for connecting tools across subsystems and fidelity levels, which can be extended in a multitude of directions according to the user’s needs.

License
Expand All @@ -20,7 +17,7 @@ This software is provided as-is and without warranty. There are no guarantees it
Important Links
---------------

- `Source Code Repository <https://github.com/WISDEM/WISDEM/tree/develop>`_
- `Source Code Repository <https://github.com/WISDEM/WISDEM>`_
- `OpenMDAO <https://openmdao.org/>`_

Feedback
Expand Down
8 changes: 6 additions & 2 deletions WISDEM/docs/inputs/analysis_schema.rst
Original file line number Diff line number Diff line change
Expand Up @@ -90,7 +90,10 @@ Blade twist as a design variable by adding or subtracting radians from the initi
*Default* = False

:code:`inverse` : Boolean
Words TODO?
When set to True, the twist is defined inverting the
blade-element momentum equations to achieve a desired margin to stall,
which is defined among the constraints.
:code:`flag` and :code:`inverse` cannot be simultaneously be set to True

*Default* = False

Expand Down Expand Up @@ -172,7 +175,8 @@ Adjust airfoil positions along the blade span.

:code:`af_start` : Integer
Index of airfoil where the optimization can start shifting airfoil
position. The airfoil at blade tip is always locked.
position. The airfoil at blade tip is always locked. It is advised
to keep the airfoils close to blade root locked.

*Default* = 4

Expand Down
4 changes: 2 additions & 2 deletions WISDEM/docs/wisdem/floatingse/execution.rst
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ environment, and the operational constraints, are required to evaluate
the total mass, cost, and code compliance. These variables are also
included in the `WindIO <https://windio.readthedocs.io/en/latest/>`_
effort or found in the `floating-specific examples
<https://github.com/WISDEM/WISDEM/tree/develop/examples/floating>`_
<https://github.com/WISDEM/WISDEM/tree/master/examples/09_floating>`_
for standalone execution.


Expand Down Expand Up @@ -71,7 +71,7 @@ Examples
--------

As mentioned previously `floating-specific examples
<https://github.com/WISDEM/WISDEM/tree/develop/examples/floating>`_
<https://github.com/WISDEM/WISDEM/tree/master/examples/09_floating>`_
examples are provided. These files are encoded with default starting
configurations (from :cite:`OC3` and :cite:`OC4`, respectively), with
some modifications. There is an additional spar example that also has
Expand Down
2 changes: 1 addition & 1 deletion WISDEM/docs/wisdem/floatingse/geometry.rst
Original file line number Diff line number Diff line change
Expand Up @@ -51,7 +51,7 @@ ones shown.
Inputs: WindIO
--------------

The parameterization of the input variables in the Geometry YAML file into *FloatingSE* is documented within the larger `WindIO <https://windio.readthedocs.io/en/latest/>`_ effort. When running *FloatingSE* directly as a standalone with a python script, users are encouraged to review the `floating-specific examples <https://github.com/WISDEM/WISDEM/tree/develop/examples/floating>`_ for syntax.
The parameterization of the input variables in the Geometry YAML file into *FloatingSE* is documented within the larger `WindIO <https://windio.readthedocs.io/en/latest/>`_ effort. When running *FloatingSE* directly as a standalone with a python script, users are encouraged to review the `floating-specific examples <https://github.com/WISDEM/WISDEM/tree/master/examples/09_floating>`_ for syntax.

Tapered Cylinders (Vertical Frustums)
-------------------------------------
Expand Down
30 changes: 15 additions & 15 deletions WISDEM/environment.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,27 +5,27 @@ channels:
- defaults

dependencies:
- python
- pytest
- pytest-cov
- coveralls
- openmdao
- cython
- git
- jsonschema
- ruamel_yaml
- pyyaml
- make
- xlrd
- matplotlib
- numpy
- openmdao
- openpyxl
- cython
- swig
- pandas
- setuptools
- git
- numpy
- scipy
- matplotlib
- pyside2
- pip
- pyside2
- pytest
- pytest-cov
- python
- pyyaml
- ruamel_yaml
- scipy
- setuptools
- sortedcontainers
- swig
- pip:
- simpy
- marmot-agents
Expand Down
2 changes: 1 addition & 1 deletion WISDEM/examples/02_reference_turbines/IEA-15-240-RWT.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -347,7 +347,7 @@ components:
spinner_material: glass_uni
nacelle:
drivetrain:
uptilt_angle: 0.10471975511965977 # 6 deg
uptilt: 0.10471975511965977 # 6 deg
distance_tt_hub: 5.614
overhang: 12.0313
drag_coefficient: 0.5
Expand Down
2 changes: 1 addition & 1 deletion WISDEM/examples/02_reference_turbines/IEA-3p4-130-RWT.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -280,7 +280,7 @@ components:
nacelle:
drivetrain:
diameter: 3.0
uptilt_angle: 0.08726 # 5 deg
uptilt: 0.08726 # 5 deg
distance_tt_hub: 2.
distance_hub2mb: 1.912
distance_mb2mb: 0.368
Expand Down
26 changes: 17 additions & 9 deletions WISDEM/examples/02_reference_turbines/analysis_options.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -144,9 +144,9 @@ constraints:
flag: False
margin: 1.4175
rail_transport:
flag: True
flag: False
8_axle: False
4_axle: True
4_axle: False
stall:
flag: False # Constraint on minimum stall margin
margin: 0.05233 # Value of minimum stall margin in [rad]
Expand Down Expand Up @@ -216,13 +216,21 @@ constraints:
flag: False

driver:
tol: 1.e-2 # Optimality tolerance
max_major_iter: 10 # Maximum number of major design iterations (SNOPT)
max_minor_iter: 100 # Maximum number of minor design iterations (SNOPT)
max_iter: 100 # Maximum number of iterations (SLSQP)
solver: SLSQP # Optimization solver. Other options are 'SLSQP' - 'CONMIN'
step_size: 1.e-3 # Step size for finite differencing
form: central # Finite differencing mode, either forward or central
optimization:
flag: False # Flag to enable optimization
tol: 1.e-2 # Optimality tolerance
max_major_iter: 10 # Maximum number of major design iterations (SNOPT)
max_minor_iter: 100 # Maximum number of minor design iterations (SNOPT)
max_iter: 100 # Maximum number of iterations (SLSQP)
solver: SLSQP # Optimization solver. Other options are 'SLSQP' - 'CONMIN'
step_size: 1.e-3 # Step size for finite differencing
form: central # Finite differencing mode, either forward or central
design_of_experiments:
flag: False # Flag to enable design of experiments
run_parallel: True # Flag to run using parallel processing
generator: Uniform # Type of input generator. (Uniform)
num_samples: 5 # number of samples for (Uniform only)


recorder:
flag: True # Flag to activate OpenMDAO recorder
Expand Down
21 changes: 11 additions & 10 deletions WISDEM/examples/02_reference_turbines/modeling_options.yaml
Original file line number Diff line number Diff line change
@@ -1,13 +1,14 @@
# Generic modeling options file to run standard WISDEM case
General:
verbosity: False # When set to True, the code prints to screen many infos
RotorSE:
flag: True
spar_cap_ss: Spar_Cap_SS # Name in the yaml of the spar cap laminate on the suction side
spar_cap_ps: Spar_Cap_PS # Name in the yaml of the spar cap laminate on the suction side
DriveSE:
flag: True
TowerSE: # Options of TowerSE module
flag: True
BOS:
flag: True
WISDEM:
RotorSE:
flag: True
spar_cap_ss: Spar_Cap_SS # Name in the yaml of the spar cap laminate on the suction side
spar_cap_ps: Spar_Cap_PS # Name in the yaml of the spar cap laminate on the suction side
DriveSE:
flag: True
TowerSE: # Options of TowerSE module
flag: True
BOS:
flag: True
2 changes: 1 addition & 1 deletion WISDEM/examples/02_reference_turbines/nrel5mw.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -196,7 +196,7 @@ components:
nacelle:
drivetrain:
diameter: 3.0
uptilt_angle: 0.08726
uptilt: 0.08726
distance_tt_hub: 2.3
distance_hub2mb: 1.912
distance_mb2mb: 0.368
Expand Down
24 changes: 15 additions & 9 deletions WISDEM/examples/03_blade/analysis_options_aero.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -215,15 +215,21 @@ constraints:
flag: False

driver:
tol: 1.e-3 # Optimality tolerance
#max_major_iter: 10 # Maximum number of major design iterations
#max_minor_iter: 100 # Maximum number of minor design iterations
max_iter: 2 # Maximum number of minor design iterations
solver: SLSQP # Optimization solver. Other options are 'SLSQP' - 'CONMIN'
step_size: 1.e-3 # Step size for finite differencing
form: forward # Finite differencing mode, either forward or central


optimization:
flag: True # Flag to enable optimization
tol: 1.e-3 # Optimality tolerance
# max_major_iter: 10 # Maximum number of major design iterations (SNOPT)
# max_minor_iter: 100 # Maximum number of minor design iterations (SNOPT)
max_iter: 2 # Maximum number of iterations (SLSQP)
solver: SLSQP # Optimization solver. Other options are 'SLSQP' - 'CONMIN'
step_size: 1.e-3 # Step size for finite differencing
form: forward # Finite differencing mode, either forward or central
design_of_experiments:
flag: False # Flag to enable design of experiments
run_parallel: True # Flag to run using parallel processing
generator: Uniform # Type of input generator. (Uniform)
num_samples: 5 # number of samples for (Uniform only)

recorder:
flag: False # Flag to activate OpenMDAO recorder
file_name: log_opt.sql # Name of OpenMDAO recorder
23 changes: 15 additions & 8 deletions WISDEM/examples/03_blade/analysis_options_aerostruct.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -215,14 +215,21 @@ constraints:
flag: False

driver:
tol: 1.e-5 # Optimality tolerance
#max_major_iter: 10 # Maximum number of major design iterations
#max_minor_iter: 100 # Maximum number of minor design iterations
max_iter: 5 # Maximum number of minor design iterations
solver: SLSQP # Optimization solver. Other options are 'SLSQP' - 'CONMIN'
step_size: 1.e-3 # Step size for finite differencing
form: forward # Finite differencing mode, either forward or central

optimization:
flag: True # Flag to enable optimization
tol: 1.e-5 # Optimality tolerance
# max_major_iter: 10 # Maximum number of major design iterations (SNOPT)
# max_minor_iter: 100 # Maximum number of minor design iterations (SNOPT)
max_iter: 5 # Maximum number of iterations (SLSQP)
solver: SLSQP # Optimization solver. Other options are 'SLSQP' - 'CONMIN'
step_size: 1.e-3 # Step size for finite differencing
form: forward # Finite differencing mode, either forward or central
design_of_experiments:
flag: False # Flag to enable design of experiments
run_parallel: True # Flag to run using parallel processing
generator: Uniform # Type of input generator. (Uniform)
num_samples: 5 # number of samples for (Uniform only)

recorder:
flag: False # Flag to activate OpenMDAO recorder
file_name: log_opt.sql # Name of OpenMDAO recorder
24 changes: 15 additions & 9 deletions WISDEM/examples/03_blade/analysis_options_no_opt.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -215,15 +215,21 @@ constraints:
flag: False

driver:
tol: 1.e-3 # Optimality tolerance
#max_major_iter: 10 # Maximum number of major design iterations
#max_minor_iter: 100 # Maximum number of minor design iterations
max_iter: 2 # Maximum number of minor design iterations
solver: SLSQP # Optimization solver. Other options are 'SLSQP' - 'CONMIN'
step_size: 1.e-3 # Step size for finite differencing
form: forward # Finite differencing mode, either forward or central


optimization:
flag: False # Flag to enable optimization
tol: 1.e-3 # Optimality tolerance
# max_major_iter: 10 # Maximum number of major design iterations (SNOPT)
# max_minor_iter: 100 # Maximum number of minor design iterations (SNOPT)
max_iter: 2 # Maximum number of iterations (SLSQP)
solver: SLSQP # Optimization solver. Other options are 'SLSQP' - 'CONMIN'
step_size: 1.e-3 # Step size for finite differencing
form: forward # Finite differencing mode, either forward or central
design_of_experiments:
flag: False # Flag to enable design of experiments
run_parallel: True # Flag to run using parallel processing
generator: Uniform # Type of input generator. (Uniform)
num_samples: 5 # number of samples for (Uniform only)

recorder:
flag: False # Flag to activate OpenMDAO recorder
file_name: log_opt.sql # Name of OpenMDAO recorder
23 changes: 15 additions & 8 deletions WISDEM/examples/03_blade/analysis_options_struct.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -215,14 +215,21 @@ constraints:
flag: False

driver:
tol: 1.e-3 # Optimality tolerance
#max_major_iter: 10 # Maximum number of major design iterations
#max_minor_iter: 100 # Maximum number of minor design iterations
max_iter: 5 # Maximum number of minor design iterations
solver: SLSQP # Optimization solver. Other options are 'SLSQP' - 'CONMIN'
step_size: 1.e-3 # Step size for finite differencing
form: forward # Finite differencing mode, either forward or central

optimization:
flag: True # Flag to enable optimization
tol: 1.e-3 # Optimality tolerance
# max_major_iter: 10 # Maximum number of major design iterations (SNOPT)
# max_minor_iter: 100 # Maximum number of minor design iterations (SNOPT)
max_iter: 5 # Maximum number of iterations (SLSQP)
solver: SLSQP # Optimization solver. Other options are 'SLSQP' - 'CONMIN'
step_size: 1.e-3 # Step size for finite differencing
form: forward # Finite differencing mode, either forward or central
design_of_experiments:
flag: False # Flag to enable design of experiments
run_parallel: True # Flag to run using parallel processing
generator: Uniform # Type of input generator. (Uniform)
num_samples: 5 # number of samples for (Uniform only)

recorder:
flag: False # Flag to activate OpenMDAO recorder
file_name: log_opt.sql # Name of OpenMDAO recorder
2 changes: 1 addition & 1 deletion WISDEM/examples/03_blade/blade.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -338,7 +338,7 @@ components:
nacelle:
drivetrain:
diameter: 3.0
uptilt_angle: 0.10471975511965977 # 6 deg
uptilt: 0.10471975511965977 # 6 deg
distance_tt_hub: 3.0
distance_hub2mb: 1.912
distance_mb2mb: 0.368
Expand Down
21 changes: 11 additions & 10 deletions WISDEM/examples/03_blade/modeling_options.yaml
Original file line number Diff line number Diff line change
@@ -1,13 +1,14 @@
# Generic modeling options file to run standard WISDEM case
General:
verbosity: False # When set to True, the code prints to screen many infos
RotorSE:
flag: True
spar_cap_ss: Spar_cap_ss
spar_cap_ps: Spar_cap_ps
DriveSE:
flag: True
TowerSE: # Options of TowerSE module
flag: True
BOS:
flag: True
WISDEM:
RotorSE:
flag: True
spar_cap_ss: Spar_cap_ss
spar_cap_ps: Spar_cap_ps
DriveSE:
flag: True
TowerSE: # Options of TowerSE module
flag: True
BOS:
flag: True
Loading