Simulation Core
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

76 regels
2.3 KiB

  1. module AnnularMain
  2. implicit none
  3. public
  4. contains
  5. ! subroutine Annular_Setup()
  6. ! ! use CSimulationVariables
  7. ! implicit none
  8. ! call OnSimulationInitialization%Add(Annular_Init)
  9. ! call OnSimulationStop%Add(Annular_Init)
  10. ! call OnAnnularStep%Add(Annular_Step)
  11. ! call OnAnnularOutput%Add(Annular_Output)
  12. ! call OnAnnularMain%Add(AnnularMainBody)
  13. ! end subroutine
  14. ! subroutine Annular_Init
  15. ! implicit none
  16. ! end subroutine Annular_Init
  17. subroutine Annular_Step
  18. use VARIABLES
  19. implicit none
  20. if (Annular%finished_Annular/=0) then
  21. call ANNULAR_SUB1
  22. if (Annular%AnnularIsOpening .or. Annular%AnnularIsClosing .or. RAM(1)%Bottles_Charged_MalfActive) then
  23. if(Annular%finished_Annular==0) then
  24. call ANNULAR_SUB2 !only body of loop2
  25. endif
  26. endif
  27. else
  28. call ANNULAR_SUB2
  29. endif
  30. end subroutine Annular_Step
  31. ! subroutine Annular_Output
  32. ! implicit none
  33. ! end subroutine Annular_Output
  34. ! subroutine AnnularMainBody
  35. ! USE ifport
  36. ! USE ifmt
  37. ! ! use CSimulationVariables
  38. ! ! USE BOP
  39. ! implicit none
  40. ! INTEGER :: AnnularDuration
  41. ! integer,dimension(8) :: AnnularStartTime , AnnularEndTime
  42. ! ! CALL BOP_StartUp()
  43. ! loop1: DO
  44. ! CALL DATE_AND_TIME(values=AnnularStartTime)
  45. ! CALL ANNULAR
  46. ! CALL DATE_AND_TIME(values=AnnularEndTime)
  47. ! AnnularDuration = 3600000 * (AnnularEndTime(5) - AnnularStartTime(5)) + 60000 * (AnnularEndTime(6) - AnnularStartTime(6)) + 1000 * (AnnularEndTime(7) - AnnularStartTime(7)) + (AnnularEndTime(8) - AnnularStartTime(8))
  48. ! if (AnnularDuration < 100) then
  49. ! call sleepqq(100 - AnnularDuration)
  50. ! ELSE
  51. ! WRITE (*,*) 'Annular BOP run duration exceeded 100 ms and =', AnnularDuration
  52. ! end if
  53. ! IF (IsStopped==.true.) THEN
  54. ! EXIT loop1
  55. ! ENDIF
  56. ! ENDDO loop1
  57. ! ! CALL DEALLOCATE_ARRAYS()
  58. ! end subroutine AnnularMainBody
  59. end module AnnularMain