![]() |
OpenFAST
Wind turbine multiphysics simulator
|
Abbreviations: More...
Functions/Subroutines | |
subroutine, public | fvw_init (AFInfo, InitInp, u, p, x, xd, z, OtherState, y, m, Interval, InitOut, ErrStat, ErrMsg) |
This routine is called at the start of the simulation to perform initialization steps. More... | |
subroutine | fvw_initmiscvars (p, m, ErrStat, ErrMsg) |
subroutine | fvw_initmiscvarspostparam (p, m, ErrStat, ErrMsg) |
subroutine | fvw_initstates (x, p, ErrStat, ErrMsg) |
subroutine | fvw_initconstraint (z, p, m, ErrStat, ErrMsg) |
subroutine | fvw_init_y (p, u, y, ErrStat, ErrMsg) |
subroutine | fvw_setparametersfrominputs (InitInp, p, ErrStat, ErrMsg) |
Setting parameters and misc from module inputs. More... | |
subroutine | fvw_setparametersfrominputfile (InputFileData, p, m, ErrStat, ErrMsg) |
subroutine | fvw_tostring (p, m) |
subroutine, public | fvw_end (u, p, x, xd, z, OtherState, y, m, ErrStat, ErrMsg) |
This routine is called at the end of the simulation. More... | |
subroutine, public | fvw_updatestates (t, n, u, utimes, p, x, xd, z, OtherState, AFInfo, m, errStat, errMsg) |
Loose coupling routine for solving for constraint states, integrating continuous states, and updating discrete and other states. More... | |
subroutine | fvw_calccontstatederiv (t, u, p, x, xd, z, OtherState, m, dxdt, ErrStat, ErrMsg) |
This is a tight coupling routine for computing derivatives of continuous states. More... | |
subroutine | fvw_euler1 (t, u, p, x, xd, z, OtherState, m, ErrStat, ErrMsg) |
subroutine | fvw_calcconstrstateresidual (t, u, p, x, xd, z_guess, OtherState, m, z_out, AFInfo, ErrStat, ErrMsg, iLabel) |
This is a tight coupling routine for solving for the residual of the constraint state functions. More... | |
subroutine, public | fvw_calcoutput (t, u, p, x, xd, z, OtherState, AFInfo, y, m, ErrStat, ErrMsg) |
Routine for computing outputs, used in both loose and tight coupling. More... | |
subroutine | ua_init_wrapper (AFInfo, InitInp, interval, p, x, xd, OtherState, m, ErrStat, ErrMsg) |
subroutine | ua_updatestate_wrapper (AFInfo, n, u, p, x, xd, OtherState, m, ErrStat, ErrMsg) |
Variables | |
type(progdesc), parameter | fvw_ver = ProgDesc( 'FVW', '', '' ) |
real(dbki), parameter | oneminusepsilon = 1 - 10000*EPSILON(1.0_DbKi) |
Abbreviations:
|
private |
This is a tight coupling routine for solving for the residual of the constraint state functions.
[in] | t | Current simulation time in seconds |
[in] | u | Inputs at t |
[in] | p | Parameters |
[in] | x | Continuous states at t |
[in] | xd | Discrete states at t |
[in] | z_guess | Constraint states at t (possibly a guess) |
[in] | otherstate | Other states at t |
[in,out] | m | Misc variables for optimization (not copied in glue code) |
[out] | z_out | Residual of the constraint state functions using |
[in] | afinfo | The airfoil parameter data |
[out] | errstat | Error status of the operation |
[out] | errmsg | Error message if ErrStat /= ErrID_None |
|
private |
This is a tight coupling routine for computing derivatives of continuous states.
[in] | t | Current simulation time in seconds |
[in] | u | Inputs at t |
[in] | p | Parameters |
[in] | x | Continuous states at t |
[in] | xd | Discrete states at t |
[in] | z | Constraint states at t |
[in] | otherstate | Other states at t |
[in,out] | m | Misc variables for optimization (not copied in glue code) |
[out] | dxdt | Continuous state derivatives at t |
[out] | errstat | Error status of the operation |
[out] | errmsg | Error message if ErrStat /= ErrID_None |
subroutine, public fvw::fvw_calcoutput | ( | real(dbki), intent(in) | t, |
type(fvw_inputtype), intent(in) | u, | ||
type(fvw_parametertype), intent(in) | p, | ||
type(fvw_continuousstatetype), intent(in) | x, | ||
type(fvw_discretestatetype), intent(in) | xd, | ||
type(fvw_constraintstatetype), intent(in) | z, | ||
type(fvw_otherstatetype), intent(in) | OtherState, | ||
type(afi_parametertype), dimension(:), intent(in) | AFInfo, | ||
type(fvw_outputtype), intent(inout) | y, | ||
type(fvw_miscvartype), intent(inout) | m, | ||
integer(intki), intent(out) | ErrStat, | ||
character(*), intent(out) | ErrMsg | ||
) |
Routine for computing outputs, used in both loose and tight coupling.
This subroutine is used to compute the output channels (motions and loads) and place them in the WriteOutput() array. The descriptions of the output channels are not given here. Please see the included OutListParameters.xlsx sheet for for a complete description of each output parameter.
[in] | t | Current simulation time in seconds |
[in] | u | Inputs at Time t |
[in] | p | Parameters |
[in] | x | Continuous states at t |
[in] | xd | Discrete states at t |
[in] | z | Constraint states at t |
[in] | otherstate | Other states at t |
[in] | afinfo | The airfoil parameter data |
[in,out] | y | Outputs computed at t (Input only so that mesh con- nectivity information does not have to be recalculated) |
[in,out] | m | Misc/optimization variables |
[out] | errstat | Error status of the operation |
[out] | errmsg | Error message if ErrStat /= ErrID_None |
subroutine, public fvw::fvw_end | ( | type(fvw_inputtype), dimension(:), intent(inout) | u, |
type(fvw_parametertype), intent(inout) | p, | ||
type(fvw_continuousstatetype), intent(inout) | x, | ||
type(fvw_discretestatetype), intent(inout) | xd, | ||
type(fvw_constraintstatetype), intent(inout) | z, | ||
type(fvw_otherstatetype), intent(inout) | OtherState, | ||
type(fvw_outputtype), intent(inout) | y, | ||
type(fvw_miscvartype), intent(inout) | m, | ||
integer(intki), intent(out) | ErrStat, | ||
character(*), intent(out) | ErrMsg | ||
) |
This routine is called at the end of the simulation.
[in,out] | u | System inputs |
[in,out] | p | Parameters |
[in,out] | x | Continuous states |
[in,out] | xd | Discrete states |
[in,out] | z | Constraint states |
[in,out] | otherstate | Other states |
[in,out] | y | System outputs |
[in,out] | m | Misc/optimization variables |
[out] | errstat | Error status of the operation |
[out] | errmsg | Error message if ErrStat /= ErrID_None |
|
private |
[in] | t | Current simulation time in seconds |
[in] | u | Input at t |
[in] | p | Parameters |
[in,out] | x | Continuous states at t on input at t + dt on output |
[in] | xd | Discrete states at t |
[in] | z | Constraint states at t (possibly a guess) |
[in,out] | otherstate | Other states at t on input at t + dt on output |
[in,out] | m | Misc/optimization variables |
[out] | errstat | Error status of the operation |
[out] | errmsg | Error message if ErrStat /= ErrID_None |
subroutine, public fvw::fvw_init | ( | type(afi_parametertype), dimension(:), intent(in) | AFInfo, |
type(fvw_initinputtype), intent(inout) | InitInp, | ||
type(fvw_inputtype), intent(out) | u, | ||
type(fvw_parametertype), intent(out) | p, | ||
type(fvw_continuousstatetype), intent(out) | x, | ||
type(fvw_discretestatetype), intent(out) | xd, | ||
type(fvw_constraintstatetype), intent(out) | z, | ||
type(fvw_otherstatetype), intent(out) | OtherState, | ||
type(fvw_outputtype), intent(out) | y, | ||
type(fvw_miscvartype), intent(out) | m, | ||
real(dbki), intent(inout) | Interval, | ||
type(fvw_initoutputtype), intent(out) | InitOut, | ||
integer(intki), intent(out) | ErrStat, | ||
character(*), intent(out) | ErrMsg | ||
) |
This routine is called at the start of the simulation to perform initialization steps.
The parameters are set here and not changed during the simulation. The initial states and initial guess for the input are defined.
[in] | afinfo | The airfoil parameter data, temporary, for UA.. |
[in,out] | initinp | Input data for initialization routine (inout so we can use MOVE_ALLOC) |
[out] | u | An initial guess for the input; input mesh must be defined |
[out] | p | Parameters |
[out] | x | Initial continuous states |
[out] | xd | Initial discrete states |
[out] | z | Initial guess of the constraint states |
[out] | otherstate | Initial other states |
[out] | y | Initial system outputs (outputs are not calculated; only the output mesh is initialized) |
[out] | m | Initial misc/optimization variables |
[in,out] | interval | Coupling interval in seconds: the rate that (1) FVW_UpdateStates() is called in loose coupling & (2) FVW_UpdateDiscState() is called in tight coupling. Input is the suggested time from the glue code; Output is the actual coupling interval that will be used by the glue code. |
[out] | initout | Output for initialization routine |
[out] | errstat | Error status of the operation |
[out] | errmsg | Error message if ErrStat /= ErrID_None |
|
private |
[in] | p | Parameters |
[in,out] | u | An initial guess for the input; input mesh must be defined |
[out] | y | Constraints |
[out] | errstat | Error status of the operation |
[out] | errmsg | Error message if ErrStat /= ErrID_None |
|
private |
[out] | z | Constraints |
[in] | p | Parameters |
[in] | m | Initial misc/optimization variables |
[out] | errstat | Error status of the operation |
[out] | errmsg | Error message if ErrStat /= ErrID_None |
|
private |
[in] | p | Parameters |
[in,out] | m | Initial misc/optimization variables |
[out] | errstat | Error status of the operation |
[out] | errmsg | Error message if ErrStat /= ErrID_None |
|
private |
[in] | p | Parameters |
[in,out] | m | Initial misc/optimization variables |
[out] | errstat | Error status of the operation |
[out] | errmsg | Error message if ErrStat /= ErrID_None |
|
private |
[out] | x | States |
[in] | p | Parameters |
[out] | errstat | Error status of the operation |
[out] | errmsg | Error message if ErrStat /= ErrID_None |
|
private |
[in] | inputfiledata | Data stored in the module's input file |
[in,out] | p | Parameters |
[in,out] | m | Misc |
[out] | errstat | Error status of the operation |
[out] | errmsg | Error message if ErrStat /= ErrID_None |
|
private |
Setting parameters and misc from module inputs.
[in,out] | initinp | Input data for initialization routine (inout so we can use MOVE_ALLOC) |
[in,out] | p | Parameters |
[out] | errstat | Error status of the operation |
[out] | errmsg | Error message if ErrStat /= ErrID_None |
|
private |
[in] | p | Parameters |
[in,out] | m | Misc |
subroutine, public fvw::fvw_updatestates | ( | real(dbki), intent(in) | t, |
integer(intki), intent(in) | n, | ||
type(fvw_inputtype), dimension(:), intent(inout) | u, | ||
real(dbki), dimension(:), intent(in) | utimes, | ||
type(fvw_parametertype), intent(in) | p, | ||
type(fvw_continuousstatetype), intent(inout) | x, | ||
type(fvw_discretestatetype), intent(inout) | xd, | ||
type(fvw_constraintstatetype), intent(inout) | z, | ||
type(fvw_otherstatetype), intent(inout) | OtherState, | ||
type(afi_parametertype), dimension(:), intent(in) | AFInfo, | ||
type(fvw_miscvartype), intent(inout) | m, | ||
integer(intki), intent(out) | errStat, | ||
character(*), intent(out) | errMsg | ||
) |
Loose coupling routine for solving for constraint states, integrating continuous states, and updating discrete and other states.
Continuous, constraint, discrete, and other states are updated for t + Interval
[in] | t | Current simulation time in seconds |
[in] | n | Current simulation time step n = 0,1,... |
[in,out] | u | Inputs at utimes (out only for mesh record-keeping in ExtrapInterp routine) |
[in] | utimes | Times associated with u(:), in seconds |
[in] | p | Parameters |
[in,out] | x | Input: Continuous states at t; Output: at t+DTaero |
[in,out] | xd | Input: Discrete states at t; Output: at t+DTaero |
[in,out] | z | Input: Constraint states at t; Output: at t+DTaero |
[in,out] | otherstate | Input: Other states at t; Output: at t+DTaero |
[in] | afinfo | The airfoil parameter data |
[in,out] | m | Misc/optimization variables |
[out] | errstat | Error status of the operation |
[out] | errmsg | Error message if ErrStat /= ErrID_None |
|
private |
[in] | afinfo | The airfoil parameter data, temporary, for UA.. |
[in,out] | initinp | Input data for initialization routine (inout so we can use MOVE_ALLOC) |
[in,out] | interval | time interval |
[in,out] | p | Parameters |
[in,out] | x | Initial continuous states |
[in,out] | xd | Initial discrete states |
[in,out] | otherstate | Initial other states |
[in,out] | m | Initial misc/optimization variables |
[out] | errstat | Error status of the operation |
[out] | errmsg | Error message if ErrStat /= ErrID_None |
|
private |
[in] | afinfo | The airfoil parameter data, temporary, for UA.. |
[in] | n | time step |
[in] | p | Parameters |
[in] | u | Inputs |
[in,out] | x | Initial continuous states |
[in,out] | xd | Initial discrete states |
[in,out] | otherstate | Initial other states |
[in,out] | m | Initial misc/optimization variables |
[out] | errstat | Error status of the operation |
[out] | errmsg | Error message if ErrStat /= ErrID_None |