Simulation Core
Вы не можете выбрать более 25 тем Темы должны начинаться с буквы или цифры, могут содержать дефисы(-) и должны содержать не более 35 символов.
 
 
 
 
 
 

222 строки
7.4 KiB

  1. # 1 "/home/admin/SimulationCore2/Simulation/SimulationVariables.f90"
  2. module SimulationVariables
  3. use Constants
  4. use logging
  5. use json_module
  6. use CUnityInputs
  7. use CUnityOutputs
  8. use COperationScenariosVariables
  9. use CStringConfigurationVariables
  10. use CFormationVariables
  11. use CReservoirVariables
  12. use CShoeVariables
  13. use CAccumulatorVariables
  14. use CBopStackVariables
  15. use CHoistingVariables
  16. use CPowerVariables
  17. use CPumpsVariables
  18. use CRigSizeVariables
  19. use CCasingLinerChokeVariables
  20. use CPathGenerationVariables
  21. use CWellSurveyDataVariables
  22. use CMudPropertiesVariables
  23. use CBopControlPanelVariables
  24. use CChokeControlPanelVariables
  25. use CChokeManifoldVariables
  26. use CDataDisplayConsoleVariables
  27. use CDrillingConsoleVariables
  28. use CHookVariables
  29. use CStandPipeManifoldVariables
  30. use CTopDrivePanelVariables
  31. use CDrillWatchVariables
  32. use CTanksVariables
  33. use COperationScenariosVariables
  34. use NotificationVariables
  35. use PermissionsVariables
  36. use UnitySignalVariables
  37. use SoftwareInputsVariables
  38. use CBitProblemsVariables
  39. use CBopProblemsVariables
  40. use CChokeProblemsVariables
  41. use CDrillStemProblemsVariables
  42. use CGaugesProblemsVariables
  43. use CHoistingProblemsVariables
  44. use CKickProblemsVariables
  45. use CLostProblemsVariables
  46. use CMudTreatmentProblemsVariables
  47. use COtherProblemsVariables
  48. use CPumpProblemsVariables
  49. use CRotaryProblemsVariables
  50. use CStudentStationVariables
  51. use CWarningsVariables
  52. use BopVariables
  53. use Pumps_VARIABLES
  54. use RTable_VARIABLES
  55. use TopDrive_VARIABLES
  56. use CHOKEVARIABLES
  57. use Drawworks_VARIABLES
  58. USE MudSystemVARIABLES
  59. use Fluid_Flow_Startup_Vars
  60. use PressureDisplayVARIABLESModule
  61. use FricPressDropVarsModule
  62. use sROP_Other_Variables
  63. use sROP_Variables
  64. use GeoElements_FluidModule
  65. use TD_DrillStemComponents
  66. use TD_GeneralData
  67. use TD_StringConnectionData
  68. use TD_WellElements
  69. use TD_WellGeometry
  70. type ConfigurationType
  71. Type(StringConfigurationType)::StringConfiguration
  72. Type(FormationType) :: Formation
  73. Type(ReservoirType)::Reservoir
  74. Type(ShoeType)::Shoe
  75. Type(AccumulatorType)::Accumulator
  76. Type(BopStackSpecificationType)::BopStack
  77. Type(HoistingType)::Hoisting
  78. Type(PowerType)::Power
  79. Type(PumpSpecificationType)::Pumps
  80. Type(RigSizeType)::RigSize
  81. Type(CasingLinerChokeType)::CasingLinerChoke
  82. Type(PathGenerationType)::Path
  83. ! Type(WellSurveyDataType)::WellSurveyData
  84. Type(MudPropertiesType)::Mud
  85. end type ConfigurationType
  86. type EquipmentControlType
  87. ! Control Panels
  88. type(BopControlPanelType) :: BopControlPanel
  89. Type(ChokeControlPanelType)::ChokeControlPanel
  90. Type(ChokeManifoldType)::ChokeManifold
  91. Type(DataDisplayConsoleType) :: DataDisplayConsole
  92. TYPE(DrillingConsoleType) :: DrillingConsole
  93. Type(HookType)::Hook
  94. type(StandPipeManifoldType)::StandPipeManifold
  95. Type(TopDrivePanelType)::TopDrivePanel
  96. Type(DrillingWatchType)::DrillingWatch
  97. Type(TankType)::Tank
  98. type(DownHoleType):: DownHole
  99. type(UnityInputsType)::UnityInputs
  100. type(UnityOutputsType):: UnityOutputs
  101. end type EquipmentControlType
  102. type SimulationStateType
  103. ! Type(HoistingType)::Hoisting !This ds placed twice in data (onece in configuration, once in state)
  104. type(OperationScenarioType)::OperationScenario
  105. type(NotificationType)::notifications
  106. type(PermissionsType):: permissions
  107. type(UnitySignalsType):: unitySignals
  108. type(StudentStationType)::StudentStation
  109. type(SoftwareInputsType):: softwareInputs
  110. !Bop
  111. type(BopStackInputType)::BopStackInput
  112. type(BopStackAccType)::BopStackAcc
  113. type(RamLineType)::RamLine
  114. type(AnnularComputationalType)::AnnularComputational
  115. type(AnnularType)::Annular
  116. type(PipeRams1Type)::PipeRam1
  117. type(ShearRamType)::ShearRam
  118. type(PipeRam2Type)::PipeRam2
  119. type(ChokeLineType)::ChokeLine
  120. type(KillLineType)::KillLine
  121. type(PumpsType)::Pumps
  122. TYPE(BOP_TypeVars), DIMENSION(1:6) :: RAM
  123. TYPE(BOP_TypeVars2D) :: RAMS
  124. !Choke
  125. type(ChokeType)::Choke
  126. type(AirDrivenPumpType)::AirDrivenPump
  127. type(AirPumpLineType)::AirPumpLine
  128. TYPE(CHOKE_TypeVars), DIMENSION(1:2) :: CHOOKE
  129. !
  130. !!Drawworks
  131. TYPE(Drawworks_Var) :: Drawworks
  132. !!
  133. !!!MudSystem
  134. type(MudSystemType)::MudSystem
  135. TYPE(MUD_TypeVars), DIMENSION(1:10) :: MUD
  136. !!Pumps
  137. Type(Pumps_Var) :: MPumps
  138. TYPE(Pump_Var), DIMENSION(1:3) :: PUMP
  139. !
  140. TYPE(RTable_Var) :: RTable
  141. TYPE(TDS_Var) :: TDS
  142. !
  143. !! FluidFlow
  144. TYPE(GasData) :: GasType(3) ! 1 = methane , 2 = Hydrogen sulfide , 3 = Carbon dioxid
  145. TYPE(PressureDisplayVARIABLESTYPE) :: PressureDisplay
  146. ! TYPE(ObservationAndGaugePointsInformations) , ALLOCATABLE :: ObservationPoint(:)
  147. TYPE(FricPressDropVarsTYPE) :: FricPressDrop
  148. !
  149. !Rop
  150. TYPE(ROPSpecificationInfo) :: ROP_Spec
  151. TYPE(ROPInfo) :: ROP_Bit
  152. !TD
  153. TYPE(Geo_Data) :: TDGeo
  154. TYPE(F_StringData) , Allocatable :: F_String(:)
  155. TYPE(F_IntervalsCountsData):: F_Counts
  156. TYPE(F_IntervalData) , Allocatable :: F_Interval(:)
  157. TYPE(OD_AnnulusData) :: OD_Annulus(4)
  158. TYPE(TD_DrillStemInfo), ALLOCATABLE, DIMENSION(:) :: TD_DrillStem
  159. TYPE(TD_SeparatedDrillStemInfo), ALLOCATABLE, DIMENSION(:) :: TD_DrillStems
  160. TYPE(TD_StringInfo) :: TD_String
  161. TYPE(TD_AddRemoveInfo) :: TD_Count
  162. TYPE(CStringComponents), ALLOCATABLE, DIMENSION(:) :: G_StringElement
  163. TYPE(TD_RemovedVolumeInfo) :: TD_Vol
  164. TYPE(TD_GeneralInfo) :: TD_General
  165. TYPE(TD_BOPInfo) :: TD_BOP
  166. TYPE(CBopElement) :: TD_BOPElement(4)
  167. TYPE(TD_StringconnectionInfo) :: TD_StConn
  168. TYPE(TD_LoadInfo) :: TD_Load
  169. TYPE(TD_WellElementsInfo) :: TD_WellEl
  170. TYPE(TD_CasingInfo), ALLOCATABLE, DIMENSION(:) :: TD_Casing
  171. TYPE(TD_LinerInfo), ALLOCATABLE, DIMENSION(:) :: TD_Liner
  172. TYPE(TD_OpenHoleInfo), ALLOCATABLE, DIMENSION(:) :: TD_OpenHole
  173. TYPE(TD_ROPHoleInfo), ALLOCATABLE, DIMENSION(:) :: TD_ROPHole
  174. TYPE(TD_WellGeneralInfo) :: TD_WellGeneral
  175. TYPE(TD_WellGeometryData), Allocatable :: TD_WellGeo(:)
  176. end type SimulationStateType
  177. type ProblemsType
  178. type(BitProblemsType)::BitProblems
  179. type(BopProblemsType)::BopProblems
  180. type(ChokeProblemsType)::ChokeProblems
  181. type(DrillStemProblemsType)::DrillStemProblems
  182. type(GaugesProblemsType)::GaugesProblems
  183. type(HoistingProblemsType):: HoistingProblems
  184. type(KickProblemsType)::KickProblems
  185. type(LostProblemsType)::LostProblems
  186. type(MudTreatmentProblemsType)::MudTreatmentProblems
  187. type(OtherProblemsType)::OtherProblems
  188. type(PumpProblemsType)::PumpProblems
  189. type(RotaryProblemsType)::RotaryProblems
  190. end type ProblemsType
  191. type SimulationDataType
  192. type(WarmingsType)::Warnings
  193. type(SimulationStateType)::State
  194. type(EquipmentControlType)::Equipments
  195. type(ConfigurationType)::Configuration
  196. type(ProblemsType)::problems
  197. end type SimulationDataType
  198. type(SimulationDataType)::data
  199. contains
  200. end module SimulationVariables