Simulation Core
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

48 lines
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