37 integer,
public ::
qa = 0
39 integer,
private,
parameter :: qa_max = 1024
64 NQ, NAME, DESC, UNIT, &
65 CV, CP, R, ADVC, MASS )
70 integer,
intent(out) :: QS
71 integer,
intent(in) :: NQ
72 character(len=*),
intent(in) :: NAME(nq)
73 character(len=*),
intent(in) :: DESC(nq)
74 character(len=*),
intent(in) :: UNIT(nq)
75 real(RP),
intent(in),
optional :: CV (nq)
76 real(RP),
intent(in),
optional :: CP (nq)
77 real(RP),
intent(in),
optional :: R (nq)
78 logical,
intent(in),
optional :: ADVC(nq)
79 logical,
intent(in),
optional :: MASS(nq)
87 character(len=24) :: NAME_trim
92 if (
qa + nq > qa_max )
then 93 log_error(
"TRACER_regist",*)
'total number of tracer must be less or equal to ', qa_max
97 if (
present(cv) )
then 103 if (
present(cp) )
then 109 if (
present(r) )
then 115 if (
present(advc) )
then 121 if (
present(mass) )
then 130 name_trim = trim(name(n))
132 log_info(
"TRACER_regist",
'(1x,A,I3,A,A,A,F6.1,A,F6.1,A,L1,A,L1)') &
133 '] Register tracer : No.',
qa+n, &
134 ', NAME = ', name_trim, &
137 ', ADVC = ', advc_(n), &
138 ', MASS = ', mass_(n)
real(rp), dimension(qa_max), public tracer_r
logical, dimension(qa_max), public tracer_advc
character(len=h_short), dimension(qa_max), public tracer_name
real(rp), dimension(qa_max), public tracer_cv
character(len=h_short), dimension(qa_max), public tracer_unit
real(rp), dimension(qa_max), public tracer_cp
subroutine, public prc_abort
Abort Process.
character(len=h_mid), dimension(qa_max), public tracer_desc
subroutine, public tracer_regist(QS, NQ, NAME, DESC, UNIT, CV, CP, R, ADVC, MASS)
Regist tracer.
real(rp), dimension(qa_max), public tracer_mass