Skip to content
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
10 changes: 7 additions & 3 deletions modules/openfast-library/src/FAST_Library.f90
Original file line number Diff line number Diff line change
Expand Up @@ -1145,6 +1145,7 @@ subroutine FAST_CFD_AdvanceToNextTimeStep(iTurb, ErrStat_c, ErrMsg_c) BIND (C, N
INTEGER(C_INT), INTENT(IN ) :: iTurb ! Turbine number
INTEGER(C_INT), INTENT( OUT) :: ErrStat_c
CHARACTER(KIND=C_CHAR), INTENT( OUT) :: ErrMsg_c(IntfStrLen)
REAL(DbKi) :: t_now ! current timestep of this turbine


IF ( n_t_global > Turbine(iTurb)%p_FAST%n_TMax_m1 ) THEN !finish
Expand All @@ -1166,7 +1167,8 @@ subroutine FAST_CFD_AdvanceToNextTimeStep(iTurb, ErrStat_c, ErrMsg_c) BIND (C, N

ELSE

CALL FAST_AdvanceToNextTimeStep_T( t_initial, n_t_global, Turbine(iTurb), ErrStat, ErrMsg )
t_now = n_t_global*Turbine(iTurb)%p_FAST%dt
CALL FAST_AdvanceToNextTimeStep_T( t_now, n_t_global, Turbine(iTurb), ErrStat, ErrMsg )

! if(Turbine(iTurb)%SC%p%scOn) then
! CALL SC_SetInputs(Turbine(iTurb)%p_FAST, Turbine(iTurb)%SrvD%y, Turbine(iTurb)%SC, ErrStat, ErrMsg)
Expand All @@ -1193,8 +1195,10 @@ subroutine FAST_CFD_WriteOutput(iTurb, ErrStat_c, ErrMsg_c) BIND (C, NAME='FAST_
INTEGER(C_INT), INTENT(IN ) :: iTurb ! Turbine number
INTEGER(C_INT), INTENT( OUT) :: ErrStat_c
CHARACTER(KIND=C_CHAR), INTENT( OUT) :: ErrMsg_c(IntfStrLen)
REAL(DbKi) :: t_now ! current timestep of this turbine

CALL FAST_WriteOutput_T( t_initial, n_t_global, Turbine(iTurb), ErrStat, ErrMsg )
t_now = n_t_global*Turbine(iTurb)%p_FAST%dt
CALL FAST_WriteOutput_T( t_now, n_t_global, Turbine(iTurb), ErrStat, ErrMsg )

end subroutine FAST_CFD_WriteOutput
!==================================================================================================================================
Expand Down Expand Up @@ -1228,7 +1232,7 @@ subroutine FAST_CFD_Step(iTurb, ErrStat_c, ErrMsg_c) BIND (C, NAME='FAST_CFD_Ste

ELSE

CALL FAST_Solution_T( t_initial, n_t_global, Turbine(iTurb), ErrStat, ErrMsg )
CALL FAST_Solution_T(t_initial, n_t_global, Turbine(iTurb), ErrStat, ErrMsg )

if (iTurb .eq. (NumTurbines-1) ) then
n_t_global = n_t_global + 1
Expand Down
2 changes: 1 addition & 1 deletion modules/openfast-library/src/FAST_Registry.txt
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,7 @@ param ^ - INTEGER Module_ED - 4 - "ElastoDyn" -
param ^ - INTEGER Module_BD - 5 - "BeamDyn" -
param ^ - INTEGER Module_AD14 - 6 - "AeroDyn14" -
param ^ - INTEGER Module_AD - 7 - "AeroDyn" -
param ^ - INTEGER Module_ExtLd - 8 - "AeroDyn" -
param ^ - INTEGER Module_ExtLd - 8 - "ExternalLoads" -
param ^ - INTEGER Module_SrvD - 9 - "ServoDyn" -
param ^ - INTEGER Module_SeaSt - 10 - "SeaState" -
param ^ - INTEGER Module_HD - 11 - "HydroDyn" -
Expand Down
12 changes: 6 additions & 6 deletions modules/openfast-library/src/FAST_Subs.f90
Original file line number Diff line number Diff line change
Expand Up @@ -8021,26 +8021,26 @@ END SUBROUTINE FAST_AdvanceToNextTimeStep
!----------------------------------------------------------------------------------------------------------------------------------
!> Routine that calls FAST_WriteOutput for one instance of a Turbine data structure. This is a separate subroutine so that the FAST
!! driver programs do not need to change or operate on the individual module level.
SUBROUTINE FAST_WriteOutput_T(t_initial, n_t_global, Turbine, ErrStat, ErrMsg )
SUBROUTINE FAST_WriteOutput_T(t_now, n_t_global, Turbine, ErrStat, ErrMsg )

REAL(DbKi), INTENT(IN ) :: t_initial !< initial time
REAL(DbKi), INTENT(IN ) :: t_now !< current time
INTEGER(IntKi), INTENT(IN ) :: n_t_global !< loop counter
TYPE(FAST_TurbineType), INTENT(INOUT) :: Turbine !< all data for one instance of a turbine
INTEGER(IntKi), INTENT( OUT) :: ErrStat !< Error status of the operation
CHARACTER(*), INTENT( OUT) :: ErrMsg !< Error message if ErrStat /= ErrID_None

CALL FAST_WriteOutput(t_initial, n_t_global, Turbine%p_FAST, Turbine%y_FAST, Turbine%m_FAST, &
CALL FAST_WriteOutput(t_now, n_t_global, Turbine%p_FAST, Turbine%y_FAST, Turbine%m_FAST, &
Turbine%ED, Turbine%BD, Turbine%SrvD, Turbine%AD14, Turbine%AD, Turbine%ExtLd, Turbine%IfW, Turbine%ExtInfw, Turbine%SC_DX, &
Turbine%SeaSt, Turbine%HD, Turbine%SD, Turbine%ExtPtfm, Turbine%MAP, Turbine%FEAM, Turbine%MD, Turbine%Orca, &
Turbine%IceF, Turbine%IceD, Turbine%MeshMapData, ErrStat, ErrMsg )

END SUBROUTINE FAST_WriteOutput_T
!----------------------------------------------------------------------------------------------------------------------------------
!> This routine writes the outputs at this timestep
SUBROUTINE FAST_WriteOutput(t_global, n_t_global, p_FAST, y_FAST, m_FAST, ED, BD, SrvD, AD14, AD, ExtLd, IfW, ExtInfw, SC_DX, &
SUBROUTINE FAST_WriteOutput(t_now, n_t_global, p_FAST, y_FAST, m_FAST, ED, BD, SrvD, AD14, AD, ExtLd, IfW, ExtInfw, SC_DX, &
SeaSt, HD, SD, ExtPtfm, MAPp, FEAM, MD, Orca, IceF, IceD, MeshMapData, ErrStat, ErrMsg )

REAL(DbKi), INTENT(IN ) :: t_global !< initial time
REAL(DbKi), INTENT(IN ) :: t_now !< initial time
INTEGER(IntKi), INTENT(IN ) :: n_t_global !< loop counter

TYPE(FAST_ParameterType), INTENT(IN ) :: p_FAST !< Parameters for the glue code
Expand Down Expand Up @@ -8087,7 +8087,7 @@ SUBROUTINE FAST_WriteOutput(t_global, n_t_global, p_FAST, y_FAST, m_FAST, ED, BD
!----------------------------------------------------------------------------------------
!! Check to see if we should output data this time step:
!----------------------------------------------------------------------------------------
CALL WriteOutputToFile(n_t_global, m_FAST%t_global, p_FAST, y_FAST, ED, BD, AD14, AD, IfW, ExtInfw, SeaSt, HD, SD, ExtPtfm, &
CALL WriteOutputToFile(n_t_global, t_now, p_FAST, y_FAST, ED, BD, AD14, AD, IfW, ExtInfw, SeaSt, HD, SD, ExtPtfm, &
SrvD, MAPp, FEAM, MD, Orca, IceF, IceD, MeshMapData, ErrStat2, ErrMsg2)
CALL SetErrStat(ErrStat2, ErrMsg2, ErrStat, ErrMsg, RoutineName )

Expand Down
2 changes: 1 addition & 1 deletion modules/openfast-library/src/FAST_Types.f90
Original file line number Diff line number Diff line change
Expand Up @@ -60,7 +60,7 @@ MODULE FAST_Types
INTEGER(IntKi), PUBLIC, PARAMETER :: Module_BD = 5 ! BeamDyn [-]
INTEGER(IntKi), PUBLIC, PARAMETER :: Module_AD14 = 6 ! AeroDyn14 [-]
INTEGER(IntKi), PUBLIC, PARAMETER :: Module_AD = 7 ! AeroDyn [-]
INTEGER(IntKi), PUBLIC, PARAMETER :: Module_ExtLd = 8 ! AeroDyn [-]
INTEGER(IntKi), PUBLIC, PARAMETER :: Module_ExtLd = 8 ! ExternalLoads [-]
INTEGER(IntKi), PUBLIC, PARAMETER :: Module_SrvD = 9 ! ServoDyn [-]
INTEGER(IntKi), PUBLIC, PARAMETER :: Module_SeaSt = 10 ! SeaState [-]
INTEGER(IntKi), PUBLIC, PARAMETER :: Module_HD = 11 ! HydroDyn [-]
Expand Down