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.

TD_DrillStem.f90 6.6 KiB

1 year ago
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111
  1. MODULE TD_DrillStemComponents
  2. Use CDownHoleVariables
  3. IMPLICIT NONE
  4. PUBLIC
  5. !************************************************************************************************************************************
  6. TYPE, PUBLIC :: TD_StringInfo
  7. INTEGER :: StringConfigurationCount , DrillStemComponentsNumbs , DrillStemForceType
  8. INTEGER :: NoHorizontalMudElements , NoStringMudElements , NoCasingMudElements
  9. REAL(8) :: DrillStemTotalLength , DrillStemTotalLengthIni , OutOfWellLength , DrillStemTotalWeight , DrillStemBottom
  10. REAL(8) :: DrillStemAxialVelocity , DrillStemRotVelocity , TopJointHeight
  11. REAL(8) :: WeightOnBit , BitTorque , TotalTorque , StaticHookLoad , DlMax , DlTotal , DlTouch
  12. REAL(8) :: HookLoad , StringTorque
  13. REAL(8) :: ToolJointRange
  14. real(8) , allocatable :: FluidMudDensity(:) , FluidMudEndX(:) , FluidMudStartX(:)
  15. !====================================================
  16. ! Separated Parts of the Drill Stem
  17. INTEGER :: NearFloorConnectionNo
  18. REAL(8) :: NearFloorConnectionHeight
  19. !====================================================
  20. END TYPE TD_StringInfo
  21. !************************************************************************************************************************************
  22. !************************************************************************************************************************************
  23. !====================================================
  24. ! Drill Stem Components Info
  25. !====================================================
  26. TYPE, PUBLIC :: TD_DrillStemInfo
  27. INTEGER :: Numbs , ComponentType
  28. REAL(8) :: Length , TopDepth , DownDepth , Od , Id , WeightperLength , TotalLength , TotalWeight
  29. END TYPE TD_DrillStemInfo
  30. !************************************************************************************************************************************
  31. !************************************************************************************************************************************
  32. !====================================================
  33. ! Separated Parts of the Drill Stem
  34. !====================================================
  35. TYPE , PUBLIC :: TD_SeparatedDrillStemInfo
  36. !=========> Elements Geometry
  37. INTEGER :: HoleType , ComponentType
  38. REAL(8) :: Length , TopDepth , DownDepth , Od , Id , Area , Weight , WeightperLength , StartAngle , EndAngle
  39. REAL(8) :: RCurvature , RtoolJoint , HoleDiameter , ToolJointRange
  40. !=========> Elements initial Geometry
  41. REAL(8) :: LengthIni , TopDepthIni , DownDepthIni , StartAngleIni , EndAngleIni
  42. !=========> Elements initial Geometry (graphic)
  43. REAL(8) :: TopDepthIniG , DownDepthIniG
  44. !=========> Pipes Properties
  45. REAL(8) :: Density , ElasticModule
  46. !=========> Forces Info
  47. REAL(8) :: Force1 , Force2 , Torque , Drag , CombVelRatio
  48. !=========> Mud Properties
  49. REAL(8) :: MudDensityIn , MudDensityOut , MudViscosity , MudVisCorrectCoef , BouyancyFactor , MudWeight , MudPlasticVis , MudYieldPoint
  50. !=========> Viscous Drag Force
  51. REAL(8) :: FricFactor , DiamRatio , MudClingingConst , PipeVelocity , AveEffVelocity , ReNumber , Dp_Dl
  52. !=========> Hook Load
  53. REAL(8) :: StaticHookLoad , TotalSHookLoad , Dl , DlTotal
  54. END TYPE TD_SeparatedDrillStemInfo
  55. !************************************************************************************************************************************
  56. !************************************************************************************************************************************
  57. !====================================================
  58. ! Add&Remove DrillStem Components
  59. !====================================================
  60. TYPE , PUBLIC :: TD_AddRemoveInfo
  61. INTEGER :: IBOPNewAdd , IBOPOldAdd , SafetyValveNewAdd , SafetyValveOldAdd , KellyNewAdd , KellyOldAdd
  62. INTEGER :: IBOPNewRemove , IBOPOldRemove , SafetyValveNewRemove , SafetyValveOldRemove , KellyNewRemove , KellyOldRemove
  63. INTEGER , Dimension(19) :: KellyOldStatus , KellyNewStatus
  64. !integer :: TD_KellyOldStatus1 , TD_KellyNewStatus1 , TD_KellyOldStatus2 , TD_KellyNewStatus2 , TD_KellyOldStatus3 , TD_KellyNewStatus3
  65. !integer :: TD_KellyOldStatus4 , TD_KellyNewStatus4 , TD_KellyOldStatus5 , TD_KellyNewStatus5 , TD_KellyOldStatus6 , TD_KellyNewStatus6
  66. !integer :: TD_KellyOldStatus7 , TD_KellyNewStatus7 , TD_KellyOldStatus8 , TD_KellyNewStatus8
  67. !integer :: TD_KellyOldStatus9 , TD_KellyNewStatus9 , TD_KellyOldStatus10 , TD_KellyNewStatus10
  68. !integer :: TD_KellyOldStatus11 , TD_KellyNewStatus11 , TD_KellyOldStatus12 , TD_KellyNewStatus12
  69. !integer :: TD_KellyOldStatus13 , TD_KellyNewStatus13 , TD_KellyOldStatus14 , TD_KellyNewStatus14
  70. !integer :: TD_KellyOldStatus15 , TD_KellyNewStatus15 , TD_KellyOldStatus16 , TD_KellyNewStatus16 , TD_KellyOldStatus17 , TD_KellyNewStatus17
  71. !integer :: TD_KellyOldStatus18 , TD_KellyNewStatus18 , TD_KellyOldStatus19 , TD_KellyNewStatus19
  72. END TYPE TD_AddRemoveInfo
  73. !************************************************************************************************************************************
  74. !************************************************************************************************************************************
  75. !====================================================
  76. ! Graphic Output Info
  77. !====================================================
  78. !TYPE, PUBLIC :: CStringComponent
  79. ! Integer :: ComponentType
  80. ! REAL(8) :: Length , TopDepth , DownDepth , Od , Id
  81. !END TYPE CStringComponent
  82. !************************************************************************************************************************************
  83. !************************************************************************************************************************************
  84. !====================================================
  85. ! Removed-Volume Variables
  86. !====================================================
  87. TYPE , PUBLIC :: TD_RemovedVolumeInfo
  88. Integer :: PreCount
  89. REAL(8) :: RemoveVolume , PreElementVolume , PreElementLength
  90. END TYPE TD_RemovedVolumeInfo
  91. !************************************************************************************************************************************
  92. END MODULE TD_DrillStemComponents