Rosco

Latest version: v2.9.5

Safety actively analyzes 693883 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 2 of 5

2.8.1

This is a re-release of ROSCO v2.8.0 that works with the latest Intel oneAPI.

2.8.0

Major Updates:
- Optional inputs: users do not have to set all inputs to ROSCO. Whether an input is optional is determined by the [control flags](https://github.com/NREL/ROSCO/blob/e3b7db779ad9e7bea5dea692e92f52b10116cf02/Test_Cases/IEA-15-240-RWT-UMaineSemi/DISCON-UMaineSemi.IN#L8).
- Cable control: users can control OpenFAST cables in MoorDyn and SubDyn using ROSCO. Open loop and [user-defined control](https://github.com/NREL/ROSCO/blob/e3b7db779ad9e7bea5dea692e92f52b10116cf02/ROSCO/src/Controllers.f90#L695) schemes are available. [`Examples/22_cable_control.py`](https://github.com/NREL/ROSCO/blob/main/Examples/22_cable_control.py) sets up a floating turbine with cable control and applies an open loop mooring control to move the turbine near the (0,0) (surge, sway) location. In the [DISCON](https://github.com/NREL/ROSCO/blob/e3b7db779ad9e7bea5dea692e92f52b10116cf02/Test_Cases/IEA-15-240-RWT-UMaineSemi/DISCON-UMaineSemi.IN#L168) or [tuning yaml](https://github.com/NREL/ROSCO/blob/e3b7db779ad9e7bea5dea692e92f52b10116cf02/Tune_Cases/IEA15MW_cable.yaml#L58), users specify the indices of the cable length control in the avrSWAP; these indices can be found in the ServoDyn summary file.
- Structural control: users can control OpenFAST structural controllers (tuned mass dampers and added forces) via ROSCO. Open loop and [user-defined control](https://github.com/NREL/ROSCO/blob/e3b7db779ad9e7bea5dea692e92f52b10116cf02/ROSCO/src/Controllers.f90#L770) schemes are available. [`Examples/23_structural_control`](https://github.com/NREL/ROSCO/blob/main/Examples/23_structural_control.py) sets up the IEA-15MW semi-submersible floating platform with structural controls as added forces to emulate ballast control for even keel; it relies on the current develop branch of OpenFAST (to be released in v3.5.0) to apply the added force. Users specify the indices to the avrSWAP in the [DISCON](https://github.com/NREL/ROSCO/blob/e3b7db779ad9e7bea5dea692e92f52b10116cf02/Test_Cases/IEA-15-240-RWT-UMaineSemi/DISCON-UMaineSemi.IN#L173) or [tuning yaml](https://github.com/NREL/ROSCO/blob/e3b7db779ad9e7bea5dea692e92f52b10116cf02/Tune_Cases/IEA15MW_ballast.yaml#L58), as specified by the ServoDyn summary file.
- Active wake control: users have two methods, [detailed here](https://github.com/NREL/ROSCO/blob/e3b7db779ad9e7bea5dea692e92f52b10116cf02/Examples/20_active_wake_control.py#L9), for adding pitch offsets, e.g., the helix method, to the collective pitch angle for better wake dissipation. [`Examples/20_active_wake_control.py`](https://github.com/NREL/ROSCO/blob/main/Examples/20_active_wake_control.py) runs several different active wake control modes.


Minor Updates:
- [The NREL 2.8 MW reference turbine](https://github.com/NREL/ROSCO/tree/main/Test_Cases/NREL_2p8_127) has been added to the set of tuned turbine inputs. Pitch control gains were determined using [WEIS control optimization](https://github.com/WISDEM/WEIS/tree/main/examples/02_control_opt) to minimize tower DELs with a constraint on the maximum generator speed in DLC 1.2. IPC is also tuned for this model. [`Examples/12_tune_ipc.py`](https://github.com/NREL/ROSCO/blob/main/Examples/12_tune_ipc.py) was updated to test all the IPC saturation modes.
- File I/O and plotting: an updated [plotting notebook](https://github.com/NREL/ROSCO/blob/main/ROSCO_toolbox/ofTools/fast_io/plot_FAST.ipynb) is available to users. The [`output_processing.py`](https://github.com/NREL/ROSCO/blob/main/ROSCO_toolbox/ofTools/fast_io/output_processing.py) script was parallelized.

2.7.1

This is a re-release of ROSCO v2.7.0 that works with the latest Intel oneAPI.

2.7.0

Added Features:
- IPC saturation modes (IPC_SatMode)
- Pitch actuator faults: simulate constant blade pitch offsets. More is possible in future releases.
- Ability to initialize filters with specific values
- Support for latest OpenFAST version (v3.4.0)
- Add a tool for updating DISCONs from older ROSCO versions

Bug Fixes:
- Initialize `NacIMU_FA_Acc` and `FA_Acc` to 0. Initial conditions would result in offset of floating feedback pitch command
- Fix cases where debug outputs ***********
- Add nacelle heading (NacHeading) input to ROSCO
- Add method for closing dll in control interface on Windows
- Fix units in sim.py

Software Changes:
- Support for the latest numpy version (1.24)
- Re-named examples to represent the features they demonstrate
- Refactored ratelimit function to store it's own previous signal value
- Features that rely on collective blade pitch signal now use average of 3 current blade pitch values (useful in IPC cases)
- Clean up file readers/writers to sync with WEIS analogues
- Update features that rely on latest version of pyFAST
- Enable use of runFAST when `python setup.py install` is used.
- Add tune.py for specifically translating tuning yaml to controller objects and updating discon files
- When reading turbine model from openfast, only read necessary input module files

raaw1.3
This controller contains individual pitch control updates for the RAAW project

What's Changed
* Add OpenFAST channels that Simulink reads by dzalkind in https://github.com/NREL/ROSCO/pull/135
* ROSCO 2.6.0 by dzalkind in https://github.com/NREL/ROSCO/pull/162
* Adding pitch actuator fault by mayankchetan in https://github.com/NREL/ROSCO/pull/163
* Various Bug Fixes by dzalkind in https://github.com/NREL/ROSCO/pull/167

New Contributors
* mayankchetan made their first contribution in https://github.com/NREL/ROSCO/pull/163

**Full Changelog**: https://github.com/NREL/ROSCO/compare/raaw1.2...raaw1.3

2.6.0

![image](https://user-images.githubusercontent.com/65573423/183706951-62293f42-0088-4bca-8747-bc44ec2af28d.png)



What's Changed
* ROSCO 2.6.0 by dzalkind in https://github.com/NREL/ROSCO/pull/162


**Full Changelog**: https://github.com/NREL/ROSCO/compare/v2.5.1...v2.6.0

raaw1.2
This release corresponds to the RAAW v1.2 model.

What's Changed
* sigma + ipc by nikhar-abbas in https://github.com/NREL/ROSCO/pull/125
* Flip Ct and Cq table allocation by dzalkind in https://github.com/NREL/ROSCO/pull/130
* Pitch Actuator and IPC updates by dzalkind in https://github.com/NREL/ROSCO/pull/123


**Full Changelog**: https://github.com/NREL/ROSCO/compare/v2.5.1...raaw1.2

2.5.1

What's Changed
* Fixed wrong formatting of list items by ghylander in https://github.com/NREL/ROSCO/pull/122
* Flip Ct and Cq table allocation by dzalkind in https://github.com/NREL/ROSCO/pull/129


**Full Changelog**: https://github.com/NREL/ROSCO/compare/v2.5.0...v2.5.1

Page 2 of 5

© 2025 Safety CLI Cybersecurity Inc. All Rights Reserved.