% QARTS Defines setting fields for ARTS calculations % % The function provides default values for all recognised fields and a % description of each field. Default value is normally NaN, but % exceptions exist when some standard choice exists. To list default % values just type 'qarts'. % % This function is organised in such way that *qcheck* and *qinfo* % can be used. % % FORMAT [Q,I] = qarts % % OUT Q Setting structure with default values for all recognised fields. % I Includes same fields as Q, where the content of each field % is a description string (used by *qinfo*). % 2004-09-07 Created by Patrick Eriksson. function [Q,I] = qarts %----------------------------------------------------------------------------- Q.ATMOSPHERE_DIM = NaN; I.ATMOSPHERE_DIM = [ ... 'As the ARTS WSV with the same name.' ]; %----------------------------------------------------------------------------- Q.BATCH = NaN; I.BATCH = [ ... 'Batch calculations.',... '# Ignored if set to NaN or 0.',... '# Otherwise a structure is expected. The structure is described in ',... '*qarts_batch*. Type ''qinfo(''qarts_batch'',''all'');'' for ',... 'further information.' ]; %----------------------------------------------------------------------------- Q.CLOUDBOX = NaN; I.CLOUDBOX = [ ... 'Handling of cloudbox/scattering.',... '# If field set to NaN or 0, the cloudbox is not activated and thus ',... 'no scattering calculations will be performed.',... '# Otherwise a structure is expected. The structure is described in ',... '*qarts_cloudbox*. Type ''qinfo(''qarts_cloudbox'',''all'');'' for ',... 'further information.' ]; %----------------------------------------------------------------------------- Q.EMISSION_AGENDA = {'emissionPlanck{}'}; I.EMISSION_AGENDA = [ ... 'As the ARTS WSV with the same name.', ... ' WSMs are listed as an array of strings, with possible arguments.', ... '# Default matches standard LTE emission calculation.' ]; %----------------------------------------------------------------------------- Q.F_GRID = NaN; I.F_GRID = [ ... 'Has the same functionality as the ARTS WSV with the same name.', ... '# Can be given either as the name of a XML file, or as a Matlab',... ' variable.' ]; %----------------------------------------------------------------------------- Q.GAS_ABS_LOOKUP = NaN; I.GAS_ABS_LOOKUP = [ ... 'Has the same functionality as the ARTS WSV with the same name.', ... '# Can be given either as the name of a XML file, or as a Matlab',... ' variable.' ]; %----------------------------------------------------------------------------- Q.GAS_SPECIES = []; I.GAS_SPECIES = [ ... 'Specification of gas species tag groups.', ... '# Atmlab format for tag groups is specified in * arts_tgs_cnvrt*. ',... 'This field and GAS_SPECIES_JAC are most easily set by *q_gas_species*.' ]; %----------------------------------------------------------------------------- Q.GAS_SPECIES_JAC = []; I.GAS_SPECIES_JAC = [ ... 'Specification of gas species jacobians.', ... '# This field is an array of structures. These structures can have up ',... '7 fields. The fields of the structures correspond directly to the keyword',... ' arguments of the ARTS WSM *jacobianAddGas*, except for the sub-field DO.',... ' The fields are:',... '# DO : Flag to do jacobians.', ... '# UNIT : Retrieval unit (''rel'', ''vmr'' or ''nd'').',... '# METHOD : Calculation method (''analytical'' or ''perturbation'').',... '# DX : Size of perturbations. Ignored if METHOD = analytical',... '# P_GRID : Retrieval grid in pressure dimension.',... '# LAT_GRID : Retrieval grid in latitude dimension.',... '# LON_GRID : Retrieval grid in longitude dimension.',... '# See further ''arts -d jacobianAddGas''. The DO field is added to make',... ' it possible to turn off jacobian calculations without removing the ',... 'the definition, for possible later reactivation.',... '# These fields are most easily set by the *q_gas_species*. This array ',... 'can be shorter than GAS_SPECIES. No jacobian calculations are performed ',... 'for species with no GAS_SPECIES_JAC entry.' ]; %----------------------------------------------------------------------------- Q.IY_SPACE_AGENDA = { 'Ignore(rte_los){}', 'Ignore(rte_pos){}', ... 'MatrixCBR(iy,f_grid){}' }; I.IY_SPACE_AGENDA = [ ... 'As the ARTS WSV with the same name.', ... ' WSMs are listed as an array of strings, with possible arguments.', ... ' See PPATH_STEP_AGENDA for a practical example on format to use.', ... '# Defualt is corresponds to cosmic background radiation.' ]; %----------------------------------------------------------------------------- Q.JACOBIAN_DO = 0; I.JACOBIAN_DO = [ ... 'Flag to perform jacobian calculations', ... '# If this variable is set to 0, no jacobian calculations will be ',... 'performed. This even if lower level flags are set to 1 (such flag exists ',... 'for e.g. gas species).' ]; %----------------------------------------------------------------------------- Q.LAT_GRID = NaN; I.LAT_GRID = [ ... 'Has the same functionality as the ARTS WSV with the same name.', ... '# Can be given either as the name of a XML file, or as a Matlab',... ' variable.' ]; %----------------------------------------------------------------------------- Q.LON_GRID = NaN; I.LON_GRID = [ ... 'Has the same functionality as the ARTS WSV with the same name.', ... '# Can be given either as the name of a XML file, or as a Matlab',... ' variable.' ]; %----------------------------------------------------------------------------- Q.OPT_PROP_GAS_AGENDA = { 'ext_matAddGas{}', 'abs_vecAddGas{}' }; I.OPT_PROP_GAS_AGENDA = [ ... 'List of WSMs to include in agenda *opt_prop_gas_agenda*.', ... ' WSMs are listed as an array of strings, with possible arguments.', ... ' The WSMs ext_matInit and abs_vecInit are automatically included as first',... ' WSMs. Default setting is:',... '# {''ext_matAddGas{}'',''abs_vecAddGas{}''}' ]; %----------------------------------------------------------------------------- Q.POINTING_JAC = []; I.POINTING_JAC = [ ... 'Structure for specification of pointing offset jacobians.', ... '#The specification is done through the structure fields', ... '# SENSOR_TIME - As WSV *sensor_time*', ... '# DZA - size of perturbation', ... '# POLY_ORDER - order of the perturbation polynomial.', ... '#Note that JACOBIAN_DO must be enabled for calculations of jacobians.' ]; %----------------------------------------------------------------------------- Q.PPATH_STEP_AGENDA = NaN; I.PPATH_STEP_AGENDA = [ ... 'As the ARTS WSV with the same name.', ... ' WSMs are listed as an array of strings, with possible arguments.', ... ' An example showing how an agenda definition looks like:', ... '# Q.PPATH_STEP_AGENDA={''ppath_stepGeometric{10e3}''}' ]; %----------------------------------------------------------------------------- Q.PRE_RTE_WSMS = NaN; I.PRE_RTE_WSMS = [ ... 'Workspace method calls to include just before execution of *RteCalc*.', ... ' Method calls are specified as an cell array of strings, as for agendas.', ... ' This field can be used to include method calls connected to an agenda,',... ' but more efficient calculations are obtained if the method call is', ... ' outside the agenda. An example:',... '# Q.IY_SPACE_AGENDA = { ''Copy(iy,i_space){}'' };',... '# Q.PRE_RTE_WSMS = { ''MatrixCBR(i_space,f_grid){}'' };',... '#If field equals NaN, no methods are included' ]; %----------------------------------------------------------------------------- Q.P_GRID = NaN; I.P_GRID = [ ... 'Has the same functionality as the ARTS WSV with the same name.', ... '# Can be given either as the name of a XML file, or as a Matlab',... ' variable.' ]; %----------------------------------------------------------------------------- Q.R_GEOID = constants( 'EARTH_RADIUS' ); I.R_GEOID = [ ... 'Geoid radius. A spherical geoid will be assumed if the field value is a',... ' a scalar. Otherwise it is assumed that the field holds a matrix of', ... ' correct size. Note that *wgs84* is part of Atmlab and can be used to set',... ' the field value (e.g. Q.R_GEOID=wgs84(2.Q.LAT_GRID);).' ]; %----------------------------------------------------------------------------- Q.RAW_ATMOSPHERE = NaN; I.RAW_ATMOSPHERE = [ ... 'Main file name for a raw atmosphere. See further ''arts -d AtmRawRead''.',... ' This variable is only used if USE_RAW_ATMOSPHERE = 1.' ]; %----------------------------------------------------------------------------- Q.RAW_ATM_EXPAND_1D = 0; I.RAW_ATM_EXPAND_1D = [ ... 'Boolean to expand an 1D raw atmosphere to set ATMOSPHERE_DIM. If set to ',... ' 1, the WSM *AtmFieldsCalcExpand1D* is used instead of *AtmFieldsCalc*.',... ' This variable is only used if USE_RAW_ATMOSPHERE = 1.' ]; %----------------------------------------------------------------------------- Q.REFR_INDEX_AGENDA = NaN; I.REFR_INDEX_AGENDA = [ ... 'As the ARTS WSV with the same name.', ... ' If PPATH_STEP_AGENDA does not involve refraction, this field can be', ... ' left as NaN.',... '# WSMs are listed as an array of strings, with possible arguments.', ... ' See PPATH_STEP_AGENDA for a practical example on format to use.' ]; %----------------------------------------------------------------------------- Q.RTE_AGENDA = {'RteStd{}'}; I.RTE_AGENDA = [ ... 'As the ARTS WSV with the same name.', ... ' WSMs are listed as an array of strings, with possible arguments.', ... '# Default matches standard RTE calculation.' ]; %----------------------------------------------------------------------------- Q.SENSOR_LOS = NaN; I.SENSOR_LOS = [ ... 'As the ARTS WSV with the same name.' ]; %----------------------------------------------------------------------------- Q.SENSOR_POS = NaN; I.SENSOR_POS = [ ... 'As the ARTS WSV with the same name.' ]; %----------------------------------------------------------------------------- Q.SENSOR_RESPONSE = NaN; I.SENSOR_RESPONSE = [ ... 'As the ARTS WSV with the same name.', ... '# No sensor is included if set to NaN or 0.',... '# Can be given as the name of a XML file, a Matlab sparse matrix,', ... ' a string cell array with WSM calls that can be passed to qtool or',... ' a Qarts sensor structure (see qarts_sensor).' ]; %----------------------------------------------------------------------------- Q.STOKES_DIM = NaN; I.STOKES_DIM = [ ... 'As the ARTS WSV with the same name.' ]; %----------------------------------------------------------------------------- Q.SURFACE_PROP_AGENDA = NaN; I.SURFACE_PROP_AGENDA = [ ... 'As the ARTS WSV with the same name.', ... ' WSMs are listed as an array of strings, with possible arguments.', ... ' See PPATH_STEP_AGENDA for a practical example on format to use.' ]; %----------------------------------------------------------------------------- Q.T_FIELD = NaN; I.T_FIELD = [ ... 'As the ARTS WSV with the same name.', ... '# Can be given either as the name of a XML file, or as a Matlab',... ' variable.' ]; %----------------------------------------------------------------------------- Q.USE_RAW_ATMOSPHERE = NaN; I.USE_RAW_ATMOSPHERE = [ ... 'Boolean to decide if T_FIELD, Z_FIELD and VMR_FIELD shall be used', ... ' (option 0) or RAW_ATMOSPHERE (option 1).' ]; %----------------------------------------------------------------------------- Q.VMR_FIELD = NaN; I.VMR_FIELD = [ ... 'As the ARTS WSV with the same name.', ... '# Can be given either as the name of a XML file, or as a Matlab',... ' variable.' ]; %----------------------------------------------------------------------------- Q.Y_UNIT = 'RJ'; I.Y_UNIT = [ ... 'Radiance unit. The following options are supported:', ... '# ''1'' : Basic radiances [W/m2/Hz/sr]',... '# ''RJ'' : Conversion to brightness temperature by Rayleigh-Jeans.',... '# ''Planck'' : Conversion to brightness temperature by Planck.' ]; %----------------------------------------------------------------------------- Q.Z_FIELD = NaN; I.Z_FIELD = [ ... 'As the ARTS WSV with the same name.', ... '# Can be given either as the name of a XML file, or as a Matlab',... ' variable.' ]; %----------------------------------------------------------------------------- Q.Z_SURFACE = NaN; I.Z_SURFACE = [ ... 'Surface altitude (above geoid). A constant altitude will be assumed if',... ' the field value is a scalar. Otherwise it is assumed that the field',... ' holds a matrix of correct size.' ]; %-----------------------------------------------------------------------------