ARTS built-in documentation server
Workspace Method MCGeneral
Description
A generalised 3D reversed Monte Carlo radiative algorithm, that allows for 2D antenna patterns, surface reflection and arbitrary sensor positions. The main output variables y and mc_error represent the Stokes vector integrated over the antenna function, and the estimated error in this vector, respectively. The WSV mc_max_iter describes the maximum number of `photons' used in the simulation (more photons means smaller mc_error). mc_std_err is the desired value of mc_error. mc_max_time is the maximum allowed number of seconds for MCGeneral. The method will terminate once any of the max_iter, std_err, max_time criteria are met. If negative values are given for these parameters then it is ignored. The WSV mc_min_iter sets the minimum number of photons to apply before the condition set by mc_std_err is considered. Values of mc_min_iter below 100 are not accepted. Only "1" and "RJBT" are allowed for iy_unit. The value of mc_error follows the selection for iy_unit (both for in- and output.
Authors: Cory Davis
Synopsis
MCGeneral( | y, mc_iteration_count, mc_error, mc_points, mc_source_domain, mc_scat_order, mc_antenna, f_grid, f_index, sensor_pos, sensor_los, stokes_dim, atmosphere_dim, ppath_step_agenda, ppath_lmax, ppath_lraytrace, iy_space_agenda, surface_rtprop_agenda, propmat_clearsky_agenda, p_grid, lat_grid, lon_grid, z_field, refellipsoid, z_surface, t_field, vmr_field, cloudbox_on, cloudbox_limits, pnd_field, scat_data, atmfields_checked, atmgeom_checked, scat_data_checked, cloudbox_checked, iy_unit, mc_seed, mc_std_err, mc_max_time, mc_max_iter, mc_min_iter, mc_taustep_limit, l_mc_scat_order, t_interp_order ) |
Variables
OUT | y | (Vector) | The measurement vector. |
OUT | mc_iteration_count | (Index) | Counts the number of iterations (or photons) used in the MC scattering algorithm. |
OUT | mc_error | (Vector) | Error in simulated y when using a Monte Carlo approach. |
OUT | mc_points | (Tensor3) | Source to emission, position. |
OUT | mc_source_domain | (ArrayOfIndex) | Rough classification of source to emission. |
OUT | mc_scat_order | (ArrayOfIndex) | Number of atmospheric scattering events between emission point and sensor. |
IN | mc_antenna | (MCAntenna) | Antenna pattern description for dedicated MC calculaions. |
IN | f_grid | (Vector) | The frequency grid for monochromatic pencil beam calculations. |
IN | f_index | (Index) | Frequency index. |
IN | sensor_pos | (Matrix) | The sensor position for each measurement block. |
IN | sensor_los | (Matrix) | The sensor line-of-sight (LOS) for each measurement block. |
IN | stokes_dim | (Index) | The dimensionality of the Stokes vector (1-4). |
IN | atmosphere_dim | (Index) | The atmospheric dimensionality (1-3). |
IN | ppath_step_agenda | (Agenda) | Agenda calculating a propagation path step. |
IN | ppath_lmax | (Numeric) | Maximum length between points describing propagation paths. |
IN | ppath_lraytrace | (Numeric) | Maximum length of ray tracing steps when determining propagation paths. |
IN | iy_space_agenda | (Agenda) | Agenda providing the downwelling radiation at the top of the atmosphere. |
IN | surface_rtprop_agenda | (Agenda) | Agenda providing radiative properties of the surface. |
IN | propmat_clearsky_agenda | (Agenda) | Agenda calculating the absorption coefficient matrices. |
IN | p_grid | (Vector) | The pressure grid. |
IN | lat_grid | (Vector) | The latitude grid. |
IN | lon_grid | (Vector) | The longitude grid. |
IN | z_field | (Tensor3) | The field of geometrical altitudes. |
IN | refellipsoid | (Vector) | Reference ellipsoid. |
IN | z_surface | (Matrix) | The surface altitude. |
IN | t_field | (Tensor3) | The field of atmospheric temperatures. |
IN | vmr_field | (Tensor4) | VMR field. |
IN | cloudbox_on | (Index) | Flag to activate the cloud box. |
IN | cloudbox_limits | (ArrayOfIndex) | The limits of the cloud box. |
IN | pnd_field | (Tensor4) | Particle number density field. |
IN | scat_data | (ArrayOfArrayOfSingleScatteringData) | Array of single scattering data. |
IN | atmfields_checked | (Index) | OK-flag for atmospheric grids and (physical) fields. |
IN | atmgeom_checked | (Index) | OK-flag for the geometry of the model atmosphere. |
IN | scat_data_checked | (Index) | OK-flag for scat_data. |
IN | cloudbox_checked | (Index) | OK-flag for variables associated with the cloudbox. |
IN | iy_unit | (String) | Selection of output unit for some radiative transfer methods. |
IN | mc_seed | (Index) | The integer seed for the random number generator used by Monte Carlo methods. |
IN | mc_std_err | (Numeric) | Target precision (1 std. |
IN | mc_max_time | (Index) | The maximum time allowed for Monte Carlo calculations. |
IN | mc_max_iter | (Index) | The maximum number of iterations allowed for Monte Carlo calculations. |
IN | mc_min_iter | (Index) | The minimum number of iterations allowed for Monte Carlo calculations. |
IN | mc_taustep_limit | (Numeric) | Defines an upper step length in terms of optical thickness for Monte Carlo calculations. |
GIN | l_mc_scat_order | (Index, Default: 11) | The length to be given to mc_scat_order. Note that scattering orders equal and above this value will not be counted. |
GIN | t_interp_order | (Index, Default: 1) | Interpolation order of temperature for scattering data (so far only applied in phase matrix, not in extinction and absorption. |