NREL has recently put considerable effort into improving the overall modularity of its FAST wind turbine aero-hydro-servo-elastic tool to (1) improve the ability to read, implement, and maintain source code
(2) increase module sharing and shared code development across the wind community
(3) improve numerical performance and robustness
and (4) greatly enhance flexibility and expandability to enable further developments of functionality without the need to recode established modules. The new FAST modularization framework supports module-independent inputs, outputs, states, and parameters
states in continuous-time, discrete-time, and in constraint form
loose and tight coupling
independent time and spatial discretizations
time marching, operating-point determination, and linearization
data encapsulation
dynamic allocation
and save/retrieve capability. This paper explains the features of the new FAST modularization framework, as well as the concepts and mathematical background needed to understand and apply it correctly. It is envisioned that the new modularization framework will transform FAST into a powerful, robust, and flexible wind turbine modeling tool with a large number of developers and a range of modeling fidelities across the aerodynamic, hydrodynamic, servo-dynamic, and structural-dynamic components.