Simulation Core
Nie możesz wybrać więcej, niż 25 tematów Tematy muszą się zaczynać od litery lub cyfry, mogą zawierać myślniki ('-') i mogą mieć do 35 znaków.
 
 
 
 
 
 

115 wiersze
4.6 KiB

  1. # 1 "/home/admin/SimulationCore2/Equipments/Pumps/Pumps_Inputs.f90"
  2. subroutine Pumps_Inputs
  3. use CDrillingConsoleVariables
  4. use SimulationVariables
  5. Use MudSystemModule
  6. IMPLICIT NONE
  7. !>>>>>>>>>>>>>>>>>>>>>>> PUMP 1 <<<<<<<<<<<<<<<<<<<<<<<<<<<
  8. !data%State%Pump(1)%BlowPopOffMalf = 0 !??????? motaghayere voroudi
  9. if ( data%State%Pump(1)%BlowPopOffMalf==1 ) then ! Pump1 Malfunction ----> Blow Pop-offs (Relief Valves)
  10. data%State%Pump(1)%StandPipe_Pressure = 0.d0
  11. else
  12. data%State%Pump(1)%StandPipe_Pressure = PumpPressure1 ![psi]
  13. if ( data%State%Pump(1)%StandPipe_Pressure<=14.d0 ) then
  14. data%State%Pump(1)%StandPipe_Pressure = 14.d0
  15. end if
  16. end if
  17. data%State%Pump(1)%AssignmentSwitchh = data%Equipments%DrillingConsole%AssignmentSwitch
  18. data%State%Pump(1)%Switch = data%Equipments%DrillingConsole%MP1CPSwitch
  19. data%State%Pump(1)%Throttle = data%Equipments%DrillingConsole%MP1Throttle ![SPM] 0<MP1Throttle<data%State%Pump(1)%MaxSPM
  20. data%State%Pump(1)%Throttle = data%State%Pump(1)%Throttle*data%State%Pump(1)%Trans_Ratio ![RPM] 0<Pump(1)%Throttle<965 rpm
  21. !data%State%Pump(1)%PowerFailMalf = 0 !??????? motaghayere voroudi (Pump1 Malfunction ----> Power Failure) !dar CPumpProblemsVariables meghdardehi mishavad
  22. data%State%Pump(1)%Failure = data%Warnings%Pump1Failure !(Pump1 Warning ----> Failure)
  23. data%State%Pump(1)%N_new = data%State%Pump(1)%Throttle
  24. !>>>>>>>>>>>>>>>>>>>>>>> PUMP 2 <<<<<<<<<<<<<<<<<<<<<<<<<<<
  25. !data%State%Pump(2)%BlowPopOffMalf = 0 !??????? motaghayere voroudi
  26. if ( data%State%Pump(2)%BlowPopOffMalf==1 ) then ! Pump2 Malfunction ----> Blow Pop-offs (Relief Valves)
  27. data%State%Pump(2)%StandPipe_Pressure = 0.d0
  28. else
  29. data%State%Pump(2)%StandPipe_Pressure = PumpPressure2 ![psi]
  30. if ( data%State%Pump(2)%StandPipe_Pressure<=14.d0 ) then
  31. data%State%Pump(2)%StandPipe_Pressure = 14.d0
  32. end if
  33. end if
  34. data%State%Pump(2)%AssignmentSwitchh = data%Equipments%DrillingConsole%AssignmentSwitch
  35. data%State%Pump(2)%Switch = data%Equipments%DrillingConsole%MP2Switch
  36. data%State%Pump(2)%Throttle = data%Equipments%DrillingConsole%MP2Throttle ![SPM] 0<MP2Throttle<data%State%Pump(2)%MaxSPM
  37. data%State%Pump(2)%Throttle = data%State%Pump(2)%Throttle*data%State%Pump(2)%Trans_Ratio ![RPM] 0<Pump(2)%Throttle<965 rpm
  38. !data%State%Pump(2)%PowerFailMalf = 0 !??????? motaghayere voroudi (Pump2 Malfunction ----> Power Failure) !dar CPumpProblemsVariables meghdardehi mishavad
  39. data%State%Pump(2)%Failure = data%Warnings%Pump2Failure !(Pump2 Warning ----> Failure)
  40. data%State%Pump(2)%N_new = data%State%Pump(2)%Throttle
  41. !!>>>>>>>>>>>>>>>>>>>>>>> PUMP 3 <<<<<<<<<<<<<<<<<<<<<<<<<<<
  42. !data%State%Pump(3)%BlowPopOffMalf = 0 !??????? motaghayere voroudi
  43. if ( data%State%Pump(3)%BlowPopOffMalf==1 ) then ! Pump3 Malfunction ----> Blow Pop-offs (Relief Valves)
  44. data%State%Pump(3)%StandPipe_Pressure = 0.d0
  45. else
  46. data%State%Pump(3)%StandPipe_Pressure = PumpPressure3 ![psi]
  47. if ( data%State%Pump(3)%StandPipe_Pressure<=14.d0 ) then
  48. data%State%Pump(3)%StandPipe_Pressure = 14.d0
  49. end if
  50. end if
  51. data%State%Pump(3)%Switch = data%Equipments%DrillingConsole%MP1CPSwitch
  52. data%State%Pump(3)%Throttle = data%Equipments%DrillingConsole%MP1Throttle ![SPM] 0<MP1Throttle<data%State%Pump(3)%MaxSPM
  53. data%State%Pump(3)%Throttle = data%State%Pump(3)%Throttle*data%State%Pump(3)%Trans_Ratio ![RPM] 0<Pump(3)%Throttle<965 rpm
  54. !data%State%Pump(3)%PowerFailMalf = 0 !??????? motaghayere voroudi (Pump3 Malfunction ----> Power Failure) !dar CPumpProblemsVariables meghdardehi mishavad
  55. data%State%Pump(3)%Failure = data%Warnings%Pump3Failure !(Pump1 Warning ----> Failure)
  56. data%State%Pump(3)%N_new = data%State%Pump(3)%Throttle
  57. !>>>>>>>>>>>>>>>>>>>>>>> Total Pumps <<<<<<<<<<<<<<<<<<<<<<<<<<<
  58. end subroutine Pumps_Inputs