subroutine TD_StartUp Use CCasingLinerChokeVariables Use CStringConfigurationVariables ! use CSimulationVariables use UnitySignalVariables ! Use COperationConditionEnumVariables Use CHoistingVariables Use CPathGenerationVariables Use TD_DrillStemComponents Use TD_WellElements Use TD_WellGeometry Use TD_GeneralData Use TD_StringConnectionData Use Drawworks_VARIABLES!, only: Drawworks Use sROP_Variables Use sROP_Other_Variables implicit none !!==================================================== !! Allocate Modules !!==================================================== ! !=====> Set WellGeo Dimension ! TD_WellGeneral%WellIntervalsCount = PathGeneration%ItemCount + 1 ! +1 is belong to ROP hole ! Allocate (TD_WellGeo(TD_WellGeneral%WellIntervalsCount)) ! ! !=====> Set WellGeo Dimension !=====> Set ROP StartUp ROP_Bit%BitWearing = 0.d0 ROP_Bit%RateOfPenetration = 0.d0 ROP_Bit%BearingWear = 0.d0 ROP_Spec%FormationNumber = 0 ROP_Bit%OldROPDepth = PathGeneration%Items(PathGeneration%ItemCount)%MeasuredDepth ROP_Bit%OldROPValue = 0.d0 ROP_Bit%SetROPGauge = 0.d0 !=====> Set BOP StartUp TD_BOP%BOPCondition = 0 TD_BOP%BOPThickness = (0.13477d0/2.d0)*3.28d0 ![m]*3.28=[ft] , Total Thickness (RAM)= 134.77mm TD_BOP%AnnularFillingFinal = 0.d0 Drawworks%TDHookHeight = 75.d0 ![ft] Drawworks%Hook_Height_ini = 75.d0 ![ft] Drawworks%Hook_Height_final = 75.d0 ![ft] !=====> String Connection Mode if ( Get_OperationCondition()==OPERATION_TRIP ) then TD_StConn%OldOperationCondition = 1 else TD_StConn%OldOperationCondition = 0 end if TD_StConn%KellyDriveTypeMode = 0 !Kelly Mode TD_StConn%FluidStringConnectionMode = 0 TD_StConn%ConnectionHeight = 3.48d0 ![ft] TD_StConn%RigidConnectionHeight = 3.48d0 ![ft] TD_StConn%GRigidConnectionHeight = 3.48d0 ![ft] TD_String%TopJointHeight = 3.48d0 ![ft] !TD_StConn%TouchConnectionHeight = TD_StConn%StringVelocity = 0.0d0 TD_StConn%HookHeightOld = 75.d0 ![ft] TD_StConn%HookHeight = 75.d0 ![ft] TD_StConn%HookVelocity = 0.0d0 !=====> Element Specification TD_StConn%HookHeight = Drawworks%TDHookHeight ! unit: [ft] TD_StConn%ElevatorConst = 17.985 ! [ft] Elevator Length(14.84) ????????????????? adad ha daghigh shavand TD_StConn%ElevatorECG = 2.217 ! [ft] TD_StConn%KellyConst = 63.280d0 ! [ft] Kelly Length(61.74) + Safety Valve Length(1.54) TD_StConn%KellyElementConst = 41.840d0 ! [ft] Kelly Element Length(40.3) + Safety Valve Length(1.54) TD_StConn%TDSLength = 24.08d0 !??????????????????? ! [ft] TD_StConn%TDSToolJointLength = 0.77d0 !??????????????????? ! [ft] TD_StConn%TDSElevatorLength = 26.837d0 !?????? ! TDS with Elevator Length [ft] TD_StConn%TDSElevatorToolLength= 0.859d0 !??????????????????? ! [ft] TD_StConn%TDSElevatorECG = 2.454 ! [ft] TD_Load%NumOfCables = Hoisting%NumberOfLine TD_Load%WeightTB = Hoisting%TravelingBlockWeight ! [lb] TD_Load%WeightTD = Hoisting%TopDriveWeight ! [lb] TD_Load%KellyWeight = Hoisting%KellyWeight ! [lb] TD_StConn%SafetyValveLength = 1.54d0 ! [ft] TD_StConn%IBOPLength = 1.54d0 ! [ft] TD_StConn%KellyElementID = 3.0d0/12.d0 ! [ft] TD_StConn%KellyElementOD = 5.90d0/12.d0 ! [ft] TD_Load%DrawworksLoadInput = Hoisting%TravelingBlockWeight/Hoisting%NumberOfLine TD_Count%IBOPNewAdd = 0 TD_Count%IBOPOldAdd = 0 !Remove TD_Count%SafetyValveNewAdd = 0 TD_Count%SafetyValveOldAdd = 1 !Install TD_Count%KellyNewAdd = 0 TD_Count%KellyOldAdd = 0 TD_Count%IBOPNewRemove = 0 TD_Count%IBOPOldRemove = 1 !Remove TD_Count%SafetyValveNewRemove = 0 TD_Count%SafetyValveOldRemove = 0 !Install TD_Count%KellyNewRemove = 0 TD_Count%KellyOldRemove = 1 TD_Count%KellyOldStatus(1) = 0 TD_Count%KellyNewStatus(1) = 0 TD_Count%KellyOldStatus(2) = 1 ! Kelly Connected Nothing TD_Count%KellyNewStatus(2) = 1 ! Kelly Connected Nothing TD_Count%KellyOldStatus(3) = 0 TD_Count%KellyNewStatus(3) = 0 TD_Count%KellyOldStatus(4) = 0 TD_Count%KellyNewStatus(4) = 0 TD_Count%KellyOldStatus(5) = 0 TD_Count%KellyNewStatus(5) = 0 TD_Count%KellyOldStatus(6) = 0 TD_Count%KellyNewStatus(6) = 0 TD_Count%KellyOldStatus(7) = 0 TD_Count%KellyNewStatus(7) = 0 TD_Count%KellyOldStatus(8) = 0 TD_Count%KellyNewStatus(8) = 0 TD_Count%KellyOldStatus(18) = 0 TD_Count%KellyNewStatus(18) = 0 TD_Count%KellyOldStatus(19) = 0 TD_Count%KellyNewStatus(19) = 0 TD_Count%KellyOldStatus(9) = 0 TD_Count%KellyNewStatus(9) = 0 TD_Count%KellyOldStatus(10) = 0 TD_Count%KellyNewStatus(10) = 0 TD_Count%KellyOldStatus(11) = 0 TD_Count%KellyNewStatus(11) = 0 TD_Count%KellyOldStatus(12) = 0 TD_Count%KellyNewStatus(12) = 0 TD_Count%KellyOldStatus(13) = 1 TD_Count%KellyNewStatus(13) = 1 TD_Count%KellyOldStatus(14) = 0 TD_Count%KellyNewStatus(14) = 0 TD_Count%KellyOldStatus(15) = 0 TD_Count%KellyNewStatus(15) = 0 TD_Count%KellyOldStatus(16) = 0 TD_Count%KellyNewStatus(16) = 0 TD_Count%KellyOldStatus(17) = 0 TD_Count%KellyNewStatus(17) = 0 !=====> Problems TD_General%WeightIndicatorMalf = 0 end subroutine