module CChokeManifoldVariables use CManifolds implicit none public ! Input vars logical :: ChokeManifoldValve1 logical :: ChokeManifoldValve2 real(8) :: LeftManualChoke logical :: ChokeManifoldValve4 logical :: ChokeManifoldValve5 real(8) :: RightManualChoke logical :: ChokeManifoldValve7 logical :: ChokeManifoldValve8 logical :: ChokeManifoldValve9 logical :: ChokeManifoldValve10 logical :: ChokeManifoldValve11 logical :: ChokeManifoldValve12 logical :: ChokeManifoldValve13 ! Output vars integer :: HydraulicChock1 integer :: HydraulicChock2 ! Control vars logical :: HyChock1OnProblem = .false. logical :: HyChock2OnProblem = .false. logical :: LeftManChokeOnProblem = .false. logical :: RightManChokeOnProblem = .false. contains subroutine SetHydraulicChock1(v) implicit none integer, intent(in) :: v HydraulicChock1 = v if(HyChock1OnProblem) then call ChangeValve(33, .true.) else if(v == 100) then if(Valve(33)%Status) call ChangeValve(33, .false.) else if(.not.Valve(33)%Status) call ChangeValve(33, .true.) endif endif !WRITE (*,*) ' valve 33 ', Valve(33)%Status, ' arg ', v end subroutine subroutine SetHydraulicChock2(v) implicit none integer, intent(in) :: v HydraulicChock2 = v if(HyChock2OnProblem) then call ChangeValve(34, .true.) else if(v==100) then if(Valve(34)%Status) call ChangeValve(34, .false.) else if(.not.Valve(34)%Status) call ChangeValve(34, .true.) endif endif !WRITE (*,*) ' valve 34 ', Valve(34)%Status, ' arg ', v end subroutine endmodule CChokeManifoldVariables