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.

CStringConfigurationVariables.f90 1.4 KiB

1 year ago
1 year ago
1 year ago
12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. module CStringConfigurationVariables
  2. implicit none
  3. public
  4. !constants
  5. integer :: Bit_ComponentType = 0
  6. integer :: Stabilizer_ComponentType = 1
  7. integer :: Collar_ComponentType = 2
  8. integer :: DrillPipe_ComponentType = 3
  9. integer :: Heavyweight_ComponentType = 4
  10. integer :: Cone_BitType = 0
  11. integer :: PDC_BitType = 1
  12. integer :: Rock_BitType = 2
  13. type, bind(c), public :: CStringItem
  14. integer :: ComponentType
  15. real(8) :: NumberOfJoint
  16. real(8) :: LengthPerJoint
  17. real(8) :: NominalOd
  18. real(8) :: NominalId
  19. real(8) :: WeightPerLength
  20. real(8) :: ComponentLength
  21. ! real(8) :: NominalToolJointOd
  22. ! character(1) :: Grade
  23. end type CStringItem
  24. type, bind(c), public :: CBitInfo
  25. integer :: BitType
  26. real(8) :: BitSize
  27. integer :: BitCodeHundreds
  28. integer :: BitCodeTens
  29. integer :: BitCodeOnes
  30. real(8) :: BitNozzleSize
  31. real(8) :: BitLength
  32. real(8) :: BitWeightPerLength
  33. integer :: BitNozzleNo
  34. logical :: FloatValve
  35. end type CBitInfo
  36. Type :: StringConfigurationType
  37. integer :: StringConfigurationCount
  38. type(CStringItem), allocatable :: StringConfigurations(:)
  39. type(CBitInfo) :: BitDefinition
  40. End type StringConfigurationType
  41. contains
  42. end module CStringConfigurationVariables