Skip to content

Commit

Permalink
Squashed 'ROSCO/' changes from c137a8c..5168657
Browse files Browse the repository at this point in the history
5168657 Check if subtree is being used
8daafb2 Merge commit '2e8477621a5f92b93c50b6f158f6b89d001406df' as 'ROSCO'
2e84776 Squashed 'ROSCO/' content from commit c137a8c
REVERT: c137a8c Try to update flap controller
REVERT: fdbb260 Merge pull request NREL#367 from NREL/improve_wfc
REVERT: 4d553fb Merge branch 'develop' into improve_wfc
REVERT: 84de003 Use more descriptive names and documentation for wfc_interface
REVERT: ff27aaa Merge remote-tracking branch 'origin/main' into develop
REVERT: d621956 Update control interface (NREL#366)
REVERT: 72b2a6a Update .readthedocs.yaml (NREL#359)
REVERT: 08ae7cf Update to latest scipy functions, other input fixes (NREL#363)
REVERT: 8b85d7a Increment version (NREL#358)
REVERT: f52bc4b Read damping from beamdyn input files  (NREL#349)
REVERT: c3c2296 Merge pull request NREL#354 from Bartdoekemeijer/feature/wfc_controller_as_class
REVERT: 721164e Bug fixes and documentation updates (NREL#345)
REVERT: 37788a5 Merge remote-tracking branch 'origin/develop' into feature/wfc_controller_as_class
REVERT: cd3ec6d Turn wfc_controller into a class
REVERT: 7deb583 Fixes to compilers and pypi (NREL#343)
REVERT: e95511c Merge remote-tracking branch 'upstream/main' into develop
REVERT: c760f88 Add intel llvm to compilers (NREL#338)
REVERT: 0516123 Fix pypi (NREL#342)
REVERT: a4a6a27 Increment version
REVERT: 22f186f Add pkg-config to environment
REVERT: 2a1c63a Add message about use case
REVERT: 3ebe819 ROSCO v2.9.1 (NREL#314)
REVERT: b994e4d ROSCO v2.9.0 (NREL#304)
REVERT: e3b7db7 ROSCO v2.8.0 (NREL#237)
REVERT: 41f2c00 Set minimum Python version to 3.8
REVERT: a70d374 ROSCO v2.7.0 (NREL#217)
REVERT: 5162966 ROSCO 2.6.0 (NREL#162)
REVERT: 77278f5 Flip Ct and Cq table allocation (NREL#129)
REVERT: 5d20185 Fixed wrong formatting of list items (NREL#122)
REVERT: ad15bcd ROSCO 2.5.0 (NREL#115)
REVERT: 9646dbd Merge pull request NREL#90 from NREL/develop
REVERT: de1a7f8 another typo!
REVERT: 9650a58 fix install typo
REVERT: 08a8c9f Merge pull request NREL#89 from nikhar-abbas/develop
REVERT: feb5048 Merge remote-tracking branch 'upstream/main' into develop
REVERT: a402e16 bump version number
REVERT: 2821f72 RAAW Controller (NREL#84)
REVERT: 277b637 Fix Docs and Minimum Rotor/Generator Speed (NREL#83)
REVERT: 6f25429 Update CMakeLsits for VS and ifort compilation (NREL#85)
REVERT: 5241886 Merge pull request NREL#87 from nikhar-abbas/fix_tests
REVERT: 4d5adb1 cleanup, use setuptools
REVERT: ecef7ae Combine ROSCO and the ROSCO_toolbox (NREL#54) (NREL#78)
REVERT: b7f2592 Combine ROSCO and the ROSCO_toolbox (NREL#54)
REVERT: 7e10015 Merge pull request NREL#51 from NREL/develop
REVERT: 2a847f7 Fix compilation
REVERT: f6b2cd7 Merge remote-tracking branch 'nja/develop' into develop
REVERT: 65b315b Merge remote-tracking branch 'upstream/main' into develop
REVERT: d08ca3f Develop (NREL#50)
REVERT: 4aca5b7 increment version
REVERT: 1129adc trap nans in low/stopped rotor speeds
REVERT: fe71ce4 Merge pull request NREL#49 from NREL/develop
REVERT: 72e7076 call shutdown routine last (NREL#48)
REVERT: af9337b Merge pull request NREL#46 from dzalkind/error_catching
REVERT: 8f0a93c Fix controller-breaking typo
REVERT: 4ff5ad3 Merge remote-tracking branch 'upstream/develop' into error_catching
REVERT: 6729e9f Re-organize ReadSetParameters
REVERT: d5963fd Remove check on F_NotchBetaNumDen(1), not necessary
REVERT: 398cb42 Don't check WE_CP, FA_HPFCornerFreq until API change
REVERT: ce0510b Use unsaturated pitch command in setpoint smoother (NREL#45)
REVERT: 008d34a Finish making error tracing consistent
REVERT: c88f272 Make error tracing consistent: RoutineNames
REVERT: 7fbfb86 Reorganize ROSCO file reading code
REVERT: 8fdeeca Read Cp surface
REVERT: 05879d5 Parse integer arrays
REVERT: 97c7bcf Parse all double arrays, only read/parse lines if no error
REVERT: 039389a Make Flp and Fl filter variables consistent with others Clean up parsing echo for arrays
REVERT: d0fe8b1 Clean up array parsing
REVERT: df32a55 Add array parsing, debug outputting, fix long string reading
REVERT: 22b6508 Generator power in SS (NREL#44)
REVERT: a275d37 Fix setpoint smoother to use last gen pwr (NREL#43)
REVERT: 365d820 Merge pull request NREL#41 from nikhar-abbas/f/ci_tests
REVERT: f928868 Add double and string input parsing
REVERT: d12fbc1 Parse integer inputs, update CheckInputs
REVERT: d5b7a4f Expand Assert function and rename to CheckInputs
REVERT: 37838fb Add error variables, error catching for interp functions
REVERT: e2eab81 pr template - initial commit
REVERT: 9d3f2c0 mingw flag
REVERT: 64a754f use conda environment
REVERT: 05786d0 remove default shell
REVERT: f20dcdb update compilers
REVERT: 9c523dd testing initial commit
REVERT: e53ff37 Merge pull request NREL#39 from NREL/develop
REVERT: c010d71 Merge pull request NREL#40 from nikhar-abbas/develop
REVERT: 062a3b9 Fix object instance bug in commanded pitch  filter
REVERT: cfb0a93 Merge pull request NREL#38 from nikhar-abbas/f/docs
REVERT: 8eb65d9 Set install directory only if not previously defined (NREL#37)
REVERT: e8beb58 Docs (NREL#36)
REVERT: 91584f4 Update README.md
REVERT: b79f362 Iterate version
REVERT: e8564fc Update for readthedocs, new version
REVERT: f98e887 Update print message, output file header (NREL#35)
REVERT: b64ba17 Merge pull request NREL#30 from nikhar-abbas/compiler_updates
REVERT: 4e3752b Merge pull request NREL#34 from nikhar-abbas/f/constant_power
REVERT: 3b19c29 Filtered wind speed estimate for pitch saturation
REVERT: 77989b1 re-order pitcomT saturation
REVERT: f07ef66 Don't use filtered pitcom for Cp calc
REVERT: 032b126 Initialize Cp_op so debug output is not ******
REVERT: 289dcec Add commanded pitch from PI controller to debug variablees
REVERT: 3e33fea Use filtered collective pitch for gain schedule
REVERT: 8ac68e5 Second order LPF for collective pitch feedback
REVERT: 6f80ad5 Use rated pwr instead of max tq for setpoint smoothing
REVERT: 467f52e filter blade pitch angle for gain scheduling
REVERT: f4e946a Merge branch 'f/constant_power' of https://github.com/nikhar-abbas/ROSCO into f/constant_power
REVERT: dbf0c3b Initialize max torque
REVERT: f8c57b4 Use direct WSE for pitch saturation
REVERT: 2c94dd7 Revert "Reduce WSE filter to 10s time constant"
REVERT: 6f052fa Use max tq instead of rated tq for setpoint smoother
REVERT: 1efed1d Ignore more temp files
REVERT: 4cc00bc Add MaxTq to LocalVar
REVERT: 1030f5c Reduce WSE filter to 10s time constant
REVERT: d61e275 Change upper limit to max torque
REVERT: 9b6392e Add initial constant power control with TSR tracking
REVERT: 8f8a4e3 Update install and compile instructions
REVERT: c953a5f set install directory
REVERT: 1695348 ignore install folder
REVERT: 584bc08 Cq matrix read bug fix
REVERT: cffa234 Increment version
REVERT: 60b6953 ignore vscode and build directories
REVERT: fb42a26 Merge pull request NREL#29 from nikhar-abbas/hotfix/torque_bug
REVERT: bad3531 Fix filter instance bug
REVERT: e0d5d8c LPF wind speed w/ 30 second time constant
REVERT: 1ed808e remove epsilon
REVERT: 8742117 30 second time constant for WSE
REVERT: 5b28c68 re-org
REVERT: 452863d Add eps for torque output
REVERT: 8ae3569 Change length scale back to 3D
REVERT: d08f6b0 double precision
REVERT: c266218 double precision
REVERT: 80f28b9 Increment minor version
REVERT: d5a900b Merge pull request NREL#22 from nikhar-abbas/u/WSE
REVERT: 62c1a98 Bump version number, cleanup
REVERT: 360ea76 30s time constant for wse filter
REVERT: 4ac8302 Merge branch 'develop' into u/WSE
REVERT: 2626c6f Update parameters, debugging
REVERT: f7e3296 Fix jacobian bug
REVERT: 25a9c31 Revert "Remove mean wind speed state in EKF"
REVERT: 8a5fef0 Merge branch 'hotfix/DT_bug' into develop
REVERT: c3a6222 Initialize WSE and measured wind speed
REVERT: 229c281 Filter WSE by primary corner freq
REVERT: a95e9df Remove mean wind speed state in EKF
REVERT: a2b6921 Add endif, convert to double precision
REVERT: 2efccb0  subroutine to function
REVERT: ddb8d7d updated debugging
REVERT: 4ecebdb Saturation bug fix
REVERT: 7c76ca5 swicth to a few subroutines functions
REVERT: 4452cdf compile in double precision
REVERT: 0d9c3bf Update debugging
REVERT: c9f00c4 Move pitch saturation filter, make minpitch a subroutine
REVERT: d694143 Fix merge error
REVERT: 66e620c WSE Cp bugfix, add debug var
REVERT: 8df8cc8 Increment version
REVERT: 1a07fd0 Merge pull request NREL#20 from NREL/develop
REVERT: 940f611 WSE Cp bugfix, add debug var
REVERT: 5eb7b5d Replace the hard coded build type setting with an optional parameter
REVERT: 7ebc65e Add CMake install location for libraries
REVERT: b3480e1 GB Ratio bug fix
REVERT: 532b462 Region 1.5 bug fix
REVERT: 84b7e3b Merge branch 'develop' of https://github.com/NREL/ROSCO into develop
REVERT: 5f92876 Fix low wind speed pitch+torque saturation bug
REVERT: b3df093 change debug file extension to dbg
REVERT: 00608a4 Merge pull request NREL#19 from dzalkind/dev
REVERT: 2cf093b Add generic WSE debug signal
REVERT: a0ed80b Add WSE inputs to debug, force IMU filter to initialize at 0 and add HPF
REVERT: d214f5a Remove tower-top velocity from pitch saturation block
REVERT: dd841ae Merge remote-tracking branch 'upstream/develop' into pretty_debug
REVERT: 4e383cf Wind Speed Estimator & Related Updates (NREL#10)
REVERT: 4611014 WSE Cp bugfix, add debug var
REVERT: 70ff9d0 Formatting and cleanup
REVERT: 62ca692 minor bug fix and cleanup
REVERT: cb9ab39 separate string from unit allocation
REVERT: 9df6cd8 Save ROSCO debug as <RootName>.RO.out
REVERT: a1b74db Saturate PI pitch to PC_MinPit
REVERT: cfa717f Merge pull request NREL#16 from dzalkind/pretty_debug
REVERT: 42a741d Remove HPF from floating feedback, save for future pull request
REVERT: b9f1fd1 Revert avrSWAP writing & ROSCO info printing to original
REVERT: 526eb12 Merge pull request NREL#14 from rafmudaf/master
REVERT: 860bcfe Replace the hard coded build type setting with an optional parameter
REVERT: 47a1344 Merge pull request NREL#13 from rafmudaf/master
REVERT: 1107249 Add CMake install location for libraries
REVERT: d6722bb Add pretty debug setup and output
REVERT: 66bcc15 Merge pull request NREL#8 from davidheff/develop
REVERT: 5d1f2f5 Add signals to debug
REVERT: af089b2 Add to CMakeLists.txt to enable compilation on win32/mingw
REVERT: 10bbbfb Merge branch 'master' into develop
REVERT: 7ba7023 installation instructions bug fix
REVERT: c1a7593 Merge branch 'develop'
REVERT: f9bca81 Update for v2.0.1
REVERT: d0e89b7 Merge branch 'master' of https://github.com/NREL/ROSCO
REVERT: 110ddf6 Merge pull request NREL#3 from NREL/develop
REVERT: 4f6553c Merge branch 'develop'
REVERT: 0955164 Move IEA paramter files to proper folder
REVERT: faf70bf Merge pull request #2 from NREL/develop
REVERT: 6513b9a Tag for version 2.0.0
REVERT: 809d69a Update parameter files
REVERT: 2d52804 Cleanup
REVERT: 43ea8d2 Remove old inputs
REVERT: 67fcde0 Rate limit collective pitch command
REVERT: f3f24ac Account for pitch saturation in vs statemachine
REVERT: 6ea731f Remove initialization in prefilter for floating filters
REVERT: 93af653 Typographical updates
REVERT: 922f683 Use saturation from input file
REVERT: 10b1729 Initialize flap controller
REVERT: 27970ac Fix saturation bug
REVERT: d17f9b8 Use second order LPF
REVERT: 14183c7 Notch Filter cleanup
REVERT: 9107e26 Remove sine pitch excitation for induction capabilities
REVERT: 5920136 Saturation sign bug fix
REVERT: c53a976 Merge branch 'f/flaps' into develop
REVERT: cbc495e Flap max pitch at input
REVERT: 2d94306 Fix filter instancing bug
REVERT: 6eb92ae Band-pass filter platform pitch natural frequency
REVERT: dd6e947 Update parameter file for flaps
REVERT: 0af5391 Cleanup
REVERT: 7b0adc7 Flag bug fix, process as radians
REVERT: 427b85b Merge branch 'develop' into f/flaps
REVERT: 9fd854e Merge pull request #1 from NREL/develop
REVERT: d9c6fca bug fix - filter constant instances
REVERT: 4114a46 Merge branch 'master' of https://github.com/NREL/ROSCO
REVERT: 4bde81e Setup for version 1.0.0
REVERT: e7a3a7d Force PC_MinPitch
REVERT: 063b062 Force PC_MinPitch
REVERT: 2186682 Setup for version 1.0.0
REVERT: bddafd9 Merge branch 'master' of https://github.com/NREL/ROSCO
REVERT: 00aefd9 Cleanup
REVERT: 2cae46b Merge branch 'master' of https://github.com/NREL/ROSCO
REVERT: d385eca Cleanup
REVERT: 7a48d63 Cleanup
REVERT: 3b25626 Include notch filter in twr f-a filter
REVERT: f2cc92c Cleanup
REVERT: c03fd9f Cleanup
REVERT: eb5c2ba Merge branch 'master' of https://github.com/NREL/ROSCO
REVERT: 55f5036 Cleanup
REVERT: 80695e2 Cleanup
REVERT: 4a15501 Include notch filter in twr f-a filter
REVERT: e096e0f Cleanup
REVERT: f2b0e50 Include blade root bending signal filter parameters
REVERT: 39e0ec3 Merge branch 'develop' into f/flaps
REVERT: dcbb2bc Cleanup
REVERT: 2300380 Cleanup
REVERT: 7a0fbc3 Include floating parameters
REVERT: d89895f Floating feedback filter parameters as inputs
REVERT: 4ea76e8 Include floating types
REVERT: dbda8f2 Debug floating
REVERT: e1a28ae Remove PI controller full saturation
REVERT: c395418 Filter cleanup for clarity
REVERT: 6bb1863 Low-pass filtered tower-top feedback for floating
REVERT: 935a4eb Update saturation limit implementation
REVERT: c2e72a1 Include floating feedback control signal
REVERT: a8ae292 Merge branch 'master' into f/flaps
REVERT: 13a78e4 Merge branch 'master' into f/floating
REVERT: 9e53a23 Merge branch 'f/readDISCON'
REVERT: 6e51b26 Load ServoDyn-defined DISCON input file
REVERT: 461f6ec Update to read file
REVERT: ff99949 Read input filename - initial commit
REVERT: f043813 Bug fix and cleanup
REVERT: a3d7990 Remove WSE filter
REVERT: f0030cf Revert back to Torque based setpoint smoothing
REVERT: 71ed9de Update WE LPF
REVERT: 9e503dc Include PII flap control
REVERT: a62bdd5 And PII controller
REVERT: 60349e9 Add Flap PI inputs
REVERT: c55dfe1 Debug floating
REVERT: cc1c38f Add floating proportional control
REVERT: c6bfdcf Remove deg2rad for flap inputs
REVERT: ca63d61 Rename to pitch saturation
REVERT: dea04f9 Define integer
REVERT: 07c8292 Merge branch 'master' into f/flaps
REVERT: 6c3ad82 Fix constant power above rated bug
REVERT: ca9f165 Call Flap Controller
REVERT: e8d0581 Merge branch 'develop' into f/flaps
REVERT: 5692cd9 Include minimum refspeed for vs controller
REVERT: 222dff1 Read shutdown and flap angle parameters from DISCON.IN
REVERT: e02c411 No Flp_Angle from avrswap
REVERT: 4a8e82f Remove buggy line
REVERT: d8328ee Merge branch 'master' into f/flaps
REVERT: 0347814 Update links
REVERT: f086906 Update disclaimer
REVERT: 3fda02a Update disclaimer
REVERT: a8511ec Merge branch 'master' into f/flaps
REVERT: 8e59452 Update to Apache Licensing and intro comments
REVERT: a9865ec Merge branch 'develop' into f/flaps
REVERT: b2d5870 Merge remote-tracking branch 'upstream_Nikhar/f/flaps' into f/flaps
REVERT: 00859d3 Merge remote-tracking branch 'upstream_Nikhar/develop' into develop
REVERT: af8d956 Merge remote-tracking branch 'upstream_DRC/development_ROSCO' into develop
REVERT: b17fc2f Add Shutdown Mode
REVERT: 902746a .gitignore update
REVERT: 087ae5a Merge pull request NREL#8 from nikhar-abbas/develop
REVERT: f53c3b7 Include steady state flap angle prescription
REVERT: a600989 Merge remote-tracking branch 'upstream_DRC/master' into develop
REVERT: bc7848a Update parameter file
REVERT: c7bbbda Update acknowledgments
REVERT: 2d05649 Sort out actuator ICs
REVERT: 112ae00 PitCom for numerical stability, actually...
REVERT: ef32cea Prescribe steady flap angles
REVERT: b94073a Merge branch 'develop' into f/flaps
REVERT: 70c8721 Update Parameters - VS_Rgn2K bug
REVERT: 9d0c8a0 Bar flap parameter file
REVERT: ace2cff Flap actuator control - initial commit
REVERT: 2f0f2fb Read avrswap pitch signal for numerical stability
REVERT: 524270f Added Visual studio project files, corrected double !DEC attributes line
REVERT: 32ae97d Fix initial bld pitch bug
REVERT: 8f2ce83 Merge pull request NREL#7 from nikhar-abbas/develop
REVERT: 3573ae3 Update Acknowledgments
REVERT: 20168d4 Merge pull request NREL#6 from nikhar-abbas/master
REVERT: d393256 Free form for gfortran
REVERT: 6554ecd Rename to have capital F, force preprocessor
REVERT: 2e26ece Develop stage disclaimer
REVERT: cae59de Update disclaimer
REVERT: d784ffa Update for windows
REVERT: c0cde02 Update parameter files for new controller updates
REVERT: ec8c3a6 Clarity for DISCON.IN use
REVERT: 04aa1ca Cleanup
REVERT: 52f1615 Update Acknowledgments
REVERT: 9986047 Update disclaimer
REVERT: 746caab Fix links
REVERT: 9a44756 Include information to run controller
REVERT: e7d8258 Update referencing
REVERT: 6a7a895 Update compile instructions
REVERT: d67b643 Update for ROSCO
REVERT: 982d276 Update compiler flags
REVERT: a8ada99 Rename DRC_Types to ROSCO_Types
REVERT: 8417059 Rename to ROSCO, update commenting
REVERT: ec920f0 Update gitignore for cmake build dir
REVERT: 8c6b5bf Contain Fortran .mod files in a single directory
REVERT: f64f568 Add initial CMakeLists
REVERT: fc99bbc Delete some and rename other files
REVERT: 20ec624 Include NREL5MW Performance Tables
REVERT: b9d67a5 Cleanup
REVERT: fbb697f Update binaries
REVERT: 2a24127 Debug Setpoint Smoother
REVERT: 736e023 Saturate at VS_RefSpd, Initialize Torque
REVERT: ad89ebf Normalize DelOmega
REVERT: cdfedc0 Update binaries
REVERT: fac36d7 Use previous pitch command instead of avrSWAP
REVERT: 0ba7479 Rate limit pitch signal
REVERT: e9c7f74 Cleanup Peak Shaving
REVERT: 8673f3c Parameter updates
REVERT: 5cb37e1 Merge branch 'dev_PeakShaving'
REVERT: 1786a4a ignore .DS_Store
REVERT: 580cb7b Update binaries
REVERT: f784ae4 Comment Updates
REVERT: b68998b Include towertop motion
REVERT: 5b4c8bc Use ControllerBlocks
REVERT: 82daa5f Move peak shaving to ControllerBlocks
REVERT: 5b2bdd7 Update binaries
REVERT: 7dc12fa Parameter updates
REVERT: 3f4b5e0 Code Reorg
REVERT: 26d3117 Include Peak Shaving
REVERT: 0fac735 Update binaries
REVERT: e559e9a Comment Updates
REVERT: fb336d5 Algorithm update
REVERT: a53f95c Comment updates
REVERT: cb2b93f Add CpData for NREL 5MW
REVERT: 4a87292 Update to use PerfData
REVERT: 7cf4280 Read Cp data from input file
REVERT: 1f111a3 Use updated Cp Lookup force real numbers
REVERT: 60cfaf9 Add degrees to radians
REVERT: 4461993 Add EKF wind speed estimator - stable, but poor
REVERT: aa48706 Include matrix inverse and identity matrix, functions
REVERT: 26d91e8 Merge branch 'dev_TorquePI'
REVERT: 9c3acfe Comment updates
REVERT: b99a486 Update binaries - still need SOME tuning
REVERT: dc86fe1 Update wind speed filter cornering freq
REVERT: b2e9d02 Saturate torque controller at rated torque
REVERT: f32cf39 Debug TSR tracking controller
REVERT: 1ca7f47 Comment cleanup
REVERT: 4d9f4d5 Include TSR tracking VS torque controller
REVERT: 67b3856 Cleanup for clarity
REVERT: 9ee1c1b Comment Updates
REVERT: 44cb23a Cleanup
REVERT: f59093e WE_CornerFreq update
REVERT: cfa8efe Cleanup for clarity
REVERT: 91b0fd0 Update binaries
REVERT: 066b118 Comment Cleanup
REVERT: e68a2ee Debug wind speed estimator
REVERT: cc017f8 Add filtered hub wind speed option to wind speed estimator
REVERT: 593e30a Comment Cleanup
REVERT: e1d77da Comment Cleanup
REVERT: 34b09f3 Comment cleanup
REVERT: a5d6748 Comment cleanup
REVERT: 28f729f Add setpoint smoother inputs
REVERT: 118bfdf Update binaries
REVERT: c7856d7 Include setpoint smoother in input file
REVERT: 67fe9ba Include PC_ControlMode
REVERT: 9f410b7 Note as OUTDATED. Note: Fix to be same as NREL5MW
REVERT: 66b1f84 Implement setpoint smoothing
REVERT: 8b13796 Introduce pitch controller flag
REVERT: d1af1f3 Comment updates
REVERT: f009b17 Comment cleanup
REVERT: a65d967 Include ControllerBlocks module
REVERT: e4e0c3c Comment updates
REVERT: a4eb203 Include SS_DelOmegaF in LocalVar
REVERT: 677790f Comment updates
REVERT: ba3c4da Reorg to compile Filters first
REVERT: 28908df Call SetpointSmoother
REVERT: 00b08ce Include SetpointSmoother - hard coded
REVERT: 08ba4ab Re-org
REVERT: 9a5fe1c Merge branch 'master' of https://github.com/nikhar-abbas/DRC_Fortran
REVERT: 6efbb10 Updated binaries
REVERT: 7632034 Update DISCON.IN
REVERT: cd741dd Update DISCON.IN
REVERT: dffc519 Updated binaries
REVERT: 3cbd781 Update DISCON.IN
REVERT: 39f2c76 Update DISCON.IN
REVERT: 033b3e8 Merge pull request NREL#4 from nikhar-abbas/master
REVERT: ebca4f2 Updated and compiled DTU 10MW Input file
REVERT: 9711b78 Changed for 64 bit
REVERT: cbbb097 Included command code for -i
REVERT: 11f184b Updates for temp files, 64 bit unix machines
REVERT: 007d5da Included command code for -i
REVERT: b690f1b Updated for input file cleanup
REVERT: 90e5046 Tabs to Spaces
REVERT: 2f2f63e Updated binaries
REVERT: c0900b8 Merge branch 'FilterSeparation'
REVERT: 9e960fc Fixed a bug introduced in the wind speed estimator
REVERT: 45e9888 Separated signal filtering, set point calc, added option for notch filter, renaming control constant, replacing tabs by spaces
REVERT: 11c7e4a Complemented the parameter files with some more explanatory notes
REVERT: 19df104 Updated binaries
REVERT: 584fd41 And another referencing bug
REVERT: 2d3c36c Fixed little bug, referencing to non-existing variable
REVERT: 637c3c7 Merge branch 'SinusJoeri'
REVERT: f2e1154 Included an option to include a first-order (actuator) phase delay on the IPC signal
REVERT: af89063 Merge pull request NREL#3 from spmulders/patch-1
REVERT: 67584f9 Update compileDISCON_linux.bash
REVERT: 3806f79 Implemented collective sine excitation on pitch
REVERT: 52de815 Extended input file DTU10MW for sine excitation on pitch
REVERT: a8d93e4 Fixed type in the filename of the DTU10MW parameter file
REVERT: 9a9246a Fixed bug in writing debug file logging level 2 (reported by Thuesen Enevoldsen)
REVERT: 1d8be73 Updated README.md
REVERT: 609c927 Included a tower fore-aft damping controller
REVERT: 2111e0a Updated binaries
REVERT: d1c8eac Made some changes for compatibility with Bladed, updated README
REVERT: d732951 Updated binaries
REVERT: 9a0dc95 Merge branch 'WSest_dev'
REVERT: 4874c87 Added parameters for ws estimator DTU10MW
REVERT: 563b0de Update Functions.f90
REVERT: 4d19aa4 WS estimator bug fixed, need to update DTU10MW parameters
REVERT: d3c5e58 Fully implemented WS estimator, with a little bug
REVERT: 227a54d Implementing an effective wind speed estimator
REVERT: b4eea60 Merge remote-tracking branch 'origin/master'
REVERT: 8476424 Updated bash-compilation script to create DISCON folder in root
REVERT: b9d82a5 Update LICENSE
REVERT: 98265e9 Updated binaries (compiled controllers, x86 + x64)
REVERT: 5281aed Edited GPLv3 to MIT license
REVERT: e8c7720 Added 2P IPC for load reductions, some refactoring, updated parameter files
REVERT: c6ca59c Edit .gitignore - 2
REVERT: 7d42e55 Edit .gitignore
REVERT: 8982c96 Create README.md
REVERT: 8a506a4 Clean-up of the repsoitory
REVERT: fbe3a5a Updated parameter files, choice between 1/2-order LPF,
REVERT: 57c442b A lot of refactoring
REVERT: 44953ff Updates controller parameter files and deleted obsolete variables
REVERT: 7fc5928 Added VS_GenEff to ControlParameters input files
REVERT: 87e4a2f Updated NREL5MW baseline ControlParameter file, included a fix in constant power control + generator efficiency
REVERT: 8953304 Minor fix in the state-machine
REVERT: 8ac02e2 Updated .gitignore
REVERT: 3e8d76b Created a separate state machine
REVERT: dbd5387 Minor bugfixes
REVERT: 1f7d186 Added simulation status every 10 seconds, objPIController, 64-bit controller
REVERT: db87912 Added saturations on (yaw-by-)IPC contributions, updated ControllerParameter file.
REVERT: 81635a0 Merge branch 'DevelopmentStateMachine'
REVERT: 611f46e Complete modularization of the DRC code
REVERT: a414224 Updated IPC subroutine to use types instead of separate variables
REVERT: 762bc92 Cleaned up the IPC subroutine
REVERT: 0a86bd3 Added type ObjectInstances, to enable object-oriented-like programming of filters possible
REVERT: 096c996 Update compilation code for linux systems
REVERT: 9d11f50 NREL parameter file needs to be updated (pending)
REVERT: b5719fd Added an updates DTU10MW ControllerParameters.in file
REVERT: 8388afd Collected all controller settings in a single parameter file, added derived types
REVERT: 4891dce Merge remote-tracking branch 'origin/master'
REVERT: d00387c Added Types.f90
REVERT: 7b61b0a Bugfixes: double use of a filter object (yaw-by-IPC)
REVERT: a724e84 Fix small spelling typo
REVERT: 26f4bd2 Merge pull request #1 from Bartdoekemeijer/master
REVERT: 43ce979 Merge branch 'master' of https://github.com/TUDelft-DataDrivenControl/DISCON_Fortran
REVERT: eb59581 Update compileDISCON to include right libraries, compile as single .so. Now tested with OpenFAST and seems to work...
REVERT: 8553e77 Bugfixes regarding constant power control, updated controller tuning for DTU10MW turbine
REVERT: 33ce609 Add code for compiling the DISCON file on a linux system. The .dll format becomes a .so format.
REVERT: 23c7033 Added constant power contol mode, updated compiled binary, updated parameter files, made IPC more modular
REVERT: c2711ac Added GNU GPLv3 license file
REVERT: 19b3d1f Updated documentation
REVERT: 267e6f5 Added parameter files for the DTU10MW turbine
REVERT: 768e9c3 Updated PitchGains.In file
REVERT: 590e008 Added notch filter in Filters.f90, added DFController in FunctionToolbox.f90 (derivative term with first order filter)
REVERT: ff6e0d8 Separated pitch speed setpoint from generator speed setpoint
REVERT: 421316b Made code even more modular
REVERT: 675b940 Updated documentation
REVERT: b1f7676 Updated documentation
REVERT: d7300f8 Final changes: removed redundant variables/constants, switching between different yaw controllers from parameter file, made code more modular
REVERT: fa15b4a Added gain-scheduled pitch control functionality by defining a pitch gain input file
REVERT: 649fedb Added yaw-by-IPC functionality for NREL5MW
REVERT: b25eec4 Additional code clean-up and added a rate saturation function
REVERT: 14b0fca Added interp1d function, added functional yaw controller
REVERT: a338198 Some code cleanup and refactoring
REVERT: 30edc63 Working NREL5MW controller, with IPC, generator torque control, pitch control
REVERT: 1e00e60 Fixed generator torque controller and pitch controller.
REVERT: 585f33a Included a general PI controller with outpur saturations in the FunctionToolbox and implemented generator region 2.5 PI torque control *untested*
REVERT: 72db4bd Started creation of a PI controller function for generator torque control in region 2.5 (unfinished!)
REVERT: 16a7566 Updates documentation, defined NREL5MW ServoDyn constants for Bladed interface and solved a switching issue between pitch and torque control
REVERT: 79be70f Initial upload to GitHub

git-subtree-dir: ROSCO
git-subtree-split: 5168657
  • Loading branch information
Ben-Mertz committed Oct 3, 2024
1 parent 2e84776 commit 3d502a1
Show file tree
Hide file tree
Showing 775 changed files with 399,840 additions and 1 deletion.
33 changes: 33 additions & 0 deletions ROSCO/.github/ISSUE_TEMPLATE/bug_report.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
---
name: Bug report
about: Create a report to help us improve
title: ''
labels: ''
assignees: ''

---

## Desired use case
_If you are able, please provide some background about your ROSCO use case. It helps guide our development and could help us better fix your issue._

## Description
_Describe the bug here_

### Steps to reproduce issue
_Please provide a minimum working example (MWE) if possible_

1.
2.
3.

### Current behavior

### Expected behavior


### Code versions
_List versions only if relevant_
- Python
-
14 changes: 14 additions & 0 deletions ROSCO/.github/ISSUE_TEMPLATE/feature_request.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
---
name: Feature request
about: Suggest an idea for this project
title: ''
labels: ''
assignees: ''

---

# Description of feature
Describe the feature here and provide some context. Under what scenario would this be useful?

# Potential solution
Can you think of ways to implement this?
29 changes: 29 additions & 0 deletions ROSCO/.github/pull_request_template.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
## Description and Purpose

## Type of change
What types of change is it?
_Select the appropriate type(s) that describe this PR_

- [ ] Bugfix (non-breaking change which fixes an issue)
- [ ] New feature (non-breaking change which adds functionality)
- [ ] Breaking change (non-backwards-compatible fix or feature)
- [ ] Code style update (formatting, renaming)
- [ ] Refactoring (no functional changes, no API changes)
- [ ] Documentation update
- [ ] Maintenance update
- [ ] Other (please describe)

TODO Items General:
- [ ] Add example/test for new feature
- [ ] Update registry
- [ ] Run testing

TODO Items API Change:
- [ ] Update docs with API change
- [ ] Run update_rosco_discons.py in Test_Cases/
- [ ] Update DISCON schema

## Github issues addressed, if one exists

## Examples/Testing, if applicable

10 changes: 10 additions & 0 deletions ROSCO/.github/tools/cibw_repair_wheel_command_windows.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
#!/usr/bin/env bash

set -e
set -x

WHEEL=$1
DEST_DIR=$2

python -m pip install delvewheel
python -m delvewheel show "$WHEEL" && python -m delvewheel repair -w "$DEST_DIR" "$WHEEL" --no-mangle-all
185 changes: 185 additions & 0 deletions ROSCO/.github/workflows/CI_rosco-compile.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,185 @@
name: CI_rosco-compile

# We run CI on push commits on all branches
on: [push, pull_request]


# A workflow run is made up of one or more jobs that can run sequentially or in parallel
jobs:
build_pip:
name: Pip Build (${{ matrix.os }}) - ${{ matrix.python-version }}
runs-on: ${{ matrix.os }}
defaults:
run:
shell: bash -l {0}

strategy:
fail-fast: false #true
matrix:
os: ["ubuntu-latest", "macOS-latest", "windows-latest"] #mac-13 intel, mac-14 arm
python-version: ["3.9", "3.10", "3.11", "3.12"]

steps:
- name: Setup GNU Fortran
if: false == contains( matrix.os, 'windows')
uses: fortran-lang/setup-fortran@v1.6
# with:
# compiler: intel-classic

- name: Install compiler
if: false == contains( matrix.os, 'windows')
id: install_cc
uses: rlalik/setup-cpp-compiler@master
with:
compiler: clang

- name: Install mingw-w64 on Windows
if: contains( matrix.os, 'windows')
uses: msys2/setup-msys2@v2
with:
path-type: inherit
install: |
mingw-w64-x86_64-gcc
mingw-w64-x86_64-gcc-fortran
mingw-w64-x86_64-zeromq
mingw-w64-x86_64-cmake
mingw-w64-x86_64-pkg-config
- name: Install zeromq ubuntu
if: contains( matrix.os, 'ubuntu')
run: |
sudo apt install libzmq3-dev libzmq5 libczmq-dev libczmq4
- name: Install zeromq mac
if: contains( matrix.os, 'mac')
run: |
brew install zeromq
- name: checkout repository
uses: actions/checkout@v4

- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v5
id: cp
with:
python-version: ${{ matrix.python-version }}
update-environment: true

- name: Set compilers
if: false == contains( matrix.os, 'windows')
run: |
echo "CC=${{ steps.install_cc.outputs.cc }}" >> $GITHUB_ENV
echo "CXX=${{ steps.install_cc.outputs.cxx }}" >> $GITHUB_ENV
#- name: Setup tmate session
# if: contains( matrix.os, 'windows')
# uses: mxschmitt/action-tmate@v3

# Install ZeroMQ- should be done via Conda
#- name: Install ZeroMQ
# run: |
# sudo apt-get update
# sudo apt-get install libzmq3-dev

- name: Pip Install ROSCO
run: |
'${{ steps.cp.outputs.python-path }}' -m pip install -e .
# Re-generate registry
- name: Generate Registry
run: |
'${{ steps.cp.outputs.python-path }}' rosco/controller/rosco_registry/write_registry.py
- name: Test run
# skipping pip test on windows for now until wisdem pypi is ready
if: false == contains( matrix.os, 'windows')
run: |
cd Examples
'${{ steps.cp.outputs.python-path }}' 01_turbine_model.py
build_and_test_conda:
name: Conda Build (${{ matrix.os }}) - ${{ matrix.python-version }}
runs-on: ${{ matrix.os }}
defaults:
run:
shell: bash -el {0}

strategy:
fail-fast: false #true
matrix:
os: ["ubuntu-latest", "macOS-13", "windows-latest"] #mac-13 intel, mac-14 arm
python-version: ["3.9", "3.10", "3.11", "3.12"]

steps:
- name: checkout repository
uses: actions/checkout@v4

- uses: conda-incubator/setup-miniconda@v2
# https://github.com/marketplace/actions/setup-miniconda
with:
#mamba-version: "*"
miniforge-version: "latest"
auto-update-conda: true
python-version: ${{ matrix.python-version }}
environment-file: environment.yml
activate-environment: test
auto-activate-base: false

- name: Add dependencies windows specific
if: contains( matrix.os, 'windows')
run: |
conda install -y m2w64-toolchain libpython
gfortran --version
- name: Add dependencies mac specific
if: contains( matrix.os, 'mac')
run: |
conda install -y compilers
gfortran --version
# Install
- name: Debug
run: |
conda list
printenv
- name: Conda Install ROSCO
run: |
python -m pip install -e .
- name: Install OpenFAST
run: |
conda install openfast==3.5.3
- name: Generate Registry
run: |
python rosco/controller/rosco_registry/write_registry.py
- name: Fix example file extensions
run: |
python Examples/Test_Cases/update_libdiscon_extension.py
#- name: Setup tmate session
# uses: mxschmitt/action-tmate@v3
# with:
# detached: true
# if: contains( matrix.os, 'windows')

- name: Run ROSCO testing
run: |
cd rosco/test
python ROSCO_testing.py
- name: Run regression testing
if: contains( matrix.os, 'ubuntu')
run: |
cd rosco/test
pytest .
- name: Test walkthrough notebook
if: contains( matrix.os, 'ubuntu')
run: |
cd Examples
treon ROSCO_walkthrough.ipynb
Loading

0 comments on commit 3d502a1

Please sign in to comment.