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.

CDrillWatch.f90 5.2 KiB

1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171
  1. module CDrillWatch
  2. use CDrillWatchVariables
  3. !use CSimulationVariables
  4. implicit none
  5. public
  6. contains
  7. ! Input routines
  8. ! Output routines
  9. real(8) function GetDepth()
  10. !DEC$ ATTRIBUTES DLLEXPORT :: GetDepth
  11. !DEC$ ATTRIBUTES ALIAS: 'GetDepth' :: GetDepth
  12. implicit none
  13. GetDepth = DrillingWatch%Depth
  14. !GetDepth = Depth + 10 + SimulationTime
  15. end function
  16. real(8) function GetBitPosition()
  17. !DEC$ ATTRIBUTES DLLEXPORT :: GetBitPosition
  18. !DEC$ ATTRIBUTES ALIAS: 'GetBitPosition' :: GetBitPosition
  19. implicit none
  20. GetBitPosition = DrillingWatch%BitPosition
  21. !GetBitPosition = BitPosition + 20 + SimulationTime
  22. end function
  23. real(8) function GetHookLoadD()
  24. !DEC$ ATTRIBUTES DLLEXPORT :: GetHookLoadD
  25. !DEC$ ATTRIBUTES ALIAS: 'GetHookLoadD' :: GetHookLoadD
  26. implicit none
  27. GetHookLoadD = DrillingWatch%HookLoad
  28. !GetHookLoadD = HookLoad + 30 + SimulationTime
  29. end function
  30. real(8) function GetWeightOnBit()
  31. !DEC$ ATTRIBUTES DLLEXPORT :: GetWeightOnBit
  32. !DEC$ ATTRIBUTES ALIAS: 'GetWeightOnBit' :: GetWeightOnBit
  33. implicit none
  34. GetWeightOnBit = DrillingWatch%WeightOnBit
  35. !GetWeightOnBit = WeightOnBit + 40 + SimulationTime
  36. end function
  37. real(8) function GetRPM()
  38. !DEC$ ATTRIBUTES DLLEXPORT :: GetRPM
  39. !DEC$ ATTRIBUTES ALIAS: 'GetRPM' :: GetRPM
  40. implicit none
  41. GetRPM = DrillingWatch%RPM
  42. !GetRPM = RPM + 50 + SimulationTime
  43. end function
  44. real(8) function GetROP2()
  45. !DEC$ ATTRIBUTES DLLEXPORT :: GetROP2
  46. !DEC$ ATTRIBUTES ALIAS: 'GetROP2' :: GetROP2
  47. implicit none
  48. GetROP2 = DrillingWatch%ROP
  49. !GetROP2 = ROP + 60 + SimulationTime
  50. end function
  51. real(8) function GetTorque()
  52. !DEC$ ATTRIBUTES DLLEXPORT :: GetTorque
  53. !DEC$ ATTRIBUTES ALIAS: 'GetTorque' :: GetTorque
  54. implicit none
  55. GetTorque = DrillingWatch%Torque
  56. !GetTorque = Torque + 70 + SimulationTime
  57. end function
  58. real(8) function GetPumpPressureD()
  59. !DEC$ ATTRIBUTES DLLEXPORT :: GetPumpPressureD
  60. !DEC$ ATTRIBUTES ALIAS: 'GetPumpPressureD' :: GetPumpPressureD
  61. implicit none
  62. GetPumpPressureD = DrillingWatch%PumpPressure
  63. !GetPumpPressureD = PumpPressure + 80 + SimulationTime
  64. end function
  65. real(8) function GetSPM1()
  66. !DEC$ ATTRIBUTES DLLEXPORT :: GetSPM1
  67. !DEC$ ATTRIBUTES ALIAS: 'GetSPM1' :: GetSPM1
  68. implicit none
  69. GetSPM1 = DrillingWatch%SPM1
  70. !GetSPM1 = SPM1 + 90 + SimulationTime
  71. end function
  72. real(8) function GetSPM2()
  73. !DEC$ ATTRIBUTES DLLEXPORT :: GetSPM2
  74. !DEC$ ATTRIBUTES ALIAS: 'GetSPM2' :: GetSPM2
  75. implicit none
  76. GetSPM2 = DrillingWatch%SPM2
  77. !GetSPM2 = SPM2 + 100 + SimulationTime
  78. end function
  79. ! real(8) function GetSPM3()
  80. !!DEC$ ATTRIBUTES DLLEXPORT :: GetSPM3
  81. !!DEC$ ATTRIBUTES ALIAS: 'GetSPM3' :: GetSPM3
  82. ! implicit none
  83. ! GetSPM3 = SPM3
  84. !end function
  85. real(8) function GetCasingPressureD()
  86. !DEC$ ATTRIBUTES DLLEXPORT :: GetCasingPressureD
  87. !DEC$ ATTRIBUTES ALIAS: 'GetCasingPressureD' :: GetCasingPressureD
  88. implicit none
  89. GetCasingPressureD = DrillingWatch%CasingPressure
  90. !GetCasingPressureD = CasingPressure + 110 + SimulationTime
  91. end function
  92. real(8) function GetPercentFlow()
  93. !DEC$ ATTRIBUTES DLLEXPORT :: GetPercentFlow
  94. !DEC$ ATTRIBUTES ALIAS: 'GetPercentFlow' :: GetPercentFlow
  95. implicit none
  96. GetPercentFlow = DrillingWatch%PercentFlow
  97. !GetPercentFlow = PercentFlow + 120 + SimulationTime
  98. end function
  99. real(8) function GetPitGainLose()
  100. !DEC$ ATTRIBUTES DLLEXPORT :: GetPitGainLose
  101. !DEC$ ATTRIBUTES ALIAS: 'GetPitGainLose' :: GetPitGainLose
  102. implicit none
  103. GetPitGainLose = DrillingWatch%PitGainLose
  104. !GetPitGainLose = PitGainLose + 130 + SimulationTime
  105. end function
  106. real(8) function GetPitVolume()
  107. !DEC$ ATTRIBUTES DLLEXPORT :: GetPitVolume
  108. !DEC$ ATTRIBUTES ALIAS: 'GetPitVolume' :: GetPitVolume
  109. implicit none
  110. GetPitVolume = DrillingWatch%PitVolume
  111. !GetPitVolume = PitVolume + 140 + SimulationTime
  112. end function
  113. real(8) function GetKillMudVolume()
  114. !DEC$ ATTRIBUTES DLLEXPORT :: GetKillMudVolume
  115. !DEC$ ATTRIBUTES ALIAS: 'GetKillMudVolume' :: GetKillMudVolume
  116. implicit none
  117. GetKillMudVolume = DrillingWatch%KillMudVolume
  118. !GetKillMudVolume = KillMudVolume + 150 + SimulationTime
  119. end function
  120. real(8) function GetTripTankVolume()
  121. !DEC$ ATTRIBUTES DLLEXPORT :: GetTripTankVolume
  122. !DEC$ ATTRIBUTES ALIAS: 'GetTripTankVolume' :: GetTripTankVolume
  123. implicit none
  124. GetTripTankVolume = DrillingWatch%TripTankVolume
  125. !GetTripTankVolume = TripTankVolume + 160 + SimulationTime
  126. end function
  127. real(8) function GetMudWeightInD()
  128. !DEC$ ATTRIBUTES DLLEXPORT :: GetMudWeightInD
  129. !DEC$ ATTRIBUTES ALIAS: 'GetMudWeightInD' :: GetMudWeightInD
  130. implicit none
  131. GetMudWeightInD = DrillingWatch%MudWeightIn
  132. !GetMudWeightInD = MudWeightIn + 170 + SimulationTime
  133. end function
  134. real(8) function GetFillVolume()
  135. !DEC$ ATTRIBUTES DLLEXPORT :: GetFillVolume
  136. !DEC$ ATTRIBUTES ALIAS: 'GetFillVolume' :: GetFillVolume
  137. implicit none
  138. GetFillVolume = DrillingWatch%FillVolume
  139. !GetFillVolume = FillVolume + 180 + SimulationTime
  140. end function
  141. real(8) function GetMudWeightOutD()
  142. !DEC$ ATTRIBUTES DLLEXPORT :: GetMudWeightOutD
  143. !DEC$ ATTRIBUTES ALIAS: 'GetMudWeightOutD' :: GetMudWeightOutD
  144. implicit none
  145. GetMudWeightOutD = DrillingWatch%MudWeightOut
  146. !GetMudWeightOutD = MudWeightOut + 190 + SimulationTime
  147. end function
  148. end module CDrillWatch