Go to the documentation of this file.
26 real(kind=
dp) :: t_max
28 real(kind=
dp) :: t_output
30 character(len=300) :: prefix
32 logical :: do_coagulation
34 integer :: coag_kernel_type
36 character(len=PMC_UUID_LEN) :: uuid
44 subroutine run_exact(bin_grid, scenario, env_state, aero_data, &
45 aero_dist_init, gas_data, run_exact_opt)
62 integer :: i_time, n_time, ncid
68 "t_output", run_exact_opt%t_output)
72 n_time = nint(run_exact_opt%t_max / run_exact_opt%t_output)
74 time = real(i_time, kind=
dp) / real(n_time, kind=
dp) &
77 call exact_soln(bin_grid, aero_data, run_exact_opt%do_coagulation, &
78 run_exact_opt%coag_kernel_type, aero_dist_init, scenario, &
79 env_state, time, aero_binned)
81 aero_binned, gas_data, gas_state, env_state, i_time + 1, &
82 time, run_exact_opt%t_output, run_exact_opt%uuid)
subroutine exact_soln(bin_grid, aero_data, do_coagulation, coag_kernel_type, aero_dist_init, scenario, env_state, time, aero_binned)
Exact solutions for various simulations.
subroutine gas_state_set_size(gas_state, n_spec)
Sets the sizes of the gas state.
The scenario_t structure and associated subroutines.
The gas_data_t structure and associated subroutines.
subroutine output_sectional(prefix, bin_grid, aero_data, aero_binned, gas_data, gas_state, env_state, index, time, del_t, uuid)
Write the current sectional data.
integer, parameter dp
Kind of a double precision real number.
Current environment state.
The aero_state_t structure and assocated subroutines.
subroutine scenario_update_env_state(scenario, env_state, time)
Update time-dependent contents of the environment. scenario_init_env_state() should have been called ...
The gas_state_t structure and associated subroutines.
subroutine check_time_multiple(first_name, first_time, second_name, second_time)
Check that the first time interval is close to an integer multiple of the second, and warn if it is n...
The aero_dist_t structure and associated subroutines.
The env_state_t structure and associated subroutines.
subroutine run_exact(bin_grid, scenario, env_state, aero_data, aero_dist_init, gas_data, run_exact_opt)
Run an exact simulation.
Current state of the gas mixing ratios in the system.
Aerosol material properties and associated data.
Write data in NetCDF format.
Options controlling the execution of run_exact().
A complete aerosol distribution, consisting of several modes.
elemental integer function gas_data_n_spec(gas_data)
Return the number of gas species.
The aero_binned_t structure and associated subroutines.
Aerosol number and volume distributions stored per bin.
The bin_grid_t structure and associated subroutines.
The aero_data_t structure and associated subroutines.
1D grid, either logarithmic or linear.
Exact solution simulation.