Simulation Core
Du kan inte välja fler än 25 ämnen Ämnen måste starta med en bokstav eller siffra, kan innehålla bindestreck ('-') och vara max 35 tecken långa.
 
 
 
 
 
 

48 rader
1.8 KiB

  1. module CLostProblems
  2. use SimulationVariables
  3. implicit none
  4. public
  5. contains
  6. subroutine ProcessLostProblemsDueTime(time)
  7. implicit none
  8. integer :: time
  9. if(data%problems%LostProblems%LostCirculation%ProblemType == Time_ProblemType) call ProcessDueTime(data%problems%LostProblems%LostCirculation, ChangeLostCirculation, time)
  10. end subroutine
  11. subroutine ProcessLostProblemsDuePumpStrokes(strokes)
  12. implicit none
  13. integer :: strokes
  14. if(data%problems%LostProblems%LostCirculation%ProblemType == PumpStrokes_ProblemType) call ProcessDuePumpStrokes(data%problems%LostProblems%LostCirculation, ChangeLostCirculation, strokes)
  15. end subroutine
  16. subroutine ProcessLostProblemsDueVolumePumped(volume)
  17. implicit none
  18. real(8) :: volume
  19. if(data%problems%LostProblems%LostCirculation%ProblemType == VolumePumped_ProblemType) call ProcessDueVolumePumped(data%problems%LostProblems%LostCirculation, ChangeLostCirculation, volume)
  20. end subroutine
  21. subroutine ProcessLostProblemsDueDistanceDrilled(distance)
  22. implicit none
  23. real(8) :: distance
  24. if(data%problems%LostProblems%LostCirculation%ProblemType == DistanceDrilled_ProblemType) call ProcessDueDistanceDrilled(data%problems%LostProblems%LostCirculation, ChangeLostCirculation, distance)
  25. end subroutine
  26. subroutine ChangeLostCirculation(status)
  27. implicit none
  28. integer, intent (in) :: status
  29. ! if(associated(LostCirculationPtr)) call LostCirculationPtr(status)
  30. !if(status == Clear_StatusType) print*,'On_LostCirculation_Clear'
  31. !if(status == Executed_StatusType) print*,'On_LostCirculation_Execute'
  32. endsubroutine
  33. end module CLostProblems