user_input.F90 2.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109
  1. !
  2. #define TRACEBACK write (gol,'("in ",a," (",a,", line",i5,")")') rname, __FILE__, __LINE__; call goErr
  3. #define IF_NOTOK_RETURN(action) if (status/=0) then; TRACEBACK; action; return; end if
  4. #define IF_ERROR_RETURN(action) if (status> 0) then; TRACEBACK; action; return; end if
  5. !
  6. #include "tm5.inc"
  7. !
  8. !-----------------------------------------------------------------------------
  9. ! TM5 !
  10. !-----------------------------------------------------------------------------
  11. !BOP
  12. !
  13. ! !MODULE: USER_INPUT
  14. !
  15. ! !DESCRIPTION: provide dummy routine for user to specify his/her own startup
  16. ! values.
  17. !\\
  18. !\\
  19. ! !INTERFACE:
  20. !
  21. module user_input
  22. !
  23. ! !USES:
  24. !
  25. use GO, only : gol, goPr, goErr
  26. implicit none
  27. private
  28. !
  29. ! !PUBLIC MEMBER FUNCTIONS:
  30. !
  31. public :: user_input_start
  32. !
  33. ! !PRIVATE DATA MEMBERS:
  34. !
  35. character(len=*), parameter :: mname = 'user_input'
  36. !
  37. ! !REVISION HISTORY:
  38. ! 10 Oct 2011 - P. Le Sager - TM5-MP version
  39. !
  40. ! !REMARKS:
  41. !
  42. !EOP
  43. !------------------------------------------------------------------------
  44. contains
  45. !--------------------------------------------------------------------------
  46. ! TM5 !
  47. !--------------------------------------------------------------------------
  48. !BOP
  49. !
  50. ! !IROUTINE: user_input_start
  51. !
  52. ! !DESCRIPTION:
  53. !\\
  54. !\\
  55. ! !INTERFACE:
  56. !
  57. subroutine user_input_start( status )
  58. !
  59. ! !USES:
  60. !
  61. use GO , only : gol, goPr, goErr
  62. use dims , only : nregions
  63. use global_data, only : mass_dat, chem_dat
  64. !
  65. ! !OUTPUT PARAMETERS:
  66. !
  67. integer, intent(out) :: status
  68. !
  69. ! !REVISION HISTORY:
  70. ! 10 Oct 2011 - P. Le Sager - TM5-MP version
  71. !
  72. ! !REMARKS:
  73. !
  74. !EOP
  75. !------------------------------------------------------------------------
  76. !BOC
  77. character(len=*), parameter :: rname = mname//'/user_input_start'
  78. ! info ...
  79. write (gol,'("WARNING - user_input_start not implemented yet;")'); call goPr
  80. write (gol,'("WARNING - leave all concentrations at zero ...")'); call goPr
  81. ! dummy
  82. !IDEE mass_datDD%rm = 0.0
  83. !IDEE #ifdef slopes
  84. !IDEE mass_datDD%rxm = 0.0
  85. !IDEE mass_datDD%rym = 0.0
  86. !IDEE mass_datDD%rzm = 0.0
  87. !IDEE #ifdef secmom
  88. !IDEE mass_datDD%rxxm = 0.0
  89. !IDEE mass_datDD%rxym = 0.0
  90. !IDEE mass_datDD%rxzm = 0.0
  91. !IDEE mass_datDD%ryym = 0.0
  92. !IDEE mass_datDD%ryzm = 0.0
  93. !IDEE mass_datDD%rzzm = 0.0
  94. !IDEE #endif
  95. !IDEE #endif
  96. ! ok
  97. status=0
  98. end subroutine user_input_start
  99. !EOC
  100. end module user_input