16 character(n_maxqname) :: name
17 logical :: l_used=.false.
26 character(LEN=6 ) :: vapour =
'vapour' 27 character(LEN=17) :: cloud_liquid_mass =
'cloud_liquid_mass' 28 character(LEN=9 ) :: rain_mass =
'rain_mass' 29 character(LEN=8 ) :: ice_mass =
'ice_mass' 30 character(LEN=9 ) :: snow_mass =
'snow_mass' 31 character(LEN=12) :: graupel_mass =
'graupel_mass' 32 character(LEN=19) :: cloud_liquid_number =
'cloud_liquid_number' 33 character(LEN=11) :: rain_number =
'rain_number' 34 character(LEN=10) :: ice_number =
'ice_number' 35 character(LEN=11) :: snow_number =
'snow_number' 36 character(LEN=14) :: graupel_number =
'graupel_number' 37 character(LEN=17) :: rain_third_moment =
'rain_third_moment' 38 character(LEN=17) :: snow_third_moment =
'snow_third_moment' 39 character(LEN=20) :: graupel_third_moment =
'graupel_third_moment' 40 character(LEN=15) :: aitken_sol_mass =
'aitken_sol_mass' 41 character(LEN=17) :: aitken_sol_number =
'aitken_sol_number' 42 character(LEN=14) :: accum_sol_mass =
'accum_sol_mass' 43 character(LEN=16) :: accum_sol_number =
'accum_sol_number' 44 character(LEN=15) :: coarse_sol_mass =
'coarse_sol_mass' 45 character(LEN=17) :: coarse_sol_number =
'coarse_sol_number' 46 character(LEN=17) :: active_sol_liquid =
'active_sol_liquid' 47 character(LEN=15) :: active_sol_rain =
'active_sol_rain' 48 character(LEN=16) :: coarse_dust_mass =
'coarse_dust_mass' 49 character(LEN=18) :: coarse_dust_number =
'coarse_dust_number' 50 character(LEN=16) :: active_insol_ice =
'active_insol_ice' 51 character(LEN=14) :: active_sol_ice =
'active_sol_ice' 52 character(LEN=19) :: active_insol_liquid =
'active_insol_liquid' 53 character(LEN=16) :: accum_insol_mass =
'accum_insol_mass' 54 character(LEN=18) :: accum_insol_number =
'accum_insol_number' 55 character(LEN=17) :: active_sol_number =
'active_sol_number' 56 character(LEN=19) :: active_insol_number =
'active_insol_number' 71 integer,
intent(in) :: index
72 character(len=*),
intent(in) :: name
111 integer function get_q_index(name, assigning_component)
112 character(*),
intent(in) :: name
113 character(*),
optional :: assigning_component
115 integer :: iname, i_unused
120 if (trim(name) == trim(
q_register(iname)%name))
then 131 if (i_unused == 0)
then 140 if (
present(assigning_component))
then 142 '. Assigned from component: '//trim(assigning_component))
type(standard_q_names_type), public standard_q_names
integer, parameter, public log_error
Only log ERROR messages.
integer function, public get_max_number_q_indices()
Gets the maximum number of Q indicies.
integer, parameter n_maxqs
Maximum number of Q variables to manage.
subroutine, public log_master_log(level, message)
Will log just from the master process.
Conversion between common inbuilt FORTRAN data types.
Converts data types to strings.
integer, parameter n_maxqname
Length to allocate for a Q variable name.
type(q_metadata_type) function, public get_indices_descriptor(i)
Retrieves the indicies descriptor at a specific location.
This manages the Q variables and specifically the mapping between names and the index that they are s...
integer function, public get_number_active_q_indices()
Gets the number of active Q indicies (i.e. those allocated to specific uses)
type(q_metadata_type), dimension(n_maxqs) q_register
integer, parameter, public log_info
Log INFO, WARNING and ERROR messages.
subroutine, public set_q_index(index, name)
Sets a Q index to be active at a specific index and sets the name.
integer function, public get_q_index(name, assigning_component)
Add in a new entry into the register if the name does not already exist or return the index of the pr...