Simulation Core
No puede seleccionar más de 25 temas Los temas deben comenzar con una letra o número, pueden incluir guiones ('-') y pueden tener hasta 35 caracteres de largo.
 
 
 
 
 
 

48 líneas
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