|
1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889 |
- # 1 "/mnt/c/Projects/VSIM/SimulationCore2/Equipments/BopStack/BlindRamsMain.f90"
- module BlindRamsMain
- implicit none
- public
- contains
-
- ! subroutine BlindRams_Setup()
- ! ! use CSimulationVariables
- ! implicit none
- ! call OnSimulationInitialization%Add(BlindRams_Init)
- ! call OnSimulationStop%Add(BlindRams_Init)
- ! call OnBlindRamsStep%Add(BlindRams_Step)
- ! call OnBlindRamsOutput%Add(BlindRams_Output)
- ! call OnBlindRamsMain%Add(BlindRamsMainBody)
- ! end subroutine
-
- ! subroutine BlindRams_Init
- ! implicit none
- ! end subroutine BlindRams_Init
-
- subroutine BlindRams_Step
- use SimulationVariables
- implicit none
- if (data%State%RamLine%FINISHED_shear/=0) then
- call SHEAR_RAMS
- if (data%State%RamLine%ShearRamIsOpening .or. data%State%RamLine%ShearRamIsClosing .or. data%State%RAM(4)%Bottles_Charged_MalfActive) then
- data%State%Annular%FirstSet= 0
- data%State%AnnularComputational%RamsFirstSet= 0
- if(data%State%RamLine%FINISHED_shear==0) then
- call SHEAR_RAMS_SUB !only body of loop2
- if (data%State%RamLine%FINISHED_shear/=0 .and. data%State%RamLine%FINISHED_shear==1 .and. data%State%RAM(4)%Bottles_Charged_MalfActive==.true.) then
- call bop_code(1,data%State%ShearRAM%H_ShearRamBop,4)
- endif
- endif
- endif
- else
- call SHEAR_RAMS_SUB
- if (data%State%RamLine%FINISHED_shear/=0 .and. data%State%RamLine%FINISHED_shear==1 .and. data%State%RAM(4)%Bottles_Charged_MalfActive==.true.) then
- call bop_code(1,data%State%ShearRAM%H_ShearRamBop,4)
- endif
- endif
-
- end subroutine BlindRams_Step
-
- ! subroutine BlindRams_Output
- ! implicit none
- ! end subroutine BlindRams_Output
-
- ! subroutine BlindRamsMainBody
- ! USE ifport
- ! USE ifmt
- ! ! use CSimulationVariables
- ! ! USE BOP
-
- ! implicit none
-
- ! INTEGER :: ShearRamDuration
- ! integer,dimension(8) :: ShearRamStartTime , ShearRamEndTime
-
-
- ! ! CALL BOP_StartUp()
- ! loop1: DO
-
- ! CALL DATE_AND_TIME(values=ShearRamStartTime)
-
-
- ! CALL SHEAR_RAMS
-
- ! CALL DATE_AND_TIME(values=ShearRamEndTime)
-
- ! ShearRamDuration = 3600000 * (ShearRamEndTime(5) - ShearRamStartTime(5)) + 60000 * (ShearRamEndTime(6) - ShearRamStartTime(6)) + 1000 * (ShearRamEndTime(7) - ShearRamStartTime(7)) + (ShearRamEndTime(8) - ShearRamStartTime(8))
-
- ! if (ShearRamDuration < 100) then
- ! call sleepqq(100 - ShearRamDuration)
- ! ELSE
- ! WRITE (*,*) 'ShearRam BOP run duration exceeded 100 ms and =', ShearRamDuration
- ! end if
-
-
- ! IF (IsStopped==.true.) THEN
- ! EXIT loop1
- ! ENDIF
-
-
- ! ENDDO loop1
-
- ! end subroutine BlindRamsMainBody
-
- end module BlindRamsMain
|