Browse Source

First Demo

master
Mahmood Farokhian 1 year ago
parent
commit
95ad7885e9
100 changed files with 770 additions and 1519 deletions
  1. +14
    -2
      .vscode/launch.json
  2. +8
    -8
      CSharp/BasicInputs/Bha/CStringConfiguration.f90
  3. +9
    -9
      CSharp/BasicInputs/Bha/CStringConfiguration.i90
  4. +2
    -2
      CSharp/BasicInputs/Bha/CStringConfigurationVariables.f90
  5. +3
    -3
      CSharp/BasicInputs/Bha/CStringConfigurationVariables.i90
  6. +1
    -1
      CSharp/BasicInputs/CMudPropertiesVariables.i90
  7. +1
    -0
      CSharp/BasicInputs/Geology/CFormation.f90
  8. +2
    -1
      CSharp/BasicInputs/Geology/CFormation.i90
  9. +36
    -36
      CSharp/BasicInputs/Geology/CReservoir.f90
  10. +37
    -37
      CSharp/BasicInputs/Geology/CReservoir.i90
  11. +5
    -5
      CSharp/BasicInputs/Geology/CReservoirVariables.f90
  12. +6
    -6
      CSharp/BasicInputs/Geology/CReservoirVariables.i90
  13. +1
    -1
      CSharp/BasicInputs/Geology/CShoeVariables.i90
  14. +1
    -1
      CSharp/BasicInputs/MudProperties.i90
  15. +1
    -1
      CSharp/BasicInputs/RigSpecifications/CBopStack.i90
  16. +1
    -1
      CSharp/BasicInputs/RigSpecifications/CBopStackVariables.i90
  17. +3
    -0
      CSharp/BasicInputs/RigSpecifications/CHoisting.f90
  18. +1
    -1
      CSharp/BasicInputs/RigSpecifications/CHoistingVariables.i90
  19. +1
    -1
      CSharp/BasicInputs/RigSpecifications/CPower.i90
  20. +51
    -51
      CSharp/BasicInputs/RigSpecifications/CPumps.f90
  21. +52
    -52
      CSharp/BasicInputs/RigSpecifications/CPumps.i90
  22. +9
    -9
      CSharp/BasicInputs/RigSpecifications/CPumpsVariables.f90
  23. +10
    -10
      CSharp/BasicInputs/RigSpecifications/CPumpsVariables.i90
  24. +1
    -1
      CSharp/BasicInputs/WellProfile/CCasingLinerChoke.i90
  25. +1
    -1
      CSharp/BasicInputs/WellProfile/CCasingLinerChokeVariables.i90
  26. +1
    -1
      CSharp/BasicInputs/WellProfile/CPathGeneration.f90
  27. +2
    -2
      CSharp/BasicInputs/WellProfile/CPathGeneration.i90
  28. +1
    -1
      CSharp/BasicInputs/WellProfile/CPathGenerationVariables.i90
  29. +1
    -1
      CSharp/Equipments/ControlPanels/CBopControlPanel.i90
  30. +2
    -2
      CSharp/Equipments/ControlPanels/CDataDisplayConsole.f90
  31. +3
    -3
      CSharp/Equipments/ControlPanels/CDataDisplayConsole.i90
  32. +1
    -1
      CSharp/Equipments/ControlPanels/CDataDisplayConsoleVariables.i90
  33. +115
    -226
      CSharp/Equipments/ControlPanels/CDrillingConsole.f90
  34. +116
    -227
      CSharp/Equipments/ControlPanels/CDrillingConsole.i90
  35. +1
    -1
      CSharp/Equipments/ControlPanels/CDrillingConsoleVariables.i90
  36. +2
    -11
      CSharp/Equipments/ControlPanels/CHook.f90
  37. +3
    -12
      CSharp/Equipments/ControlPanels/CHook.i90
  38. +0
    -1
      CSharp/Equipments/ControlPanels/CStandPipeManifold.f90
  39. +1
    -2
      CSharp/Equipments/ControlPanels/CStandPipeManifold.i90
  40. +1
    -1
      CSharp/Equipments/ControlPanels/CTopDrivePanel.i90
  41. +2
    -2
      CSharp/Equipments/DrillWatch/DrillWatch.f90
  42. +3
    -3
      CSharp/Equipments/DrillWatch/DrillWatch.i90
  43. +0
    -3
      CSharp/Equipments/MudPathFinding/CManifolds.f90
  44. +33
    -36
      CSharp/Equipments/MudPathFinding/CManifolds.i90
  45. +1
    -1
      CSharp/OperationScenarios/Unity/UnityModule.f90
  46. +2
    -2
      CSharp/OperationScenarios/Unity/UnityModule.i90
  47. +31
    -31
      Common/json-fortran/json_value_module.i90
  48. +1
    -1
      Equipments/ChokeControl/ChokeControlMain.i90
  49. +1
    -1
      Equipments/Drawworks/Drawworks_INPUTS.i90
  50. +1
    -1
      Equipments/Drawworks/Drawworks_MainSolver.i90
  51. +1
    -1
      Equipments/Drawworks/Drawworks_Outputs.i90
  52. +1
    -1
      Equipments/MudSystem/Elements_Creation.i90
  53. +1
    -1
      Equipments/MudSystem/Kick_Influx.i90
  54. +1
    -1
      Equipments/MudSystem/MudSystem.i90
  55. +1
    -1
      Equipments/MudSystem/MudSystemStartup.i90
  56. +1
    -1
      Equipments/MudSystem/MudSystem_Variables.i90
  57. +1
    -12
      Equipments/MudSystem/Plot_Final_Mud_Elements.f90
  58. +1
    -12
      Equipments/MudSystem/Plot_Final_Mud_Elements.i90
  59. +1
    -1
      Equipments/MudSystem/Pump_and_Trip_In.i90
  60. +1
    -1
      Equipments/MudSystem/Trip_Out_andPump.i90
  61. +1
    -1
      Equipments/Pumps/PumpsMain.i90
  62. +1
    -1
      Equipments/Pumps/Pumps_Inputs.i90
  63. +1
    -1
      Equipments/Pumps/Pumps_Outputs.i90
  64. +1
    -1
      Equipments/Pumps/Pumps_StartUp.i90
  65. +1
    -1
      Equipments/Pumps/Pumps_VARIABLES.i90
  66. +0
    -77
      Equipments/RotaryTable/RTable_INPUTS.f90
  67. +1
    -1
      Equipments/RotaryTable/RTable_Inputs.i90
  68. +1
    -1
      Equipments/RotaryTable/RTable_Outputs.i90
  69. +0
    -67
      Equipments/RotaryTable/Rtable_MainSolver.f90
  70. +0
    -45
      Equipments/TopDrive/TopDrive_INPUTS.f90
  71. +1
    -1
      Equipments/TopDrive/TopDrive_Inputs.i90
  72. +1
    -1
      FluidFlow/Flow_Startup.i90
  73. +1
    -1
      FluidFlow/FluidFlowMain.i90
  74. +1
    -1
      FluidFlow/Horizontal_and_String_Pressure_Distribution.i90
  75. +2
    -1
      Makefile
  76. +2
    -2
      Redis/Redis_Interface.f90
  77. +3
    -3
      Redis/Redis_Interface.i90
  78. +1
    -0
      Redis/redis_io.c
  79. +0
    -15
      Rop/Bit_Database.txt
  80. +1
    -1
      Rop/ROP_MainCalculation.i90
  81. +1
    -1
      Simulation/SimulationVariables.f90
  82. +2
    -2
      Simulation/SimulationVariables.i90
  83. BIN
     
  84. BIN
     
  85. +3
    -2
      SimulationCore2.f90
  86. +4
    -3
      SimulationCore2.i90
  87. BIN
     
  88. +70
    -81
      Simulator.f90
  89. +70
    -81
      Simulator.i90
  90. +1
    -1
      Test/write_vars.i90
  91. BIN
     
  92. +1
    -1
      TorqueDrag/TD_DrillingSubs/MeshGeneration_FluidModule.i90
  93. +1
    -1
      TorqueDrag/TD_DrillingSubs/TD_DrillStemConfiguration.i90
  94. +1
    -1
      TorqueDrag/TD_DrillingSubs/TD_WellGeoConfiguration.i90
  95. +1
    -1
      TorqueDrag/TD_Modules/TD_DrillStem.i90
  96. +1
    -1
      TorqueDrag/TD_ReadDataSubroutines/TD_WellReadData.i90
  97. +0
    -273
      UpgradeLog.htm
  98. BIN
     
  99. BIN
     
  100. +2
    -3
      config-asiatech.json

+ 14
- 2
.vscode/launch.json View File

@@ -26,11 +26,23 @@
] ]
}, },
{ {
"name": "Debug SimulationCore2",
"name": "Debug (Liara)",
"type": "cppdbg", "type": "cppdbg",
"request": "launch", "request": "launch",
"program": "${workspaceRoot}/SimulationCore2", "program": "${workspaceRoot}/SimulationCore2",
"args": ["aberama.iran.liara.ir","32815","4YKFnubfFFjfh4yTK7b0Rg9X","60f8144a-c1b7-4d1a-5d99-08db9e4e35f5","5","1000"],
"args": ["aberama.iran.liara.ir", "32815", "4YKFnubfFFjfh4yTK7b0Rg9X", "de972886-410b-440e-f8cc-08dba274a00f", "4", "1000"],
"stopAtEntry": false,
"cwd": "${workspaceRoot}",
"externalConsole": false,
"MIMode": "gdb",
"preLaunchTask": "make",
},
{
"name": "Debug (Asiatech)",
"type": "cppdbg",
"request": "launch",
"program": "${workspaceRoot}/SimulationCore2",
"args": ["85.198.9.229", "6379", "'1qazxsw2$$'", "72a84eb3-eee5-4104-8363-08dba3c9a113", "4", "1000"],
"stopAtEntry": false, "stopAtEntry": false,
"cwd": "${workspaceRoot}", "cwd": "${workspaceRoot}",
"externalConsole": false, "externalConsole": false,


+ 8
- 8
CSharp/BasicInputs/Bha/CStringConfiguration.f90 View File

@@ -29,7 +29,7 @@ module CStringConfiguration
ALLOCATE(data%Configuration%StringConfiguration%StringConfigurations(n_children)) ALLOCATE(data%Configuration%StringConfiguration%StringConfigurations(n_children))
endif endif
data%Configuration%StringConfiguration%StringConfigurationCount = n_children
do i=1,n_children do i=1,n_children
call json%get_child(pitems, i, pitem, found=is_found) call json%get_child(pitems, i, pitem, found=is_found)
@@ -47,11 +47,11 @@ module CStringConfiguration
call json%get(pval,data%Configuration%StringConfiguration%StringConfigurations(i)%WeightPerLength) call json%get(pval,data%Configuration%StringConfiguration%StringConfigurations(i)%WeightPerLength)
call json%get(pitem,"ComponentLength",pval) call json%get(pitem,"ComponentLength",pval)
call json%get(pval,data%Configuration%StringConfiguration%StringConfigurations(i)%ComponentLength) call json%get(pval,data%Configuration%StringConfiguration%StringConfigurations(i)%ComponentLength)
call json%get(pitem,"NominalToolJointOd",pval)
call json%get(pval,data%Configuration%StringConfiguration%StringConfigurations(i)%NominalToolJointOd)
call json%get(pitem,"Grade",pval)
call json%get(pval,val)
data%Configuration%StringConfiguration%StringConfigurations(i)%Grade = val
! call json%get(pitem,"NominalToolJointOd",pval)
! call json%get(pval,data%Configuration%StringConfiguration%StringConfigurations(i)%NominalToolJointOd)
! call json%get(pitem,"Grade",pval)
! call json%get(pval,val)
! data%Configuration%StringConfiguration%StringConfigurations(i)%Grade = val
end do end do
call json%get(p,'BitDefenition',pbit) call json%get(p,'BitDefenition',pbit)
call json%get(pbit,'BitType',pval) call json%get(pbit,'BitType',pval)
@@ -92,11 +92,11 @@ module CStringConfiguration
call json%create_object(pitem,'') call json%create_object(pitem,'')
call json%add(pitem,"ComponentLength",data%Configuration%StringConfiguration%StringConfigurations(i)%ComponentLength) call json%add(pitem,"ComponentLength",data%Configuration%StringConfiguration%StringConfigurations(i)%ComponentLength)
call json%add(pitem,"ComponentType",data%Configuration%StringConfiguration%StringConfigurations(i)%ComponentType) call json%add(pitem,"ComponentType",data%Configuration%StringConfiguration%StringConfigurations(i)%ComponentType)
call json%add(pitem,"Grade",data%Configuration%StringConfiguration%StringConfigurations(i)%Grade)
! call json%add(pitem,"Grade",data%Configuration%StringConfiguration%StringConfigurations(i)%Grade)
call json%add(pitem,"LengthPerJoint",data%Configuration%StringConfiguration%StringConfigurations(i)%LengthPerJoint) call json%add(pitem,"LengthPerJoint",data%Configuration%StringConfiguration%StringConfigurations(i)%LengthPerJoint)
call json%add(pitem,"NominalId",data%Configuration%StringConfiguration%StringConfigurations(i)%NominalId) call json%add(pitem,"NominalId",data%Configuration%StringConfiguration%StringConfigurations(i)%NominalId)
call json%add(pitem,"NominalOd",data%Configuration%StringConfiguration%StringConfigurations(i)%NominalOd) call json%add(pitem,"NominalOd",data%Configuration%StringConfiguration%StringConfigurations(i)%NominalOd)
call json%add(pitem,"NominalToolJointOd",data%Configuration%StringConfiguration%StringConfigurations(i)%NominalToolJointOd)
! call json%add(pitem,"NominalToolJointOd",data%Configuration%StringConfiguration%StringConfigurations(i)%NominalToolJointOd)
call json%add(pitem,"NumberOfJoint",data%Configuration%StringConfiguration%StringConfigurations(i)%NumberOfJoint) call json%add(pitem,"NumberOfJoint",data%Configuration%StringConfiguration%StringConfigurations(i)%NumberOfJoint)
call json%add(pitem,"WeightPerLength",data%Configuration%StringConfiguration%StringConfigurations(i)%WeightPerLength) call json%add(pitem,"WeightPerLength",data%Configuration%StringConfiguration%StringConfigurations(i)%WeightPerLength)
call json%add(pitems,pitem) call json%add(pitems,pitem)


+ 9
- 9
CSharp/BasicInputs/Bha/CStringConfiguration.i90 View File

@@ -1,4 +1,4 @@
# 1 "/mnt/c/Projects/VSIM/SimulationCore2/CSharp/BasicInputs/Bha/CStringConfiguration.f90"
# 1 "/home/admin/SimulationCore2/CSharp/BasicInputs/Bha/CStringConfiguration.f90"
module CStringConfiguration module CStringConfiguration
use CStringConfigurationVariables use CStringConfigurationVariables
use SimulationVariables use SimulationVariables
@@ -30,7 +30,7 @@ module CStringConfiguration
ALLOCATE(data%Configuration%StringConfiguration%StringConfigurations(n_children)) ALLOCATE(data%Configuration%StringConfiguration%StringConfigurations(n_children))
endif endif


data%Configuration%StringConfiguration%StringConfigurationCount = n_children
do i=1,n_children do i=1,n_children
call json%get_child(pitems, i, pitem, found=is_found) call json%get_child(pitems, i, pitem, found=is_found)
@@ -48,11 +48,11 @@ module CStringConfiguration
call json%get(pval,data%Configuration%StringConfiguration%StringConfigurations(i)%WeightPerLength) call json%get(pval,data%Configuration%StringConfiguration%StringConfigurations(i)%WeightPerLength)
call json%get(pitem,"ComponentLength",pval) call json%get(pitem,"ComponentLength",pval)
call json%get(pval,data%Configuration%StringConfiguration%StringConfigurations(i)%ComponentLength) call json%get(pval,data%Configuration%StringConfiguration%StringConfigurations(i)%ComponentLength)
call json%get(pitem,"NominalToolJointOd",pval)
call json%get(pval,data%Configuration%StringConfiguration%StringConfigurations(i)%NominalToolJointOd)
call json%get(pitem,"Grade",pval)
call json%get(pval,val)
data%Configuration%StringConfiguration%StringConfigurations(i)%Grade = val
! call json%get(pitem,"NominalToolJointOd",pval)
! call json%get(pval,data%Configuration%StringConfiguration%StringConfigurations(i)%NominalToolJointOd)
! call json%get(pitem,"Grade",pval)
! call json%get(pval,val)
! data%Configuration%StringConfiguration%StringConfigurations(i)%Grade = val
end do end do
call json%get(p,'BitDefenition',pbit) call json%get(p,'BitDefenition',pbit)
call json%get(pbit,'BitType',pval) call json%get(pbit,'BitType',pval)
@@ -93,11 +93,11 @@ module CStringConfiguration
call json%create_object(pitem,'') call json%create_object(pitem,'')
call json%add(pitem,"ComponentLength",data%Configuration%StringConfiguration%StringConfigurations(i)%ComponentLength) call json%add(pitem,"ComponentLength",data%Configuration%StringConfiguration%StringConfigurations(i)%ComponentLength)
call json%add(pitem,"ComponentType",data%Configuration%StringConfiguration%StringConfigurations(i)%ComponentType) call json%add(pitem,"ComponentType",data%Configuration%StringConfiguration%StringConfigurations(i)%ComponentType)
call json%add(pitem,"Grade",data%Configuration%StringConfiguration%StringConfigurations(i)%Grade)
! call json%add(pitem,"Grade",data%Configuration%StringConfiguration%StringConfigurations(i)%Grade)
call json%add(pitem,"LengthPerJoint",data%Configuration%StringConfiguration%StringConfigurations(i)%LengthPerJoint) call json%add(pitem,"LengthPerJoint",data%Configuration%StringConfiguration%StringConfigurations(i)%LengthPerJoint)
call json%add(pitem,"NominalId",data%Configuration%StringConfiguration%StringConfigurations(i)%NominalId) call json%add(pitem,"NominalId",data%Configuration%StringConfiguration%StringConfigurations(i)%NominalId)
call json%add(pitem,"NominalOd",data%Configuration%StringConfiguration%StringConfigurations(i)%NominalOd) call json%add(pitem,"NominalOd",data%Configuration%StringConfiguration%StringConfigurations(i)%NominalOd)
call json%add(pitem,"NominalToolJointOd",data%Configuration%StringConfiguration%StringConfigurations(i)%NominalToolJointOd)
! call json%add(pitem,"NominalToolJointOd",data%Configuration%StringConfiguration%StringConfigurations(i)%NominalToolJointOd)
call json%add(pitem,"NumberOfJoint",data%Configuration%StringConfiguration%StringConfigurations(i)%NumberOfJoint) call json%add(pitem,"NumberOfJoint",data%Configuration%StringConfiguration%StringConfigurations(i)%NumberOfJoint)
call json%add(pitem,"WeightPerLength",data%Configuration%StringConfiguration%StringConfigurations(i)%WeightPerLength) call json%add(pitem,"WeightPerLength",data%Configuration%StringConfiguration%StringConfigurations(i)%WeightPerLength)
call json%add(pitems,pitem) call json%add(pitems,pitem)


+ 2
- 2
CSharp/BasicInputs/Bha/CStringConfigurationVariables.f90 View File

@@ -20,8 +20,8 @@ module CStringConfigurationVariables
real(8) :: NominalId real(8) :: NominalId
real(8) :: WeightPerLength real(8) :: WeightPerLength
real(8) :: ComponentLength real(8) :: ComponentLength
real(8) :: NominalToolJointOd
character(1) :: Grade
! real(8) :: NominalToolJointOd
! character(1) :: Grade
end type CStringItem end type CStringItem
type, bind(c), public :: CBitInfo type, bind(c), public :: CBitInfo


+ 3
- 3
CSharp/BasicInputs/Bha/CStringConfigurationVariables.i90 View File

@@ -1,4 +1,4 @@
# 1 "/mnt/c/Projects/VSIM/SimulationCore2/CSharp/BasicInputs/Bha/CStringConfigurationVariables.f90"
# 1 "/home/admin/SimulationCore2/CSharp/BasicInputs/Bha/CStringConfigurationVariables.f90"
module CStringConfigurationVariables module CStringConfigurationVariables
implicit none implicit none
public public
@@ -21,8 +21,8 @@ module CStringConfigurationVariables
real(8) :: NominalId real(8) :: NominalId
real(8) :: WeightPerLength real(8) :: WeightPerLength
real(8) :: ComponentLength real(8) :: ComponentLength
real(8) :: NominalToolJointOd
character(1) :: Grade
! real(8) :: NominalToolJointOd
! character(1) :: Grade
end type CStringItem end type CStringItem
type, bind(c), public :: CBitInfo type, bind(c), public :: CBitInfo


+ 1
- 1
CSharp/BasicInputs/CMudPropertiesVariables.i90 View File

@@ -1,4 +1,4 @@
# 1 "/mnt/c/Projects/VSIM/SimulationCore2/CSharp/BasicInputs/CMudPropertiesVariables.f90"
# 1 "/home/admin/SimulationCore2/CSharp/BasicInputs/CMudPropertiesVariables.f90"
module CMudPropertiesVariables module CMudPropertiesVariables
use CIActionReference use CIActionReference
!**use CDoubleEventHandlerCollection !**use CDoubleEventHandlerCollection


+ 1
- 0
CSharp/BasicInputs/Geology/CFormation.f90 View File

@@ -23,6 +23,7 @@ module CFormation
if (.not. allocated(data%Configuration%Formation%Formations) .or. size(data%Configuration%Formation%Formations)/=n_children) then if (.not. allocated(data%Configuration%Formation%Formations) .or. size(data%Configuration%Formation%Formations)/=n_children) then
ALLOCATE(data%Configuration%Formation%Formations(n_children)) ALLOCATE(data%Configuration%Formation%Formations(n_children))
endif endif
data%Configuration%Formation%Count = n_children
do i=1,n_children do i=1,n_children
call json%get_child(p, i, pitem, found=is_found) call json%get_child(p, i, pitem, found=is_found)


+ 2
- 1
CSharp/BasicInputs/Geology/CFormation.i90 View File

@@ -1,4 +1,4 @@
# 1 "/mnt/c/Projects/VSIM/SimulationCore2/CSharp/BasicInputs/Geology/CFormation.f90"
# 1 "/home/admin/SimulationCore2/CSharp/BasicInputs/Geology/CFormation.f90"
module CFormation module CFormation
use CFormationVariables use CFormationVariables
use SimulationVariables use SimulationVariables
@@ -24,6 +24,7 @@ module CFormation
if (.not. allocated(data%Configuration%Formation%Formations) .or. size(data%Configuration%Formation%Formations)/=n_children) then if (.not. allocated(data%Configuration%Formation%Formations) .or. size(data%Configuration%Formation%Formations)/=n_children) then
ALLOCATE(data%Configuration%Formation%Formations(n_children)) ALLOCATE(data%Configuration%Formation%Formations(n_children))
endif endif
data%Configuration%Formation%Count = n_children
do i=1,n_children do i=1,n_children
call json%get_child(p, i, pitem, found=is_found) call json%get_child(p, i, pitem, found=is_found)


+ 36
- 36
CSharp/BasicInputs/Geology/CReservoir.f90 View File

@@ -17,20 +17,20 @@ module CReservoir
call json%get(pval,data%Configuration%Reservoir%FormationNo) call json%get(pval,data%Configuration%Reservoir%FormationNo)
call json%get(p,'FormationTop',pval) call json%get(p,'FormationTop',pval)
call json%get(pval,data%Configuration%Reservoir%FormationTop) call json%get(pval,data%Configuration%Reservoir%FormationTop)
call json%get(p,'PressureGradient',pval)
call json%get(pval,data%Configuration%Reservoir%PressureGradient)
! call json%get(p,'PressureGradient',pval)
! call json%get(pval,data%Configuration%Reservoir%PressureGradient)
call json%get(p,'FormationPermeability',pval) call json%get(p,'FormationPermeability',pval)
call json%get(pval,data%Configuration%Reservoir%FormationPermeability) call json%get(pval,data%Configuration%Reservoir%FormationPermeability)
call json%get(p,'GeothermalGradient',pval)
call json%get(pval,data%Configuration%Reservoir%GeothermalGradient)
call json%get(p,'FluidType',pval)
call json%get(pval,data%Configuration%Reservoir%FluidType)
call json%get(p,'FluidGradient',pval)
call json%get(pval,data%Configuration%Reservoir%FluidGradient)
call json%get(p,'FluidViscosity',pval)
call json%get(pval,data%Configuration%Reservoir%FluidViscosity)
call json%get(p,'InactiveInflux',pval)
call json%get(pval,data%Configuration%Reservoir%InactiveInflux)
! call json%get(p,'GeothermalGradient',pval)
! call json%get(pval,data%Configuration%Reservoir%GeothermalGradient)
! call json%get(p,'FluidType',pval)
! call json%get(pval,data%Configuration%Reservoir%FluidType)
! call json%get(p,'FluidGradient',pval)
! call json%get(pval,data%Configuration%Reservoir%FluidGradient)
! call json%get(p,'FluidViscosity',pval)
! call json%get(pval,data%Configuration%Reservoir%FluidViscosity)
! call json%get(p,'InactiveInflux',pval)
! call json%get(pval,data%Configuration%Reservoir%InactiveInflux)
call json%get(p,'IsAutoMigrationRateSelected',pval) call json%get(p,'IsAutoMigrationRateSelected',pval)
call json%get(pval,data%Configuration%Reservoir%IsAutoMigrationRateSelected) call json%get(pval,data%Configuration%Reservoir%IsAutoMigrationRateSelected)
call json%get(p,'AutoMigrationRate',pval) call json%get(p,'AutoMigrationRate',pval)
@@ -39,32 +39,32 @@ module CReservoir
call json%get(pval,data%Configuration%Reservoir%MakeKickSinglePacket) call json%get(pval,data%Configuration%Reservoir%MakeKickSinglePacket)
end subroutine end subroutine
subroutine ReservoirToJson(parent)
! subroutine ReservoirToJson(parent)
type(json_value),pointer :: parent
type(json_core) :: json
type(json_value),pointer :: p
! type(json_value),pointer :: parent
! type(json_core) :: json
! type(json_value),pointer :: p
! 1. create new node
call json%create_object(p,'Reservoir')
! ! 1. create new node
! call json%create_object(p,'Reservoir')
! 2. add member of data type to new node
! call StringConfigurationToJson(p)
! call FormationToJson(p)
call json%add(p,"AutoMigrationRate",data%Configuration%Reservoir%AutoMigrationRate)
call json%add(p,"FluidGradient",data%Configuration%Reservoir%FluidGradient)
call json%add(p,"FluidType",data%Configuration%Reservoir%FluidType)
call json%add(p,"FluidViscosity",data%Configuration%Reservoir%FluidViscosity)
call json%add(p,"FormationNo",data%Configuration%Reservoir%FormationNo)
call json%add(p,"FormationPermeability",data%Configuration%Reservoir%FormationPermeability)
call json%add(p,"FormationTop",data%Configuration%Reservoir%FormationTop)
call json%add(p,"GeothermalGradient",data%Configuration%Reservoir%GeothermalGradient)
call json%add(p,"InactiveInflux",data%Configuration%Reservoir%InactiveInflux)
call json%add(p,"IsAutoMigrationRateSelected",data%Configuration%Reservoir%IsAutoMigrationRateSelected)
call json%add(p,"MakeKickSinglePacket",data%Configuration%Reservoir%MakeKickSinglePacket)
call json%add(p,"PressureGradient",data%Configuration%Reservoir%PressureGradient)
! ! 2. add member of data type to new node
! ! call StringConfigurationToJson(p)
! ! call FormationToJson(p)
! call json%add(p,"AutoMigrationRate",data%Configuration%Reservoir%AutoMigrationRate)
! ! call json%add(p,"FluidGradient",data%Configuration%Reservoir%FluidGradient)
! ! call json%add(p,"FluidType",data%Configuration%Reservoir%FluidType)
! ! call json%add(p,"FluidViscosity",data%Configuration%Reservoir%FluidViscosity)
! call json%add(p,"FormationNo",data%Configuration%Reservoir%FormationNo)
! call json%add(p,"FormationPermeability",data%Configuration%Reservoir%FormationPermeability)
! call json%add(p,"FormationTop",data%Configuration%Reservoir%FormationTop)
! call json%add(p,"GeothermalGradient",data%Configuration%Reservoir%GeothermalGradient)
! call json%add(p,"InactiveInflux",data%Configuration%Reservoir%InactiveInflux)
! call json%add(p,"IsAutoMigrationRateSelected",data%Configuration%Reservoir%IsAutoMigrationRateSelected)
! call json%add(p,"MakeKickSinglePacket",data%Configuration%Reservoir%MakeKickSinglePacket)
! call json%add(p,"PressureGradient",data%Configuration%Reservoir%PressureGradient)
! 3. add new node to parent
call json%add(parent,p)
end subroutine
! ! 3. add new node to parent
! call json%add(parent,p)
! end subroutine
end module CReservoir end module CReservoir

+ 37
- 37
CSharp/BasicInputs/Geology/CReservoir.i90 View File

@@ -1,4 +1,4 @@
# 1 "/mnt/c/Projects/VSIM/SimulationCore2/CSharp/BasicInputs/Geology/CReservoir.f90"
# 1 "/home/admin/SimulationCore2/CSharp/BasicInputs/Geology/CReservoir.f90"
module CReservoir module CReservoir
use SimulationVariables use SimulationVariables
use json_module use json_module
@@ -18,20 +18,20 @@ module CReservoir
call json%get(pval,data%Configuration%Reservoir%FormationNo) call json%get(pval,data%Configuration%Reservoir%FormationNo)
call json%get(p,'FormationTop',pval) call json%get(p,'FormationTop',pval)
call json%get(pval,data%Configuration%Reservoir%FormationTop) call json%get(pval,data%Configuration%Reservoir%FormationTop)
call json%get(p,'PressureGradient',pval)
call json%get(pval,data%Configuration%Reservoir%PressureGradient)
! call json%get(p,'PressureGradient',pval)
! call json%get(pval,data%Configuration%Reservoir%PressureGradient)
call json%get(p,'FormationPermeability',pval) call json%get(p,'FormationPermeability',pval)
call json%get(pval,data%Configuration%Reservoir%FormationPermeability) call json%get(pval,data%Configuration%Reservoir%FormationPermeability)
call json%get(p,'GeothermalGradient',pval)
call json%get(pval,data%Configuration%Reservoir%GeothermalGradient)
call json%get(p,'FluidType',pval)
call json%get(pval,data%Configuration%Reservoir%FluidType)
call json%get(p,'FluidGradient',pval)
call json%get(pval,data%Configuration%Reservoir%FluidGradient)
call json%get(p,'FluidViscosity',pval)
call json%get(pval,data%Configuration%Reservoir%FluidViscosity)
call json%get(p,'InactiveInflux',pval)
call json%get(pval,data%Configuration%Reservoir%InactiveInflux)
! call json%get(p,'GeothermalGradient',pval)
! call json%get(pval,data%Configuration%Reservoir%GeothermalGradient)
! call json%get(p,'FluidType',pval)
! call json%get(pval,data%Configuration%Reservoir%FluidType)
! call json%get(p,'FluidGradient',pval)
! call json%get(pval,data%Configuration%Reservoir%FluidGradient)
! call json%get(p,'FluidViscosity',pval)
! call json%get(pval,data%Configuration%Reservoir%FluidViscosity)
! call json%get(p,'InactiveInflux',pval)
! call json%get(pval,data%Configuration%Reservoir%InactiveInflux)
call json%get(p,'IsAutoMigrationRateSelected',pval) call json%get(p,'IsAutoMigrationRateSelected',pval)
call json%get(pval,data%Configuration%Reservoir%IsAutoMigrationRateSelected) call json%get(pval,data%Configuration%Reservoir%IsAutoMigrationRateSelected)
call json%get(p,'AutoMigrationRate',pval) call json%get(p,'AutoMigrationRate',pval)
@@ -40,32 +40,32 @@ module CReservoir
call json%get(pval,data%Configuration%Reservoir%MakeKickSinglePacket) call json%get(pval,data%Configuration%Reservoir%MakeKickSinglePacket)
end subroutine end subroutine


subroutine ReservoirToJson(parent)
! subroutine ReservoirToJson(parent)


type(json_value),pointer :: parent
type(json_core) :: json
type(json_value),pointer :: p
! type(json_value),pointer :: parent
! type(json_core) :: json
! type(json_value),pointer :: p


! 1. create new node
call json%create_object(p,'Reservoir')
! ! 1. create new node
! call json%create_object(p,'Reservoir')
! 2. add member of data type to new node
! call StringConfigurationToJson(p)
! call FormationToJson(p)
call json%add(p,"AutoMigrationRate",data%Configuration%Reservoir%AutoMigrationRate)
call json%add(p,"FluidGradient",data%Configuration%Reservoir%FluidGradient)
call json%add(p,"FluidType",data%Configuration%Reservoir%FluidType)
call json%add(p,"FluidViscosity",data%Configuration%Reservoir%FluidViscosity)
call json%add(p,"FormationNo",data%Configuration%Reservoir%FormationNo)
call json%add(p,"FormationPermeability",data%Configuration%Reservoir%FormationPermeability)
call json%add(p,"FormationTop",data%Configuration%Reservoir%FormationTop)
call json%add(p,"GeothermalGradient",data%Configuration%Reservoir%GeothermalGradient)
call json%add(p,"InactiveInflux",data%Configuration%Reservoir%InactiveInflux)
call json%add(p,"IsAutoMigrationRateSelected",data%Configuration%Reservoir%IsAutoMigrationRateSelected)
call json%add(p,"MakeKickSinglePacket",data%Configuration%Reservoir%MakeKickSinglePacket)
call json%add(p,"PressureGradient",data%Configuration%Reservoir%PressureGradient)
! ! 2. add member of data type to new node
! ! call StringConfigurationToJson(p)
! ! call FormationToJson(p)
! call json%add(p,"AutoMigrationRate",data%Configuration%Reservoir%AutoMigrationRate)
! ! call json%add(p,"FluidGradient",data%Configuration%Reservoir%FluidGradient)
! ! call json%add(p,"FluidType",data%Configuration%Reservoir%FluidType)
! ! call json%add(p,"FluidViscosity",data%Configuration%Reservoir%FluidViscosity)
! call json%add(p,"FormationNo",data%Configuration%Reservoir%FormationNo)
! call json%add(p,"FormationPermeability",data%Configuration%Reservoir%FormationPermeability)
! call json%add(p,"FormationTop",data%Configuration%Reservoir%FormationTop)
! call json%add(p,"GeothermalGradient",data%Configuration%Reservoir%GeothermalGradient)
! call json%add(p,"InactiveInflux",data%Configuration%Reservoir%InactiveInflux)
! call json%add(p,"IsAutoMigrationRateSelected",data%Configuration%Reservoir%IsAutoMigrationRateSelected)
! call json%add(p,"MakeKickSinglePacket",data%Configuration%Reservoir%MakeKickSinglePacket)
! call json%add(p,"PressureGradient",data%Configuration%Reservoir%PressureGradient)


! 3. add new node to parent
call json%add(parent,p)
end subroutine
! ! 3. add new node to parent
! call json%add(parent,p)
! end subroutine
end module CReservoir end module CReservoir

+ 5
- 5
CSharp/BasicInputs/Geology/CReservoirVariables.f90 View File

@@ -10,12 +10,12 @@ module CReservoirVariables
! variables ! variables
integer :: FormationNo integer :: FormationNo
real(8) :: FormationTop real(8) :: FormationTop
real(8) :: PressureGradient
! real(8) :: PressureGradient
real(8) :: FormationPermeability real(8) :: FormationPermeability
real(8) :: GeothermalGradient
integer :: FluidType
real(8) :: FluidGradient
real(8) :: FluidViscosity
! real(8) :: GeothermalGradient
! integer :: FluidType
! real(8) :: FluidGradient
! real(8) :: FluidViscosity
logical :: InactiveInflux logical :: InactiveInflux
logical :: IsAutoMigrationRateSelected logical :: IsAutoMigrationRateSelected
real(8) :: AutoMigrationRate real(8) :: AutoMigrationRate


+ 6
- 6
CSharp/BasicInputs/Geology/CReservoirVariables.i90 View File

@@ -1,4 +1,4 @@
# 1 "/mnt/c/Projects/VSIM/SimulationCore2/CSharp/BasicInputs/Geology/CReservoirVariables.f90"
# 1 "/home/admin/SimulationCore2/CSharp/BasicInputs/Geology/CReservoirVariables.f90"
module CReservoirVariables module CReservoirVariables
implicit none implicit none
public public
@@ -11,12 +11,12 @@ module CReservoirVariables
! variables ! variables
integer :: FormationNo integer :: FormationNo
real(8) :: FormationTop real(8) :: FormationTop
real(8) :: PressureGradient
! real(8) :: PressureGradient
real(8) :: FormationPermeability real(8) :: FormationPermeability
real(8) :: GeothermalGradient
integer :: FluidType
real(8) :: FluidGradient
real(8) :: FluidViscosity
! real(8) :: GeothermalGradient
! integer :: FluidType
! real(8) :: FluidGradient
! real(8) :: FluidViscosity
logical :: InactiveInflux logical :: InactiveInflux
logical :: IsAutoMigrationRateSelected logical :: IsAutoMigrationRateSelected
real(8) :: AutoMigrationRate real(8) :: AutoMigrationRate


+ 1
- 1
CSharp/BasicInputs/Geology/CShoeVariables.i90 View File

@@ -1,4 +1,4 @@
# 1 "/mnt/c/Projects/VSIM/SimulationCore2/CSharp/BasicInputs/Geology/CShoeVariables.f90"
# 1 "/home/admin/SimulationCore2/CSharp/BasicInputs/Geology/CShoeVariables.f90"
module CShoeVariables module CShoeVariables
implicit none implicit none
public public


+ 1
- 1
CSharp/BasicInputs/MudProperties.i90 View File

@@ -1,4 +1,4 @@
# 1 "/mnt/c/Projects/VSIM/SimulationCore2/CSharp/BasicInputs/MudProperties.f90"
# 1 "/home/admin/SimulationCore2/CSharp/BasicInputs/MudProperties.f90"
module MudPropertiesModule module MudPropertiesModule
use SimulationVariables use SimulationVariables
use json_module use json_module


+ 1
- 1
CSharp/BasicInputs/RigSpecifications/CBopStack.i90 View File

@@ -1,4 +1,4 @@
# 1 "/mnt/c/Projects/VSIM/SimulationCore2/CSharp/BasicInputs/RigSpecifications/CBopStack.f90"
# 1 "/home/admin/SimulationCore2/CSharp/BasicInputs/RigSpecifications/CBopStack.f90"
module CBopStack module CBopStack
use SimulationVariables use SimulationVariables
use json_module use json_module


+ 1
- 1
CSharp/BasicInputs/RigSpecifications/CBopStackVariables.i90 View File

@@ -1,4 +1,4 @@
# 1 "/mnt/c/Projects/VSIM/SimulationCore2/CSharp/BasicInputs/RigSpecifications/CBopStackVariables.f90"
# 1 "/home/admin/SimulationCore2/CSharp/BasicInputs/RigSpecifications/CBopStackVariables.f90"
module CBopStackVariables module CBopStackVariables
implicit none implicit none
public public


+ 3
- 0
CSharp/BasicInputs/RigSpecifications/CHoisting.f90 View File

@@ -28,6 +28,9 @@ module CHoisting
call json%get(pval,data%Configuration%Hoisting%NumberOfLine) call json%get(pval,data%Configuration%Hoisting%NumberOfLine)
call json%get(p,'DrillingLineBreakingLoad',pval) call json%get(p,'DrillingLineBreakingLoad',pval)
call json%get(pval,data%Configuration%Hoisting%DrillingLineBreakingLoad) call json%get(pval,data%Configuration%Hoisting%DrillingLineBreakingLoad)
!@@@
data%Configuration%Hoisting%NumberOfLine = 10
end subroutine end subroutine
subroutine HoistingToJson(parent) subroutine HoistingToJson(parent)


+ 1
- 1
CSharp/BasicInputs/RigSpecifications/CHoistingVariables.i90 View File

@@ -1,4 +1,4 @@
# 1 "/mnt/c/Projects/VSIM/SimulationCore2/CSharp/BasicInputs/RigSpecifications/CHoistingVariables.f90"
# 1 "/home/admin/SimulationCore2/CSharp/BasicInputs/RigSpecifications/CHoistingVariables.f90"
module CHoistingVariables module CHoistingVariables
implicit none implicit none
public public


+ 1
- 1
CSharp/BasicInputs/RigSpecifications/CPower.i90 View File

@@ -1,4 +1,4 @@
# 1 "/mnt/c/Projects/VSIM/SimulationCore2/CSharp/BasicInputs/RigSpecifications/CPower.f90"
# 1 "/home/admin/SimulationCore2/CSharp/BasicInputs/RigSpecifications/CPower.f90"
module CPower module CPower
use SimulationVariables use SimulationVariables
use json_module use json_module


+ 51
- 51
CSharp/BasicInputs/RigSpecifications/CPumps.f90 View File

@@ -5,55 +5,55 @@ module CPumps
public public
contains contains
subroutine PumpsToJson(parent)
! subroutine PumpsToJson(parent)
type(json_value),pointer :: parent
type(json_core) :: json
type(json_value),pointer :: p
! type(json_value),pointer :: parent
! type(json_core) :: json
! type(json_value),pointer :: p
! 1. create new node
call json%create_object(p,'Pumps')
! ! 1. create new node
! call json%create_object(p,'Pumps')
! 2. add member of data type to new node
! call StringConfigurationToJson(p)
! call FormationToJson(p)
call json%add(p,"MudPump1LinerDiameter",data%Configuration%Pumps%MudPump1LinerDiameter)
call json%add(p,"MudPump1Stroke",data%Configuration%Pumps%MudPump1Stroke)
call json%add(p,"MudPump1MechanicalEfficiency",data%Configuration%Pumps%MudPump1MechanicalEfficiency)
call json%add(p,"MudPump1VolumetricEfficiency",data%Configuration%Pumps%MudPump1VolumetricEfficiency)
call json%add(p,"MudPump1Output",data%Configuration%Pumps%MudPump1Output)
call json%add(p,"MudPump1OutputBblStroke",data%Configuration%Pumps%MudPump1OutputBblStroke)
call json%add(p,"MudPump1Maximum",data%Configuration%Pumps%MudPump1Maximum)
call json%add(p,"MudPump1ReliefValvePressure",data%Configuration%Pumps%MudPump1ReliefValvePressure)
call json%add(p,"MudPump2LinerDiameter",data%Configuration%Pumps%MudPump2LinerDiameter)
call json%add(p,"MudPump2Stroke",data%Configuration%Pumps%MudPump2Stroke)
call json%add(p,"MudPump2MechanicalEfficiency",data%Configuration%Pumps%MudPump2MechanicalEfficiency)
call json%add(p,"MudPump2VolumetricEfficiency",data%Configuration%Pumps%MudPump2VolumetricEfficiency)
call json%add(p,"MudPump2Output",data%Configuration%Pumps%MudPump2Output)
call json%add(p,"MudPump2OutputBblStroke",data%Configuration%Pumps%MudPump2OutputBblStroke)
call json%add(p,"MudPump2Maximum",data%Configuration%Pumps%MudPump2Maximum)
call json%add(p,"MudPump2ReliefValvePressure",data%Configuration%Pumps%MudPump2ReliefValvePressure)
call json%add(p,"CementPumpLinerDiameter",data%Configuration%Pumps%CementPumpLinerDiameter)
call json%add(p,"CementPumpStroke",data%Configuration%Pumps%CementPumpStroke)
call json%add(p,"CementPumpMechanicalEfficiency",data%Configuration%Pumps%CementPumpMechanicalEfficiency)
call json%add(p,"CementPumpVolumetricEfficiency",data%Configuration%Pumps%CementPumpVolumetricEfficiency)
call json%add(p,"CementPumpOutput",data%Configuration%Pumps%CementPumpOutput)
call json%add(p,"CementPumpOutputBblStroke",data%Configuration%Pumps%CementPumpOutputBblStroke)
call json%add(p,"CementPumpMaximum",data%Configuration%Pumps%CementPumpMaximum)
call json%add(p,"CementPumpReliefValvePressure ",data%Configuration%Pumps%CementPumpReliefValvePressure )
call json%add(p,"MudPump1ReliefValveIsSet",data%Configuration%Pumps%MudPump1ReliefValveIsSet)
call json%add(p,"MudPump2ReliefValveIsSet",data%Configuration%Pumps%MudPump2ReliefValveIsSet)
call json%add(p,"CementPumpReliefValveIsSet",data%Configuration%Pumps%CementPumpReliefValveIsSet)
! call json%add(p,"ManualPumpPower",data%Configuration%Pumps%ManualPumpPower)
! call json%add(p,"Valve1",data%Configuration%Pumps%Valve1)
! call json%add(p,"Valve2",data%Configuration%Pumps%Valve2)
! call json%add(p,"Valve3",data%Configuration%Pumps%Valve3)
! call json%add(p,"Valve4",data%Configuration%Pumps%Valve4)
! call json%add(p,"Valve5",data%Configuration%Pumps%Valve5)
! ! 2. add member of data type to new node
! ! call StringConfigurationToJson(p)
! ! call FormationToJson(p)
! call json%add(p,"MudPump1LinerDiameter",data%Configuration%Pumps%MudPump1LinerDiameter)
! call json%add(p,"MudPump1Stroke",data%Configuration%Pumps%MudPump1Stroke)
! call json%add(p,"MudPump1MechanicalEfficiency",data%Configuration%Pumps%MudPump1MechanicalEfficiency)
! call json%add(p,"MudPump1VolumetricEfficiency",data%Configuration%Pumps%MudPump1VolumetricEfficiency)
! call json%add(p,"MudPump1Output",data%Configuration%Pumps%MudPump1Output)
! call json%add(p,"MudPump1OutputBblStroke",data%Configuration%Pumps%MudPump1OutputBblStroke)
! call json%add(p,"MudPump1Maximum",data%Configuration%Pumps%MudPump1Maximum)
! call json%add(p,"MudPump1ReliefValvePressure",data%Configuration%Pumps%MudPump1ReliefValvePressure)
! call json%add(p,"MudPump2LinerDiameter",data%Configuration%Pumps%MudPump2LinerDiameter)
! call json%add(p,"MudPump2Stroke",data%Configuration%Pumps%MudPump2Stroke)
! call json%add(p,"MudPump2MechanicalEfficiency",data%Configuration%Pumps%MudPump2MechanicalEfficiency)
! ! call json%add(p,"MudPump2VolumetricEfficiency",data%Configuration%Pumps%MudPump2VolumetricEfficiency)
! call json%add(p,"MudPump2Output",data%Configuration%Pumps%MudPump2Output)
! call json%add(p,"MudPump2OutputBblStroke",data%Configuration%Pumps%MudPump2OutputBblStroke)
! call json%add(p,"MudPump2Maximum",data%Configuration%Pumps%MudPump2Maximum)
! call json%add(p,"MudPump2ReliefValvePressure",data%Configuration%Pumps%MudPump2ReliefValvePressure)
! call json%add(p,"CementPumpLinerDiameter",data%Configuration%Pumps%CementPumpLinerDiameter)
! call json%add(p,"CementPumpStroke",data%Configuration%Pumps%CementPumpStroke)
! call json%add(p,"CementPumpMechanicalEfficiency",data%Configuration%Pumps%CementPumpMechanicalEfficiency)
! ! call json%add(p,"CementPumpVolumetricEfficiency",data%Configuration%Pumps%CementPumpVolumetricEfficiency)
! call json%add(p,"CementPumpOutput",data%Configuration%Pumps%CementPumpOutput)
! call json%add(p,"CementPumpOutputBblStroke",data%Configuration%Pumps%CementPumpOutputBblStroke)
! call json%add(p,"CementPumpMaximum",data%Configuration%Pumps%CementPumpMaximum)
! call json%add(p,"CementPumpReliefValvePressure ",data%Configuration%Pumps%CementPumpReliefValvePressure )
! call json%add(p,"MudPump1ReliefValveIsSet",data%Configuration%Pumps%MudPump1ReliefValveIsSet)
! call json%add(p,"MudPump2ReliefValveIsSet",data%Configuration%Pumps%MudPump2ReliefValveIsSet)
! call json%add(p,"CementPumpReliefValveIsSet",data%Configuration%Pumps%CementPumpReliefValveIsSet)
! ! call json%add(p,"ManualPumpPower",data%Configuration%Pumps%ManualPumpPower)
! ! call json%add(p,"Valve1",data%Configuration%Pumps%Valve1)
! ! call json%add(p,"Valve2",data%Configuration%Pumps%Valve2)
! ! call json%add(p,"Valve3",data%Configuration%Pumps%Valve3)
! ! call json%add(p,"Valve4",data%Configuration%Pumps%Valve4)
! ! call json%add(p,"Valve5",data%Configuration%Pumps%Valve5)
! 3. add new node to parent
call json%add(parent,p)
end subroutine
! ! 3. add new node to parent
! call json%add(parent,p)
! end subroutine
subroutine PumpsFromJson(parent) subroutine PumpsFromJson(parent)
use json_module,IK =>json_ik use json_module,IK =>json_ik
@@ -69,8 +69,8 @@ module CPumps
call json%get(pitem,data%Configuration%Pumps%MudPump1Stroke) call json%get(pitem,data%Configuration%Pumps%MudPump1Stroke)
call json%get(p,"MudPump1MechanicalEfficiency",pitem) call json%get(p,"MudPump1MechanicalEfficiency",pitem)
call json%get(pitem,data%Configuration%Pumps%MudPump1MechanicalEfficiency) call json%get(pitem,data%Configuration%Pumps%MudPump1MechanicalEfficiency)
call json%get(p,"MudPump1VolumetricEfficiency",pitem)
call json%get(pitem,data%Configuration%Pumps%MudPump1VolumetricEfficiency)
! call json%get(p,"MudPump1VolumetricEfficiency",pitem)
! call json%get(pitem,data%Configuration%Pumps%MudPump1VolumetricEfficiency)
call json%get(p,"MudPump1Output",pitem) call json%get(p,"MudPump1Output",pitem)
call json%get(pitem,data%Configuration%Pumps%MudPump1Output) call json%get(pitem,data%Configuration%Pumps%MudPump1Output)
call json%get(p,"MudPump1OutputBblStroke",pitem) call json%get(p,"MudPump1OutputBblStroke",pitem)
@@ -85,8 +85,8 @@ module CPumps
call json%get(pitem,data%Configuration%Pumps%MudPump2Stroke) call json%get(pitem,data%Configuration%Pumps%MudPump2Stroke)
call json%get(p,"MudPump2MechanicalEfficiency",pitem) call json%get(p,"MudPump2MechanicalEfficiency",pitem)
call json%get(pitem,data%Configuration%Pumps%MudPump2MechanicalEfficiency) call json%get(pitem,data%Configuration%Pumps%MudPump2MechanicalEfficiency)
call json%get(p,"MudPump2VolumetricEfficiency",pitem)
call json%get(pitem,data%Configuration%Pumps%MudPump2VolumetricEfficiency)
! call json%get(p,"MudPump2VolumetricEfficiency",pitem)
! call json%get(pitem,data%Configuration%Pumps%MudPump2VolumetricEfficiency)
call json%get(p,"MudPump2Output",pitem) call json%get(p,"MudPump2Output",pitem)
call json%get(pitem,data%Configuration%Pumps%MudPump2Output) call json%get(pitem,data%Configuration%Pumps%MudPump2Output)
call json%get(p,"MudPump2OutputBblStroke",pitem) call json%get(p,"MudPump2OutputBblStroke",pitem)
@@ -101,8 +101,8 @@ module CPumps
call json%get(pitem,data%Configuration%Pumps%CementPumpStroke) call json%get(pitem,data%Configuration%Pumps%CementPumpStroke)
call json%get(p,"CementPumpMechanicalEfficiency",pitem) call json%get(p,"CementPumpMechanicalEfficiency",pitem)
call json%get(pitem,data%Configuration%Pumps%CementPumpMechanicalEfficiency) call json%get(pitem,data%Configuration%Pumps%CementPumpMechanicalEfficiency)
call json%get(p,"CementPumpVolumetricEfficiency",pitem)
call json%get(pitem,data%Configuration%Pumps%CementPumpVolumetricEfficiency)
! call json%get(p,"CementPumpVolumetricEfficiency",pitem)
! call json%get(pitem,data%Configuration%Pumps%CementPumpVolumetricEfficiency)
call json%get(p,"CementPumpOutput",pitem) call json%get(p,"CementPumpOutput",pitem)
call json%get(pitem,data%Configuration%Pumps%CementPumpOutput) call json%get(pitem,data%Configuration%Pumps%CementPumpOutput)
call json%get(p,"CementPumpOutputBblStroke",pitem) call json%get(p,"CementPumpOutputBblStroke",pitem)


+ 52
- 52
CSharp/BasicInputs/RigSpecifications/CPumps.i90 View File

@@ -1,4 +1,4 @@
# 1 "/mnt/c/Projects/VSIM/SimulationCore2/CSharp/BasicInputs/RigSpecifications/CPumps.f90"
# 1 "/home/admin/SimulationCore2/CSharp/BasicInputs/RigSpecifications/CPumps.f90"
module CPumps module CPumps
use SimulationVariables use SimulationVariables
use json_module use json_module
@@ -6,55 +6,55 @@ module CPumps
public public
contains contains


subroutine PumpsToJson(parent)
! subroutine PumpsToJson(parent)


type(json_value),pointer :: parent
type(json_core) :: json
type(json_value),pointer :: p
! type(json_value),pointer :: parent
! type(json_core) :: json
! type(json_value),pointer :: p


! 1. create new node
call json%create_object(p,'Pumps')
! ! 1. create new node
! call json%create_object(p,'Pumps')
! 2. add member of data type to new node
! call StringConfigurationToJson(p)
! call FormationToJson(p)
call json%add(p,"MudPump1LinerDiameter",data%Configuration%Pumps%MudPump1LinerDiameter)
call json%add(p,"MudPump1Stroke",data%Configuration%Pumps%MudPump1Stroke)
call json%add(p,"MudPump1MechanicalEfficiency",data%Configuration%Pumps%MudPump1MechanicalEfficiency)
call json%add(p,"MudPump1VolumetricEfficiency",data%Configuration%Pumps%MudPump1VolumetricEfficiency)
call json%add(p,"MudPump1Output",data%Configuration%Pumps%MudPump1Output)
call json%add(p,"MudPump1OutputBblStroke",data%Configuration%Pumps%MudPump1OutputBblStroke)
call json%add(p,"MudPump1Maximum",data%Configuration%Pumps%MudPump1Maximum)
call json%add(p,"MudPump1ReliefValvePressure",data%Configuration%Pumps%MudPump1ReliefValvePressure)
call json%add(p,"MudPump2LinerDiameter",data%Configuration%Pumps%MudPump2LinerDiameter)
call json%add(p,"MudPump2Stroke",data%Configuration%Pumps%MudPump2Stroke)
call json%add(p,"MudPump2MechanicalEfficiency",data%Configuration%Pumps%MudPump2MechanicalEfficiency)
call json%add(p,"MudPump2VolumetricEfficiency",data%Configuration%Pumps%MudPump2VolumetricEfficiency)
call json%add(p,"MudPump2Output",data%Configuration%Pumps%MudPump2Output)
call json%add(p,"MudPump2OutputBblStroke",data%Configuration%Pumps%MudPump2OutputBblStroke)
call json%add(p,"MudPump2Maximum",data%Configuration%Pumps%MudPump2Maximum)
call json%add(p,"MudPump2ReliefValvePressure",data%Configuration%Pumps%MudPump2ReliefValvePressure)
call json%add(p,"CementPumpLinerDiameter",data%Configuration%Pumps%CementPumpLinerDiameter)
call json%add(p,"CementPumpStroke",data%Configuration%Pumps%CementPumpStroke)
call json%add(p,"CementPumpMechanicalEfficiency",data%Configuration%Pumps%CementPumpMechanicalEfficiency)
call json%add(p,"CementPumpVolumetricEfficiency",data%Configuration%Pumps%CementPumpVolumetricEfficiency)
call json%add(p,"CementPumpOutput",data%Configuration%Pumps%CementPumpOutput)
call json%add(p,"CementPumpOutputBblStroke",data%Configuration%Pumps%CementPumpOutputBblStroke)
call json%add(p,"CementPumpMaximum",data%Configuration%Pumps%CementPumpMaximum)
call json%add(p,"CementPumpReliefValvePressure ",data%Configuration%Pumps%CementPumpReliefValvePressure )
call json%add(p,"MudPump1ReliefValveIsSet",data%Configuration%Pumps%MudPump1ReliefValveIsSet)
call json%add(p,"MudPump2ReliefValveIsSet",data%Configuration%Pumps%MudPump2ReliefValveIsSet)
call json%add(p,"CementPumpReliefValveIsSet",data%Configuration%Pumps%CementPumpReliefValveIsSet)
! call json%add(p,"ManualPumpPower",data%Configuration%Pumps%ManualPumpPower)
! call json%add(p,"Valve1",data%Configuration%Pumps%Valve1)
! call json%add(p,"Valve2",data%Configuration%Pumps%Valve2)
! call json%add(p,"Valve3",data%Configuration%Pumps%Valve3)
! call json%add(p,"Valve4",data%Configuration%Pumps%Valve4)
! call json%add(p,"Valve5",data%Configuration%Pumps%Valve5)
! ! 2. add member of data type to new node
! ! call StringConfigurationToJson(p)
! ! call FormationToJson(p)
! call json%add(p,"MudPump1LinerDiameter",data%Configuration%Pumps%MudPump1LinerDiameter)
! call json%add(p,"MudPump1Stroke",data%Configuration%Pumps%MudPump1Stroke)
! call json%add(p,"MudPump1MechanicalEfficiency",data%Configuration%Pumps%MudPump1MechanicalEfficiency)
! call json%add(p,"MudPump1VolumetricEfficiency",data%Configuration%Pumps%MudPump1VolumetricEfficiency)
! call json%add(p,"MudPump1Output",data%Configuration%Pumps%MudPump1Output)
! call json%add(p,"MudPump1OutputBblStroke",data%Configuration%Pumps%MudPump1OutputBblStroke)
! call json%add(p,"MudPump1Maximum",data%Configuration%Pumps%MudPump1Maximum)
! call json%add(p,"MudPump1ReliefValvePressure",data%Configuration%Pumps%MudPump1ReliefValvePressure)
! call json%add(p,"MudPump2LinerDiameter",data%Configuration%Pumps%MudPump2LinerDiameter)
! call json%add(p,"MudPump2Stroke",data%Configuration%Pumps%MudPump2Stroke)
! call json%add(p,"MudPump2MechanicalEfficiency",data%Configuration%Pumps%MudPump2MechanicalEfficiency)
! ! call json%add(p,"MudPump2VolumetricEfficiency",data%Configuration%Pumps%MudPump2VolumetricEfficiency)
! call json%add(p,"MudPump2Output",data%Configuration%Pumps%MudPump2Output)
! call json%add(p,"MudPump2OutputBblStroke",data%Configuration%Pumps%MudPump2OutputBblStroke)
! call json%add(p,"MudPump2Maximum",data%Configuration%Pumps%MudPump2Maximum)
! call json%add(p,"MudPump2ReliefValvePressure",data%Configuration%Pumps%MudPump2ReliefValvePressure)
! call json%add(p,"CementPumpLinerDiameter",data%Configuration%Pumps%CementPumpLinerDiameter)
! call json%add(p,"CementPumpStroke",data%Configuration%Pumps%CementPumpStroke)
! call json%add(p,"CementPumpMechanicalEfficiency",data%Configuration%Pumps%CementPumpMechanicalEfficiency)
! ! call json%add(p,"CementPumpVolumetricEfficiency",data%Configuration%Pumps%CementPumpVolumetricEfficiency)
! call json%add(p,"CementPumpOutput",data%Configuration%Pumps%CementPumpOutput)
! call json%add(p,"CementPumpOutputBblStroke",data%Configuration%Pumps%CementPumpOutputBblStroke)
! call json%add(p,"CementPumpMaximum",data%Configuration%Pumps%CementPumpMaximum)
! call json%add(p,"CementPumpReliefValvePressure ",data%Configuration%Pumps%CementPumpReliefValvePressure )
! call json%add(p,"MudPump1ReliefValveIsSet",data%Configuration%Pumps%MudPump1ReliefValveIsSet)
! call json%add(p,"MudPump2ReliefValveIsSet",data%Configuration%Pumps%MudPump2ReliefValveIsSet)
! call json%add(p,"CementPumpReliefValveIsSet",data%Configuration%Pumps%CementPumpReliefValveIsSet)
! ! call json%add(p,"ManualPumpPower",data%Configuration%Pumps%ManualPumpPower)
! ! call json%add(p,"Valve1",data%Configuration%Pumps%Valve1)
! ! call json%add(p,"Valve2",data%Configuration%Pumps%Valve2)
! ! call json%add(p,"Valve3",data%Configuration%Pumps%Valve3)
! ! call json%add(p,"Valve4",data%Configuration%Pumps%Valve4)
! ! call json%add(p,"Valve5",data%Configuration%Pumps%Valve5)
! 3. add new node to parent
call json%add(parent,p)
end subroutine
! ! 3. add new node to parent
! call json%add(parent,p)
! end subroutine


subroutine PumpsFromJson(parent) subroutine PumpsFromJson(parent)
use json_module,IK =>json_ik use json_module,IK =>json_ik
@@ -70,8 +70,8 @@ module CPumps
call json%get(pitem,data%Configuration%Pumps%MudPump1Stroke) call json%get(pitem,data%Configuration%Pumps%MudPump1Stroke)
call json%get(p,"MudPump1MechanicalEfficiency",pitem) call json%get(p,"MudPump1MechanicalEfficiency",pitem)
call json%get(pitem,data%Configuration%Pumps%MudPump1MechanicalEfficiency) call json%get(pitem,data%Configuration%Pumps%MudPump1MechanicalEfficiency)
call json%get(p,"MudPump1VolumetricEfficiency",pitem)
call json%get(pitem,data%Configuration%Pumps%MudPump1VolumetricEfficiency)
! call json%get(p,"MudPump1VolumetricEfficiency",pitem)
! call json%get(pitem,data%Configuration%Pumps%MudPump1VolumetricEfficiency)
call json%get(p,"MudPump1Output",pitem) call json%get(p,"MudPump1Output",pitem)
call json%get(pitem,data%Configuration%Pumps%MudPump1Output) call json%get(pitem,data%Configuration%Pumps%MudPump1Output)
call json%get(p,"MudPump1OutputBblStroke",pitem) call json%get(p,"MudPump1OutputBblStroke",pitem)
@@ -86,8 +86,8 @@ module CPumps
call json%get(pitem,data%Configuration%Pumps%MudPump2Stroke) call json%get(pitem,data%Configuration%Pumps%MudPump2Stroke)
call json%get(p,"MudPump2MechanicalEfficiency",pitem) call json%get(p,"MudPump2MechanicalEfficiency",pitem)
call json%get(pitem,data%Configuration%Pumps%MudPump2MechanicalEfficiency) call json%get(pitem,data%Configuration%Pumps%MudPump2MechanicalEfficiency)
call json%get(p,"MudPump2VolumetricEfficiency",pitem)
call json%get(pitem,data%Configuration%Pumps%MudPump2VolumetricEfficiency)
! call json%get(p,"MudPump2VolumetricEfficiency",pitem)
! call json%get(pitem,data%Configuration%Pumps%MudPump2VolumetricEfficiency)
call json%get(p,"MudPump2Output",pitem) call json%get(p,"MudPump2Output",pitem)
call json%get(pitem,data%Configuration%Pumps%MudPump2Output) call json%get(pitem,data%Configuration%Pumps%MudPump2Output)
call json%get(p,"MudPump2OutputBblStroke",pitem) call json%get(p,"MudPump2OutputBblStroke",pitem)
@@ -102,8 +102,8 @@ module CPumps
call json%get(pitem,data%Configuration%Pumps%CementPumpStroke) call json%get(pitem,data%Configuration%Pumps%CementPumpStroke)
call json%get(p,"CementPumpMechanicalEfficiency",pitem) call json%get(p,"CementPumpMechanicalEfficiency",pitem)
call json%get(pitem,data%Configuration%Pumps%CementPumpMechanicalEfficiency) call json%get(pitem,data%Configuration%Pumps%CementPumpMechanicalEfficiency)
call json%get(p,"CementPumpVolumetricEfficiency",pitem)
call json%get(pitem,data%Configuration%Pumps%CementPumpVolumetricEfficiency)
! call json%get(p,"CementPumpVolumetricEfficiency",pitem)
! call json%get(pitem,data%Configuration%Pumps%CementPumpVolumetricEfficiency)
call json%get(p,"CementPumpOutput",pitem) call json%get(p,"CementPumpOutput",pitem)
call json%get(pitem,data%Configuration%Pumps%CementPumpOutput) call json%get(pitem,data%Configuration%Pumps%CementPumpOutput)
call json%get(p,"CementPumpOutputBblStroke",pitem) call json%get(p,"CementPumpOutputBblStroke",pitem)


+ 9
- 9
CSharp/BasicInputs/RigSpecifications/CPumpsVariables.f90 View File

@@ -9,7 +9,7 @@ module CPumpsVariables
real(8) :: MudPump1LinerDiameter real(8) :: MudPump1LinerDiameter
real(8) :: MudPump1Stroke real(8) :: MudPump1Stroke
real(8) :: MudPump1MechanicalEfficiency real(8) :: MudPump1MechanicalEfficiency
real(8) :: MudPump1VolumetricEfficiency
! real(8) :: MudPump1VolumetricEfficiency
real(8) :: MudPump1Output real(8) :: MudPump1Output
real(8) :: MudPump1OutputBblStroke real(8) :: MudPump1OutputBblStroke
real(8) :: MudPump1Maximum real(8) :: MudPump1Maximum
@@ -18,7 +18,7 @@ module CPumpsVariables
real(8) :: MudPump2LinerDiameter real(8) :: MudPump2LinerDiameter
real(8) :: MudPump2Stroke real(8) :: MudPump2Stroke
real(8) :: MudPump2MechanicalEfficiency real(8) :: MudPump2MechanicalEfficiency
real(8) :: MudPump2VolumetricEfficiency
! real(8) :: MudPump2VolumetricEfficiency
real(8) :: MudPump2Output real(8) :: MudPump2Output
real(8) :: MudPump2OutputBblStroke real(8) :: MudPump2OutputBblStroke
real(8) :: MudPump2Maximum real(8) :: MudPump2Maximum
@@ -27,7 +27,7 @@ module CPumpsVariables
real(8) :: CementPumpLinerDiameter real(8) :: CementPumpLinerDiameter
real(8) :: CementPumpStroke real(8) :: CementPumpStroke
real(8) :: CementPumpMechanicalEfficiency real(8) :: CementPumpMechanicalEfficiency
real(8) :: CementPumpVolumetricEfficiency
! real(8) :: CementPumpVolumetricEfficiency
real(8) :: CementPumpOutput real(8) :: CementPumpOutput
real(8) :: CementPumpOutputBblStroke real(8) :: CementPumpOutputBblStroke
real(8) :: CementPumpMaximum real(8) :: CementPumpMaximum
@@ -37,12 +37,12 @@ module CPumpsVariables
logical :: MudPump2ReliefValveIsSet logical :: MudPump2ReliefValveIsSet
logical :: CementPumpReliefValveIsSet logical :: CementPumpReliefValveIsSet
! logical :: ManualPumpPower
! logical :: Valve1
! logical :: Valve2
! logical :: Valve3
! logical :: Valve4
! logical :: Valve5
real(8) :: MudPump1VolumetricOutput
! Newly added
Real(8) :: MudPump1MaximumPressure,MudPump1PumpRateChange,MudPump1SurfaceLineLength,MudPump1DelayToShutdown
Real(8) :: MudPump2MaximumPressure,MudPump2PumpRateChange,MudPump2SurfaceLineLength,MudPump2DelayToShutdown
Real(8) :: CementPumpMaximumPressure,CementPumpPumpRateChange,CementPumpSurfaceLineLength,CementPumpDelayToShutdown
End type PumpSpecificationType End type PumpSpecificationType
! Type(PumpSpecificationType)::PumpsSpecification ! Type(PumpSpecificationType)::PumpsSpecification


+ 10
- 10
CSharp/BasicInputs/RigSpecifications/CPumpsVariables.i90 View File

@@ -1,4 +1,4 @@
# 1 "/mnt/c/Projects/VSIM/SimulationCore2/CSharp/BasicInputs/RigSpecifications/CPumpsVariables.f90"
# 1 "/home/admin/SimulationCore2/CSharp/BasicInputs/RigSpecifications/CPumpsVariables.f90"
module CPumpsVariables module CPumpsVariables
use CIActionReference use CIActionReference
implicit none implicit none
@@ -10,7 +10,7 @@ module CPumpsVariables
real(8) :: MudPump1LinerDiameter real(8) :: MudPump1LinerDiameter
real(8) :: MudPump1Stroke real(8) :: MudPump1Stroke
real(8) :: MudPump1MechanicalEfficiency real(8) :: MudPump1MechanicalEfficiency
real(8) :: MudPump1VolumetricEfficiency
! real(8) :: MudPump1VolumetricEfficiency
real(8) :: MudPump1Output real(8) :: MudPump1Output
real(8) :: MudPump1OutputBblStroke real(8) :: MudPump1OutputBblStroke
real(8) :: MudPump1Maximum real(8) :: MudPump1Maximum
@@ -19,7 +19,7 @@ module CPumpsVariables
real(8) :: MudPump2LinerDiameter real(8) :: MudPump2LinerDiameter
real(8) :: MudPump2Stroke real(8) :: MudPump2Stroke
real(8) :: MudPump2MechanicalEfficiency real(8) :: MudPump2MechanicalEfficiency
real(8) :: MudPump2VolumetricEfficiency
! real(8) :: MudPump2VolumetricEfficiency
real(8) :: MudPump2Output real(8) :: MudPump2Output
real(8) :: MudPump2OutputBblStroke real(8) :: MudPump2OutputBblStroke
real(8) :: MudPump2Maximum real(8) :: MudPump2Maximum
@@ -28,7 +28,7 @@ module CPumpsVariables
real(8) :: CementPumpLinerDiameter real(8) :: CementPumpLinerDiameter
real(8) :: CementPumpStroke real(8) :: CementPumpStroke
real(8) :: CementPumpMechanicalEfficiency real(8) :: CementPumpMechanicalEfficiency
real(8) :: CementPumpVolumetricEfficiency
! real(8) :: CementPumpVolumetricEfficiency
real(8) :: CementPumpOutput real(8) :: CementPumpOutput
real(8) :: CementPumpOutputBblStroke real(8) :: CementPumpOutputBblStroke
real(8) :: CementPumpMaximum real(8) :: CementPumpMaximum
@@ -38,12 +38,12 @@ module CPumpsVariables
logical :: MudPump2ReliefValveIsSet logical :: MudPump2ReliefValveIsSet
logical :: CementPumpReliefValveIsSet logical :: CementPumpReliefValveIsSet
! logical :: ManualPumpPower
! logical :: Valve1
! logical :: Valve2
! logical :: Valve3
! logical :: Valve4
! logical :: Valve5
real(8) :: MudPump1VolumetricOutput
! Newly added
Real(8) :: MudPump1MaximumPressure,MudPump1PumpRateChange,MudPump1SurfaceLineLength,MudPump1DelayToShutdown
Real(8) :: MudPump2MaximumPressure,MudPump2PumpRateChange,MudPump2SurfaceLineLength,MudPump2DelayToShutdown
Real(8) :: CementPumpMaximumPressure,CementPumpPumpRateChange,CementPumpSurfaceLineLength,CementPumpDelayToShutdown
End type PumpSpecificationType End type PumpSpecificationType
! Type(PumpSpecificationType)::PumpsSpecification ! Type(PumpSpecificationType)::PumpsSpecification


+ 1
- 1
CSharp/BasicInputs/WellProfile/CCasingLinerChoke.i90 View File

@@ -1,4 +1,4 @@
# 1 "/mnt/c/Projects/VSIM/SimulationCore2/CSharp/BasicInputs/WellProfile/CCasingLinerChoke.f90"
# 1 "/home/admin/SimulationCore2/CSharp/BasicInputs/WellProfile/CCasingLinerChoke.f90"
module CCasingLinerChoke module CCasingLinerChoke
use SimulationVariables use SimulationVariables
use json_module use json_module


+ 1
- 1
CSharp/BasicInputs/WellProfile/CCasingLinerChokeVariables.i90 View File

@@ -1,4 +1,4 @@
# 1 "/mnt/c/Projects/VSIM/SimulationCore2/CSharp/BasicInputs/WellProfile/CCasingLinerChokeVariables.f90"
# 1 "/home/admin/SimulationCore2/CSharp/BasicInputs/WellProfile/CCasingLinerChokeVariables.f90"
module CCasingLinerChokeVariables module CCasingLinerChokeVariables
implicit none implicit none
public public


+ 1
- 1
CSharp/BasicInputs/WellProfile/CPathGeneration.f90 View File

@@ -62,7 +62,7 @@ module CPathGeneration
DEALLOCATE(data%Configuration%Path%Items) DEALLOCATE(data%Configuration%Path%Items)
ALLOCATE(data%Configuration%Path%Items(n_children)) ALLOCATE(data%Configuration%Path%Items(n_children))
endif endif
data%Configuration%Path%ItemCount = n_children
do i=1,n_children do i=1,n_children
call json%get_child(pitems, i, pitem, found=is_found) call json%get_child(pitems, i, pitem, found=is_found)
call json%get(pitem,"HoleType",pval) call json%get(pitem,"HoleType",pval)


+ 2
- 2
CSharp/BasicInputs/WellProfile/CPathGeneration.i90 View File

@@ -1,4 +1,4 @@
# 1 "/mnt/c/Projects/VSIM/SimulationCore2/CSharp/BasicInputs/WellProfile/CPathGeneration.f90"
# 1 "/home/admin/SimulationCore2/CSharp/BasicInputs/WellProfile/CPathGeneration.f90"
module CPathGeneration module CPathGeneration
use SimulationVariables !@ use SimulationVariables !@
use json_module use json_module
@@ -63,7 +63,7 @@ module CPathGeneration
DEALLOCATE(data%Configuration%Path%Items) DEALLOCATE(data%Configuration%Path%Items)
ALLOCATE(data%Configuration%Path%Items(n_children)) ALLOCATE(data%Configuration%Path%Items(n_children))
endif endif
data%Configuration%Path%ItemCount = n_children
do i=1,n_children do i=1,n_children
call json%get_child(pitems, i, pitem, found=is_found) call json%get_child(pitems, i, pitem, found=is_found)
call json%get(pitem,"HoleType",pval) call json%get(pitem,"HoleType",pval)


+ 1
- 1
CSharp/BasicInputs/WellProfile/CPathGenerationVariables.i90 View File

@@ -1,4 +1,4 @@
# 1 "/mnt/c/Projects/VSIM/SimulationCore2/CSharp/BasicInputs/WellProfile/CPathGenerationVariables.f90"
# 1 "/home/admin/SimulationCore2/CSharp/BasicInputs/WellProfile/CPathGenerationVariables.f90"
module CPathGenerationVariables module CPathGenerationVariables
implicit none implicit none
public public


+ 1
- 1
CSharp/Equipments/ControlPanels/CBopControlPanel.i90 View File

@@ -1,4 +1,4 @@
# 1 "/mnt/c/Projects/VSIM/SimulationCore2/CSharp/Equipments/ControlPanels/CBopControlPanel.f90"
# 1 "/home/admin/SimulationCore2/CSharp/Equipments/ControlPanels/CBopControlPanel.f90"
module CBopControlPanel module CBopControlPanel
! use CBopControlPanel ! use CBopControlPanel
use SimulationVariables use SimulationVariables


+ 2
- 2
CSharp/Equipments/ControlPanels/CDataDisplayConsole.f90 View File

@@ -282,8 +282,8 @@ module CDataDisplayConsole
implicit none implicit none
real(8), intent(in) :: v real(8), intent(in) :: v
! print *,"total depth = ",v ! print *,"total depth = ",v
data%Equipments%DataDisplayConsole%TotalWellDepth = 1000
data%Equipments%DrillingWatch%Depth = 1000
data%Equipments%DataDisplayConsole%TotalWellDepth = v
data%Equipments%DrillingWatch%Depth = v
! call SetDistanceDrilled(v) ! call SetDistanceDrilled(v)
end subroutine end subroutine


+ 3
- 3
CSharp/Equipments/ControlPanels/CDataDisplayConsole.i90 View File

@@ -1,4 +1,4 @@
# 1 "/mnt/c/Projects/VSIM/SimulationCore2/CSharp/Equipments/ControlPanels/CDataDisplayConsole.f90"
# 1 "/home/admin/SimulationCore2/CSharp/Equipments/ControlPanels/CDataDisplayConsole.f90"
module CDataDisplayConsole module CDataDisplayConsole
! use CDataDisplayConsole ! use CDataDisplayConsole
use SimulationVariables use SimulationVariables
@@ -283,8 +283,8 @@ module CDataDisplayConsole
implicit none implicit none
real(8), intent(in) :: v real(8), intent(in) :: v
! print *,"total depth = ",v ! print *,"total depth = ",v
data%Equipments%DataDisplayConsole%TotalWellDepth = 1000
data%Equipments%DrillingWatch%Depth = 1000
data%Equipments%DataDisplayConsole%TotalWellDepth = v
data%Equipments%DrillingWatch%Depth = v
! call SetDistanceDrilled(v) ! call SetDistanceDrilled(v)
end subroutine end subroutine


+ 1
- 1
CSharp/Equipments/ControlPanels/CDataDisplayConsoleVariables.i90 View File

@@ -1,4 +1,4 @@
# 1 "/mnt/c/Projects/VSIM/SimulationCore2/CSharp/Equipments/ControlPanels/CDataDisplayConsoleVariables.f90"
# 1 "/home/admin/SimulationCore2/CSharp/Equipments/ControlPanels/CDataDisplayConsoleVariables.f90"
module CDataDisplayConsoleVariables module CDataDisplayConsoleVariables
use CIActionReference use CIActionReference
! !**use CDoubleEventHandlerCollection ! !**use CDoubleEventHandlerCollection


+ 115
- 226
CSharp/Equipments/ControlPanels/CDrillingConsole.f90 View File

@@ -10,182 +10,125 @@ module CDrillingConsole
contains contains




subroutine DrillingConsoleFromJson(parent)
subroutine DrillingConsoleFromJson(jsonfile)
type(json_value),pointer :: parent type(json_value),pointer :: parent
type(json_core) :: json type(json_core) :: json
type(json_value),pointer :: p,pval type(json_value),pointer :: p,pval
type(json_file)::jsonfile
logical::found


! 1. get related root
call json%get(parent,'Drilling',p)
! 2. get member of data type from node
call json%get(p,'AssignmentSwitch',pval)
call json%get(pval,data%Equipments%DrillingConsole%AssignmentSwitch)
call json%get(p,'EmergencySwitch',pval)
call json%get(pval,data%Equipments%DrillingConsole%EmergencySwitch)
call json%get(p,'RTTorqueLimitKnob',pval)
call json%get(pval,data%Equipments%DrillingConsole%RTTorqueLimitKnob)
call json%get(p,'MP1CPSwitchI',pval)
call json%get(pval,data%Equipments%DrillingConsole%MP1CPSwitchI)
call json%get(p,'MP1CPSwitchT',pval)
call json%get(pval,data%Equipments%DrillingConsole%MP1CPSwitchT)
call json%get(p,'MP1CPSwitch',pval)
call json%get(pval,data%Equipments%DrillingConsole%MP1CPSwitch)
call json%get(p,'MP1ThrottleUpdate',pval)
call json%get(pval,data%Equipments%DrillingConsole%MP1ThrottleUpdate)
call json%get(p,'MP1Throttle',pval)
call json%get(pval,data%Equipments%DrillingConsole%MP1Throttle)
call json%get(p,'MP2SwitchI',pval)
call json%get(pval,data%Equipments%DrillingConsole%MP2SwitchI)
call json%get(p,'MP2SwitchT',pval)
call json%get(pval,data%Equipments%DrillingConsole%MP2SwitchT)
call json%get(p,'MP2Switch',pval)
call json%get(pval,data%Equipments%DrillingConsole%MP2Switch)
call json%get(p,'MP2ThrottleUpdate',pval)
call json%get(pval,data%Equipments%DrillingConsole%MP2ThrottleUpdate)
call json%get(p,'MP2Throttle',pval)
call json%get(pval,data%Equipments%DrillingConsole%MP2Throttle)
call json%get(p,'DWSwitch',pval)
call json%get(pval,data%Equipments%DrillingConsole%DWSwitch)
call json%get(p,'DWThrottle',pval)
call json%get(pval,data%Equipments%DrillingConsole%DWThrottle)
call json%get(p,'RTSwitch',pval)
call json%get(pval,data%Equipments%DrillingConsole%RTSwitch)
call json%get(p,'RTThrottle',pval)
call json%get(pval,data%Equipments%DrillingConsole%RTThrottle)
call json%get(p,'DWBreak',pval)
call json%get(pval,data%Equipments%DrillingConsole%DWBreak)
call json%get(p,'PreviousDWBreak',pval)
call json%get(pval,data%Equipments%DrillingConsole%PreviousDWBreak)
call json%get(p,'ForceBreak',pval)
call json%get(pval,data%Equipments%DrillingConsole%ForceBreak)
call json%get(p,'DWAcceleretor',pval)
call json%get(pval,data%Equipments%DrillingConsole%DWAcceleretor)
call json%get(p,'DWTransmisionLever',pval)
call json%get(pval,data%Equipments%DrillingConsole%DWTransmisionLever)
call json%get(p,'DWPowerLever',pval)
call json%get(pval,data%Equipments%DrillingConsole%DWPowerLever)
call json%get(p,'TongLever',pval)
call json%get(pval,data%Equipments%DrillingConsole%TongLever)
call json%get(p,'RTTransmissionLever',pval)
call json%get(pval,data%Equipments%DrillingConsole%RTTransmissionLever)
call json%get(p,'DWClutchLever',pval)
call json%get(pval,data%Equipments%DrillingConsole%DWClutchLever)
call json%get(p,'EddyBreakLever',pval)
call json%get(pval,data%Equipments%DrillingConsole%EddyBreakLever)
call json%get(p,'AutoDW',pval)
call json%get(pval,data%Equipments%DrillingConsole%AutoDW)
call json%get(p,'GEN1',pval)
call json%get(pval,data%Equipments%DrillingConsole%GEN1)
call json%get(p,'GEN2',pval)
call json%get(pval,data%Equipments%DrillingConsole%GEN2)
call json%get(p,'GEN3',pval)
call json%get(pval,data%Equipments%DrillingConsole%GEN3)
call json%get(p,'GEN4',pval)
call json%get(pval,data%Equipments%DrillingConsole%GEN4)
call json%get(p,'Permission_OpenKellyCock',pval)
call json%get(pval,data%Equipments%DrillingConsole%Permission_OpenKellyCock)
call json%get(p,'OpenKellyCock',pval)
call json%get(pval,data%Equipments%DrillingConsole%OpenKellyCock)
call json%get(p,'Permission_CloseKellyCock',pval)
call json%get(pval,data%Equipments%DrillingConsole%Permission_CloseKellyCock)
call json%get(p,'CloseKellyCock',pval)
call json%get(pval,data%Equipments%DrillingConsole%CloseKellyCock)
call json%get(p,'Permission_OpenSafetyValve',pval)
call json%get(pval,data%Equipments%DrillingConsole%Permission_OpenSafetyValve)
call json%get(p,'OpenSafetyValve',pval)
call json%get(pval,data%Equipments%DrillingConsole%OpenSafetyValve)
call json%get(p,'Permission_CloseSafetyValve',pval)
call json%get(pval,data%Equipments%DrillingConsole%Permission_CloseSafetyValve)
call json%get(p,'CloseSafetyValve',pval)
call json%get(pval,data%Equipments%DrillingConsole%CloseSafetyValve)
call json%get(p,'Permission_IRSafetyValve',pval)
call json%get(pval,data%Equipments%DrillingConsole%Permission_IRSafetyValve)
call json%get(p,'IRSafetyValve',pval)
call json%get(pval,data%Equipments%DrillingConsole%IRSafetyValve)
call json%get(p,'Permission_IRIBop',pval)
call json%get(pval,data%Equipments%DrillingConsole%Permission_IRIBop)
call json%get(p,'IRIBop',pval)
call json%get(pval,data%Equipments%DrillingConsole%IRIBop)
call json%get(p,'LatchPipe',pval)
call json%get(pval,data%Equipments%DrillingConsole%LatchPipe)
call json%get(p,'UnlatchPipe',pval)
call json%get(pval,data%Equipments%DrillingConsole%UnlatchPipe)
call json%get(p,'Swing',pval)
call json%get(pval,data%Equipments%DrillingConsole%Swing)
call json%get(p,'FillMouseHole',pval)
call json%get(pval,data%Equipments%DrillingConsole%FillMouseHole)
call json%get(p,'Slips',pval)
call json%get(pval,data%Equipments%DrillingConsole%Slips)
call json%get(p,'BrakeLeverCoefficient',pval)
call json%get(pval,data%Equipments%DrillingConsole%BrakeLeverCoefficient)
call json%get(p,'HideDrillingBrake',pval)
call json%get(pval,data%Equipments%DrillingConsole%HideDrillingBrake)
call json%get(p,'ParkingBrakeBtn',pval)
call json%get(pval,data%Equipments%DrillingConsole%ParkingBrakeBtn)
call jsonfile%get('Equipments.Drilling.AssignmentSwitch',data%Equipments%DrillingConsole%AssignmentSwitch,found)
if ( .not. found ) call logg(4,"Not found: AssignmentSwitch")
call jsonfile%get('Equipments.Drilling.EmergencySwitch',data%Equipments%DrillingConsole%EmergencySwitch,found)
if ( .not. found ) call logg(4,"Not found: EmergencySwitch")
call jsonfile%get('Equipments.Drilling.RTTorqueLimitKnob',data%Equipments%DrillingConsole%RTTorqueLimitKnob,found)
if ( .not. found ) call logg(4,"Not found: RTTorqueLimitKnob")
call jsonfile%get('Equipments.Drilling.MP1CPSwitchI',data%Equipments%DrillingConsole%MP1CPSwitchI,found)
if ( .not. found ) call logg(4,"Not found: MP1CPSwitchI")
call jsonfile%get('Equipments.Drilling.MP1CPSwitchT',data%Equipments%DrillingConsole%MP1CPSwitchT,found)
if ( .not. found ) call logg(4,"Not found: MP1CPSwitchT")
call jsonfile%get('Equipments.Drilling.MP1CPSwitch',data%Equipments%DrillingConsole%MP1CPSwitch,found)
if ( .not. found ) call logg(4,"Not found: MP1CPSwitch")
call jsonfile%get('Equipments.Drilling.MP1ThrottleUpdate',data%Equipments%DrillingConsole%MP1ThrottleUpdate,found)
if ( .not. found ) call logg(4,"Not found: MP1ThrottleUpdate")
call jsonfile%get('Equipments.Drilling.MP1Throttle',data%Equipments%DrillingConsole%MP1Throttle,found)
if ( .not. found ) then
call logg(4,"Not found: MP1Throttle")
endif
call jsonfile%get('Equipments.Drilling.MP2SwitchI',data%Equipments%DrillingConsole%MP2SwitchI,found)
if ( .not. found ) call logg(4,"Not found: MP2SwitchI")
call jsonfile%get('Equipments.Drilling.MP2SwitchT',data%Equipments%DrillingConsole%MP2SwitchT,found)
if ( .not. found ) call logg(4,"Not found: MP2SwitchT")
call jsonfile%get('Equipments.Drilling.MP2Switch',data%Equipments%DrillingConsole%MP2Switch,found)
if ( .not. found ) call logg(4,"Not found: MP2Switch")
call jsonfile%get('Equipments.Drilling.MP2ThrottleUpdate',data%Equipments%DrillingConsole%MP2ThrottleUpdate,found)
if ( .not. found ) call logg(4,"Not found: MP2ThrottleUpdate")
call jsonfile%get('Equipments.Drilling.MP2Throttle',data%Equipments%DrillingConsole%MP2Throttle,found)
if ( .not. found ) call logg(4,"Not found: MP2Throttle")
! call jsonfile%get('Equipments.Drilling.DWSwitch',data%Equipments%DrillingConsole%DWSwitch,found)
! if ( .not. found ) call logg(4,"Not found: DWSwitch")
call jsonfile%get('Equipments.Drilling.DWThrottle',data%Equipments%DrillingConsole%DWThrottle,found)
if ( .not. found ) call logg(4,"Not found: DWThrottle")
call jsonfile%get('Equipments.Drilling.RTSwitch',data%Equipments%DrillingConsole%RTSwitch,found)
if ( .not. found ) call logg(4,"Not found: RTSwitch")
call jsonfile%get('Equipments.Drilling.RTThrottle',data%Equipments%DrillingConsole%RTThrottle,found)
if ( .not. found ) call logg(4,"Not found: RTThrottle")
call jsonfile%get('Equipments.Drilling.DWBreak',data%Equipments%DrillingConsole%DWBreak,found)
if ( .not. found ) call logg(4,"Not found: DWBreak")
call jsonfile%get('Equipments.Drilling.PreviousDWBreak',data%Equipments%DrillingConsole%PreviousDWBreak,found)
if ( .not. found ) call logg(4,"Not found: PreviousDWBreak")
call jsonfile%get('Equipments.Drilling.ForceBreak',data%Equipments%DrillingConsole%ForceBreak,found)
if ( .not. found ) call logg(4,"Not found: ForceBreak")
call jsonfile%get('Equipments.Drilling.DWAcceleretor',data%Equipments%DrillingConsole%DWAcceleretor,found)
if ( .not. found ) call logg(4,"Not found: DWAcceleretor")
call jsonfile%get('Equipments.Drilling.DWTransmisionLever',data%Equipments%DrillingConsole%DWTransmisionLever,found)
if ( .not. found ) call logg(4,"Not found: DWTransmisionLever")
call jsonfile%get('Equipments.Drilling.DWPowerLever',data%Equipments%DrillingConsole%DWPowerLever,found)
if ( .not. found ) call logg(4,"Not found: DWPowerLever")
call jsonfile%get('Equipments.Drilling.TongLever',data%Equipments%DrillingConsole%TongLever,found)
if ( .not. found ) call logg(4,"Not found: TongLever")
call jsonfile%get('Equipments.Drilling.RTTransmissionLever',data%Equipments%DrillingConsole%RTTransmissionLever,found)
if ( .not. found ) call logg(4,"Not found: RTTransmissionLever")
call jsonfile%get('Equipments.Drilling.DWClutchLever',data%Equipments%DrillingConsole%DWClutchLever,found)
if ( .not. found ) call logg(4,"Not found: DWClutchLever")
call jsonfile%get('Equipments.Drilling.EddyBreakLever',data%Equipments%DrillingConsole%EddyBreakLever,found)
if ( .not. found ) call logg(4,"Not found: EddyBreakLever")
call jsonfile%get('Equipments.Drilling.AutoDW',data%Equipments%DrillingConsole%AutoDW,found)
if ( .not. found ) call logg(4,"Not found: AutoDW")
call jsonfile%get('Equipments.Drilling.GEN1',data%Equipments%DrillingConsole%GEN1,found)
if ( .not. found ) call logg(4,"Not found: GEN1")
call jsonfile%get('Equipments.Drilling.GEN2',data%Equipments%DrillingConsole%GEN2,found)
if ( .not. found ) call logg(4,"Not found: GEN2")
call jsonfile%get('Equipments.Drilling.GEN3',data%Equipments%DrillingConsole%GEN3,found)
if ( .not. found ) call logg(4,"Not found: GEN3")
call jsonfile%get('Equipments.Drilling.GEN4',data%Equipments%DrillingConsole%GEN4,found)
if ( .not. found ) call logg(4,"Not found: GEN4")
call jsonfile%get('Equipments.Drilling.Permission_OpenKellyCock',data%Equipments%DrillingConsole%Permission_OpenKellyCock,found)
if ( .not. found ) call logg(4,"Not found: Permission_OpenKellyCock")
call jsonfile%get('Equipments.Drilling.OpenKellyCock',data%Equipments%DrillingConsole%OpenKellyCock,found)
if ( .not. found ) call logg(4,"Not found: OpenKellyCock")
call jsonfile%get('Equipments.Drilling.Permission_CloseKellyCock',data%Equipments%DrillingConsole%Permission_CloseKellyCock,found)
if ( .not. found ) call logg(4,"Not found: Permission_CloseKellyCock")
call jsonfile%get('Equipments.Drilling.CloseKellyCock',data%Equipments%DrillingConsole%CloseKellyCock,found)
if ( .not. found ) call logg(4,"Not found: CloseKellyCock")
call jsonfile%get('Equipments.Drilling.Permission_OpenSafetyValve',data%Equipments%DrillingConsole%Permission_OpenSafetyValve,found)
if ( .not. found ) call logg(4,"Not found: Permission_OpenSafetyValve")
call jsonfile%get('Equipments.Drilling.OpenSafetyValve',data%Equipments%DrillingConsole%OpenSafetyValve,found)
if ( .not. found ) call logg(4,"Not found: OpenSafetyValve")
call jsonfile%get('Equipments.Drilling.Permission_CloseSafetyValve',data%Equipments%DrillingConsole%Permission_CloseSafetyValve,found)
if ( .not. found ) call logg(4,"Not found: Permission_CloseSafetyValve")
call jsonfile%get('Equipments.Drilling.CloseSafetyValve',data%Equipments%DrillingConsole%CloseSafetyValve,found)
if ( .not. found ) call logg(4,"Not found: CloseSafetyValve")
call jsonfile%get('Equipments.Drilling.Permission_IRSafetyValve',data%Equipments%DrillingConsole%Permission_IRSafetyValve,found)
if ( .not. found ) call logg(4,"Not found: Permission_IRSafetyValve")
call jsonfile%get('Equipments.Drilling.IRSafetyValve',data%Equipments%DrillingConsole%IRSafetyValve,found)
if ( .not. found ) call logg(4,"Not found: IRSafetyValve")
call jsonfile%get('Equipments.Drilling.Permission_IRIBop',data%Equipments%DrillingConsole%Permission_IRIBop,found)
if ( .not. found ) call logg(4,"Not found: Permission_IRIBop")
call jsonfile%get('Equipments.Drilling.IRIBop',data%Equipments%DrillingConsole%IRIBop,found)
if ( .not. found ) call logg(4,"Not found: IRIBop")
call jsonfile%get('Equipments.Drilling.LatchPipe',data%Equipments%DrillingConsole%LatchPipe,found)
if ( .not. found ) call logg(4,"Not found: LatchPipe")
call jsonfile%get('Equipments.Drilling.UnlatchPipe',data%Equipments%DrillingConsole%UnlatchPipe,found)
if ( .not. found ) call logg(4,"Not found: UnlatchPipe")
call jsonfile%get('Equipments.Drilling.Swing',data%Equipments%DrillingConsole%Swing,found)
if ( .not. found ) call logg(4,"Not found: Swing")
call jsonfile%get('Equipments.Drilling.FillMouseHole',data%Equipments%DrillingConsole%FillMouseHole,found)
if ( .not. found ) call logg(4,"Not found: FillMouseHole")
call jsonfile%get('Equipments.Drilling.Slips',data%Equipments%DrillingConsole%Slips,found)
if ( .not. found ) call logg(4,"Not found: Slips")
call jsonfile%get('Equipments.Drilling.BrakeLeverCoefficient',data%Equipments%DrillingConsole%BrakeLeverCoefficient,found)
if ( .not. found ) call logg(4,"Not found: BrakeLeverCoefficient")
call jsonfile%get('Equipments.Drilling.HideDrillingBrake',data%Equipments%DrillingConsole%HideDrillingBrake,found)
if ( .not. found ) call logg(4,"Not found: HideDrillingBrake")
call jsonfile%get('Equipments.Drilling.ParkingBrakeBtn',data%Equipments%DrillingConsole%ParkingBrakeBtn,found)
if ( .not. found ) call logg(4,"Not found: ParkingBrakeBtn")


! call json%get(p,'ParkingBrakeLed',pval)
! call json%get(pval,data%Equipments%DrillingConsole%ParkingBrakeLed)
! call json%get(p,'GEN1LED',pval)
! call json%get(pval,data%Equipments%DrillingConsole%GEN1LED)
! call json%get(p,'GEN2LED',pval)
! call json%get(pval,data%Equipments%DrillingConsole%GEN2LED)
! call json%get(p,'GEN3LED',pval)
! call json%get(pval,data%Equipments%DrillingConsole%GEN3LED)
! call json%get(p,'GEN4LED',pval)
! call json%get(pval,data%Equipments%DrillingConsole%GEN4LED)
! call json%get(p,'SCR1LED',pval)
! call json%get(pval,data%Equipments%DrillingConsole%SCR1LED)
! call json%get(p,'SCR2LED',pval)
! call json%get(pval,data%Equipments%DrillingConsole%SCR2LED)
! call json%get(p,'SCR3LED',pval)
! call json%get(pval,data%Equipments%DrillingConsole%SCR3LED)
! call json%get(p,'SCR4LED',pval)
! call json%get(pval,data%Equipments%DrillingConsole%SCR4LED)
! call json%get(p,'MP1BLWR',pval)
! call json%get(pval,data%Equipments%DrillingConsole%MP1BLWR)
! call json%get(p,'MP2BLWR',pval)
! call json%get(pval,data%Equipments%DrillingConsole%MP2BLWR)
! call json%get(p,'DWBLWR',pval)
! call json%get(pval,data%Equipments%DrillingConsole%DWBLWR)
! call json%get(p,'RTBLWR',pval)
! call json%get(pval,data%Equipments%DrillingConsole%RTBLWR)
! call json%get(p,'PWRLIM',pval)
! call json%get(pval,data%Equipments%DrillingConsole%PWRLIM)
! call json%get(p,'PWRLIMMTR',pval)
! call json%get(pval,data%Equipments%DrillingConsole%PWRLIMMTR)
! call json%get(p,'RTTorqueLimitGauge',pval)
! call json%get(pval,data%Equipments%DrillingConsole%RTTorqueLimitGauge)
! call json%get(p,'AutoDWLED',pval)
! call json%get(pval,data%Equipments%DrillingConsole%AutoDWLED)
! call json%get(p,'GEN1BTNLED',pval)
! call json%get(pval,data%Equipments%DrillingConsole%GEN1BTNLED)
! call json%get(p,'GEN2BTNLED',pval)
! call json%get(pval,data%Equipments%DrillingConsole%GEN2BTNLED)
! call json%get(p,'GEN3BTNLED',pval)
! call json%get(pval,data%Equipments%DrillingConsole%GEN3BTNLED)
! call json%get(p,'GEN4BTNLED',pval)
! call json%get(pval,data%Equipments%DrillingConsole%GEN4BTNLED)
! call json%get(p,'OpenKellyCockLed',pval)
! call json%get(pval,data%Equipments%DrillingConsole%OpenKellyCockLed)
! call json%get(p,'CloseKellyCockLed',pval)
! call json%get(pval,data%Equipments%DrillingConsole%CloseKellyCockLed)
! call json%get(p,'OpenSafetyValveLed',pval)
! call json%get(pval,data%Equipments%DrillingConsole%OpenSafetyValveLed)
! call json%get(p,'CloseSafetyValveLed',pval)
! call json%get(pval,data%Equipments%DrillingConsole%CloseSafetyValveLed)
! call json%get(p,'IRSafetyValveLed',pval)
! call json%get(pval,data%Equipments%DrillingConsole%IRSafetyValveLed)
! call json%get(p,'IRIBopLed',pval)
! call json%get(pval,data%Equipments%DrillingConsole%IRIBopLed)
! call json%get(p,'LatchPipeLED',pval)
! call json%get(pval,data%Equipments%DrillingConsole%LatchPipeLED)
! call json%get(p,'UnlatchPipeLED',pval)
! call json%get(pval,data%Equipments%DrillingConsole%UnlatchPipeLED)
! call json%get(p,'SwingLed',pval)
! call json%get(pval,data%Equipments%DrillingConsole%SwingLed)
! call json%get(p,'FillMouseHoleLed',pval)
! call json%get(pval,data%Equipments%DrillingConsole%FillMouseHoleLed)
data%Equipments%DrillingConsole%DWSwitch = -1
data%Equipments%DrillingConsole%AssignmentSwitch = 1
data%Equipments%DrillingConsole%MP1CPSwitch = -1
data%Equipments%DrillingConsole%MP2Switch = -1
data%Equipments%DrillingConsole%RTSwitch = -1
end subroutine end subroutine


subroutine DrillingConsoleToJson(parent) subroutine DrillingConsoleToJson(parent)
@@ -196,61 +139,7 @@ module CDrillingConsole


! 1. create new node ! 1. create new node
call json%create_object(p,'Drilling') call json%create_object(p,'Drilling')
! call json%add(p,"AssignmentSwitch",data%Equipments%DrillingConsole%AssignmentSwitch)
! call json%add(p,"EmergencySwitch",data%Equipments%DrillingConsole%EmergencySwitch)
! call json%add(p,"RTTorqueLimitKnob",data%Equipments%DrillingConsole%RTTorqueLimitKnob)
! call json%add(p,"MP1CPSwitchI",data%Equipments%DrillingConsole%MP1CPSwitchI)
! call json%add(p,"MP1CPSwitchT",data%Equipments%DrillingConsole%MP1CPSwitchT)
! call json%add(p,"MP1CPSwitch",data%Equipments%DrillingConsole%MP1CPSwitch)
! call json%add(p,"MP1ThrottleUpdate",data%Equipments%DrillingConsole%MP1ThrottleUpdate)
! call json%add(p,"MP1Throttle",data%Equipments%DrillingConsole%MP1Throttle)
! call json%add(p,"MP2SwitchI",data%Equipments%DrillingConsole%MP2SwitchI)
! call json%add(p,"MP2SwitchT",data%Equipments%DrillingConsole%MP2SwitchT)
! call json%add(p,"MP2Switch",data%Equipments%DrillingConsole%MP2Switch)
! call json%add(p,"MP2ThrottleUpdate",data%Equipments%DrillingConsole%MP2ThrottleUpdate)
! call json%add(p,"MP2Throttle",data%Equipments%DrillingConsole%MP2Throttle)
! call json%add(p,"DWSwitch",data%Equipments%DrillingConsole%DWSwitch)
! call json%add(p,"DWThrottle",data%Equipments%DrillingConsole%DWThrottle)
! call json%add(p,"RTSwitch",data%Equipments%DrillingConsole%RTSwitch)
! call json%add(p,"RTThrottle",data%Equipments%DrillingConsole%RTThrottle)
! call json%add(p,"DWBreak",data%Equipments%DrillingConsole%DWBreak)
! call json%add(p,"PreviousDWBreak",data%Equipments%DrillingConsole%PreviousDWBreak)
! call json%add(p,"ForceBreak",data%Equipments%DrillingConsole%ForceBreak)
! call json%add(p,"DWAcceleretor",data%Equipments%DrillingConsole%DWAcceleretor)
! call json%add(p,"DWTransmisionLever",data%Equipments%DrillingConsole%DWTransmisionLever)
! call json%add(p,"DWPowerLever",data%Equipments%DrillingConsole%DWPowerLever)
! call json%add(p,"TongLever",data%Equipments%DrillingConsole%TongLever)
! call json%add(p,"RTTransmissionLever",data%Equipments%DrillingConsole%RTTransmissionLever)
! call json%add(p,"DWClutchLever",data%Equipments%DrillingConsole%DWClutchLever)
! call json%add(p,"EddyBreakLever",data%Equipments%DrillingConsole%EddyBreakLever)
! call json%add(p,"AutoDW",data%Equipments%DrillingConsole%AutoDW)
! call json%add(p,"GEN1",data%Equipments%DrillingConsole%GEN1)
! call json%add(p,"GEN2",data%Equipments%DrillingConsole%GEN2)
! call json%add(p,"GEN3",data%Equipments%DrillingConsole%GEN3)
! call json%add(p,"GEN4",data%Equipments%DrillingConsole%GEN4)
! call json%add(p,"Permission_OpenKellyCock",data%Equipments%DrillingConsole%Permission_OpenKellyCock)
! call json%add(p,"OpenKellyCock",data%Equipments%DrillingConsole%OpenKellyCock)
! call json%add(p,"Permission_CloseKellyCock",data%Equipments%DrillingConsole%Permission_CloseKellyCock)
! call json%add(p,"CloseKellyCock",data%Equipments%DrillingConsole%CloseKellyCock)
! call json%add(p,"Permission_OpenSafetyValve",data%Equipments%DrillingConsole%Permission_OpenSafetyValve)
! call json%add(p,"OpenSafetyValve",data%Equipments%DrillingConsole%OpenSafetyValve)
! call json%add(p,"Permission_CloseSafetyValve",data%Equipments%DrillingConsole%Permission_CloseSafetyValve)
! call json%add(p,"CloseSafetyValve",data%Equipments%DrillingConsole%CloseSafetyValve)
! call json%add(p,"Permission_IRSafetyValve",data%Equipments%DrillingConsole%Permission_IRSafetyValve)
! call json%add(p,"IRSafetyValve",data%Equipments%DrillingConsole%IRSafetyValve)
! call json%add(p,"Permission_IRIBop",data%Equipments%DrillingConsole%Permission_IRIBop)
! call json%add(p,"IRIBop",data%Equipments%DrillingConsole%IRIBop)
! call json%add(p,"LatchPipe",data%Equipments%DrillingConsole%LatchPipe)
! call json%add(p,"UnlatchPipe",data%Equipments%DrillingConsole%UnlatchPipe)
! call json%add(p,"Swing",data%Equipments%DrillingConsole%Swing)
! call json%add(p,"FillMouseHole",data%Equipments%DrillingConsole%FillMouseHole)
! call json%add(p,"Slips",data%Equipments%DrillingConsole%Slips)
! call json%add(p,"BrakeLeverCoefficient",data%Equipments%DrillingConsole%BrakeLeverCoefficient)
! call json%add(p,"HideDrillingBrake",data%Equipments%DrillingConsole%HideDrillingBrake)
! call json%add(p,"ParkingBrakeBtn",data%Equipments%DrillingConsole%ParkingBrakeBtn)



call json%add(p,"ParkingBrakeLed",data%Equipments%DrillingConsole%ParkingBrakeLed) call json%add(p,"ParkingBrakeLed",data%Equipments%DrillingConsole%ParkingBrakeLed)
call json%add(p,"GEN1LED",data%Equipments%DrillingConsole%GEN1LED) call json%add(p,"GEN1LED",data%Equipments%DrillingConsole%GEN1LED)
call json%add(p,"GEN2LED",data%Equipments%DrillingConsole%GEN2LED) call json%add(p,"GEN2LED",data%Equipments%DrillingConsole%GEN2LED)


+ 116
- 227
CSharp/Equipments/ControlPanels/CDrillingConsole.i90 View File

@@ -1,4 +1,4 @@
# 1 "/mnt/c/Projects/VSIM/SimulationCore2/CSharp/Equipments/ControlPanels/CDrillingConsole.f90"
# 1 "/home/admin/SimulationCore2/CSharp/Equipments/ControlPanels/CDrillingConsole.f90"
module CDrillingConsole module CDrillingConsole
use CDrillingConsoleVariables use CDrillingConsoleVariables
use SimulationVariables use SimulationVariables
@@ -11,182 +11,125 @@ module CDrillingConsole
contains contains




subroutine DrillingConsoleFromJson(parent)
subroutine DrillingConsoleFromJson(jsonfile)
type(json_value),pointer :: parent type(json_value),pointer :: parent
type(json_core) :: json type(json_core) :: json
type(json_value),pointer :: p,pval type(json_value),pointer :: p,pval
type(json_file)::jsonfile
logical::found


! 1. get related root
call json%get(parent,'Drilling',p)
! 2. get member of data type from node
call json%get(p,'AssignmentSwitch',pval)
call json%get(pval,data%Equipments%DrillingConsole%AssignmentSwitch)
call json%get(p,'EmergencySwitch',pval)
call json%get(pval,data%Equipments%DrillingConsole%EmergencySwitch)
call json%get(p,'RTTorqueLimitKnob',pval)
call json%get(pval,data%Equipments%DrillingConsole%RTTorqueLimitKnob)
call json%get(p,'MP1CPSwitchI',pval)
call json%get(pval,data%Equipments%DrillingConsole%MP1CPSwitchI)
call json%get(p,'MP1CPSwitchT',pval)
call json%get(pval,data%Equipments%DrillingConsole%MP1CPSwitchT)
call json%get(p,'MP1CPSwitch',pval)
call json%get(pval,data%Equipments%DrillingConsole%MP1CPSwitch)
call json%get(p,'MP1ThrottleUpdate',pval)
call json%get(pval,data%Equipments%DrillingConsole%MP1ThrottleUpdate)
call json%get(p,'MP1Throttle',pval)
call json%get(pval,data%Equipments%DrillingConsole%MP1Throttle)
call json%get(p,'MP2SwitchI',pval)
call json%get(pval,data%Equipments%DrillingConsole%MP2SwitchI)
call json%get(p,'MP2SwitchT',pval)
call json%get(pval,data%Equipments%DrillingConsole%MP2SwitchT)
call json%get(p,'MP2Switch',pval)
call json%get(pval,data%Equipments%DrillingConsole%MP2Switch)
call json%get(p,'MP2ThrottleUpdate',pval)
call json%get(pval,data%Equipments%DrillingConsole%MP2ThrottleUpdate)
call json%get(p,'MP2Throttle',pval)
call json%get(pval,data%Equipments%DrillingConsole%MP2Throttle)
call json%get(p,'DWSwitch',pval)
call json%get(pval,data%Equipments%DrillingConsole%DWSwitch)
call json%get(p,'DWThrottle',pval)
call json%get(pval,data%Equipments%DrillingConsole%DWThrottle)
call json%get(p,'RTSwitch',pval)
call json%get(pval,data%Equipments%DrillingConsole%RTSwitch)
call json%get(p,'RTThrottle',pval)
call json%get(pval,data%Equipments%DrillingConsole%RTThrottle)
call json%get(p,'DWBreak',pval)
call json%get(pval,data%Equipments%DrillingConsole%DWBreak)
call json%get(p,'PreviousDWBreak',pval)
call json%get(pval,data%Equipments%DrillingConsole%PreviousDWBreak)
call json%get(p,'ForceBreak',pval)
call json%get(pval,data%Equipments%DrillingConsole%ForceBreak)
call json%get(p,'DWAcceleretor',pval)
call json%get(pval,data%Equipments%DrillingConsole%DWAcceleretor)
call json%get(p,'DWTransmisionLever',pval)
call json%get(pval,data%Equipments%DrillingConsole%DWTransmisionLever)
call json%get(p,'DWPowerLever',pval)
call json%get(pval,data%Equipments%DrillingConsole%DWPowerLever)
call json%get(p,'TongLever',pval)
call json%get(pval,data%Equipments%DrillingConsole%TongLever)
call json%get(p,'RTTransmissionLever',pval)
call json%get(pval,data%Equipments%DrillingConsole%RTTransmissionLever)
call json%get(p,'DWClutchLever',pval)
call json%get(pval,data%Equipments%DrillingConsole%DWClutchLever)
call json%get(p,'EddyBreakLever',pval)
call json%get(pval,data%Equipments%DrillingConsole%EddyBreakLever)
call json%get(p,'AutoDW',pval)
call json%get(pval,data%Equipments%DrillingConsole%AutoDW)
call json%get(p,'GEN1',pval)
call json%get(pval,data%Equipments%DrillingConsole%GEN1)
call json%get(p,'GEN2',pval)
call json%get(pval,data%Equipments%DrillingConsole%GEN2)
call json%get(p,'GEN3',pval)
call json%get(pval,data%Equipments%DrillingConsole%GEN3)
call json%get(p,'GEN4',pval)
call json%get(pval,data%Equipments%DrillingConsole%GEN4)
call json%get(p,'Permission_OpenKellyCock',pval)
call json%get(pval,data%Equipments%DrillingConsole%Permission_OpenKellyCock)
call json%get(p,'OpenKellyCock',pval)
call json%get(pval,data%Equipments%DrillingConsole%OpenKellyCock)
call json%get(p,'Permission_CloseKellyCock',pval)
call json%get(pval,data%Equipments%DrillingConsole%Permission_CloseKellyCock)
call json%get(p,'CloseKellyCock',pval)
call json%get(pval,data%Equipments%DrillingConsole%CloseKellyCock)
call json%get(p,'Permission_OpenSafetyValve',pval)
call json%get(pval,data%Equipments%DrillingConsole%Permission_OpenSafetyValve)
call json%get(p,'OpenSafetyValve',pval)
call json%get(pval,data%Equipments%DrillingConsole%OpenSafetyValve)
call json%get(p,'Permission_CloseSafetyValve',pval)
call json%get(pval,data%Equipments%DrillingConsole%Permission_CloseSafetyValve)
call json%get(p,'CloseSafetyValve',pval)
call json%get(pval,data%Equipments%DrillingConsole%CloseSafetyValve)
call json%get(p,'Permission_IRSafetyValve',pval)
call json%get(pval,data%Equipments%DrillingConsole%Permission_IRSafetyValve)
call json%get(p,'IRSafetyValve',pval)
call json%get(pval,data%Equipments%DrillingConsole%IRSafetyValve)
call json%get(p,'Permission_IRIBop',pval)
call json%get(pval,data%Equipments%DrillingConsole%Permission_IRIBop)
call json%get(p,'IRIBop',pval)
call json%get(pval,data%Equipments%DrillingConsole%IRIBop)
call json%get(p,'LatchPipe',pval)
call json%get(pval,data%Equipments%DrillingConsole%LatchPipe)
call json%get(p,'UnlatchPipe',pval)
call json%get(pval,data%Equipments%DrillingConsole%UnlatchPipe)
call json%get(p,'Swing',pval)
call json%get(pval,data%Equipments%DrillingConsole%Swing)
call json%get(p,'FillMouseHole',pval)
call json%get(pval,data%Equipments%DrillingConsole%FillMouseHole)
call json%get(p,'Slips',pval)
call json%get(pval,data%Equipments%DrillingConsole%Slips)
call json%get(p,'BrakeLeverCoefficient',pval)
call json%get(pval,data%Equipments%DrillingConsole%BrakeLeverCoefficient)
call json%get(p,'HideDrillingBrake',pval)
call json%get(pval,data%Equipments%DrillingConsole%HideDrillingBrake)
call json%get(p,'ParkingBrakeBtn',pval)
call json%get(pval,data%Equipments%DrillingConsole%ParkingBrakeBtn)
call jsonfile%get('Equipments.Drilling.AssignmentSwitch',data%Equipments%DrillingConsole%AssignmentSwitch,found)
if ( .not. found ) call logg(4,"Not found: AssignmentSwitch")
call jsonfile%get('Equipments.Drilling.EmergencySwitch',data%Equipments%DrillingConsole%EmergencySwitch,found)
if ( .not. found ) call logg(4,"Not found: EmergencySwitch")
call jsonfile%get('Equipments.Drilling.RTTorqueLimitKnob',data%Equipments%DrillingConsole%RTTorqueLimitKnob,found)
if ( .not. found ) call logg(4,"Not found: RTTorqueLimitKnob")
call jsonfile%get('Equipments.Drilling.MP1CPSwitchI',data%Equipments%DrillingConsole%MP1CPSwitchI,found)
if ( .not. found ) call logg(4,"Not found: MP1CPSwitchI")
call jsonfile%get('Equipments.Drilling.MP1CPSwitchT',data%Equipments%DrillingConsole%MP1CPSwitchT,found)
if ( .not. found ) call logg(4,"Not found: MP1CPSwitchT")
call jsonfile%get('Equipments.Drilling.MP1CPSwitch',data%Equipments%DrillingConsole%MP1CPSwitch,found)
if ( .not. found ) call logg(4,"Not found: MP1CPSwitch")
call jsonfile%get('Equipments.Drilling.MP1ThrottleUpdate',data%Equipments%DrillingConsole%MP1ThrottleUpdate,found)
if ( .not. found ) call logg(4,"Not found: MP1ThrottleUpdate")
call jsonfile%get('Equipments.Drilling.MP1Throttle',data%Equipments%DrillingConsole%MP1Throttle,found)
if ( .not. found ) then
call logg(4,"Not found: MP1Throttle")
endif
call jsonfile%get('Equipments.Drilling.MP2SwitchI',data%Equipments%DrillingConsole%MP2SwitchI,found)
if ( .not. found ) call logg(4,"Not found: MP2SwitchI")
call jsonfile%get('Equipments.Drilling.MP2SwitchT',data%Equipments%DrillingConsole%MP2SwitchT,found)
if ( .not. found ) call logg(4,"Not found: MP2SwitchT")
call jsonfile%get('Equipments.Drilling.MP2Switch',data%Equipments%DrillingConsole%MP2Switch,found)
if ( .not. found ) call logg(4,"Not found: MP2Switch")
call jsonfile%get('Equipments.Drilling.MP2ThrottleUpdate',data%Equipments%DrillingConsole%MP2ThrottleUpdate,found)
if ( .not. found ) call logg(4,"Not found: MP2ThrottleUpdate")
call jsonfile%get('Equipments.Drilling.MP2Throttle',data%Equipments%DrillingConsole%MP2Throttle,found)
if ( .not. found ) call logg(4,"Not found: MP2Throttle")
! call jsonfile%get('Equipments.Drilling.DWSwitch',data%Equipments%DrillingConsole%DWSwitch,found)
! if ( .not. found ) call logg(4,"Not found: DWSwitch")
call jsonfile%get('Equipments.Drilling.DWThrottle',data%Equipments%DrillingConsole%DWThrottle,found)
if ( .not. found ) call logg(4,"Not found: DWThrottle")
call jsonfile%get('Equipments.Drilling.RTSwitch',data%Equipments%DrillingConsole%RTSwitch,found)
if ( .not. found ) call logg(4,"Not found: RTSwitch")
call jsonfile%get('Equipments.Drilling.RTThrottle',data%Equipments%DrillingConsole%RTThrottle,found)
if ( .not. found ) call logg(4,"Not found: RTThrottle")
call jsonfile%get('Equipments.Drilling.DWBreak',data%Equipments%DrillingConsole%DWBreak,found)
if ( .not. found ) call logg(4,"Not found: DWBreak")
call jsonfile%get('Equipments.Drilling.PreviousDWBreak',data%Equipments%DrillingConsole%PreviousDWBreak,found)
if ( .not. found ) call logg(4,"Not found: PreviousDWBreak")
call jsonfile%get('Equipments.Drilling.ForceBreak',data%Equipments%DrillingConsole%ForceBreak,found)
if ( .not. found ) call logg(4,"Not found: ForceBreak")
call jsonfile%get('Equipments.Drilling.DWAcceleretor',data%Equipments%DrillingConsole%DWAcceleretor,found)
if ( .not. found ) call logg(4,"Not found: DWAcceleretor")
call jsonfile%get('Equipments.Drilling.DWTransmisionLever',data%Equipments%DrillingConsole%DWTransmisionLever,found)
if ( .not. found ) call logg(4,"Not found: DWTransmisionLever")
call jsonfile%get('Equipments.Drilling.DWPowerLever',data%Equipments%DrillingConsole%DWPowerLever,found)
if ( .not. found ) call logg(4,"Not found: DWPowerLever")
call jsonfile%get('Equipments.Drilling.TongLever',data%Equipments%DrillingConsole%TongLever,found)
if ( .not. found ) call logg(4,"Not found: TongLever")
call jsonfile%get('Equipments.Drilling.RTTransmissionLever',data%Equipments%DrillingConsole%RTTransmissionLever,found)
if ( .not. found ) call logg(4,"Not found: RTTransmissionLever")
call jsonfile%get('Equipments.Drilling.DWClutchLever',data%Equipments%DrillingConsole%DWClutchLever,found)
if ( .not. found ) call logg(4,"Not found: DWClutchLever")
call jsonfile%get('Equipments.Drilling.EddyBreakLever',data%Equipments%DrillingConsole%EddyBreakLever,found)
if ( .not. found ) call logg(4,"Not found: EddyBreakLever")
call jsonfile%get('Equipments.Drilling.AutoDW',data%Equipments%DrillingConsole%AutoDW,found)
if ( .not. found ) call logg(4,"Not found: AutoDW")
call jsonfile%get('Equipments.Drilling.GEN1',data%Equipments%DrillingConsole%GEN1,found)
if ( .not. found ) call logg(4,"Not found: GEN1")
call jsonfile%get('Equipments.Drilling.GEN2',data%Equipments%DrillingConsole%GEN2,found)
if ( .not. found ) call logg(4,"Not found: GEN2")
call jsonfile%get('Equipments.Drilling.GEN3',data%Equipments%DrillingConsole%GEN3,found)
if ( .not. found ) call logg(4,"Not found: GEN3")
call jsonfile%get('Equipments.Drilling.GEN4',data%Equipments%DrillingConsole%GEN4,found)
if ( .not. found ) call logg(4,"Not found: GEN4")
call jsonfile%get('Equipments.Drilling.Permission_OpenKellyCock',data%Equipments%DrillingConsole%Permission_OpenKellyCock,found)
if ( .not. found ) call logg(4,"Not found: Permission_OpenKellyCock")
call jsonfile%get('Equipments.Drilling.OpenKellyCock',data%Equipments%DrillingConsole%OpenKellyCock,found)
if ( .not. found ) call logg(4,"Not found: OpenKellyCock")
call jsonfile%get('Equipments.Drilling.Permission_CloseKellyCock',data%Equipments%DrillingConsole%Permission_CloseKellyCock,found)
if ( .not. found ) call logg(4,"Not found: Permission_CloseKellyCock")
call jsonfile%get('Equipments.Drilling.CloseKellyCock',data%Equipments%DrillingConsole%CloseKellyCock,found)
if ( .not. found ) call logg(4,"Not found: CloseKellyCock")
call jsonfile%get('Equipments.Drilling.Permission_OpenSafetyValve',data%Equipments%DrillingConsole%Permission_OpenSafetyValve,found)
if ( .not. found ) call logg(4,"Not found: Permission_OpenSafetyValve")
call jsonfile%get('Equipments.Drilling.OpenSafetyValve',data%Equipments%DrillingConsole%OpenSafetyValve,found)
if ( .not. found ) call logg(4,"Not found: OpenSafetyValve")
call jsonfile%get('Equipments.Drilling.Permission_CloseSafetyValve',data%Equipments%DrillingConsole%Permission_CloseSafetyValve,found)
if ( .not. found ) call logg(4,"Not found: Permission_CloseSafetyValve")
call jsonfile%get('Equipments.Drilling.CloseSafetyValve',data%Equipments%DrillingConsole%CloseSafetyValve,found)
if ( .not. found ) call logg(4,"Not found: CloseSafetyValve")
call jsonfile%get('Equipments.Drilling.Permission_IRSafetyValve',data%Equipments%DrillingConsole%Permission_IRSafetyValve,found)
if ( .not. found ) call logg(4,"Not found: Permission_IRSafetyValve")
call jsonfile%get('Equipments.Drilling.IRSafetyValve',data%Equipments%DrillingConsole%IRSafetyValve,found)
if ( .not. found ) call logg(4,"Not found: IRSafetyValve")
call jsonfile%get('Equipments.Drilling.Permission_IRIBop',data%Equipments%DrillingConsole%Permission_IRIBop,found)
if ( .not. found ) call logg(4,"Not found: Permission_IRIBop")
call jsonfile%get('Equipments.Drilling.IRIBop',data%Equipments%DrillingConsole%IRIBop,found)
if ( .not. found ) call logg(4,"Not found: IRIBop")
call jsonfile%get('Equipments.Drilling.LatchPipe',data%Equipments%DrillingConsole%LatchPipe,found)
if ( .not. found ) call logg(4,"Not found: LatchPipe")
call jsonfile%get('Equipments.Drilling.UnlatchPipe',data%Equipments%DrillingConsole%UnlatchPipe,found)
if ( .not. found ) call logg(4,"Not found: UnlatchPipe")
call jsonfile%get('Equipments.Drilling.Swing',data%Equipments%DrillingConsole%Swing,found)
if ( .not. found ) call logg(4,"Not found: Swing")
call jsonfile%get('Equipments.Drilling.FillMouseHole',data%Equipments%DrillingConsole%FillMouseHole,found)
if ( .not. found ) call logg(4,"Not found: FillMouseHole")
call jsonfile%get('Equipments.Drilling.Slips',data%Equipments%DrillingConsole%Slips,found)
if ( .not. found ) call logg(4,"Not found: Slips")
call jsonfile%get('Equipments.Drilling.BrakeLeverCoefficient',data%Equipments%DrillingConsole%BrakeLeverCoefficient,found)
if ( .not. found ) call logg(4,"Not found: BrakeLeverCoefficient")
call jsonfile%get('Equipments.Drilling.HideDrillingBrake',data%Equipments%DrillingConsole%HideDrillingBrake,found)
if ( .not. found ) call logg(4,"Not found: HideDrillingBrake")
call jsonfile%get('Equipments.Drilling.ParkingBrakeBtn',data%Equipments%DrillingConsole%ParkingBrakeBtn,found)
if ( .not. found ) call logg(4,"Not found: ParkingBrakeBtn")


! call json%get(p,'ParkingBrakeLed',pval)
! call json%get(pval,data%Equipments%DrillingConsole%ParkingBrakeLed)
! call json%get(p,'GEN1LED',pval)
! call json%get(pval,data%Equipments%DrillingConsole%GEN1LED)
! call json%get(p,'GEN2LED',pval)
! call json%get(pval,data%Equipments%DrillingConsole%GEN2LED)
! call json%get(p,'GEN3LED',pval)
! call json%get(pval,data%Equipments%DrillingConsole%GEN3LED)
! call json%get(p,'GEN4LED',pval)
! call json%get(pval,data%Equipments%DrillingConsole%GEN4LED)
! call json%get(p,'SCR1LED',pval)
! call json%get(pval,data%Equipments%DrillingConsole%SCR1LED)
! call json%get(p,'SCR2LED',pval)
! call json%get(pval,data%Equipments%DrillingConsole%SCR2LED)
! call json%get(p,'SCR3LED',pval)
! call json%get(pval,data%Equipments%DrillingConsole%SCR3LED)
! call json%get(p,'SCR4LED',pval)
! call json%get(pval,data%Equipments%DrillingConsole%SCR4LED)
! call json%get(p,'MP1BLWR',pval)
! call json%get(pval,data%Equipments%DrillingConsole%MP1BLWR)
! call json%get(p,'MP2BLWR',pval)
! call json%get(pval,data%Equipments%DrillingConsole%MP2BLWR)
! call json%get(p,'DWBLWR',pval)
! call json%get(pval,data%Equipments%DrillingConsole%DWBLWR)
! call json%get(p,'RTBLWR',pval)
! call json%get(pval,data%Equipments%DrillingConsole%RTBLWR)
! call json%get(p,'PWRLIM',pval)
! call json%get(pval,data%Equipments%DrillingConsole%PWRLIM)
! call json%get(p,'PWRLIMMTR',pval)
! call json%get(pval,data%Equipments%DrillingConsole%PWRLIMMTR)
! call json%get(p,'RTTorqueLimitGauge',pval)
! call json%get(pval,data%Equipments%DrillingConsole%RTTorqueLimitGauge)
! call json%get(p,'AutoDWLED',pval)
! call json%get(pval,data%Equipments%DrillingConsole%AutoDWLED)
! call json%get(p,'GEN1BTNLED',pval)
! call json%get(pval,data%Equipments%DrillingConsole%GEN1BTNLED)
! call json%get(p,'GEN2BTNLED',pval)
! call json%get(pval,data%Equipments%DrillingConsole%GEN2BTNLED)
! call json%get(p,'GEN3BTNLED',pval)
! call json%get(pval,data%Equipments%DrillingConsole%GEN3BTNLED)
! call json%get(p,'GEN4BTNLED',pval)
! call json%get(pval,data%Equipments%DrillingConsole%GEN4BTNLED)
! call json%get(p,'OpenKellyCockLed',pval)
! call json%get(pval,data%Equipments%DrillingConsole%OpenKellyCockLed)
! call json%get(p,'CloseKellyCockLed',pval)
! call json%get(pval,data%Equipments%DrillingConsole%CloseKellyCockLed)
! call json%get(p,'OpenSafetyValveLed',pval)
! call json%get(pval,data%Equipments%DrillingConsole%OpenSafetyValveLed)
! call json%get(p,'CloseSafetyValveLed',pval)
! call json%get(pval,data%Equipments%DrillingConsole%CloseSafetyValveLed)
! call json%get(p,'IRSafetyValveLed',pval)
! call json%get(pval,data%Equipments%DrillingConsole%IRSafetyValveLed)
! call json%get(p,'IRIBopLed',pval)
! call json%get(pval,data%Equipments%DrillingConsole%IRIBopLed)
! call json%get(p,'LatchPipeLED',pval)
! call json%get(pval,data%Equipments%DrillingConsole%LatchPipeLED)
! call json%get(p,'UnlatchPipeLED',pval)
! call json%get(pval,data%Equipments%DrillingConsole%UnlatchPipeLED)
! call json%get(p,'SwingLed',pval)
! call json%get(pval,data%Equipments%DrillingConsole%SwingLed)
! call json%get(p,'FillMouseHoleLed',pval)
! call json%get(pval,data%Equipments%DrillingConsole%FillMouseHoleLed)
data%Equipments%DrillingConsole%DWSwitch = -1
data%Equipments%DrillingConsole%AssignmentSwitch = 1
data%Equipments%DrillingConsole%MP1CPSwitch = -1
data%Equipments%DrillingConsole%MP2Switch = -1
data%Equipments%DrillingConsole%RTSwitch = -1
end subroutine end subroutine


subroutine DrillingConsoleToJson(parent) subroutine DrillingConsoleToJson(parent)
@@ -197,61 +140,7 @@ module CDrillingConsole


! 1. create new node ! 1. create new node
call json%create_object(p,'Drilling') call json%create_object(p,'Drilling')
! call json%add(p,"AssignmentSwitch",data%Equipments%DrillingConsole%AssignmentSwitch)
! call json%add(p,"EmergencySwitch",data%Equipments%DrillingConsole%EmergencySwitch)
! call json%add(p,"RTTorqueLimitKnob",data%Equipments%DrillingConsole%RTTorqueLimitKnob)
! call json%add(p,"MP1CPSwitchI",data%Equipments%DrillingConsole%MP1CPSwitchI)
! call json%add(p,"MP1CPSwitchT",data%Equipments%DrillingConsole%MP1CPSwitchT)
! call json%add(p,"MP1CPSwitch",data%Equipments%DrillingConsole%MP1CPSwitch)
! call json%add(p,"MP1ThrottleUpdate",data%Equipments%DrillingConsole%MP1ThrottleUpdate)
! call json%add(p,"MP1Throttle",data%Equipments%DrillingConsole%MP1Throttle)
! call json%add(p,"MP2SwitchI",data%Equipments%DrillingConsole%MP2SwitchI)
! call json%add(p,"MP2SwitchT",data%Equipments%DrillingConsole%MP2SwitchT)
! call json%add(p,"MP2Switch",data%Equipments%DrillingConsole%MP2Switch)
! call json%add(p,"MP2ThrottleUpdate",data%Equipments%DrillingConsole%MP2ThrottleUpdate)
! call json%add(p,"MP2Throttle",data%Equipments%DrillingConsole%MP2Throttle)
! call json%add(p,"DWSwitch",data%Equipments%DrillingConsole%DWSwitch)
! call json%add(p,"DWThrottle",data%Equipments%DrillingConsole%DWThrottle)
! call json%add(p,"RTSwitch",data%Equipments%DrillingConsole%RTSwitch)
! call json%add(p,"RTThrottle",data%Equipments%DrillingConsole%RTThrottle)
! call json%add(p,"DWBreak",data%Equipments%DrillingConsole%DWBreak)
! call json%add(p,"PreviousDWBreak",data%Equipments%DrillingConsole%PreviousDWBreak)
! call json%add(p,"ForceBreak",data%Equipments%DrillingConsole%ForceBreak)
! call json%add(p,"DWAcceleretor",data%Equipments%DrillingConsole%DWAcceleretor)
! call json%add(p,"DWTransmisionLever",data%Equipments%DrillingConsole%DWTransmisionLever)
! call json%add(p,"DWPowerLever",data%Equipments%DrillingConsole%DWPowerLever)
! call json%add(p,"TongLever",data%Equipments%DrillingConsole%TongLever)
! call json%add(p,"RTTransmissionLever",data%Equipments%DrillingConsole%RTTransmissionLever)
! call json%add(p,"DWClutchLever",data%Equipments%DrillingConsole%DWClutchLever)
! call json%add(p,"EddyBreakLever",data%Equipments%DrillingConsole%EddyBreakLever)
! call json%add(p,"AutoDW",data%Equipments%DrillingConsole%AutoDW)
! call json%add(p,"GEN1",data%Equipments%DrillingConsole%GEN1)
! call json%add(p,"GEN2",data%Equipments%DrillingConsole%GEN2)
! call json%add(p,"GEN3",data%Equipments%DrillingConsole%GEN3)
! call json%add(p,"GEN4",data%Equipments%DrillingConsole%GEN4)
! call json%add(p,"Permission_OpenKellyCock",data%Equipments%DrillingConsole%Permission_OpenKellyCock)
! call json%add(p,"OpenKellyCock",data%Equipments%DrillingConsole%OpenKellyCock)
! call json%add(p,"Permission_CloseKellyCock",data%Equipments%DrillingConsole%Permission_CloseKellyCock)
! call json%add(p,"CloseKellyCock",data%Equipments%DrillingConsole%CloseKellyCock)
! call json%add(p,"Permission_OpenSafetyValve",data%Equipments%DrillingConsole%Permission_OpenSafetyValve)
! call json%add(p,"OpenSafetyValve",data%Equipments%DrillingConsole%OpenSafetyValve)
! call json%add(p,"Permission_CloseSafetyValve",data%Equipments%DrillingConsole%Permission_CloseSafetyValve)
! call json%add(p,"CloseSafetyValve",data%Equipments%DrillingConsole%CloseSafetyValve)
! call json%add(p,"Permission_IRSafetyValve",data%Equipments%DrillingConsole%Permission_IRSafetyValve)
! call json%add(p,"IRSafetyValve",data%Equipments%DrillingConsole%IRSafetyValve)
! call json%add(p,"Permission_IRIBop",data%Equipments%DrillingConsole%Permission_IRIBop)
! call json%add(p,"IRIBop",data%Equipments%DrillingConsole%IRIBop)
! call json%add(p,"LatchPipe",data%Equipments%DrillingConsole%LatchPipe)
! call json%add(p,"UnlatchPipe",data%Equipments%DrillingConsole%UnlatchPipe)
! call json%add(p,"Swing",data%Equipments%DrillingConsole%Swing)
! call json%add(p,"FillMouseHole",data%Equipments%DrillingConsole%FillMouseHole)
! call json%add(p,"Slips",data%Equipments%DrillingConsole%Slips)
! call json%add(p,"BrakeLeverCoefficient",data%Equipments%DrillingConsole%BrakeLeverCoefficient)
! call json%add(p,"HideDrillingBrake",data%Equipments%DrillingConsole%HideDrillingBrake)
! call json%add(p,"ParkingBrakeBtn",data%Equipments%DrillingConsole%ParkingBrakeBtn)



call json%add(p,"ParkingBrakeLed",data%Equipments%DrillingConsole%ParkingBrakeLed) call json%add(p,"ParkingBrakeLed",data%Equipments%DrillingConsole%ParkingBrakeLed)
call json%add(p,"GEN1LED",data%Equipments%DrillingConsole%GEN1LED) call json%add(p,"GEN1LED",data%Equipments%DrillingConsole%GEN1LED)
call json%add(p,"GEN2LED",data%Equipments%DrillingConsole%GEN2LED) call json%add(p,"GEN2LED",data%Equipments%DrillingConsole%GEN2LED)


+ 1
- 1
CSharp/Equipments/ControlPanels/CDrillingConsoleVariables.i90 View File

@@ -1,4 +1,4 @@
# 1 "/mnt/c/Projects/VSIM/SimulationCore2/CSharp/Equipments/ControlPanels/CDrillingConsoleVariables.f90"
# 1 "/home/admin/SimulationCore2/CSharp/Equipments/ControlPanels/CDrillingConsoleVariables.f90"
module CDrillingConsoleVariables module CDrillingConsoleVariables


! use CVoidEventHandlerCollection ! use CVoidEventHandlerCollection


+ 2
- 11
CSharp/Equipments/ControlPanels/CHook.f90 View File

@@ -39,21 +39,12 @@ module CHook
use SimulationVariables use SimulationVariables
implicit none implicit none
real , intent(in) :: v real , intent(in) :: v
#ifdef ExcludeExtraChanges
if(data%Equipments%Hook%HookHeight == v) return
#endif

data%Equipments%Hook%HookHeight = 100
data%Equipments%Hook%HookHeight = v
! if(associated(HookHeightPtr)) then ! if(associated(HookHeightPtr)) then
! call HookHeightPtr(data%Equipments%Hook%HookHeight) ! call HookHeightPtr(data%Equipments%Hook%HookHeight)
! end if ! end if
#ifdef deb
print*, 'HookHeight=', data%Equipments%Hook%HookHeight
#endif
!**call data%Equipments%Hook%OnHookHeightChange%RunAll(data%Equipments%Hook%HookHeight) !**call data%Equipments%Hook%OnHookHeightChange%RunAll(data%Equipments%Hook%HookHeight)
end subroutine end subroutine


+ 3
- 12
CSharp/Equipments/ControlPanels/CHook.i90 View File

@@ -1,4 +1,4 @@
# 1 "/mnt/c/Projects/VSIM/SimulationCore2/CSharp/Equipments/ControlPanels/CHook.f90"
# 1 "/home/admin/SimulationCore2/CSharp/Equipments/ControlPanels/CHook.f90"
module CHook module CHook
use CHookVariables use CHookVariables
use SimulationVariables use SimulationVariables
@@ -40,21 +40,12 @@ module CHook
use SimulationVariables use SimulationVariables
implicit none implicit none
real , intent(in) :: v real , intent(in) :: v
#ifdef ExcludeExtraChanges
if(data%Equipments%Hook%HookHeight == v) return
#endif

data%Equipments%Hook%HookHeight = 100
data%Equipments%Hook%HookHeight = v
! if(associated(HookHeightPtr)) then ! if(associated(HookHeightPtr)) then
! call HookHeightPtr(data%Equipments%Hook%HookHeight) ! call HookHeightPtr(data%Equipments%Hook%HookHeight)
! end if ! end if
#ifdef deb
print*, 'HookHeight=', data%Equipments%Hook%HookHeight
#endif
!**call data%Equipments%Hook%OnHookHeightChange%RunAll(data%Equipments%Hook%HookHeight) !**call data%Equipments%Hook%OnHookHeightChange%RunAll(data%Equipments%Hook%HookHeight)
end subroutine end subroutine


+ 0
- 1
CSharp/Equipments/ControlPanels/CStandPipeManifold.f90 View File

@@ -1,7 +1,6 @@
module CStandPipeManifold module CStandPipeManifold
use CStandPipeManifoldVariables use CStandPipeManifoldVariables
use SimulationVariables use SimulationVariables
use CManifolds
implicit none implicit none
public public
contains contains


+ 1
- 2
CSharp/Equipments/ControlPanels/CStandPipeManifold.i90 View File

@@ -1,8 +1,7 @@
# 1 "/mnt/c/Projects/VSIM/SimulationCore2/CSharp/Equipments/ControlPanels/CStandPipeManifold.f90"
# 1 "/home/admin/SimulationCore2/CSharp/Equipments/ControlPanels/CStandPipeManifold.f90"
module CStandPipeManifold module CStandPipeManifold
use CStandPipeManifoldVariables use CStandPipeManifoldVariables
use SimulationVariables use SimulationVariables
use CManifolds
implicit none implicit none
public public
contains contains


+ 1
- 1
CSharp/Equipments/ControlPanels/CTopDrivePanel.i90 View File

@@ -1,4 +1,4 @@
# 1 "/mnt/c/Projects/VSIM/SimulationCore2/CSharp/Equipments/ControlPanels/CTopDrivePanel.f90"
# 1 "/home/admin/SimulationCore2/CSharp/Equipments/ControlPanels/CTopDrivePanel.f90"
module CTopDrivePanel module CTopDrivePanel
use CTopDrivePanelVariables use CTopDrivePanelVariables
use SimulationVariables use SimulationVariables


+ 2
- 2
CSharp/Equipments/DrillWatch/DrillWatch.f90 View File

@@ -71,8 +71,8 @@ module DrillingWatchModule
call json%add(p,"SPM1",data%Equipments%DrillingWatch%SPM1) call json%add(p,"SPM1",data%Equipments%DrillingWatch%SPM1)
call json%add(p,"SPM2",data%Equipments%DrillingWatch%SPM2) call json%add(p,"SPM2",data%Equipments%DrillingWatch%SPM2)
call json%add(p,"CasingPressure",data%Equipments%DrillingWatch%CasingPressure) call json%add(p,"CasingPressure",data%Equipments%DrillingWatch%CasingPressure)
call json%add(p,"PercentFlow",50)
! call json%add(p,"PercentFlow",data%Equipments%DrillingWatch%PercentFlow)
! call json%add(p,"PercentFlow",50)
call json%add(p,"PercentFlow",data%Equipments%DrillingWatch%PercentFlow)
call json%add(p,"PitGainLose",data%Equipments%DrillingWatch%PitGainLose) call json%add(p,"PitGainLose",data%Equipments%DrillingWatch%PitGainLose)
call json%add(p,"PitVolume",data%Equipments%DrillingWatch%PitVolume) call json%add(p,"PitVolume",data%Equipments%DrillingWatch%PitVolume)
call json%add(p,"KillMudVolume",data%Equipments%DrillingWatch%KillMudVolume) call json%add(p,"KillMudVolume",data%Equipments%DrillingWatch%KillMudVolume)


+ 3
- 3
CSharp/Equipments/DrillWatch/DrillWatch.i90 View File

@@ -1,4 +1,4 @@
# 1 "/mnt/c/Projects/VSIM/SimulationCore2/CSharp/Equipments/DrillWatch/DrillWatch.f90"
# 1 "/home/admin/SimulationCore2/CSharp/Equipments/DrillWatch/DrillWatch.f90"
module DrillingWatchModule module DrillingWatchModule
use SimulationVariables use SimulationVariables
contains contains
@@ -72,8 +72,8 @@ module DrillingWatchModule
call json%add(p,"SPM1",data%Equipments%DrillingWatch%SPM1) call json%add(p,"SPM1",data%Equipments%DrillingWatch%SPM1)
call json%add(p,"SPM2",data%Equipments%DrillingWatch%SPM2) call json%add(p,"SPM2",data%Equipments%DrillingWatch%SPM2)
call json%add(p,"CasingPressure",data%Equipments%DrillingWatch%CasingPressure) call json%add(p,"CasingPressure",data%Equipments%DrillingWatch%CasingPressure)
call json%add(p,"PercentFlow",50)
! call json%add(p,"PercentFlow",data%Equipments%DrillingWatch%PercentFlow)
! call json%add(p,"PercentFlow",50)
call json%add(p,"PercentFlow",data%Equipments%DrillingWatch%PercentFlow)
call json%add(p,"PitGainLose",data%Equipments%DrillingWatch%PitGainLose) call json%add(p,"PitGainLose",data%Equipments%DrillingWatch%PitGainLose)
call json%add(p,"PitVolume",data%Equipments%DrillingWatch%PitVolume) call json%add(p,"PitVolume",data%Equipments%DrillingWatch%PitVolume)
call json%add(p,"KillMudVolume",data%Equipments%DrillingWatch%KillMudVolume) call json%add(p,"KillMudVolume",data%Equipments%DrillingWatch%KillMudVolume)


+ 0
- 3
CSharp/Equipments/MudPathFinding/CManifolds.f90 View File

@@ -1,10 +1,7 @@
module CManifolds module CManifolds
use CStack use CStack
use CArrangement use CArrangement
! use CPathChangeEvents
! use CDrillingConsoleVariables
use SimulationVariables use SimulationVariables
! use ConfigurationVariables, only: EquipmentControl
implicit none implicit none


+ 33
- 36
CSharp/Equipments/MudPathFinding/CManifolds.i90 View File

@@ -1,11 +1,8 @@
# 1 "/mnt/c/Projects/VSIM/SimulationCore2/CSharp/Equipments/MudPathFinding/CManifolds.f90"
# 1 "/home/admin/SimulationCore2/CSharp/Equipments/MudPathFinding/CManifolds.f90"
module CManifolds module CManifolds
use CStack use CStack
use CArrangement use CArrangement
! use CPathChangeEvents
! use CDrillingConsoleVariables
use SimulationVariables use SimulationVariables
! use ConfigurationVariables, only: EquipmentControl
implicit none implicit none
@@ -108,7 +105,7 @@ end subroutine PathFinding_Step
Manifold%IsTraverse = .true. Manifold%IsTraverse = .true.
!TODO: clean up !TODO: clean up
# 118
# 115


endsubroutine endsubroutine
@@ -699,7 +696,7 @@ end subroutine PathFinding_Step
call Manifold%Valve(127)%AdjacentTo(103) call Manifold%Valve(127)%AdjacentTo(103)
call Manifold%Valve(103)%AdjacentTo(127) call Manifold%Valve(103)%AdjacentTo(127)
# 711
# 708


Manifold%IsPathsDirty = .true. Manifold%IsPathsDirty = .true.
end subroutine end subroutine
@@ -713,7 +710,7 @@ end subroutine PathFinding_Step
call Manifold%Valve(127)%AdjacentTo(78) call Manifold%Valve(127)%AdjacentTo(78)
# 727
# 724




Manifold%IsPathsDirty = .true. Manifold%IsPathsDirty = .true.
@@ -756,7 +753,7 @@ end subroutine PathFinding_Step
call Manifold%Valve(127)%AdjacentTo(56) call Manifold%Valve(127)%AdjacentTo(56)
# 771
# 768


data%Equipments%DrillingConsole%IRSafetyValveLed = 1 data%Equipments%DrillingConsole%IRSafetyValveLed = 1
@@ -781,7 +778,7 @@ end subroutine PathFinding_Step
data%Equipments%DrillingConsole%OpenSafetyValveLed = 0 data%Equipments%DrillingConsole%OpenSafetyValveLed = 0
data%Equipments%DrillingConsole%CloseSafetyValveLed = 0 data%Equipments%DrillingConsole%CloseSafetyValveLed = 0
# 797
# 794


end subroutine end subroutine
@@ -794,7 +791,7 @@ end subroutine PathFinding_Step
Manifold%SafetyValve = .true. Manifold%SafetyValve = .true.
call ChangeValve(56, Manifold%SafetyValve) call ChangeValve(56, Manifold%SafetyValve)
# 811
# 808


end subroutine end subroutine
@@ -807,7 +804,7 @@ end subroutine PathFinding_Step
Manifold%SafetyValve = .false. Manifold%SafetyValve = .false.
call ChangeValve(56, Manifold%SafetyValve) call ChangeValve(56, Manifold%SafetyValve)
# 825
# 822


end subroutine end subroutine
@@ -847,7 +844,7 @@ end subroutine PathFinding_Step
data%Equipments%DrillingConsole%IRSafetyValveLed = 1 data%Equipments%DrillingConsole%IRSafetyValveLed = 1
call OpenSafetyValve_TripMode() call OpenSafetyValve_TripMode()
# 866
# 863


end subroutine end subroutine
@@ -870,7 +867,7 @@ end subroutine PathFinding_Step
data%Equipments%DrillingConsole%OpenSafetyValveLed = 0 data%Equipments%DrillingConsole%OpenSafetyValveLed = 0
data%Equipments%DrillingConsole%CloseSafetyValveLed = 0 data%Equipments%DrillingConsole%CloseSafetyValveLed = 0
# 890
# 887


end subroutine end subroutine
@@ -883,7 +880,7 @@ end subroutine PathFinding_Step
Manifold%SafetyValve = .true. Manifold%SafetyValve = .true.
call ChangeValve(54, Manifold%SafetyValve) call ChangeValve(54, Manifold%SafetyValve)
# 904
# 901


end subroutine end subroutine
@@ -896,7 +893,7 @@ end subroutine PathFinding_Step
Manifold%SafetyValve = .false. Manifold%SafetyValve = .false.
call ChangeValve(54, Manifold%SafetyValve) call ChangeValve(54, Manifold%SafetyValve)
# 918
# 915


end subroutine end subroutine
@@ -930,7 +927,7 @@ end subroutine PathFinding_Step
data%Equipments%DrillingConsole%IRSafetyValveLed = 1 data%Equipments%DrillingConsole%IRSafetyValveLed = 1
call OpenSafetyValve_TopDrive() call OpenSafetyValve_TopDrive()
# 953
# 950


end subroutine end subroutine
@@ -953,7 +950,7 @@ end subroutine PathFinding_Step
data%Equipments%DrillingConsole%OpenSafetyValveLed = 0 data%Equipments%DrillingConsole%OpenSafetyValveLed = 0
data%Equipments%DrillingConsole%CloseSafetyValveLed = 0 data%Equipments%DrillingConsole%CloseSafetyValveLed = 0
# 977
# 974


end subroutine end subroutine
@@ -965,7 +962,7 @@ end subroutine PathFinding_Step
data%Equipments%DrillingConsole%CloseSafetyValveLed = 0 data%Equipments%DrillingConsole%CloseSafetyValveLed = 0
Manifold%SafetyValve = .true. Manifold%SafetyValve = .true.
# 990
# 987


call ChangeValve(54, Manifold%SafetyValve) call ChangeValve(54, Manifold%SafetyValve)
@@ -978,7 +975,7 @@ end subroutine PathFinding_Step
data%Equipments%DrillingConsole%OpenSafetyValveLed = 0 data%Equipments%DrillingConsole%OpenSafetyValveLed = 0
Manifold%SafetyValve = .false. Manifold%SafetyValve = .false.
# 1004
# 1001


call ChangeValve(54, Manifold%SafetyValve) call ChangeValve(54, Manifold%SafetyValve)
@@ -1005,7 +1002,7 @@ end subroutine PathFinding_Step
call Manifold%Valve(103)%AdjacentTo(55) call Manifold%Valve(103)%AdjacentTo(55)
call Manifold%Valve(124)%AdjacentTo(55) call Manifold%Valve(124)%AdjacentTo(55)
# 1032
# 1029


data%Equipments%DrillingConsole%IRIBopLed = 1 data%Equipments%DrillingConsole%IRIBopLed = 1
@@ -1025,7 +1022,7 @@ end subroutine PathFinding_Step
call Manifold%Valve(103)%AdjacentTo(124) call Manifold%Valve(103)%AdjacentTo(124)
call Manifold%Valve(124)%AdjacentTo(103) call Manifold%Valve(124)%AdjacentTo(103)
# 1053
# 1050


data%Equipments%DrillingConsole%IRIBopLed = 0 data%Equipments%DrillingConsole%IRIBopLed = 0
@@ -1038,7 +1035,7 @@ end subroutine PathFinding_Step
if(.not.Manifold%IsIBopInstalled) return if(.not.Manifold%IsIBopInstalled) return
Manifold%IBop = .true. Manifold%IBop = .true.
# 1067
# 1064


call ChangeValve(55, Manifold%IBop) call ChangeValve(55, Manifold%IBop)
@@ -1049,7 +1046,7 @@ end subroutine PathFinding_Step
if(.not.Manifold%IsIBopInstalled) return if(.not.Manifold%IsIBopInstalled) return
Manifold%IBop = .false. Manifold%IBop = .false.
# 1079
# 1076


call ChangeValve(55, Manifold%IBop) call ChangeValve(55, Manifold%IBop)
@@ -1074,7 +1071,7 @@ end subroutine PathFinding_Step
call Manifold%Valve(126)%AdjacentTo(68) call Manifold%Valve(126)%AdjacentTo(68)
# 1105
# 1102


call OpenKellyCock() call OpenKellyCock()
@@ -1098,7 +1095,7 @@ end subroutine PathFinding_Step
data%Equipments%DrillingConsole%CloseKellyCockLed = 0 data%Equipments%DrillingConsole%CloseKellyCockLed = 0
data%Equipments%DrillingConsole%OpenKellyCockLed = 0 data%Equipments%DrillingConsole%OpenKellyCockLed = 0
# 1130
# 1127


end subroutine end subroutine
@@ -1110,7 +1107,7 @@ end subroutine PathFinding_Step
data%Equipments%DrillingConsole%CloseKellyCockLed = 0 data%Equipments%DrillingConsole%CloseKellyCockLed = 0
Manifold%KellyCock = .true. Manifold%KellyCock = .true.
# 1143
# 1140


call ChangeValve(68, Manifold%KellyCock) call ChangeValve(68, Manifold%KellyCock)
@@ -1123,7 +1120,7 @@ end subroutine PathFinding_Step
data%Equipments%DrillingConsole%OpenKellyCockLed = 0 data%Equipments%DrillingConsole%OpenKellyCockLed = 0
Manifold%KellyCock = .false. Manifold%KellyCock = .false.


# 1157
# 1154


call ChangeValve(68, Manifold%KellyCock) call ChangeValve(68, Manifold%KellyCock)
@@ -1150,7 +1147,7 @@ end subroutine PathFinding_Step
call Manifold%Valve(128)%AdjacentTo(70) call Manifold%Valve(128)%AdjacentTo(70)
call Manifold%Valve(70)%AdjacentTo(128) call Manifold%Valve(70)%AdjacentTo(128)
# 1185
# 1182


call OpenTopDriveIBop() call OpenTopDriveIBop()
end subroutine end subroutine
@@ -1168,7 +1165,7 @@ end subroutine PathFinding_Step
call Manifold%Valve(126)%AdjacentTo(128) call Manifold%Valve(126)%AdjacentTo(128)
call Manifold%Valve(128)%AdjacentTo(126) call Manifold%Valve(128)%AdjacentTo(126)
# 1204
# 1201


Manifold%TopDriveIBop = .false. Manifold%TopDriveIBop = .false.
call ChangeValve(70, Manifold%TopDriveIBop) call ChangeValve(70, Manifold%TopDriveIBop)
@@ -1179,7 +1176,7 @@ end subroutine PathFinding_Step
if(.not.Manifold%IsTopDriveIBopInstalled) return if(.not.Manifold%IsTopDriveIBopInstalled) return
Manifold%TopDriveIBop = .true. Manifold%TopDriveIBop = .true.
call ChangeValve(70, Manifold%TopDriveIBop) call ChangeValve(70, Manifold%TopDriveIBop)
# 1216
# 1213


end subroutine end subroutine
@@ -1188,7 +1185,7 @@ end subroutine PathFinding_Step
if(.not.Manifold%IsTopDriveIBopInstalled) return if(.not.Manifold%IsTopDriveIBopInstalled) return
Manifold%TopDriveIBop = .false. Manifold%TopDriveIBop = .false.
call ChangeValve(70, Manifold%TopDriveIBop) call ChangeValve(70, Manifold%TopDriveIBop)
# 1226
# 1223


end subroutine end subroutine
@@ -1212,7 +1209,7 @@ end subroutine PathFinding_Step
call Manifold%Valve(69)%AdjacentTo(48) call Manifold%Valve(69)%AdjacentTo(48)
call Manifold%Valve(79)%AdjacentTo(48) call Manifold%Valve(79)%AdjacentTo(48)
# 1251
# 1248


call OpenFloatValve() call OpenFloatValve()
end subroutine end subroutine
@@ -1229,7 +1226,7 @@ end subroutine PathFinding_Step
call Manifold%Valve(69)%AdjacentTo(79) call Manifold%Valve(69)%AdjacentTo(79)
call Manifold%Valve(79)%AdjacentTo(69) call Manifold%Valve(79)%AdjacentTo(69)
# 1269
# 1266


Manifold%FloatValve = .false. Manifold%FloatValve = .false.
call ChangeValve(48, Manifold%FloatValve) call ChangeValve(48, Manifold%FloatValve)
@@ -1239,7 +1236,7 @@ end subroutine PathFinding_Step
implicit none implicit none
if(.not.Manifold%IsFloatValveInstalled) return if(.not.Manifold%IsFloatValveInstalled) return
Manifold%FloatValve = .true. Manifold%FloatValve = .true.
# 1280
# 1277


call ChangeValve(48, Manifold%FloatValve) call ChangeValve(48, Manifold%FloatValve)
end subroutine end subroutine
@@ -1248,7 +1245,7 @@ end subroutine PathFinding_Step
implicit none implicit none
if(.not.Manifold%IsFloatValveInstalled) return if(.not.Manifold%IsFloatValveInstalled) return
Manifold%FloatValve = .false. Manifold%FloatValve = .false.
# 1290
# 1287


call ChangeValve(48, Manifold%FloatValve) call ChangeValve(48, Manifold%FloatValve)
end subroutine end subroutine
@@ -1324,7 +1321,7 @@ end subroutine PathFinding_Step
Manifold%Valve(60)%Status = .false. Manifold%Valve(60)%Status = .false.
endif endif
endif endif
# 1367
# 1364


!call Traverse() !call Traverse()
Manifold%IsPathsDirty = .true. Manifold%IsPathsDirty = .true.


+ 1
- 1
CSharp/OperationScenarios/Unity/UnityModule.f90 View File

@@ -79,7 +79,7 @@ subroutine Set_NearFloorPosition(v)
! #endif ! #endif
data%Equipments%UnityInputs%NearFloorPosition = v data%Equipments%UnityInputs%NearFloorPosition = v
!**call data%Equipments%UnityInputs%OnNearFloorPositionChange%RunAll() !**call data%Equipments%UnityInputs%OnNearFloorPositionChange%RunAll()
if(logging>4) then
if(log_level>4) then
print*, 'NearFloorPosition =', data%Equipments%UnityInputs%NearFloorPosition print*, 'NearFloorPosition =', data%Equipments%UnityInputs%NearFloorPosition
endif endif
end subroutine end subroutine


+ 2
- 2
CSharp/OperationScenarios/Unity/UnityModule.i90 View File

@@ -1,4 +1,4 @@
# 1 "/mnt/c/Projects/VSIM/SimulationCore2/CSharp/OperationScenarios/Unity/UnityModule.f90"
# 1 "/home/admin/SimulationCore2/CSharp/OperationScenarios/Unity/UnityModule.f90"
module UnityModule module UnityModule
use SimulationVariables use SimulationVariables
implicit none implicit none
@@ -80,7 +80,7 @@ subroutine Set_NearFloorPosition(v)
! #endif ! #endif
data%Equipments%UnityInputs%NearFloorPosition = v data%Equipments%UnityInputs%NearFloorPosition = v
!**call data%Equipments%UnityInputs%OnNearFloorPositionChange%RunAll() !**call data%Equipments%UnityInputs%OnNearFloorPositionChange%RunAll()
if(logging>4) then
if(log_level>4) then
print*, 'NearFloorPosition =', data%Equipments%UnityInputs%NearFloorPosition print*, 'NearFloorPosition =', data%Equipments%UnityInputs%NearFloorPosition
endif endif
end subroutine end subroutine


+ 31
- 31
Common/json-fortran/json_value_module.i90 View File

@@ -1,4 +1,4 @@
# 1 "/mnt/c/Projects/VSIM/SimulationCore2/Common/json-fortran/json_value_module.F90"
# 1 "/home/admin/SimulationCore2/Common/json-fortran/json_value_module.F90"
!***************************************************************************************** !*****************************************************************************************
!> author: Jacob Williams !> author: Jacob Williams
! license: BSD ! license: BSD
@@ -25,7 +25,7 @@


private private


# 1 "/mnt/c/Projects/VSIM/SimulationCore2/Common/json-fortran/json_macros.inc" 1
# 1 "/home/admin/SimulationCore2/Common/json-fortran/json_macros.inc" 1
! JSON-Fortran preprocessor macros. ! JSON-Fortran preprocessor macros.
! !
! License ! License
@@ -63,7 +63,7 @@




!********************************************************* !*********************************************************
# 28 "/mnt/c/Projects/VSIM/SimulationCore2/Common/json-fortran/json_value_module.F90" 2
# 28 "/home/admin/SimulationCore2/Common/json-fortran/json_value_module.F90" 2


!********************************************************* !*********************************************************
!> !>
@@ -972,7 +972,7 @@
! all have a similar interface. ! all have a similar interface.


function initialize_json_core(& function initialize_json_core(&
# 1 "/mnt/c/Projects/VSIM/SimulationCore2/Common/json-fortran/json_initialize_dummy_arguments.inc" 1
# 1 "/home/admin/SimulationCore2/Common/json-fortran/json_initialize_dummy_arguments.inc" 1
! The dummy argument list for the various `initialize` subroutines. ! The dummy argument list for the various `initialize` subroutines.
! !
! See also: json_initialize_argument.inc ! See also: json_initialize_argument.inc
@@ -998,13 +998,13 @@ null_to_real_mode,&
non_normal_mode,& non_normal_mode,&
use_quiet_nan, & use_quiet_nan, &
strict_integer_type_checking & strict_integer_type_checking &
# 983 "/mnt/c/Projects/VSIM/SimulationCore2/Common/json-fortran/json_value_module.F90" 2
# 983 "/home/admin/SimulationCore2/Common/json-fortran/json_value_module.F90" 2
) result(json_core_object) ) result(json_core_object)


implicit none implicit none


type(json_core) :: json_core_object type(json_core) :: json_core_object
# 1 "/mnt/c/Projects/VSIM/SimulationCore2/Common/json-fortran/json_initialize_arguments.inc" 1
# 1 "/home/admin/SimulationCore2/Common/json-fortran/json_initialize_arguments.inc" 1
! The argument list for the various `initialize` subroutines. ! The argument list for the various `initialize` subroutines.
! !
! See also: json_initialize_dummy_arguments.inc ! See also: json_initialize_dummy_arguments.inc
@@ -1119,10 +1119,10 @@ logical(LK),intent(in),optional :: strict_integer_type_checking
!! value cannot be read. !! value cannot be read.
!! !!
!! (default is true) !! (default is true)
# 989 "/mnt/c/Projects/VSIM/SimulationCore2/Common/json-fortran/json_value_module.F90" 2
# 989 "/home/admin/SimulationCore2/Common/json-fortran/json_value_module.F90" 2


call json_core_object%initialize(& call json_core_object%initialize(&
# 1 "/mnt/c/Projects/VSIM/SimulationCore2/Common/json-fortran/json_initialize_dummy_arguments.inc" 1
# 1 "/home/admin/SimulationCore2/Common/json-fortran/json_initialize_dummy_arguments.inc" 1
! The dummy argument list for the various `initialize` subroutines. ! The dummy argument list for the various `initialize` subroutines.
! !
! See also: json_initialize_argument.inc ! See also: json_initialize_argument.inc
@@ -1148,7 +1148,7 @@ null_to_real_mode,&
non_normal_mode,& non_normal_mode,&
use_quiet_nan, & use_quiet_nan, &
strict_integer_type_checking & strict_integer_type_checking &
# 992 "/mnt/c/Projects/VSIM/SimulationCore2/Common/json-fortran/json_value_module.F90" 2
# 992 "/home/admin/SimulationCore2/Common/json-fortran/json_value_module.F90" 2
) )


end function initialize_json_core end function initialize_json_core
@@ -1174,7 +1174,7 @@ strict_integer_type_checking &
! all have a similar interface. ! all have a similar interface.


subroutine json_initialize(me,& subroutine json_initialize(me,&
# 1 "/mnt/c/Projects/VSIM/SimulationCore2/Common/json-fortran/json_initialize_dummy_arguments.inc" 1
# 1 "/home/admin/SimulationCore2/Common/json-fortran/json_initialize_dummy_arguments.inc" 1
! The dummy argument list for the various `initialize` subroutines. ! The dummy argument list for the various `initialize` subroutines.
! !
! See also: json_initialize_argument.inc ! See also: json_initialize_argument.inc
@@ -1200,13 +1200,13 @@ null_to_real_mode,&
non_normal_mode,& non_normal_mode,&
use_quiet_nan, & use_quiet_nan, &
strict_integer_type_checking & strict_integer_type_checking &
# 1018 "/mnt/c/Projects/VSIM/SimulationCore2/Common/json-fortran/json_value_module.F90" 2
# 1018 "/home/admin/SimulationCore2/Common/json-fortran/json_value_module.F90" 2
) )


implicit none implicit none


class(json_core),intent(inout) :: me class(json_core),intent(inout) :: me
# 1 "/mnt/c/Projects/VSIM/SimulationCore2/Common/json-fortran/json_initialize_arguments.inc" 1
# 1 "/home/admin/SimulationCore2/Common/json-fortran/json_initialize_arguments.inc" 1
! The argument list for the various `initialize` subroutines. ! The argument list for the various `initialize` subroutines.
! !
! See also: json_initialize_dummy_arguments.inc ! See also: json_initialize_dummy_arguments.inc
@@ -1321,7 +1321,7 @@ logical(LK),intent(in),optional :: strict_integer_type_checking
!! value cannot be read. !! value cannot be read.
!! !!
!! (default is true) !! (default is true)
# 1024 "/mnt/c/Projects/VSIM/SimulationCore2/Common/json-fortran/json_value_module.F90" 2
# 1024 "/home/admin/SimulationCore2/Common/json-fortran/json_value_module.F90" 2


character(kind=CDK,len=10) :: w !! max string length character(kind=CDK,len=10) :: w !! max string length
character(kind=CDK,len=10) :: d !! real precision digits character(kind=CDK,len=10) :: d !! real precision digits
@@ -8262,7 +8262,7 @@ logical(LK),intent(in),optional :: strict_integer_type_checking
integer(IK),parameter :: default_if_not_specified = 0_IK integer(IK),parameter :: default_if_not_specified = 0_IK
character(kind=CK,len=*),parameter :: routine = CK_'json_get_integer_by_path' character(kind=CK,len=*),parameter :: routine = CK_'json_get_integer_by_path'


# 1 "/mnt/c/Projects/VSIM/SimulationCore2/Common/json-fortran/json_get_scalar_by_path.inc" 1
# 1 "/home/admin/SimulationCore2/Common/json-fortran/json_get_scalar_by_path.inc" 1
type(json_value),pointer :: p type(json_value),pointer :: p


if (present(default)) then if (present(default)) then
@@ -8295,7 +8295,7 @@ logical(LK),intent(in),optional :: strict_integer_type_checking
else else
if ( present(found) ) found = .true. if ( present(found) ) found = .true.
end if end if
# 8210 "/mnt/c/Projects/VSIM/SimulationCore2/Common/json-fortran/json_value_module.F90" 2
# 8210 "/home/admin/SimulationCore2/Common/json-fortran/json_value_module.F90" 2


end subroutine json_get_integer_by_path end subroutine json_get_integer_by_path
!***************************************************************************************** !*****************************************************************************************
@@ -8413,7 +8413,7 @@ logical(LK),intent(in),optional :: strict_integer_type_checking


character(kind=CK,len=*),parameter :: routine = CK_'json_get_integer_vec_by_path' character(kind=CK,len=*),parameter :: routine = CK_'json_get_integer_vec_by_path'


# 1 "/mnt/c/Projects/VSIM/SimulationCore2/Common/json-fortran/json_get_vec_by_path.inc" 1
# 1 "/home/admin/SimulationCore2/Common/json-fortran/json_get_vec_by_path.inc" 1
type(json_value),pointer :: p type(json_value),pointer :: p


if ( json%exception_thrown ) then if ( json%exception_thrown ) then
@@ -8441,7 +8441,7 @@ logical(LK),intent(in),optional :: strict_integer_type_checking
else else
if ( present(found) ) found = .true. if ( present(found) ) found = .true.
end if end if
# 8328 "/mnt/c/Projects/VSIM/SimulationCore2/Common/json-fortran/json_value_module.F90" 2
# 8328 "/home/admin/SimulationCore2/Common/json-fortran/json_value_module.F90" 2


end subroutine json_get_integer_vec_by_path end subroutine json_get_integer_vec_by_path
!***************************************************************************************** !*****************************************************************************************
@@ -8573,7 +8573,7 @@ logical(LK),intent(in),optional :: strict_integer_type_checking
real(RK),parameter :: default_if_not_specified = 0.0_RK real(RK),parameter :: default_if_not_specified = 0.0_RK
character(kind=CK,len=*),parameter :: routine = CK_'json_get_real_by_path' character(kind=CK,len=*),parameter :: routine = CK_'json_get_real_by_path'


# 1 "/mnt/c/Projects/VSIM/SimulationCore2/Common/json-fortran/json_get_scalar_by_path.inc" 1
# 1 "/home/admin/SimulationCore2/Common/json-fortran/json_get_scalar_by_path.inc" 1
type(json_value),pointer :: p type(json_value),pointer :: p


if (present(default)) then if (present(default)) then
@@ -8606,7 +8606,7 @@ logical(LK),intent(in),optional :: strict_integer_type_checking
else else
if ( present(found) ) found = .true. if ( present(found) ) found = .true.
end if end if
# 8460 "/mnt/c/Projects/VSIM/SimulationCore2/Common/json-fortran/json_value_module.F90" 2
# 8460 "/home/admin/SimulationCore2/Common/json-fortran/json_value_module.F90" 2


end subroutine json_get_real_by_path end subroutine json_get_real_by_path
!***************************************************************************************** !*****************************************************************************************
@@ -8709,7 +8709,7 @@ logical(LK),intent(in),optional :: strict_integer_type_checking


character(kind=CK,len=*),parameter :: routine = CK_'json_get_real_vec_by_path' character(kind=CK,len=*),parameter :: routine = CK_'json_get_real_vec_by_path'


# 1 "/mnt/c/Projects/VSIM/SimulationCore2/Common/json-fortran/json_get_vec_by_path.inc" 1
# 1 "/home/admin/SimulationCore2/Common/json-fortran/json_get_vec_by_path.inc" 1
type(json_value),pointer :: p type(json_value),pointer :: p


if ( json%exception_thrown ) then if ( json%exception_thrown ) then
@@ -8737,7 +8737,7 @@ logical(LK),intent(in),optional :: strict_integer_type_checking
else else
if ( present(found) ) found = .true. if ( present(found) ) found = .true.
end if end if
# 8563 "/mnt/c/Projects/VSIM/SimulationCore2/Common/json-fortran/json_value_module.F90" 2
# 8563 "/home/admin/SimulationCore2/Common/json-fortran/json_value_module.F90" 2


end subroutine json_get_real_vec_by_path end subroutine json_get_real_vec_by_path
!***************************************************************************************** !*****************************************************************************************
@@ -8984,7 +8984,7 @@ logical(LK),intent(in),optional :: strict_integer_type_checking
logical(LK),parameter :: default_if_not_specified = .false. logical(LK),parameter :: default_if_not_specified = .false.
character(kind=CK,len=*),parameter :: routine = CK_'json_get_logical_by_path' character(kind=CK,len=*),parameter :: routine = CK_'json_get_logical_by_path'


# 1 "/mnt/c/Projects/VSIM/SimulationCore2/Common/json-fortran/json_get_scalar_by_path.inc" 1
# 1 "/home/admin/SimulationCore2/Common/json-fortran/json_get_scalar_by_path.inc" 1
type(json_value),pointer :: p type(json_value),pointer :: p


if (present(default)) then if (present(default)) then
@@ -9017,7 +9017,7 @@ logical(LK),intent(in),optional :: strict_integer_type_checking
else else
if ( present(found) ) found = .true. if ( present(found) ) found = .true.
end if end if
# 8935 "/mnt/c/Projects/VSIM/SimulationCore2/Common/json-fortran/json_value_module.F90" 2
# 8935 "/home/admin/SimulationCore2/Common/json-fortran/json_value_module.F90" 2


end subroutine json_get_logical_by_path end subroutine json_get_logical_by_path
!***************************************************************************************** !*****************************************************************************************
@@ -9120,7 +9120,7 @@ logical(LK),intent(in),optional :: strict_integer_type_checking


character(kind=CK,len=*),parameter :: routine = CK_'json_get_logical_vec_by_path' character(kind=CK,len=*),parameter :: routine = CK_'json_get_logical_vec_by_path'


# 1 "/mnt/c/Projects/VSIM/SimulationCore2/Common/json-fortran/json_get_vec_by_path.inc" 1
# 1 "/home/admin/SimulationCore2/Common/json-fortran/json_get_vec_by_path.inc" 1
type(json_value),pointer :: p type(json_value),pointer :: p


if ( json%exception_thrown ) then if ( json%exception_thrown ) then
@@ -9148,7 +9148,7 @@ logical(LK),intent(in),optional :: strict_integer_type_checking
else else
if ( present(found) ) found = .true. if ( present(found) ) found = .true.
end if end if
# 9038 "/mnt/c/Projects/VSIM/SimulationCore2/Common/json-fortran/json_value_module.F90" 2
# 9038 "/home/admin/SimulationCore2/Common/json-fortran/json_value_module.F90" 2


end subroutine json_get_logical_vec_by_path end subroutine json_get_logical_vec_by_path
!***************************************************************************************** !*****************************************************************************************
@@ -9295,7 +9295,7 @@ logical(LK),intent(in),optional :: strict_integer_type_checking
character(kind=CK,len=*),parameter :: default_if_not_specified = CK_'' character(kind=CK,len=*),parameter :: default_if_not_specified = CK_''
character(kind=CK,len=*),parameter :: routine = CK_'json_get_string_by_path' character(kind=CK,len=*),parameter :: routine = CK_'json_get_string_by_path'


# 1 "/mnt/c/Projects/VSIM/SimulationCore2/Common/json-fortran/json_get_scalar_by_path.inc" 1
# 1 "/home/admin/SimulationCore2/Common/json-fortran/json_get_scalar_by_path.inc" 1
type(json_value),pointer :: p type(json_value),pointer :: p


if (present(default)) then if (present(default)) then
@@ -9328,7 +9328,7 @@ logical(LK),intent(in),optional :: strict_integer_type_checking
else else
if ( present(found) ) found = .true. if ( present(found) ) found = .true.
end if end if
# 9185 "/mnt/c/Projects/VSIM/SimulationCore2/Common/json-fortran/json_value_module.F90" 2
# 9185 "/home/admin/SimulationCore2/Common/json-fortran/json_value_module.F90" 2


end subroutine json_get_string_by_path end subroutine json_get_string_by_path
!***************************************************************************************** !*****************************************************************************************
@@ -9439,7 +9439,7 @@ logical(LK),intent(in),optional :: strict_integer_type_checking


character(kind=CK,len=*),parameter :: routine = CK_'json_get_string_vec_by_path' character(kind=CK,len=*),parameter :: routine = CK_'json_get_string_vec_by_path'


# 1 "/mnt/c/Projects/VSIM/SimulationCore2/Common/json-fortran/json_get_vec_by_path.inc" 1
# 1 "/home/admin/SimulationCore2/Common/json-fortran/json_get_vec_by_path.inc" 1
type(json_value),pointer :: p type(json_value),pointer :: p


if ( json%exception_thrown ) then if ( json%exception_thrown ) then
@@ -9467,7 +9467,7 @@ logical(LK),intent(in),optional :: strict_integer_type_checking
else else
if ( present(found) ) found = .true. if ( present(found) ) found = .true.
end if end if
# 9296 "/mnt/c/Projects/VSIM/SimulationCore2/Common/json-fortran/json_value_module.F90" 2
# 9296 "/home/admin/SimulationCore2/Common/json-fortran/json_value_module.F90" 2


end subroutine json_get_string_vec_by_path end subroutine json_get_string_vec_by_path
!***************************************************************************************** !*****************************************************************************************
@@ -9622,7 +9622,7 @@ logical(LK),intent(in),optional :: strict_integer_type_checking


character(kind=CK,len=*),parameter :: routine = CK_'json_get_alloc_string_vec_by_path' character(kind=CK,len=*),parameter :: routine = CK_'json_get_alloc_string_vec_by_path'


# 1 "/mnt/c/Projects/VSIM/SimulationCore2/Common/json-fortran/json_get_vec_by_path_alloc.inc" 1
# 1 "/home/admin/SimulationCore2/Common/json-fortran/json_get_vec_by_path_alloc.inc" 1
type(json_value),pointer :: p type(json_value),pointer :: p


if ( json%exception_thrown ) then if ( json%exception_thrown ) then
@@ -9666,7 +9666,7 @@ logical(LK),intent(in),optional :: strict_integer_type_checking
else else
if ( present(found) ) found = .true. if ( present(found) ) found = .true.
end if end if
# 9451 "/mnt/c/Projects/VSIM/SimulationCore2/Common/json-fortran/json_value_module.F90" 2
# 9451 "/home/admin/SimulationCore2/Common/json-fortran/json_value_module.F90" 2


end subroutine json_get_alloc_string_vec_by_path end subroutine json_get_alloc_string_vec_by_path
!***************************************************************************************** !*****************************************************************************************


+ 1
- 1
Equipments/ChokeControl/ChokeControlMain.i90 View File

@@ -1,4 +1,4 @@
# 1 "/mnt/c/Projects/VSIM/SimulationCore2/Equipments/ChokeControl/ChokeControlMain.f90"
# 1 "/home/admin/SimulationCore2/Equipments/ChokeControl/ChokeControlMain.f90"
module ChokeControlMain module ChokeControlMain
USE CHOKEVARIABLES USE CHOKEVARIABLES
use SimulationVariables !@ use SimulationVariables !@


+ 1
- 1
Equipments/Drawworks/Drawworks_INPUTS.i90 View File

@@ -1,4 +1,4 @@
# 1 "/mnt/c/Projects/VSIM/SimulationCore2/Equipments/Drawworks/Drawworks_INPUTS.f90"
# 1 "/home/admin/SimulationCore2/Equipments/Drawworks/Drawworks_INPUTS.f90"
subroutine Drawworks_Inputs subroutine Drawworks_Inputs


use CDrillingConsoleVariables use CDrillingConsoleVariables


+ 1
- 1
Equipments/Drawworks/Drawworks_MainSolver.i90 View File

@@ -1,4 +1,4 @@
# 1 "/mnt/c/Projects/VSIM/SimulationCore2/Equipments/Drawworks/Drawworks_MainSolver.f90"
# 1 "/home/admin/SimulationCore2/Equipments/Drawworks/Drawworks_MainSolver.f90"
subroutine Drawworks_MainSolver subroutine Drawworks_MainSolver
use SimulationVariables !@ use SimulationVariables !@


+ 1
- 1
Equipments/Drawworks/Drawworks_Outputs.i90 View File

@@ -1,4 +1,4 @@
# 1 "/mnt/c/Projects/VSIM/SimulationCore2/Equipments/Drawworks/Drawworks_Outputs.f90"
# 1 "/home/admin/SimulationCore2/Equipments/Drawworks/Drawworks_Outputs.f90"
subroutine Drawworks_Outputs subroutine Drawworks_Outputs
Use CSounds Use CSounds


+ 1
- 1
Equipments/MudSystem/Elements_Creation.i90 View File

@@ -1,4 +1,4 @@
# 1 "/mnt/c/Projects/VSIM/SimulationCore2/Equipments/MudSystem/Elements_Creation.f90"
# 1 "/home/admin/SimulationCore2/Equipments/MudSystem/Elements_Creation.f90"
subroutine ElementsCreation ! is called in subroutine Fluid_Flow_Solver subroutine ElementsCreation ! is called in subroutine Fluid_Flow_Solver
Use GeoElements_FluidModule Use GeoElements_FluidModule


+ 1
- 1
Equipments/MudSystem/Kick_Influx.i90 View File

@@ -1,4 +1,4 @@
# 1 "/mnt/c/Projects/VSIM/SimulationCore2/Equipments/MudSystem/Kick_Influx.f90"
# 1 "/home/admin/SimulationCore2/Equipments/MudSystem/Kick_Influx.f90"
subroutine Kick_Influx ! is called in subroutine CirculationCodeSelect subroutine Kick_Influx ! is called in subroutine CirculationCodeSelect
Use GeoElements_FluidModule Use GeoElements_FluidModule


+ 1
- 1
Equipments/MudSystem/MudSystem.i90 View File

@@ -1,4 +1,4 @@
# 1 "/mnt/c/Projects/VSIM/SimulationCore2/Equipments/MudSystem/MudSystem.f90"
# 1 "/home/admin/SimulationCore2/Equipments/MudSystem/MudSystem.f90"
module MudSystemModule module MudSystemModule
USE MudSystemVARIABLES USE MudSystemVARIABLES


+ 1
- 1
Equipments/MudSystem/MudSystemStartup.i90 View File

@@ -1,4 +1,4 @@
# 1 "/mnt/c/Projects/VSIM/SimulationCore2/Equipments/MudSystem/MudSystemStartup.f90"
# 1 "/home/admin/SimulationCore2/Equipments/MudSystem/MudSystemStartup.f90"
SUBROUTINE NormalCirculation_StartUp() ! is called in module FluidFlowMain SUBROUTINE NormalCirculation_StartUp() ! is called in module FluidFlowMain
USE MudSystemVARIABLES USE MudSystemVARIABLES


+ 1
- 1
Equipments/MudSystem/MudSystem_Variables.i90 View File

@@ -1,4 +1,4 @@
# 1 "/mnt/c/Projects/VSIM/SimulationCore2/Equipments/MudSystem/MudSystem_Variables.f90"
# 1 "/home/admin/SimulationCore2/Equipments/MudSystem/MudSystem_Variables.f90"
MODULE MudSystemVARIABLES MODULE MudSystemVARIABLES


use DynamicDoubleArray, only:DynamicDoubleArrayType use DynamicDoubleArray, only:DynamicDoubleArrayType


+ 1
- 12
Equipments/MudSystem/Plot_Final_Mud_Elements.f90 View File

@@ -3,19 +3,9 @@ subroutine PlotFinalMudElements ! is called in subroutine CirculationCodeSel
Use GeoElements_FluidModule Use GeoElements_FluidModule
USE CMudPropertiesVariables USE CMudPropertiesVariables
USE MudSystemVARIABLES USE MudSystemVARIABLES
use SimulationVariables !@@@
use SimulationVariables use SimulationVariables
Use TD_StringConnectionData Use TD_StringConnectionData
USE CHOKEVARIABLES USE CHOKEVARIABLES
!use ConfigurationVariables !@
!use CDataDisplayConsole
!@ use ConfigurationVariables , StandPipePressureDataDisplay=>StandPipePressure
!use CManifolds
use SimulationVariables !@
USE CHOKEVARIABLES
!use ConfigurationVariables !@
!use CChokeManifoldVariables
use SimulationVariables
!use CTanks !use CTanks
!@use ConfigurationVariables, TripTankVolume2 => data%Equipments%DrillingWatch%TripTankVolume, TripTankDensity2 => TripTankDensity !@use ConfigurationVariables, TripTankVolume2 => data%Equipments%DrillingWatch%TripTankVolume, TripTankDensity2 => TripTankDensity
USE sROP_Other_Variables USE sROP_Other_Variables
@@ -271,8 +261,7 @@ endif
data%State%MudSystem%icasing=0 data%State%MudSystem%icasing=0
data%State%MudSystem%BitMudDensity= data%State%MudSystem%Density_MudElement%Array(data%State%MudSystem%NoHorizontalMudElements+data%State%MudSystem%NoStringMudElements) ! (for ROP module) data%State%MudSystem%BitMudDensity= data%State%MudSystem%Density_MudElement%Array(data%State%MudSystem%NoHorizontalMudElements+data%State%MudSystem%NoStringMudElements) ! (for ROP module)
!================================================================
!================================================================
!============================ UTUBE ============================= !============================ UTUBE =============================
!IF (UtubePossibility== .true. .and. Get_KellyConnection() /= KELLY_CONNECTION_STRING .and. WellHeadIsOpen) THEN !IF (UtubePossibility== .true. .and. Get_KellyConnection() /= KELLY_CONNECTION_STRING .and. WellHeadIsOpen) THEN


+ 1
- 12
Equipments/MudSystem/Plot_Final_Mud_Elements.i90 View File

@@ -1,22 +1,12 @@
# 1 "/mnt/c/Projects/VSIM/SimulationCore2/Equipments/MudSystem/Plot_Final_Mud_Elements.f90"
# 1 "/home/admin/SimulationCore2/Equipments/MudSystem/Plot_Final_Mud_Elements.f90"
subroutine PlotFinalMudElements ! is called in subroutine CirculationCodeSelect subroutine PlotFinalMudElements ! is called in subroutine CirculationCodeSelect
Use GeoElements_FluidModule Use GeoElements_FluidModule
USE CMudPropertiesVariables USE CMudPropertiesVariables
USE MudSystemVARIABLES USE MudSystemVARIABLES
use SimulationVariables !@@@
use SimulationVariables use SimulationVariables
Use TD_StringConnectionData Use TD_StringConnectionData
USE CHOKEVARIABLES USE CHOKEVARIABLES
!use ConfigurationVariables !@
!use CDataDisplayConsole
!@ use ConfigurationVariables , StandPipePressureDataDisplay=>StandPipePressure
!use CManifolds
use SimulationVariables !@
USE CHOKEVARIABLES
!use ConfigurationVariables !@
!use CChokeManifoldVariables
use SimulationVariables
!use CTanks !use CTanks
!@use ConfigurationVariables, TripTankVolume2 => data%Equipments%DrillingWatch%TripTankVolume, TripTankDensity2 => TripTankDensity !@use ConfigurationVariables, TripTankVolume2 => data%Equipments%DrillingWatch%TripTankVolume, TripTankDensity2 => TripTankDensity
USE sROP_Other_Variables USE sROP_Other_Variables
@@ -273,7 +263,6 @@ endif
data%State%MudSystem%BitMudDensity= data%State%MudSystem%Density_MudElement%Array(data%State%MudSystem%NoHorizontalMudElements+data%State%MudSystem%NoStringMudElements) ! (for ROP module) data%State%MudSystem%BitMudDensity= data%State%MudSystem%Density_MudElement%Array(data%State%MudSystem%NoHorizontalMudElements+data%State%MudSystem%NoStringMudElements) ! (for ROP module)
!================================================================ !================================================================
!============================ UTUBE ============================= !============================ UTUBE =============================
!IF (UtubePossibility== .true. .and. Get_KellyConnection() /= KELLY_CONNECTION_STRING .and. WellHeadIsOpen) THEN !IF (UtubePossibility== .true. .and. Get_KellyConnection() /= KELLY_CONNECTION_STRING .and. WellHeadIsOpen) THEN


+ 1
- 1
Equipments/MudSystem/Pump_and_Trip_In.i90 View File

@@ -1,4 +1,4 @@
# 1 "/mnt/c/Projects/VSIM/SimulationCore2/Equipments/MudSystem/Pump_and_Trip_In.f90"
# 1 "/home/admin/SimulationCore2/Equipments/MudSystem/Pump_and_Trip_In.f90"
subroutine Pump_and_TripIn ! is called in subroutine CirculationCodeSelect subroutine Pump_and_TripIn ! is called in subroutine CirculationCodeSelect
Use GeoElements_FluidModule Use GeoElements_FluidModule


+ 1
- 1
Equipments/MudSystem/Trip_Out_andPump.i90 View File

@@ -1,4 +1,4 @@
# 1 "/mnt/c/Projects/VSIM/SimulationCore2/Equipments/MudSystem/Trip_Out_andPump.f90"
# 1 "/home/admin/SimulationCore2/Equipments/MudSystem/Trip_Out_andPump.f90"
subroutine TripOut_and_Pump ! is called in subroutine CirculationCodeSelect subroutine TripOut_and_Pump ! is called in subroutine CirculationCodeSelect
Use GeoElements_FluidModule Use GeoElements_FluidModule


+ 1
- 1
Equipments/Pumps/PumpsMain.i90 View File

@@ -1,4 +1,4 @@
# 1 "/mnt/c/Projects/VSIM/SimulationCore2/Equipments/Pumps/PumpsMain.f90"
# 1 "/home/admin/SimulationCore2/Equipments/Pumps/PumpsMain.f90"
module PumpsMain module PumpsMain
use SimulationVariables use SimulationVariables
implicit none implicit none


+ 1
- 1
Equipments/Pumps/Pumps_Inputs.i90 View File

@@ -1,4 +1,4 @@
# 1 "/mnt/c/Projects/VSIM/SimulationCore2/Equipments/Pumps/Pumps_Inputs.f90"
# 1 "/home/admin/SimulationCore2/Equipments/Pumps/Pumps_Inputs.f90"
subroutine Pumps_Inputs subroutine Pumps_Inputs
use CDrillingConsoleVariables use CDrillingConsoleVariables


+ 1
- 1
Equipments/Pumps/Pumps_Outputs.i90 View File

@@ -1,4 +1,4 @@
# 1 "/mnt/c/Projects/VSIM/SimulationCore2/Equipments/Pumps/Pumps_Outputs.f90"
# 1 "/home/admin/SimulationCore2/Equipments/Pumps/Pumps_Outputs.f90"
subroutine Pumps_Outputs subroutine Pumps_Outputs
use CDataDisplayConsole use CDataDisplayConsole


+ 1
- 1
Equipments/Pumps/Pumps_StartUp.i90 View File

@@ -1,4 +1,4 @@
# 1 "/mnt/c/Projects/VSIM/SimulationCore2/Equipments/Pumps/Pumps_StartUp.f90"
# 1 "/home/admin/SimulationCore2/Equipments/Pumps/Pumps_StartUp.f90"
subroutine Pumps_StartUp subroutine Pumps_StartUp
use CPumpsVariables use CPumpsVariables
use CPumps use CPumps


+ 1
- 1
Equipments/Pumps/Pumps_VARIABLES.i90 View File

@@ -1,4 +1,4 @@
# 1 "/mnt/c/Projects/VSIM/SimulationCore2/Equipments/Pumps/Pumps_VARIABLES.f90"
# 1 "/home/admin/SimulationCore2/Equipments/Pumps/Pumps_VARIABLES.f90"
MODULE Pumps_VARIABLES MODULE Pumps_VARIABLES
IMPLICIT NONE IMPLICIT NONE


+ 0
- 77
Equipments/RotaryTable/RTable_INPUTS.f90 View File

@@ -1,77 +0,0 @@
subroutine RTable_INPUTS
use CDrillingConsoleVariables
use SimulationVariables
! use CSimulationVariables
use UnitySignalsModule
! use CTdsElevatorModesEnumVariables
use CHoistingVariables
use TD_DrillStemComponents
use UnityModule
use CWarnings
use UnitySignalVariables
use UnitySignalsModule
IMPLICIT NONE
integer :: i
data%State%RTable%AssignmentSwitch = data%Equipments%DrillingConsole%AssignmentSwitch
data%State%RTable%Switch = data%Equipments%DrillingConsole%RTSwitch
!data%State%RTable%GearsAbuse = RotaryGearsAbuse
data%State%RTable%Throttle = data%Equipments%DrillingConsole%RTThrottle ![RPM]
data%State%RTable%String_Torque = data%State%TD_String%StringTorque*12.d0 ![lb.ft]*12 ---> [lb.in] ?????????
!data%State%RTable%RpmGaugeMalf !:dar module haye C meghdardehi mishe
data%State%RTable%N_new = data%State%RTable%Throttle
if ( data%State%RTable%MotorFaileMalf==1 ) then
data%State%RTable%N_new = 0.d0
end if
data%State%RTable%String_Torque = 0.112984d0*data%State%RTable%String_Torque ![N.m]
!===> String_JCoef Calculation
if ( data%Configuration%Hoisting%DriveType==0 ) then
if ( Get_TdsConnectionModes()==TDS_CONNECTION_NOTHING .and. Get_TdsElevatorModes()==TDS_ELEVATOR_CONNECTION_NOTHING ) then
data%State%RTable%RotaryMode = 1
data%State%RTable%String_JCoef = 0.d0
Do i = 1,data%State%TD_String%StringConfigurationCount
data%State%RTable%String_JCoef = data%State%RTable%String_JCoef+( (data%State%TD_DrillStem(i)%TotalWeight*((data%State%TD_DrillStem(i)%Id**2.d0)+(data%State%TD_DrillStem(i)%Od**2.d0)))/8.d0 ) ![lb.ft^2] , Jz=(1/2)*m*(r1^2+r2^2)
End Do
data%State%RTable%String_JCoef = data%State%RTable%String_JCoef*0.0421401d0 ![kg.m^2]
else if ( Get_Slips() /= SLIPS_SET_END ) then
data%State%RTable%RotaryMode = 2
data%State%RTable%String_JCoef = 0.d0
data%State%RTable%String_Torque = 0.d0
else
data%State%RTable%RotaryMode = 3
data%State%RTable%String_JCoef = 0.d0
data%State%RTable%String_Torque = 0.d0
end if
else if ( data%Configuration%Hoisting%DriveType==1 ) then
if ( Get_IsKellyBushingSetInTable() .or. Get_Slips() == SLIPS_SET_END ) then !if rotary connected to string
data%State%RTable%RotaryMode = 4
data%State%RTable%String_JCoef = 0.d0
Do i = 1,data%State%TD_String%StringConfigurationCount
data%State%RTable%String_JCoef = data%State%RTable%String_JCoef+( (data%State%TD_DrillStem(i)%TotalWeight*((data%State%TD_DrillStem(i)%Id**2.d0)+(data%State%TD_DrillStem(i)%Od**2.d0)))/8.d0 ) ![lb.ft^2] , Jz=(1/2)*m*(r1^2+r2^2)
End Do
data%State%RTable%String_JCoef = data%State%RTable%String_JCoef*0.0421401e0 ![kg.m^2]
else
data%State%RTable%RotaryMode = 5
data%State%RTable%String_JCoef = 0.d0
data%State%RTable%String_Torque = 0.d0
end if
end if
!===> Transmission Mode
data%State%RTable%Conv_Ratio = data%State%RTable%High_Conv_Ratio
end subroutine RTable_INPUTS

+ 1
- 1
Equipments/RotaryTable/RTable_Inputs.i90 View File

@@ -1,4 +1,4 @@
# 1 "/mnt/c/Projects/VSIM/SimulationCore2/Equipments/RotaryTable/RTable_Inputs.f90"
# 1 "/home/admin/SimulationCore2/Equipments/RotaryTable/RTable_Inputs.f90"
subroutine RTable_INPUTS subroutine RTable_INPUTS
use CDrillingConsoleVariables use CDrillingConsoleVariables


+ 1
- 1
Equipments/RotaryTable/RTable_Outputs.i90 View File

@@ -1,4 +1,4 @@
# 1 "/mnt/c/Projects/VSIM/SimulationCore2/Equipments/RotaryTable/RTable_Outputs.f90"
# 1 "/home/admin/SimulationCore2/Equipments/RotaryTable/RTable_Outputs.f90"
subroutine RTable_Outputs subroutine RTable_Outputs
use CDrillingConsoleVariables use CDrillingConsoleVariables


+ 0
- 67
Equipments/RotaryTable/Rtable_MainSolver.f90 View File

@@ -1,67 +0,0 @@
subroutine RTable_MainSolver
use SimulationVariables !@
IMPLICIT NONE
Call RTable_Inputs
if (data%State%RTable%Throttle<=0.d0) then
data%State%RTable%K_throttle = 1
end if
if ( (any(data%State%RTable%AssignmentSwitch==(/1,2,3,4,5,8,9,10,11/))) .and. (data%State%RTable%Switch==-1) ) then
data%State%RTable%SoundBlower = .true.
data%State%RTable%BLWR = 1
!======================= Rotary Table Rate_limit =======================
if (((data%State%RTable%N_new-data%State%RTable%N_old)/data%State%RTable%time_step)>data%State%RTable%RateChange) then
data%State%RTable%N_ref = (data%State%RTable%RateChange*data%State%RTable%time_step)+data%State%RTable%N_old
else if (((data%State%RTable%N_old-data%State%RTable%N_new)/data%State%RTable%time_step)>data%State%RTable%RateChange) then
data%State%RTable%N_ref = (-data%State%RTable%RateChange*data%State%RTable%time_step)+data%State%RTable%N_old
else
data%State%RTable%N_ref = data%State%RTable%N_new
end if
!=======================================================================
CALL RTable_OnModeSolver
else if ( (any(data%State%RTable%AssignmentSwitch==(/1,2,3,4,5,8,9,10,11/))) .and. (data%State%RTable%Switch==1) .and. (data%State%RTable%K_throttle==1) ) then
data%State%RTable%SoundBlower = .true.
data%State%RTable%BLWR = 1
!======================= Rotary Table Rate_limit =======================
if (((data%State%RTable%N_new-data%State%RTable%N_old)/data%State%RTable%time_step)>data%State%RTable%RateChange) then
data%State%RTable%N_ref = (data%State%RTable%RateChange*data%State%RTable%time_step)+data%State%RTable%N_old
else if (((data%State%RTable%N_old-data%State%RTable%N_new)/data%State%RTable%time_step)>data%State%RTable%RateChange) then
data%State%RTable%N_ref = (-data%State%RTable%RateChange*data%State%RTable%time_step)+data%State%RTable%N_old
else
data%State%RTable%N_ref = data%State%RTable%N_new
end if
!=======================================================================
CALL RTable_OnModeSolver
else
if((any(data%State%RTable%AssignmentSwitch==(/1,2,3,4,5,8,9,10,11/))) .and. (data%State%RTable%Switch/=0)) then
data%State%RTable%SoundBlower = .true.
data%State%RTable%BLWR = 1
else
data%State%RTable%SoundBlower = .false.
data%State%RTable%BLWR = 0
end if
Call RTable_OffMode
data%State%RTable%K_throttle = 0
end if
Call RTable_Outputs
data%State%RTable%N_old = data%State%RTable%N_ref
end subroutine RTable_MainSolver

+ 0
- 45
Equipments/TopDrive/TopDrive_INPUTS.f90 View File

@@ -1,45 +0,0 @@
subroutine TopDrive_Inputs
! Use CSimulationVariables
use CTopDrivePanelVariables
use SimulationVariables
use UnitySignalsModule
use SimulationVariables
Use TD_DrillStemComponents
IMPLICIT NONE
integer :: i
data%State%TDS%String_Torque = data%State%TD_String%StringTorque*12.d0 ![lb.ft]*12 ---> [lb.in] ?????????
!data%State%TDS%String_Torque = 20000.
data%State%TDS%String_Torque = 0.112984829d0*data%State%TDS%String_Torque ![N.m]
data%State%TDS%PowerState = data%Equipments%TopDrivePanel%TopDriveTdsPowerState
data%State%TDS%RpmKnob = data%Equipments%TopDrivePanel%RpmKnob
!data%State%TDS%MotorFaileMalf ! jayi meghdardehi nashode ??????????????????
data%State%TDS%RateChange = 193.d0 ![RPM/s] motaghayere voroudi ???
data%State%TDS%DrillTorqueState = data%Equipments%TopDrivePanel%TopDriveDrillTorqueState
data%State%TDS%TorqueLimitKnob = data%Equipments%TopDrivePanel%TopDriveTorqueLimitKnob ! bayad hazf shavad??????????????/
!===> data%State%TDS%String_JCoef Calculation
if ( (data%State%TDS%DrillTorqueState==-1) .and. ((Get_TdsConnectionModes()==TDS_CONNECTION_STRING).or.(Get_TdsConnectionModes()==TDS_CONNECTION_SPINE)) ) then !if TopDrive connected to string
data%State%TDS%String_JCoef = 0.d0
Do i = 1,data%State%TD_String%StringConfigurationCount
data%State%TDS%String_JCoef = data%State%TDS%String_JCoef+( (data%State%TD_DrillStem(i)%TotalWeight*((data%State%TD_DrillStem(i)%Id**2.d0)+(data%State%TD_DrillStem(i)%Od**2.d0)))/8.d0 ) ![lb.ft^2] , Jz=(1/2)*m*(r1^2+r2^2)
End Do
data%State%TDS%String_JCoef = data%State%TDS%String_JCoef*0.0421401d0 ![kg.m^2]
else
data%State%TDS%String_JCoef = 0.d0
data%State%TDS%String_Torque = 0.d0
end if
data%State%TDS%String_JCoef = data%State%TDS%String_JCoef/10.d0 !???????? /10: bi dalil, check it
end subroutine

+ 1
- 1
Equipments/TopDrive/TopDrive_Inputs.i90 View File

@@ -1,4 +1,4 @@
# 1 "/mnt/c/Projects/VSIM/SimulationCore2/Equipments/TopDrive/TopDrive_Inputs.f90"
# 1 "/home/admin/SimulationCore2/Equipments/TopDrive/TopDrive_Inputs.f90"
subroutine TopDrive_Inputs subroutine TopDrive_Inputs
! Use CSimulationVariables ! Use CSimulationVariables


+ 1
- 1
FluidFlow/Flow_Startup.i90 View File

@@ -1,4 +1,4 @@
# 1 "/mnt/c/Projects/VSIM/SimulationCore2/FluidFlow/Flow_Startup.f90"
# 1 "/home/admin/SimulationCore2/FluidFlow/Flow_Startup.f90"
SUBROUTINE FlowStartup SUBROUTINE FlowStartup
USE Fluid_Flow_Startup_Vars USE Fluid_Flow_Startup_Vars


+ 1
- 1
FluidFlow/FluidFlowMain.i90 View File

@@ -1,4 +1,4 @@
# 1 "/mnt/c/Projects/VSIM/SimulationCore2/FluidFlow/FluidFlowMain.f90"
# 1 "/home/admin/SimulationCore2/FluidFlow/FluidFlowMain.f90"
module FluidFlowMain module FluidFlowMain
implicit none implicit none
public public


+ 1
- 1
FluidFlow/Horizontal_and_String_Pressure_Distribution.i90 View File

@@ -1,4 +1,4 @@
# 1 "/mnt/c/Projects/VSIM/SimulationCore2/FluidFlow/Horizontal_and_String_Pressure_Distribution.f90"
# 1 "/home/admin/SimulationCore2/FluidFlow/Horizontal_and_String_Pressure_Distribution.f90"
SUBROUTINE PressureHorizAndStringDistribution SUBROUTINE PressureHorizAndStringDistribution


+ 2
- 1
Makefile View File

@@ -66,11 +66,12 @@ OBJ_DIR = $(TOP_DIR)/obj
# FCFLAGS = -g -J$(MOD_DIR) -fimplicit-none -Wall -cpp -ffree-line-length-256 # FCFLAGS = -g -J$(MOD_DIR) -fimplicit-none -Wall -cpp -ffree-line-length-256
# FCFLAGS = /module:$(MOD_DIR) /fpp # FCFLAGS = /module:$(MOD_DIR) /fpp
FCFLAGS = -module $(MOD_DIR) -fpp -debug all -g -traceback -D IFORT
FCFLAGS = -module $(MOD_DIR) -Ilib -fpp -debug all -g -traceback -D IFORT
TARGET = SimulationCore2 TARGET = SimulationCore2
SRCS_F =\ SRCS_F =\
Simulation/logging.f90 \
CSharp/OperationScenarios/Common/COperationScenariosVariables.f90 \ CSharp/OperationScenarios/Common/COperationScenariosVariables.f90 \
TorqueDrag/TD_Modules/TD_WellGeometry.f90 \ TorqueDrag/TD_Modules/TD_WellGeometry.f90 \
TorqueDrag/TD_Modules/TD_WellElements.f90 \ TorqueDrag/TD_Modules/TD_WellElements.f90 \


+ 2
- 2
Redis/Redis_Interface.f90 View File

@@ -73,7 +73,7 @@ Module RedisInterface
character(len=4)::part character(len=4)::part
part = "out"//c_null_char part = "out"//c_null_char
c_str = str//c_null_char c_str = str//c_null_char
if(logging>4) print *,"setting Data: ",len_trim(str)
if(log_level>4) print *,"setting Data: ",len_trim(str)
call setData_C(part,c_str) call setData_C(part,c_str)
END SUBROUTINE setData END SUBROUTINE setData
@@ -85,7 +85,7 @@ Module RedisInterface
character(len=4)::part character(len=4)::part
part = "in"//c_null_char part = "in"//c_null_char
c_str = str//c_null_char c_str = str//c_null_char
if(logging>4) print *,"setting Data: ",len_trim(str)
if(log_level>4) print *,"setting Data: ",len_trim(str)
call setData_C(part,c_str) call setData_C(part,c_str)
END SUBROUTINE setInput END SUBROUTINE setInput


+ 3
- 3
Redis/Redis_Interface.i90 View File

@@ -1,4 +1,4 @@
# 1 "/mnt/c/Projects/VSIM/SimulationCore2/Redis/Redis_Interface.f90"
# 1 "/home/admin/SimulationCore2/Redis/Redis_Interface.f90"
Module RedisInterface Module RedisInterface
! use iso_c_binding, only: c_char ! use iso_c_binding, only: c_char
Interface Interface
@@ -74,7 +74,7 @@ Module RedisInterface
character(len=4)::part character(len=4)::part
part = "out"//c_null_char part = "out"//c_null_char
c_str = str//c_null_char c_str = str//c_null_char
if(logging>4) print *,"setting Data: ",len_trim(str)
if(log_level>4) print *,"setting Data: ",len_trim(str)
call setData_C(part,c_str) call setData_C(part,c_str)
END SUBROUTINE setData END SUBROUTINE setData


@@ -86,7 +86,7 @@ Module RedisInterface
character(len=4)::part character(len=4)::part
part = "in"//c_null_char part = "in"//c_null_char
c_str = str//c_null_char c_str = str//c_null_char
if(logging>4) print *,"setting Data: ",len_trim(str)
if(log_level>4) print *,"setting Data: ",len_trim(str)
call setData_C(part,c_str) call setData_C(part,c_str)
END SUBROUTINE setInput END SUBROUTINE setInput




+ 1
- 0
Redis/redis_io.c View File

@@ -28,6 +28,7 @@ void initConnection(char *address, int *port,char * password,char *datakey,int *
printf("Connection Stablished to %s\n",address); printf("Connection Stablished to %s\n",address);
if(strlen(password)>0) if(strlen(password)>0)
{ {
// printf("Authenticating with password %s (len={%zu})",password,strlen(password));
redisReply *reply= redisCommand(context, "AUTH %s", password); redisReply *reply= redisCommand(context, "AUTH %s", password);
if (reply->type == REDIS_REPLY_ERROR) { if (reply->type == REDIS_REPLY_ERROR) {
printf("Authentication failed.\n"); printf("Authentication failed.\n");


+ 0
- 15
Rop/Bit_Database.txt View File

@@ -1,15 +0,0 @@
Bit Class H1 H2 H3 (w/d)max
11 , 1.9 , 7. , 1. , 7.
12 , 1.9 , 7. , 1. , 7.
13 , 1.84 , 6. , 0.8 , 8.
14 , 1.84 , 6. , 0.8 , 8.
21 , 1.8 , 5. , 0.6 , 8.5
22 , 1.8 , 5. , 0.6 , 8.5
23 , 1.76 , 4. , 0.48 , 9.
24 , 1.76 , 4. , 0.48 , 9.
31 , 1.7 , 3. , 0.36 , 10.
32 , 1.65 , 2. , 0.26 , 10.
33 , 1.6 , 2. , 0.2 , 10.
34 , 1.6 , 2. , 0.2 , 10.
41 , 1.5 , 2. , 0.18 , 10.
10 , 1.5 , 1. , 0.02 , 10.

+ 1
- 1
Rop/ROP_MainCalculation.i90 View File

@@ -1,4 +1,4 @@
# 1 "/mnt/c/Projects/VSIM/SimulationCore2/Rop/ROP_MainCalculation.f90"
# 1 "/home/admin/SimulationCore2/Rop/ROP_MainCalculation.f90"
subroutine ROP_MainCalculation subroutine ROP_MainCalculation
use SimulationVariables use SimulationVariables
use sROP_Other_Variables use sROP_Other_Variables


+ 1
- 1
Simulation/SimulationVariables.f90 View File

@@ -1,5 +1,6 @@
module SimulationVariables module SimulationVariables
use Constants use Constants
use logging
use json_module use json_module
use CUnityInputs use CUnityInputs
@@ -214,7 +215,6 @@ module SimulationVariables
end type SimulationDataType end type SimulationDataType
type(SimulationDataType)::data type(SimulationDataType)::data
integer::logging=0
contains contains
end module SimulationVariables end module SimulationVariables

+ 2
- 2
Simulation/SimulationVariables.i90 View File

@@ -1,6 +1,7 @@
# 1 "/mnt/c/Projects/VSIM/SimulationCore2/Simulation/SimulationVariables.f90"
# 1 "/home/admin/SimulationCore2/Simulation/SimulationVariables.f90"
module SimulationVariables module SimulationVariables
use Constants use Constants
use logging
use json_module use json_module
use CUnityInputs use CUnityInputs
@@ -215,7 +216,6 @@ module SimulationVariables
end type SimulationDataType end type SimulationDataType


type(SimulationDataType)::data type(SimulationDataType)::data
integer::logging=0
contains contains
end module SimulationVariables end module SimulationVariables

BIN
View File


BIN
View File


+ 3
- 2
SimulationCore2.f90 View File

@@ -15,10 +15,11 @@ program SimulationCore2
use Simulator use Simulator
use RedisInterface use RedisInterface
use logging
!use testRedisModule !use testRedisModule
implicit none implicit none
character(len=100) :: redis_host,redis_password, sim_id, temp character(len=100) :: redis_host,redis_password, sim_id, temp
integer :: redis_port, log_level, status,stepTime
integer :: redis_port, status,stepTime
! Variables ! Variables


! Body of SimulationCore2 ! Body of SimulationCore2
@@ -38,6 +39,6 @@ program SimulationCore2
call get_command_argument(6, temp) call get_command_argument(6, temp)
read(temp,*,iostat=status) stepTime read(temp,*,iostat=status) stepTime


call simulate(trim(redis_host),redis_port,trim(redis_password), trim(sim_id),log_level,stepTime)
call simulate(trim(redis_host),redis_port,trim(redis_password), trim(sim_id),stepTime)
end program SimulationCore2 end program SimulationCore2



+ 4
- 3
SimulationCore2.i90 View File

@@ -1,4 +1,4 @@
# 1 "/mnt/c/Projects/VSIM/SimulationCore2/SimulationCore2.f90"
# 1 "/home/admin/SimulationCore2/SimulationCore2.f90"
! SimulationCore2.f90 ! SimulationCore2.f90
! !
! FUNCTIONS: ! FUNCTIONS:
@@ -16,10 +16,11 @@ program SimulationCore2
use Simulator use Simulator
use RedisInterface use RedisInterface
use logging
!use testRedisModule !use testRedisModule
implicit none implicit none
character(len=100) :: redis_host,redis_password, sim_id, temp character(len=100) :: redis_host,redis_password, sim_id, temp
integer :: redis_port, log_level, status,stepTime
integer :: redis_port, status,stepTime
! Variables ! Variables


! Body of SimulationCore2 ! Body of SimulationCore2
@@ -39,6 +40,6 @@ program SimulationCore2
call get_command_argument(6, temp) call get_command_argument(6, temp)
read(temp,*,iostat=status) stepTime read(temp,*,iostat=status) stepTime


call simulate(trim(redis_host),redis_port,trim(redis_password), trim(sim_id),log_level,stepTime)
call simulate(trim(redis_host),redis_port,trim(redis_password), trim(sim_id),stepTime)
end program SimulationCore2 end program SimulationCore2



BIN
View File


+ 70
- 81
Simulator.f90 View File

@@ -85,16 +85,15 @@ module Simulator
RETURN RETURN
END FUNCTION END FUNCTION
subroutine Simulate(redis_host,redis_port,redis_password, sim_id,log_level,stepTime)
subroutine Simulate(redis_host,redis_port,redis_password, sim_id,stepTime)
character(len=*) :: redis_host,redis_password, sim_id character(len=*) :: redis_host,redis_password, sim_id
integer::t0,t1,t2,t3,t_read=0,t_write=0,t_exec=0,i,status,redis_port,log_level,stepTime
integer::t0,t1,t2,t3,t_read=0,t_write=0,t_exec=0,i,status,redis_port,stepTime
integer(8),dimension(12)::t,t_modules integer(8),dimension(12)::t,t_modules
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
do i=1,size(t_modules) do i=1,size(t_modules)
t_modules(i)=0 t_modules(i)=0
end do end do
logging = log_level
! call initSimulation(configFilename) ! call initSimulation(configFilename)
call initConnection(redis_host,redis_port,redis_password, sim_id,status) call initConnection(redis_host,redis_port,redis_password, sim_id,status)
if (status<0) then if (status<0) then
@@ -116,19 +115,21 @@ module Simulator
if(simulationStatus==PLAY_TO_DETERMINED_TIME .and. simulationStep>simulationEnd) exit if(simulationStatus==PLAY_TO_DETERMINED_TIME .and. simulationStep>simulationEnd) exit
if(simulationStatus==STOP) exit if(simulationStatus==STOP) exit
if(simulationStatus==PAUSE) then if(simulationStatus==PAUSE) then
print *, "paused"
print *, "paused"
call sleepqq(stepTime)
go to 211 go to 211
endif endif
if(logging>4) print *,"end reading"
call logg(4,"end reading")
t1 = time_ms() t1 = time_ms()
t_read = t_read+t1-t0 t_read = t_read+t1-t0
if(logging>4) print *,"read completed"
call logg(4,"read completed")
!! Rafiee, nothing changed !! Rafiee, nothing changed
call BopStack_Step() call BopStack_Step()
t(1) = time_ms() t(1) = time_ms()
t_modules(1) = t_modules(1)+t(1)-t1 t_modules(1) = t_modules(1)+t(1)-t1
!! Tarmigh, now is rewritten !! Tarmigh, now is rewritten
call Pump1_Step()
call Pumps_MainSolver()
t(2) = time_ms() t(2) = time_ms()
t_modules(2) = t_modules(2)+t(2)-t(1) t_modules(2) = t_modules(2)+t(2)-t(1)
!call Pump2_Step() !call Pump2_Step()
@@ -183,10 +184,10 @@ module Simulator
t(11) = time_ms() t(11) = time_ms()
t_modules(11) = t_modules(11)+t(11)-t(10) t_modules(11) = t_modules(11)+t(11)-t(10)
!! Sheikh
call FluidFlow_Step()
!! Ahmadi !! Ahmadi
call OperationScenarios_Step() call OperationScenarios_Step()
!! Sheikh
call FluidFlow_Step()
!! Write variables to shared files !! Write variables to shared files
t2 = time_ms() t2 = time_ms()
! stepTime = t2-t1 ! stepTime = t2-t1
@@ -194,7 +195,7 @@ module Simulator
t_exec = t_exec+t2-t1 t_exec = t_exec+t2-t1
! call date_and_time(values=timearray) ! call date_and_time(values=timearray)
! t0 = time_ms()
! t0 = time_ms()
call write_variables() call write_variables()
t3 = time_ms() t3 = time_ms()
if(t3-t0 < stepTime) then if(t3-t0 < stepTime) then
@@ -240,8 +241,8 @@ module Simulator
! endif ! endif
! ! print *,"file read" ! ! print *,"file read"
! call jsonfile%json_file_get_root(jsonvalue) ! call jsonfile%json_file_get_root(jsonvalue)
! call jsoncore%get(jsonvalue,'logging',logging)
! print *,"logging=",logging
! call jsoncore%get(jsonvalue,'log_level',log_level)
! print *,"log_level=",log_level
! end subroutine ! end subroutine
subroutine write_variables() subroutine write_variables()
@@ -249,6 +250,8 @@ module Simulator
use json_module use json_module
implicit none implicit none
type(json_value),pointer :: jsonroot type(json_value),pointer :: jsonroot
character(len=10)::str
call jsoncore%initialize() call jsoncore%initialize()
call jsoncore%create_object(jsonroot,'') call jsoncore%create_object(jsonroot,'')
! print *,"status=",simulationStatus ! print *,"status=",simulationStatus
@@ -263,10 +266,11 @@ module Simulator
call EquipmentsToJson(jsonroot) call EquipmentsToJson(jsonroot)
call jsoncore%print_to_string(jsonroot,redisInput) call jsoncore%print_to_string(jsonroot,redisInput)
if(logging>4) then
print *,"Writing to redis:",len(redisInput)
call jsoncore%print(jsonroot,'data_out.json')
if(log_level>4) then
write(str, '(I0)') len(redisInput)
print *,"Writing to redis:"//trim(str)
endif endif
call setData(redisInput) call setData(redisInput)
! nullify(redisContent) ! nullify(redisContent)
! deallocate(redisContent) ! deallocate(redisContent)
@@ -287,7 +291,6 @@ module Simulator
call jsonfile%initialize() call jsonfile%initialize()
call jsonfile%get_core(json) call jsonfile%get_core(json)
! call jsonfile%load_file('redisContent.json'); if (jsonfile%failed()) stop
call jsonfile%deserialize(redisOutput) call jsonfile%deserialize(redisOutput)
call jsonfile%json_file_get_root(jsonroot) call jsonfile%json_file_get_root(jsonroot)
! call json%info(jsonvalue, n_children=n_children) ! call json%info(jsonvalue, n_children=n_children)
@@ -301,67 +304,48 @@ module Simulator
call json%get(jsonroot,'endstep',pval) call json%get(jsonroot,'endstep',pval)
call json%get(pval,simulationEnd) call json%get(pval,simulationEnd)
call ConfigurationFromJson(jsonfile) call ConfigurationFromJson(jsonfile)
! nullify(jsonroot)
! print *,"jsonroot freed"
! nullify(pval)
! print *,"pval freed"
! call WarningsFromJson(jsonroot)
! call ProblemsFromJson(jsonvalue)
! call EquipmentsFromJson(jsonroot)
! deallocate(redisContent)
! call json%destroy(pval)
call jsonfile%destroy() call jsonfile%destroy()
print *,"jsonfile destroyed"
! call json%destroy(pval)
! call json%destroy(jsonroot)
! nullify(jsonroot)
end subroutine end subroutine
subroutine read_variables() subroutine read_variables()
type(json_value),pointer :: jsonroot,pval type(json_value),pointer :: jsonroot,pval
type(json_file) :: jsonfile type(json_file) :: jsonfile
type(json_core)::json
integer::stat integer::stat
call getData(redisOutput) call getData(redisOutput)
! print *,len(redisOutput)," bytes read from redis"
! open(1,file="redisContent.json",status="REPLACE")
! write(1,"(A)") redisContent
! close(1)
call jsoncore%initialize()
call jsonfile%initialize(jsoncore)
print *,len(redisOutput)," bytes read from redis"
open(1,file="redisContent.json",status="REPLACE")
write(1,"(A)") redisOutput
close(1)
call jsonfile%initialize()
call jsonfile%get_core(json)
call jsonfile%deserialize(redisOutput) call jsonfile%deserialize(redisOutput)
call jsonfile%json_file_get_root(jsonroot) call jsonfile%json_file_get_root(jsonroot)
! call json%info(jsonvalue, n_children=n_children) ! call json%info(jsonvalue, n_children=n_children)
! print *,"n_children =",n_children ! print *,"n_children =",n_children
call jsoncore%get(jsonroot,'status',pval)
call jsoncore%get(pval,stat)
call json%get(jsonroot,'status',pval)
call json%get(pval,stat)
if (stat==0) then if (stat==0) then
return return
endif endif
simulationStatus = stat simulationStatus = stat
call jsoncore%get(jsonroot,'speed',pval)
call jsoncore%get(pval,simulationSpeed)
call json%get(jsonroot,'speed',pval)
call json%get(pval,simulationSpeed)
if(simulationSpeed==0) simulationSpeed = 1 if(simulationSpeed==0) simulationSpeed = 1
msPerStep = 100/simulationSpeed msPerStep = 100/simulationSpeed
call jsoncore%get(jsonroot,'endstep',pval)
call jsoncore%get(pval,simulationEnd)
call json%get(jsonroot,'endstep',pval)
call json%get(pval,simulationEnd)
print *,simulationStep,"/",simulationEnd print *,simulationStep,"/",simulationEnd
! call ConfigurationFromJson(jsonroot)
! call WarningsFromJson(jsonroot)
call ProblemsFromJson(jsonfile)
! call ProblemsFromJson(jsonfile)
call EquipmentsFromJson(jsonfile) call EquipmentsFromJson(jsonfile)
! deallocate(redisContent)
! call json%destroy(pval)
! call jsoncore%destroy(pval)
! call jsoncore%destroy(jsonroot)
! call jsonfile%destroy()
! nullify(jsonroot)
call jsonfile%destroy()
end subroutine end subroutine
subroutine init_modules subroutine init_modules
print *,"initializing modules" print *,"initializing modules"
!Tarmigh !Tarmigh
call Pump1_Init()
call Pumps_StartUp()
print *,"pump1 initialized" print *,"pump1 initialized"
!call Pump2_Init() !call Pump2_Init()
call RotaryTable_Init() call RotaryTable_Init()
@@ -402,18 +386,23 @@ module Simulator
type(json_value),pointer :: parent type(json_value),pointer :: parent
type(json_value),pointer :: p type(json_value),pointer :: p
type(json_file)::jsonfile type(json_file)::jsonfile
integer::n_children
logical::is_found
! 1. get related root ! 1. get related root
call jsonfile%json_file_get_root(parent)
call jsoncore%get(parent,"Equipments",p)
! call jsonfile%json_file_get_root(parent)
! call jsoncore%get(parent,"Equipments",p)
call jsonfile%get("Equipments",p,is_found)
! call jsoncore%info(p, n_children=n_children)
! print *,"number of Equipments =",n_children
! 2. add member of data type to new node ! 2. add member of data type to new node
call BopControlPanelFromJson(p) call BopControlPanelFromJson(p)
call ChokeControlPanelFromJson(p) call ChokeControlPanelFromJson(p)
call ChokeManifoldFromJson(p) call ChokeManifoldFromJson(p)
call DataDisplayConsoleFromJson(p) call DataDisplayConsoleFromJson(p)
call DrillingConsoleFromJson(p)
call DrillingConsoleFromJson(jsonfile)
! call HookFromJson(p) ! call HookFromJson(p)
call StandPipeManifoldFromJson(p) call StandPipeManifoldFromJson(p)
call TopDrivePanelFromJson(p) call TopDrivePanelFromJson(p)
@@ -446,37 +435,37 @@ module Simulator
call jsoncore%add(parent,p) call jsoncore%add(parent,p)
end subroutine end subroutine
subroutine ConfigurationToJson(parent)
type(json_value),pointer :: parent
type(json_value),pointer :: p
! subroutine ConfigurationToJson(parent)
! type(json_value),pointer :: parent
! type(json_value),pointer :: p
! 1. create new node
call jsoncore%create_object(p,'Configuration')
! ! 1. create new node
! call jsoncore%create_object(p,'Configuration')
! 2. add member of data type to new node
call StringConfigurationToJson(p)
call FormationToJson(p)
call ReservoirToJson(p)
call ShoeToJson(p)
call AccumulatorToJson(p)
call BopStackToJson(p)
call HoistingToJson(p)
call PowerToJson(p)
call PumpsToJson(p)
call RigSizeToJson(p)
call CasingLinerChokeToJson(p)
call PathGenerationToJson(p)
! call WellSurveyDataToJson(p)
call MudPropertiesToJson(p)
call UnityOutputsToJson(p)
! 3. add new node to parent
call jsoncore%add(parent,p)
end subroutine
! ! 2. add member of data type to new node
! call StringConfigurationToJson(p)
! call FormationToJson(p)
! call ReservoirToJson(p)
! call ShoeToJson(p)
! call AccumulatorToJson(p)
! call BopStackToJson(p)
! call HoistingToJson(p)
! call PowerToJson(p)
! call PumpsToJson(p)
! call RigSizeToJson(p)
! call CasingLinerChokeToJson(p)
! call PathGenerationToJson(p)
! ! call WellSurveyDataToJson(p)
! call MudPropertiesToJson(p)
! call UnityOutputsToJson(p)
! ! 3. add new node to parent
! call jsoncore%add(parent,p)
! end subroutine
subroutine WarningsToJson(parent) subroutine WarningsToJson(parent)
type(json_value),pointer :: parent
type(json_value),pointer :: parent
type(json_value),pointer :: p type(json_value),pointer :: p
! 1. create new node ! 1. create new node


+ 70
- 81
Simulator.i90 View File

@@ -1,4 +1,4 @@
# 1 "/mnt/c/Projects/VSIM/SimulationCore2/Simulator.f90"
# 1 "/home/admin/SimulationCore2/Simulator.f90"
module Simulator module Simulator
use IFPORT use IFPORT
use RedisInterface use RedisInterface
@@ -86,16 +86,15 @@ module Simulator
RETURN RETURN
END FUNCTION END FUNCTION


subroutine Simulate(redis_host,redis_port,redis_password, sim_id,log_level,stepTime)
subroutine Simulate(redis_host,redis_port,redis_password, sim_id,stepTime)
character(len=*) :: redis_host,redis_password, sim_id character(len=*) :: redis_host,redis_password, sim_id
integer::t0,t1,t2,t3,t_read=0,t_write=0,t_exec=0,i,status,redis_port,log_level,stepTime
integer::t0,t1,t2,t3,t_read=0,t_write=0,t_exec=0,i,status,redis_port,stepTime
integer(8),dimension(12)::t,t_modules integer(8),dimension(12)::t,t_modules
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!


do i=1,size(t_modules) do i=1,size(t_modules)
t_modules(i)=0 t_modules(i)=0
end do end do
logging = log_level
! call initSimulation(configFilename) ! call initSimulation(configFilename)
call initConnection(redis_host,redis_port,redis_password, sim_id,status) call initConnection(redis_host,redis_port,redis_password, sim_id,status)
if (status<0) then if (status<0) then
@@ -117,19 +116,21 @@ module Simulator
if(simulationStatus==PLAY_TO_DETERMINED_TIME .and. simulationStep>simulationEnd) exit if(simulationStatus==PLAY_TO_DETERMINED_TIME .and. simulationStep>simulationEnd) exit
if(simulationStatus==STOP) exit if(simulationStatus==STOP) exit
if(simulationStatus==PAUSE) then if(simulationStatus==PAUSE) then
print *, "paused"
print *, "paused"
call sleepqq(stepTime)
go to 211 go to 211
endif endif
if(logging>4) print *,"end reading"
call logg(4,"end reading")
t1 = time_ms() t1 = time_ms()
t_read = t_read+t1-t0 t_read = t_read+t1-t0
if(logging>4) print *,"read completed"
call logg(4,"read completed")
!! Rafiee, nothing changed !! Rafiee, nothing changed
call BopStack_Step() call BopStack_Step()
t(1) = time_ms() t(1) = time_ms()
t_modules(1) = t_modules(1)+t(1)-t1 t_modules(1) = t_modules(1)+t(1)-t1
!! Tarmigh, now is rewritten !! Tarmigh, now is rewritten
call Pump1_Step()
call Pumps_MainSolver()
t(2) = time_ms() t(2) = time_ms()
t_modules(2) = t_modules(2)+t(2)-t(1) t_modules(2) = t_modules(2)+t(2)-t(1)
!call Pump2_Step() !call Pump2_Step()
@@ -184,10 +185,10 @@ module Simulator
t(11) = time_ms() t(11) = time_ms()
t_modules(11) = t_modules(11)+t(11)-t(10) t_modules(11) = t_modules(11)+t(11)-t(10)


!! Sheikh
call FluidFlow_Step()
!! Ahmadi !! Ahmadi
call OperationScenarios_Step() call OperationScenarios_Step()
!! Sheikh
call FluidFlow_Step()
!! Write variables to shared files !! Write variables to shared files
t2 = time_ms() t2 = time_ms()
! stepTime = t2-t1 ! stepTime = t2-t1
@@ -241,8 +242,8 @@ module Simulator
! endif ! endif
! ! print *,"file read" ! ! print *,"file read"
! call jsonfile%json_file_get_root(jsonvalue) ! call jsonfile%json_file_get_root(jsonvalue)
! call jsoncore%get(jsonvalue,'logging',logging)
! print *,"logging=",logging
! call jsoncore%get(jsonvalue,'log_level',log_level)
! print *,"log_level=",log_level
! end subroutine ! end subroutine


subroutine write_variables() subroutine write_variables()
@@ -250,6 +251,8 @@ module Simulator
use json_module use json_module
implicit none implicit none
type(json_value),pointer :: jsonroot type(json_value),pointer :: jsonroot
character(len=10)::str

call jsoncore%initialize() call jsoncore%initialize()
call jsoncore%create_object(jsonroot,'') call jsoncore%create_object(jsonroot,'')
! print *,"status=",simulationStatus ! print *,"status=",simulationStatus
@@ -264,10 +267,11 @@ module Simulator
call EquipmentsToJson(jsonroot) call EquipmentsToJson(jsonroot)


call jsoncore%print_to_string(jsonroot,redisInput) call jsoncore%print_to_string(jsonroot,redisInput)
if(logging>4) then
print *,"Writing to redis:",len(redisInput)
call jsoncore%print(jsonroot,'data_out.json')
if(log_level>4) then
write(str, '(I0)') len(redisInput)
print *,"Writing to redis:"//trim(str)
endif endif

call setData(redisInput) call setData(redisInput)
! nullify(redisContent) ! nullify(redisContent)
! deallocate(redisContent) ! deallocate(redisContent)
@@ -288,7 +292,6 @@ module Simulator


call jsonfile%initialize() call jsonfile%initialize()
call jsonfile%get_core(json) call jsonfile%get_core(json)
! call jsonfile%load_file('redisContent.json'); if (jsonfile%failed()) stop
call jsonfile%deserialize(redisOutput) call jsonfile%deserialize(redisOutput)
call jsonfile%json_file_get_root(jsonroot) call jsonfile%json_file_get_root(jsonroot)
! call json%info(jsonvalue, n_children=n_children) ! call json%info(jsonvalue, n_children=n_children)
@@ -302,67 +305,48 @@ module Simulator
call json%get(jsonroot,'endstep',pval) call json%get(jsonroot,'endstep',pval)
call json%get(pval,simulationEnd) call json%get(pval,simulationEnd)
call ConfigurationFromJson(jsonfile) call ConfigurationFromJson(jsonfile)
! nullify(jsonroot)
! print *,"jsonroot freed"
! nullify(pval)
! print *,"pval freed"
! call WarningsFromJson(jsonroot)
! call ProblemsFromJson(jsonvalue)
! call EquipmentsFromJson(jsonroot)
! deallocate(redisContent)
! call json%destroy(pval)
call jsonfile%destroy() call jsonfile%destroy()
print *,"jsonfile destroyed"
! call json%destroy(pval)
! call json%destroy(jsonroot)
! nullify(jsonroot)
end subroutine end subroutine


subroutine read_variables() subroutine read_variables()
type(json_value),pointer :: jsonroot,pval type(json_value),pointer :: jsonroot,pval
type(json_file) :: jsonfile type(json_file) :: jsonfile
type(json_core)::json
integer::stat integer::stat
call getData(redisOutput) call getData(redisOutput)


! print *,len(redisOutput)," bytes read from redis"
! open(1,file="redisContent.json",status="REPLACE")
! write(1,"(A)") redisContent
! close(1)
call jsoncore%initialize()
call jsonfile%initialize(jsoncore)
print *,len(redisOutput)," bytes read from redis"
open(1,file="redisContent.json",status="REPLACE")
write(1,"(A)") redisOutput
close(1)
call jsonfile%initialize()
call jsonfile%get_core(json)
call jsonfile%deserialize(redisOutput) call jsonfile%deserialize(redisOutput)
call jsonfile%json_file_get_root(jsonroot) call jsonfile%json_file_get_root(jsonroot)
! call json%info(jsonvalue, n_children=n_children) ! call json%info(jsonvalue, n_children=n_children)
! print *,"n_children =",n_children ! print *,"n_children =",n_children
call jsoncore%get(jsonroot,'status',pval)
call jsoncore%get(pval,stat)
call json%get(jsonroot,'status',pval)
call json%get(pval,stat)
if (stat==0) then if (stat==0) then
return return
endif endif
simulationStatus = stat simulationStatus = stat
call jsoncore%get(jsonroot,'speed',pval)
call jsoncore%get(pval,simulationSpeed)
call json%get(jsonroot,'speed',pval)
call json%get(pval,simulationSpeed)
if(simulationSpeed==0) simulationSpeed = 1 if(simulationSpeed==0) simulationSpeed = 1
msPerStep = 100/simulationSpeed msPerStep = 100/simulationSpeed
call jsoncore%get(jsonroot,'endstep',pval)
call jsoncore%get(pval,simulationEnd)
call json%get(jsonroot,'endstep',pval)
call json%get(pval,simulationEnd)
print *,simulationStep,"/",simulationEnd print *,simulationStep,"/",simulationEnd
! call ConfigurationFromJson(jsonroot)
! call WarningsFromJson(jsonroot)
call ProblemsFromJson(jsonfile)
! call ProblemsFromJson(jsonfile)
call EquipmentsFromJson(jsonfile) call EquipmentsFromJson(jsonfile)
! deallocate(redisContent)
! call json%destroy(pval)
! call jsoncore%destroy(pval)
! call jsoncore%destroy(jsonroot)
! call jsonfile%destroy()
! nullify(jsonroot)
call jsonfile%destroy()
end subroutine end subroutine


subroutine init_modules subroutine init_modules
print *,"initializing modules" print *,"initializing modules"
!Tarmigh !Tarmigh
call Pump1_Init()
call Pumps_StartUp()
print *,"pump1 initialized" print *,"pump1 initialized"
!call Pump2_Init() !call Pump2_Init()
call RotaryTable_Init() call RotaryTable_Init()
@@ -403,18 +387,23 @@ module Simulator
type(json_value),pointer :: parent type(json_value),pointer :: parent
type(json_value),pointer :: p type(json_value),pointer :: p
type(json_file)::jsonfile type(json_file)::jsonfile

integer::n_children
logical::is_found


! 1. get related root ! 1. get related root
call jsonfile%json_file_get_root(parent)
call jsoncore%get(parent,"Equipments",p)
! call jsonfile%json_file_get_root(parent)
! call jsoncore%get(parent,"Equipments",p)
call jsonfile%get("Equipments",p,is_found)
! call jsoncore%info(p, n_children=n_children)
! print *,"number of Equipments =",n_children


! 2. add member of data type to new node ! 2. add member of data type to new node
call BopControlPanelFromJson(p) call BopControlPanelFromJson(p)
call ChokeControlPanelFromJson(p) call ChokeControlPanelFromJson(p)
call ChokeManifoldFromJson(p) call ChokeManifoldFromJson(p)
call DataDisplayConsoleFromJson(p) call DataDisplayConsoleFromJson(p)
call DrillingConsoleFromJson(p)
call DrillingConsoleFromJson(jsonfile)
! call HookFromJson(p) ! call HookFromJson(p)
call StandPipeManifoldFromJson(p) call StandPipeManifoldFromJson(p)
call TopDrivePanelFromJson(p) call TopDrivePanelFromJson(p)
@@ -447,37 +436,37 @@ module Simulator
call jsoncore%add(parent,p) call jsoncore%add(parent,p)
end subroutine end subroutine


subroutine ConfigurationToJson(parent)
type(json_value),pointer :: parent
type(json_value),pointer :: p
! subroutine ConfigurationToJson(parent)
! type(json_value),pointer :: parent
! type(json_value),pointer :: p


! 1. create new node
call jsoncore%create_object(p,'Configuration')
! ! 1. create new node
! call jsoncore%create_object(p,'Configuration')
! 2. add member of data type to new node
call StringConfigurationToJson(p)
call FormationToJson(p)
call ReservoirToJson(p)
call ShoeToJson(p)
call AccumulatorToJson(p)
call BopStackToJson(p)
call HoistingToJson(p)
call PowerToJson(p)
call PumpsToJson(p)
call RigSizeToJson(p)
call CasingLinerChokeToJson(p)
call PathGenerationToJson(p)
! call WellSurveyDataToJson(p)
call MudPropertiesToJson(p)
call UnityOutputsToJson(p)


! 3. add new node to parent
call jsoncore%add(parent,p)
end subroutine
! ! 2. add member of data type to new node
! call StringConfigurationToJson(p)
! call FormationToJson(p)
! call ReservoirToJson(p)
! call ShoeToJson(p)
! call AccumulatorToJson(p)
! call BopStackToJson(p)
! call HoistingToJson(p)
! call PowerToJson(p)
! call PumpsToJson(p)
! call RigSizeToJson(p)
! call CasingLinerChokeToJson(p)
! call PathGenerationToJson(p)
! ! call WellSurveyDataToJson(p)
! call MudPropertiesToJson(p)
! call UnityOutputsToJson(p)

! ! 3. add new node to parent
! call jsoncore%add(parent,p)
! end subroutine


subroutine WarningsToJson(parent) subroutine WarningsToJson(parent)
type(json_value),pointer :: parent
type(json_value),pointer :: parent
type(json_value),pointer :: p type(json_value),pointer :: p


! 1. create new node ! 1. create new node


+ 1
- 1
Test/write_vars.i90 View File

@@ -1,4 +1,4 @@
# 1 "/mnt/c/Projects/VSIM/SimulationCore2/Test/write_vars.f90"
# 1 "/home/admin/SimulationCore2/Test/write_vars.f90"
module writevarsmodule module writevarsmodule
use Simulator use Simulator
use RedisInterface use RedisInterface


BIN
View File


+ 1
- 1
TorqueDrag/TD_DrillingSubs/MeshGeneration_FluidModule.i90 View File

@@ -1,4 +1,4 @@
# 1 "/mnt/c/Projects/VSIM/SimulationCore2/TorqueDrag/TD_DrillingSubs/MeshGeneration_FluidModule.f90"
# 1 "/home/admin/SimulationCore2/TorqueDrag/TD_DrillingSubs/MeshGeneration_FluidModule.f90"
subroutine MeshGeneration_FluidModule subroutine MeshGeneration_FluidModule


Use TD_DrillStemComponents Use TD_DrillStemComponents


+ 1
- 1
TorqueDrag/TD_DrillingSubs/TD_DrillStemConfiguration.i90 View File

@@ -1,4 +1,4 @@
# 1 "/mnt/c/Projects/VSIM/SimulationCore2/TorqueDrag/TD_DrillingSubs/TD_DrillStemConfiguration.f90"
# 1 "/home/admin/SimulationCore2/TorqueDrag/TD_DrillingSubs/TD_DrillStemConfiguration.f90"
subroutine TD_DrillStemConfiguration subroutine TD_DrillStemConfiguration


Use CStringConfigurationVariables Use CStringConfigurationVariables


+ 1
- 1
TorqueDrag/TD_DrillingSubs/TD_WellGeoConfiguration.i90 View File

@@ -1,4 +1,4 @@
# 1 "/mnt/c/Projects/VSIM/SimulationCore2/TorqueDrag/TD_DrillingSubs/TD_WellGeoConfiguration.f90"
# 1 "/home/admin/SimulationCore2/TorqueDrag/TD_DrillingSubs/TD_WellGeoConfiguration.f90"
subroutine TD_WellGeoConfiguration subroutine TD_WellGeoConfiguration
Use TD_DrillStemComponents Use TD_DrillStemComponents


+ 1
- 1
TorqueDrag/TD_Modules/TD_DrillStem.i90 View File

@@ -1,4 +1,4 @@
# 1 "/mnt/c/Projects/VSIM/SimulationCore2/TorqueDrag/TD_Modules/TD_DrillStem.f90"
# 1 "/home/admin/SimulationCore2/TorqueDrag/TD_Modules/TD_DrillStem.f90"
MODULE TD_DrillStemComponents MODULE TD_DrillStemComponents
Use CDownHoleVariables Use CDownHoleVariables


+ 1
- 1
TorqueDrag/TD_ReadDataSubroutines/TD_WellReadData.i90 View File

@@ -1,4 +1,4 @@
# 1 "/mnt/c/Projects/VSIM/SimulationCore2/TorqueDrag/TD_ReadDataSubroutines/TD_WellReadData.f90"
# 1 "/home/admin/SimulationCore2/TorqueDrag/TD_ReadDataSubroutines/TD_WellReadData.f90"
subroutine TD_WellReadData subroutine TD_WellReadData


use SimulationVariables !@ use SimulationVariables !@


+ 0
- 273
UpgradeLog.htm View File

@@ -1,273 +0,0 @@
<!DOCTYPE html>
<!-- saved from url=(0014)about:internet -->
<html xmlns:msxsl="urn:schemas-microsoft-com:xslt"><head><meta content="en-us" http-equiv="Content-Language" /><meta content="text/html; charset=utf-16" http-equiv="Content-Type" /><title _locID="ConversionReport0">
Migration Report
</title><style>
/* Body style, for the entire document */
body
{
background: #F3F3F4;
color: #1E1E1F;
font-family: "Segoe UI", Tahoma, Geneva, Verdana, sans-serif;
padding: 0;
margin: 0;
}

/* Header1 style, used for the main title */
h1
{
padding: 10px 0px 10px 10px;
font-size: 21pt;
background-color: #E2E2E2;
border-bottom: 1px #C1C1C2 solid;
color: #201F20;
margin: 0;
font-weight: normal;
}

/* Header2 style, used for "Overview" and other sections */
h2
{
font-size: 18pt;
font-weight: normal;
padding: 15px 0 5px 0;
margin: 0;
}

/* Header3 style, used for sub-sections, such as project name */
h3
{
font-weight: normal;
font-size: 15pt;
margin: 0;
padding: 15px 0 5px 0;
background-color: transparent;
}

/* Color all hyperlinks one color */
a
{
color: #1382CE;
}

/* Table styles */
table
{
border-spacing: 0 0;
border-collapse: collapse;
font-size: 10pt;
}

table th
{
background: #E7E7E8;
text-align: left;
text-decoration: none;
font-weight: normal;
padding: 3px 6px 3px 6px;
}

table td
{
vertical-align: top;
padding: 3px 6px 5px 5px;
margin: 0px;
border: 1px solid #E7E7E8;
background: #F7F7F8;
}

/* Local link is a style for hyperlinks that link to file:/// content, there are lots so color them as 'normal' text until the user mouse overs */
.localLink
{
color: #1E1E1F;
background: #EEEEED;
text-decoration: none;
}

.localLink:hover
{
color: #1382CE;
background: #FFFF99;
text-decoration: none;
}

/* Center text, used in the over views cells that contain message level counts */
.textCentered
{
text-align: center;
}

/* The message cells in message tables should take up all avaliable space */
.messageCell
{
width: 100%;
}

/* Padding around the content after the h1 */
#content
{
padding: 0px 12px 12px 12px;
}

/* The overview table expands to width, with a max width of 97% */
#overview table
{
width: auto;
max-width: 75%;
}

/* The messages tables are always 97% width */
#messages table
{
width: 97%;
}

/* All Icons */
.IconSuccessEncoded, .IconInfoEncoded, .IconWarningEncoded, .IconErrorEncoded
{
min-width:18px;
min-height:18px;
background-repeat:no-repeat;
background-position:center;
}

/* Success icon encoded */
.IconSuccessEncoded
{
/* Note: Do not delete the comment below. It is used to verify the correctness of the encoded image resource below before the product is released */
/* [---XsltValidateInternal-Base64EncodedImage:IconSuccess#Begin#background-image: url(data:image/png;base64,#Separator#);#End#] */
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAACXBIWXMAAA7EAAAOxAGVKw4bAAABcElEQVR4Xq2TsUsCURzHv15g8ZJcBWlyiYYgCIWcb9DFRRwMW5TA2c0/QEFwFkxxUQdxVlBwCYWOi6IhWgQhBLHJUCkhLr/BW8S7gvrAg+N+v8/v+x68Z8MGy+XSCyABQAXgBgHGALoASkIIDWSLeLBetdHryMjd5IxQPWT4rn1c/P7+xxp72Cs9m5SZ0Bq2vPnbPFafK2zDvmNHypdC0BPkLlQhxJsCAhQoZwdZU5mwxh720qGo8MzTxTTKZDPCx2HoVzp6lz0Q9tKhyx0kGs8Ny+TkWRKk8lCROwEduhyg9l/6lunOPSfmH3NUH6uQ0KHLAe7JYvJjevm+DAMGJHToKtigE+vwvIidxLamb8IBY9e+C5LiXREkfho3TSd06HJA13/oh6T51MTsfQbHrsMynQ5dDihFjiK8JJAU9AKIWTp76dCVN7HWHrajmUEGvyF9nkbAE6gLIS7kTUyuf2gscLoJrElZo/Mvj+nPz/kLTmfnEwP3tB0AAAAASUVORK5CYII=);
}

/* Information icon encoded */
.IconInfoEncoded
{
/* Note: Do not delete the comment below. It is used to verify the correctness of the encoded image resource below before the product is released */
/* [---XsltValidateInternal-Base64EncodedImage:IconInformation#Begin#background-image: url(data:image/png;base64,#Separator#);#End#] */
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABHElEQVR4Xs2TsUoDQRRF7wwoziokjZUKadInhdhukR9YP8DMX1hYW+QvdsXa/QHBbcXC7W0CamWTQnclFutceIQJwwaWNLlwm5k5d94M76mmaeCrrmsLYOocY12FcxZFUeozCqKqqgYA8uevv1H6VuPxcwlfk5N92KHBxfFeCSAxxswlYAW/Xr989x/mv9gkhtyMDhcAxgzRsp7flj8B/HF1RsMXq+NZMkopaHe7lbKxQUEIGbKsYNoGn969060hZBkQex/W8oRQwsQaW2o3Ago2SVcJUzAgY3N0lTCZZm+zPS8HB51gMmS1DEYyOz9acKO1D8JWTlafKIMxdhvlfdyT94Vv5h7P8Ky7nQzACmhvKq3zk3PjW9asz9D/1oigecsioooAAAAASUVORK5CYII=);
}

/* Warning icon encoded */
.IconWarningEncoded
{
/* Note: Do not delete the comment below. It is used to verify the correctness of the encoded image resource below before the product is released */
/* [---XsltValidateInternal-Base64EncodedImage:IconWarning#Begin#background-image: url(data:image/png;base64,#Separator#);#End#] */
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAAx0lEQVR4XpWSMQ7CMAxFf4xAyBMLCxMrO8dhaBcuwdCJS3RJBw7SA/QGTCxdWJgiQYWKXJWKIXHIlyw5lqr34tQgEOdcBsCOx5yZK3hCCKdYXneQkh4pEfqzLfu+wVDSyyzFoJjfz9NB+pAF+eizx2Vruts0k15mPgvS6GYvpVtQhB61IB/dk6AF6fS4Ben0uIX5odtFe8Q/eW1KvFeH4e8khT6+gm5B+t3juyDt7n0jpe+CANTd+oTUjN/U3yVaABnSUjFz/gFq44JaVSCXeQAAAABJRU5ErkJggg==);
}

/* Error icon encoded */
.IconErrorEncoded
{
/* Note: Do not delete the comment below. It is used to verify the correctness of the encoded image resource below before the product is released */
/* [---XsltValidateInternal-Base64EncodedImage:IconError#Begin#background-image: url(data:image/png;base64,#Separator#);#End#] */
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABQElEQVR4XqWTvUoEQRCE6wYPZUA80AfwAQz23uCMjA7MDRQEIzPBVEyNTQUFIw00vcQTTMzuAh/AxEQQT8HF/3G/oGGnEUGuoNnd6qoZuqltyKEsyzVJq5I6rnUp6SjGeGhESikzzlc1eL7opfuVbrqbU1Zw9NCgtQMaZpY0eNnaaL2fHusvTK5vKu7sjSS1Y4y3QUA6K3e3Mau5UFDyMP7tYF9o8cAHZv68vipoIJg971PZIZ5HiwdvYGGvFVFHmGmZ2MxwmQYPXubPl9Up0tfoMQGetXd6mRbvhBw+boZ6WF7Mbv1+GsHRk0fQmPAH1GfmZirbCfDJ61tw3Px8/8pZsPAG4jlVhcPgZ7adwNWBB68lkRQWFiTgFlbnLY3DGGM7izIJIyT/jjIvEJw6fdJTc6krDzh6aMwMP9bvDH4ADSsa9uSWVJkAAAAASUVORK5CYII=);
}
</style><script type="text/javascript" language="javascript">
// Startup
// Hook up the the loaded event for the document/window, to linkify the document content
var startupFunction = function() { linkifyElement("messages"); };
if(window.attachEvent)
{
window.attachEvent('onload', startupFunction);
}
else if (window.addEventListener)
{
window.addEventListener('load', startupFunction, false);
}
else
{
document.addEventListener('load', startupFunction, false);
}
// Toggles the visibility of table rows with the specified name
function toggleTableRowsByName(name)
{
var allRows = document.getElementsByTagName('tr');
for (i=0; i < allRows.length; i++)
{
var currentName = allRows[i].getAttribute('name');
if(!!currentName && currentName.indexOf(name) == 0)
{
var isVisible = allRows[i].style.display == '';
isVisible ? allRows[i].style.display = 'none' : allRows[i].style.display = '';
}
}
}
function scrollToFirstVisibleRow(name)
{
var allRows = document.getElementsByTagName('tr');
for (i=0; i < allRows.length; i++)
{
var currentName = allRows[i].getAttribute('name');
var isVisible = allRows[i].style.display == '';
if(!!currentName && currentName.indexOf(name) == 0 && isVisible)
{
allRows[i].scrollIntoView(true);
return true;
}
}
return false;
}
// Linkifies the specified text content, replaces candidate links with html links
function linkify(text)
{
if(!text || 0 === text.length)
{
return text;
}

// Find http, https and ftp links and replace them with hyper links
var urlLink = /(http|https|ftp)\:\/\/[a-zA-Z0-9\-\.]+(:[a-zA-Z0-9]*)?\/?([a-zA-Z0-9\-\._\?\,\/\\\+&%\$#\=~;\{\}])*/gi;
return text.replace(urlLink, '<a href="$&">$&</a>') ;
}
// Linkifies the specified element by ID
function linkifyElement(id)
{
var element = document.getElementById(id);
if(!!element)
{
element.innerHTML = linkify(element.innerHTML);
}
}
function ToggleMessageVisibility(projectName)
{
if(!projectName || 0 === projectName.length)
{
return;
}
toggleTableRowsByName("MessageRowClass" + projectName);
toggleTableRowsByName('MessageRowHeaderShow' + projectName);
toggleTableRowsByName('MessageRowHeaderHide' + projectName);
}
function ScrollToFirstVisibleMessage(projectName)
{
if(!projectName || 0 === projectName.length)
{
return;
}
// First try the 'Show messages' row
if(!scrollToFirstVisibleRow('MessageRowHeaderShow' + projectName))
{
// Failed to find a visible row for 'Show messages', try an actual message row
scrollToFirstVisibleRow('MessageRowClass' + projectName);
}
}
</script></head><body><h1 _locID="ConversionReport">
Migration Report - </h1><div id="content"><h2 _locID="OverviewTitle">Overview</h2><div id="overview"><table><tr><th></th><th _locID="ProjectTableHeader">Project</th><th _locID="PathTableHeader">Path</th><th _locID="ErrorsTableHeader">Errors</th><th _locID="WarningsTableHeader">Warnings</th><th _locID="MessagesTableHeader">Messages</th></tr><tr><td class="IconErrorEncoded" /><td><strong><a href="#SimulationCore2">SimulationCore2</a></strong></td><td>SimulationCore2.vfproj</td><td class="textCentered"><a href="#SimulationCore2Error">1</a></td><td class="textCentered"><a>0</a></td><td class="textCentered"><a href="#">0</a></td></tr><tr><td class="IconSuccessEncoded" /><td><strong><a href="#Solution"><span _locID="OverviewSolutionSpan">Solution</span></a></strong></td><td>SimulationCore2.sln</td><td class="textCentered"><a>0</a></td><td class="textCentered"><a>0</a></td><td class="textCentered"><a href="#" onclick="ScrollToFirstVisibleMessage('Solution'); return false;">1</a></td></tr></table></div><h2 _locID="SolutionAndProjectsTitle">Solution and projects</h2><div id="messages"><a name="SimulationCore2" /><h3>SimulationCore2</h3><table><tr id="SimulationCore2HeaderRow"><th></th><th class="messageCell" _locID="MessageTableHeader">Message</th></tr><tr name="ErrorRowClassSimulationCore2"><td class="IconErrorEncoded"><a name="SimulationCore2Error" /></td><td class="messageCell"><strong>SimulationCore2.vfproj:
</strong><span>The application which this project type is based on was not found. Please try this link for further information: 6989167d-11e4-40fe-8c1a-2192a86a7e90</span></td></tr></table><a name="Solution" /><h3 _locID="ProjectDisplayNameHeader">Solution</h3><table><tr id="SolutionHeaderRow"><th></th><th class="messageCell" _locID="MessageTableHeader">Message</th></tr><tr name="MessageRowHeaderShowSolution"><td class="IconInfoEncoded" /><td class="messageCell"><a _locID="ShowAdditionalMessages" href="#" name="SolutionMessage" onclick="ToggleMessageVisibility('Solution'); return false;">
Show 1 additional messages
</a></td></tr><tr name="MessageRowClassSolution" style="display: none"><td class="IconInfoEncoded"><a name="SolutionMessage" /></td><td class="messageCell"><strong>SimulationCore2.sln:
</strong><span>The solution file does not require migration.</span></td></tr><tr style="display: none" name="MessageRowHeaderHideSolution"><td class="IconInfoEncoded" /><td class="messageCell"><a _locID="HideAdditionalMessages" href="#" name="SolutionMessage" onclick="ToggleMessageVisibility('Solution'); return false;">
Hide 1 additional messages
</a></td></tr></table></div></div></body></html>

BIN
View File


BIN
View File


+ 2
- 3
config-asiatech.json View File

@@ -2,10 +2,9 @@
"redis":{ "redis":{
"address":"85.198.9.229", "address":"85.198.9.229",
"port":6379, "port":6379,
"password":"1qazxsw2$$",
"datakey":"data"
"password":"1qazxsw2$$"
}, },
"logging":4,
"logging":3,
"process_name": "SimulationCore2", "process_name": "SimulationCore2",
"work_dir" : ".", "work_dir" : ".",
"step_time" : 1000 "step_time" : 1000

Some files were not shown because too many files changed in this diff

Loading…
Cancel
Save