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.

String_Property_Calculator.f90 1.4 KiB

1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1234567891011121314151617181920212223242526272829303132333435
  1. SUBROUTINE StringPropertyCalculator (md, den, pre, tem)
  2. !!! This subroutine gets location of a guage or an observation point and determines information of that point such as pressure, density, velocity and temperature later.
  3. use PressureDisplayVARIABLESModule
  4. USE Fluid_Flow_Startup_Vars
  5. ! use ConfigurationVariables
  6. !USE MudSystemVARIABLES
  7. use SimulationVariables !@@@
  8. USE FricPressDropVarsModule
  9. !use CDataDisplayConsole
  10. !@ use ConfigurationVariables , StandPipePressureDataDisplay=>StandPipePressure
  11. !use CDataDisplayConsole
  12. !@ use ConfigurationVariables , CasingPressureDataDisplay=>CasingPressure!, StandPipePressureDataDisplay=>StandPipePressure
  13. use SimulationVariables !@
  14. IMPLICIT NONE
  15. INTEGER, intent(in) :: md ! input
  16. REAL(8) :: TVD
  17. real(8), intent(inout) :: den ! output
  18. real(8), intent(inout) :: pre ! output
  19. real(8), intent(inout) :: tem ! output
  20. INTEGER :: ilocal
  21. CALL TVD_Calculator(md * 1.d0 , TVD)
  22. DO ilocal = data%State%FricPressDrop%StringFirstEl , data%State%FricPressDrop%StringLastEl
  23. IF (md < INT(FinalFlowEl(ilocal)%EndX)) EXIT
  24. END DO
  25. den = FinalFlowEl(ilocal)%Density
  26. pre = FinalFlowEl(ilocal)%StartPress - (md - FinalFlowEl(ilocal)%StartX) * FinalFlowEl(ilocal)%dPdLfric &
  27. + (TVD - FinalFlowEl(ilocal)%StartTVD) * FinalFlowEl(ilocal)%dPdLGrav
  28. tem = 500
  29. END SUBROUTINE