Simulation Core
Nevar pievienot vairāk kā 25 tēmas Tēmai ir jāsākas ar burtu vai ciparu, tā var saturēt domu zīmes ('-') un var būt līdz 35 simboliem gara.

SimulationVariables.i90 7.3 KiB

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