CxxWorkspace

class pyarts3.arts.CxxWorkspace(*args, **kwargs)

The core ARTS Workspace

Overview

Method

Ignore()

Ignore a workspace variable.

Method

OEM()

Inversion by the so called optimal estimation method (OEM).

Method

ReadCatalogData()

Reads split catalog data from a folder structure similar to arts-cat-data

Method

ReadXML()

Reads a workspace variable from an XML file.

Method

ReadXMLIndexed()

As ReadXML(), but reads indexed file names.

Method

RetrievalAddAtmosphere()

Sets an atmospheric target.

Method

RetrievalAddErrorPolyFit()

Set a measurement error to polynomial fit.

Method

RetrievalAddMagneticField()

Set magnetic field derivative.

Method

RetrievalAddOverlappingMagneticField()

Set magnetic field derivative for overlapping fields.

Method

RetrievalAddOverlappingWindField()

Set wind field derivative for overlapping fields.

Method

RetrievalAddPressure()

Set pressure derivative.

Method

RetrievalAddSensorFrequencyPolyOffset()

Set sensor frequency derivative to use polynomial fitting offset

Method

RetrievalAddSpeciesIsotopologueRatio()

Set isotopologue ratio derivative

Method

RetrievalAddSpeciesVMR()

Set volume mixing ratio derivative.

Method

RetrievalAddSubsurface()

Sets a subsurface target

Method

RetrievalAddSurface()

Sets a surface target

Method

RetrievalAddTemperature()

Set temperature derivative.

Method

RetrievalAddWindField()

Set wind field derivative.

Method

RetrievalFinalizeDiagonal()

Finalize the retrieval setup.

Method

RetrievalInit()

Initialize the retrieval setup.

Method

SpectralFluxDisort()

Integrate Disort spectral radiance.

Method

Touch()

As Ignore() but for agenda output.

Method

UpdateModelStates()

Update state of the model in preparation for a forward model run

Method

WignerInit()

Initialize the Wigner tables

Method

WignerUnload()

Unloads the Wigner tables from static data (see WignerInit())

Method

WriteBuiltinPartitionFunctionsXML()

Writes all the builtin partition functions to file.

Method

WriteXML()

Writes a workspace variable to an XML file.

Method

WriteXMLIndexed()

As WriteXML(), but creates indexed file names.

Method

absorption_bandsFromModelState()

Sets absorption_bands to the state of the model.

Method

absorption_bandsKeepID()

Keeps first band of ID

Method

absorption_bandsLineMixingAdaptation()

Adapts select band to use ordered Line mixing coefficients.

Method

absorption_bandsReadHITRAN()

Reads HITRAN data from a file.

Method

absorption_bandsReadSpeciesSplitARTSCAT()

Same as absorption_bandsReadSpeciesSplitCatalog() but for reading the old ARTSCAT format.

Method

absorption_bandsReadSpeciesSplitCatalog()

Reads all species in absorption_species from a basename

Method

absorption_bandsReadSplit()

Saves all bands in absorption_bands to a directory

Method

absorption_bandsRemoveID()

Remove first band of with a matching ID

Method

absorption_bandsSaveSplit()

Saves all bands fin absorption_bands to a directory

Method

absorption_bandsSelectFrequencyByBand()

Remove all bands whose lines all strictly falls outside a frequency range

Method

absorption_bandsSelectFrequencyByLine()

Remove all lines that strictly falls outside a frequency range

Method

absorption_bandsSetNonLTE()

Set all bands to use non-LTE calculations.

Method

absorption_bandsSetZeeman()

Set the Zeeman splitting for lines within the frequency range

Method

absorption_cia_dataAddCIARecord()

Takes CIARecord as input and appends the results in the appropriate place.

Method

absorption_cia_dataReadFromCIA()

Read data from a CIA data file for all CIA molecules defined

Method

absorption_cia_dataReadFromXML()

Read data from a CIA XML file and check that all CIA tags defined

Method

absorption_cia_dataReadSpeciesSplitCatalog()

Reads a species split CIA dataset.

Method

absorption_lookup_tableCalc()

Get absorption_lookup_table from available data.

Method

absorption_lookup_tableFromProfiles()

Compute the lookup table for all species in absorption_bands.

Method

absorption_lookup_tableInit()

Initialize an empty lookup table.

Method

absorption_lookup_tablePrecompute()

Precompute the lookup table for a single species, adding it to the map.

Method

absorption_lookup_tablePrecomputeAll()

Compute the lookup table for all species in absorption_bands.

Method

absorption_lookup_tableSimpleWide()

Set up a simple wide lookup table for all species in absorption_bands.

Method

absorption_predefined_model_dataAddWaterMTCKD400()

Sets the data for MT CKD 4.0 Water model

Method

absorption_predefined_model_dataInit()

Initialize the predefined model data

Method

absorption_predefined_model_dataReadSpeciesSplitCatalog()

Reads absorption_predefined_model_data catalog but only for absorption_species

Method

absorption_speciesDefineAll()

Sets absorption_species [i][0] to all species in ARTS

Method

absorption_speciesSet()

Set absorption_species to the named species.

Method

absorption_xsec_fit_dataReadSpeciesSplitCatalog()

Reads HITRAN Crosssection coefficients

Method

atmospheric_fieldAbsoluteMagneticField()

Set the magnetic field to use the magnitude field functional.

Method

atmospheric_fieldAbsoluteWindField()

Set the wind field to use the magnitude field functional.

Method

atmospheric_fieldAppendAbsorptionData()

Append data to the atmospheric field based all absorption data

Method

atmospheric_fieldAppendBaseData()

Append base data to the atmospheric field

Method

atmospheric_fieldAppendCIASpeciesData()

Append species data to the atmospheric field based on collision-induced data data

Method

atmospheric_fieldAppendLineIsotopologueData()

Append isotopologue data to the atmospheric field based on line data

Method

atmospheric_fieldAppendLineLevelData()

Append NLTE data to the atmospheric field based on line data

Method

atmospheric_fieldAppendLineSpeciesData()

Append species data to the atmospheric field based on line data

Method

atmospheric_fieldAppendLookupTableSpeciesData()

Append species data to the atmospheric field based on lookup data

Method

atmospheric_fieldAppendPredefSpeciesData()

Append species data to the atmospheric field based on predefined model data

Method

atmospheric_fieldAppendTagsSpeciesData()

Append species data to the atmospheric field based on species data

Method

atmospheric_fieldAppendXsecSpeciesData()

Append species data to the atmospheric field based on cross-section data

Method

atmospheric_fieldFitNonLTE()

Fits non-LTE atmospheric field values

Method

atmospheric_fieldFromModelState()

Sets atmospheric_field to the state of the model.

Method

atmospheric_fieldFromProfile()

Sets the atmospheric field to be the 1D atmospheric profile.

Method

atmospheric_fieldHydrostaticPressure()

Add the hydrostatic pressure to the atmospheric field

Method

atmospheric_fieldIGRF()

Use IGRF to compute the magnetic field at each point.

Method

atmospheric_fieldInit()

Initialize the atmospheric field with some altitude and isotopologue ratios

Method

atmospheric_fieldInitializeNonLTE()

Initialize the non-LTE atmospheric field from the LTE temperature field.

Method

atmospheric_fieldRead()

Read atmospheric data files from a directory

Method

atmospheric_fieldRegrid()

Regrid the input atmospheric field parameter to a new grid.

Method

atmospheric_fieldRegridAll()

Regrid all parameters of the input atmospheric field to a new grid

Method

atmospheric_fieldSchmidthFieldFromIGRF()

For forward calculations, this should be similar to atmospheric_fieldIGRF().

Method

atmospheric_pointInit()

Initialize an atmospheric point with some isotopologue ratios

Method

atmospheric_profileExtendInPressure()

Extends the atmospheric profile in pressure.

Method

atmospheric_profileExtract()

Extract an atmospheric profile from the atmospheric field.

Method

atmospheric_profileFitNonLTE()

Fits non-LTE distributions to the level data.

Method

atmospheric_profileFromGrid()

Extract an atmospheric profile and its grids.

Method

disort_settingsCosmicMicrowaveBackgroundRadiation()

Space radiation into Disort is isotropic cosmic background radiation.

Method

disort_settingsInit()

Perform Disort calculations for spectral flux.

Method

disort_settingsLayerNonThermalEmissionLinearInTau()

Same as disort_settingsLayerThermalEmissionLinearInTau() but considers non-LTE

Method

disort_settingsLayerThermalEmissionLinearInTau()

Use a source function that changes linearly in optical thickness.

Method

disort_settingsLegendreCoefficientsFromPath()

Sets the legendre coefficients from the path-variable.

Method

disort_settingsNoFractionalScattering()

Turns off fractional scattering in Disort calculations.

Method

disort_settingsNoLayerThermalEmission()

Turns off source radiation in Disort calculations.

Method

disort_settingsNoLegendre()

Turns off Legendre coefficients in Disort calculations.

Method

disort_settingsNoSingleScatteringAlbedo()

Turns off single albedo scattering in Disort calculations.

Method

disort_settingsNoSpaceEmission()

Turns off boundary condition from space for Disort calculations.

Method

disort_settingsNoSun()

Turns off solar radiation in Disort calculations.

Method

disort_settingsNoSurfaceEmission()

Turns boundary condition from surface for Disort calculations.

Method

disort_settingsNoSurfaceScattering()

Turns off BDRF in Disort calculations.

Method

disort_settingsOpticalThicknessFromPath()

Get optical thickness from path.

Method

disort_settingsSetSun()

Uses Set the FOV to the sun input for Disort calculations.

Method

disort_settingsSingleScatteringAlbedoFromPath()

Sets the single scattering albedo from the path-variable.

Method

disort_settingsSurfaceEmissionByTemperature()

Surface radiation into Disort is isotropic from surface temperature.

Method

disort_settingsSurfaceLambertian()

Sets the surface to Lambertian.

Method

disort_settings_agendaExecute()

Executes disort_settings_agenda, see it for more details

Method

disort_settings_agendaExecuteOperator()

Executes an operator emulating disort_settings_agenda, see it, and also disort_settings_agendaOperator, for more details

Method

disort_settings_agendaSetOperator()

Set disort_settings_agenda to exclusively use provided external operator. See disort_settings_agendaOperator for more details.

Method

disort_settings_agendaSetup()

Setup for Disort standard calculations.

Method

disort_spectral_flux_fieldCalc()

Perform Disort calculations for spectral flux.

Method

disort_spectral_flux_fieldFromAgenda()

Use Disort for clearsky calculations of spectral flux field

Method

disort_spectral_flux_fieldProfile()

Extract a 1D path through the atmospheric field and calculate spectral flux using Disort

Method

disort_spectral_radiance_fieldCalc()

Perform Disort calculations for spectral radiance.

Method

disort_spectral_radiance_fieldCalcCdisort()

Perform CDisort calculations for spectral radiance.

Method

disort_spectral_radiance_fieldFromAgenda()

Use the disort settings agenda to calculate spectral radiance

Method

disort_spectral_radiance_fieldFromAgendaCdisort()

Use the disort settings agenda to calculate spectral radiance

Method

disort_spectral_radiance_fieldProfile()

Extract a 1D path through the atmospheric field and calculate spectral radiance using Disort

Method

disort_spectral_radiance_fieldProfileCdisort()

Extract a 1D path through the atmospheric field and calculate spectral radiance using Disort

Method

ecs_dataAddMakarov2020()

Sets the O2-66 microwave band data for ECS.

Method

ecs_dataAddMeanAir()

Sets ECS data for air from other data if available.

Method

ecs_dataAddRodrigues1997()

Sets the CO2-626, CO2-628, and CO2-636 band data for ECS.

Method

ecs_dataAddTran2011()

Sets the CO2-626, CO2-628, and CO2-636 band data for ECS.

Method

ecs_dataInit()

Resets/initializes the ECS data.

Method

flux_profileIntegrate()

Computes the spectral flux

Method

frequency_gridFitNonLTE()

Frequency grid useful for atmospheric_profileFitNonLTE().

Method

frequency_gridWindShift()

Applies wind shift to the frequency_grid for the local frequency grid.

Method

get()

Gets the value of the variable with the given name.

Method

gravity_operatorCentralMass()

Sets a gravity operator from the gravitational constant and the mass of the planet

Method

has()

Checks if the workspace contains the variable.

Method

init()

Overloaded function.

Method

inversion_iterate_agendaExecute()

Executes inversion_iterate_agenda, see it for more details

Method

inversion_iterate_agendaExecuteOperator()

Executes an operator emulating inversion_iterate_agenda, see it, and also inversion_iterate_agendaOperator, for more details

Method

inversion_iterate_agendaSet()

Set inversion_iterate_agenda to a specific predefined option

Method

inversion_iterate_agendaSetOperator()

Set inversion_iterate_agenda to exclusively use provided external operator. See inversion_iterate_agendaOperator for more details.

Method

jacobian_targetsAddAtmosphere()

Sets an atmospheric target.

Method

jacobian_targetsAddErrorPolyFit()

Set a measurement error to polynomial fit.

Method

jacobian_targetsAddMagneticField()

Set magnetic field derivative.

Method

jacobian_targetsAddOverlappingMagneticField()

Set magnetic field derivative for overlapping fields.

Method

jacobian_targetsAddOverlappingWindField()

Set wind field derivative for overlapping fields.

Method

jacobian_targetsAddPressure()

Set pressure derivative.

Method

jacobian_targetsAddSensorFrequencyPolyOffset()

Set sensor frequency derivative to use polynomial fitting offset

Method

jacobian_targetsAddSpeciesIsotopologueRatio()

Set isotopologue ratio derivative

Method

jacobian_targetsAddSpeciesVMR()

Set volume mixing ratio derivative.

Method

jacobian_targetsAddSubsurface()

Sets a subsurface target

Method

jacobian_targetsAddSurface()

Sets a surface target

Method

jacobian_targetsAddTemperature()

Set temperature derivative.

Method

jacobian_targetsAddWindField()

Set wind field derivative.

Method

jacobian_targetsConditionalClear()

Clears jacobian_targets if do_jacobian evaluates false.

Method

jacobian_targetsFinalize()

Finalize jacobian_targets.

Method

jacobian_targetsInit()

Initialize or reset the jacobian_targets.

Method

jacobian_targetsOff()

Turns off jacobian_targets

Method

jacobian_targetsToggleLogRelAtmTarget()

Toggles logarithmic/relative or absolute retrievals.

Method

jacobian_targetsToggleLogRelSubsurfaceTarget()

Toggles logarithmic/relative or absolute retrievals.

Method

jacobian_targetsToggleLogRelSurfaceTarget()

Toggles logarithmic/relative or absolute retrievals.

Method

jacobian_targetsToggleLogarithmicAtmTarget()

Toggles logarithmic or absolute retrievals.

Method

jacobian_targetsToggleLogarithmicSubsurfaceTarget()

Toggles logarithmic or absolute retrievals.

Method

jacobian_targetsToggleLogarithmicSurfaceTarget()

Toggles logarithmic or absolute retrievals.

Method

jacobian_targetsToggleRelativeAtmTarget()

Toggles relative or absolute retrievals.

Method

jacobian_targetsToggleRelativeHumidityAtmTarget()

Toggles relative humidity or absolute retrievals.

Method

jacobian_targetsToggleRelativeSubsurfaceTarget()

Toggles relative or absolute retrievals.

Method

jacobian_targetsToggleRelativeSurfaceTarget()

Toggles relative or absolute retrievals.

Method

legendre_degreeFromDisortSettings()

Sets legendre_degree to disort_settings legendre_polynomial_dimension

Method

measurement_averaging_kernelCalc()

Calculate the averaging kernel matrix.

Method

measurement_inversion_agendaExecute()

Executes measurement_inversion_agenda, see it for more details

Method

measurement_inversion_agendaExecuteOperator()

Executes an operator emulating measurement_inversion_agenda, see it, and also measurement_inversion_agendaOperator, for more details

Method

measurement_inversion_agendaSet()

Set measurement_inversion_agenda to a specific predefined option

Method

measurement_inversion_agendaSetOperator()

Set measurement_inversion_agenda to exclusively use provided external operator. See measurement_inversion_agendaOperator for more details.

Method

measurement_jacobianAtmosphereTransformation()

Applies transformations to the atmospheric state Jacobian

Method

measurement_jacobianBandTransformation()

Applies transformations to the line-by-line state Jacobian

Method

measurement_jacobianSensorTransformation()

Applies transformations to the measurement sensor state Jacobian

Method

measurement_jacobianSubsurfaceTransformation()

Applies transformations to the subsurface state Jacobian

Method

measurement_jacobianSurfaceTransformation()

Applies transformations to the surface state Jacobian

Method

measurement_jacobianTransformations()

Apply all transformations to the Jacobian related to states in model_state_vectorFromData()

Method

measurement_sensorAddRawSensor()

Adds sensor elements from a raw perturbation of the sensor

Method

measurement_sensorAddSimple()

Adds a sensor with a dirac channel opening around the frequency grid.

Method

measurement_sensorAddSimpleGaussian()

Adds a sensor with a Gaussian channel opening around the frequency grid.

Method

measurement_sensorAddVectorGaussian()

Adds a sensor with a Gaussian channel opening around the frequency grid.

Method

measurement_sensorFromModelState()

Update measurement_sensor from model_state_vector.

Method

measurement_sensorInit()

Initialize measurement_sensor to empty.

Method

measurement_sensorMakeExclusive()

Make the measurement_sensor excluive.

Method

measurement_sensorSimple()

Creates a single simple dirac-opening sensor

Method

measurement_sensorSimpleGaussian()

Creates a single simple Gaussian-opening sensor

Method

measurement_sensorVectorGaussian()

Creates a single simple Gaussian-opening sensor

Method

measurement_vectorConditionalAddError()

Add the measurement error to the measurement. Conditionally, also to the Jacobian.

Method

measurement_vectorFromOperatorPath()

Sets measurement vector by looping over all sensor elements

Method

measurement_vectorFromSensor()

Sets measurement vector by looping over all sensor elements

Method

measurement_vector_errorFromModelState()

Set the error and its Jacobian from the state of the model.

Method

measurement_vector_error_covariance_matrixConstant()

Sets a constant measurement vector error covariance matrix.

Method

measurement_vector_error_covariance_matrix_observation_systemCalc()

Calculates the covariance matrix describing the error due to uncertainties in the observation system.

Method

measurement_vector_fittedFromMeasurement()

Sets the fitted measurement vector to the current measurement vector.

Method

model_state_covariance_matrixAddSpeciesVMR()

Set a species model state covariance matrix element.

Method

model_state_covariance_matrixInit()

Initialises the model state covariance matrix to the identity matrix.

Method

model_state_covariance_matrix_smoothing_errorCalc()

Calculates the covariance matrix describing the error due to smoothing.

Method

model_state_vectorFromAtmosphere()

Sets model_state_vector’s atmospheric part.

Method

model_state_vectorFromBands()

Sets model_state_vector’s absorption line part.

Method

model_state_vectorFromData()

Get model_state_vector from available data

Method

model_state_vectorFromSensor()

Sets model_state_vector’s sensor part.

Method

model_state_vectorFromSubsurface()

Sets model_state_vector’s subsurface part.

Method

model_state_vectorFromSurface()

Sets model_state_vector’s surface part.

Method

model_state_vectorInit()

Sets model_state_vector to the size jacobian_targets demand.

Method

model_state_vector_aprioriFromData()

Get model_state_vector_apriori from available data

Method

model_state_vector_aprioriFromState()

Sets the a priori state of the model state vector to the current state.

Method

nlte_line_flux_profileIntegrate()

Integrate the spectral flux profile to get the line non-LTE flux

Method

propagation_matrixAddCIA()

Add absorption coefficients for HITRAN collision induced absorption (CIA).

Method

propagation_matrixAddFaraday()

Calculates absorption matrix describing Faraday rotation.

Method

propagation_matrixAddLines()

Line-by-line calculations.

Method

propagation_matrixAddLookup()

Lookup calculations.

Method

propagation_matrixAddPredefined()

Adds all of the predefined models in absorption_species to the propagation_matrix

Method

propagation_matrixAddXsecFit()

Calculate absorption cross sections per tag group for HITRAN xsec species.

Method

propagation_matrixInit()

Initialize propagation_matrix, propagation_matrix_source_vector_nonlte, and their derivatives to zeroes.

Method

propagation_matrix_agendaAuto()

Sets the propagation_matrix_agenda automatically from absorption data and species tag meta information.

Method

propagation_matrix_agendaExecute()

Executes propagation_matrix_agenda, see it for more details

Method

propagation_matrix_agendaExecuteOperator()

Executes an operator emulating propagation_matrix_agenda, see it, and also propagation_matrix_agendaOperator, for more details

Method

propagation_matrix_agendaSet()

Set propagation_matrix_agenda to a specific predefined option

Method

propagation_matrix_agendaSetOperator()

Set propagation_matrix_agenda to exclusively use provided external operator. See propagation_matrix_agendaOperator for more details.

Method

propagation_matrix_jacobianWindFix()

Fix for the wind field derivative.

Method

propagation_matrix_scatteringAddSpectralScatteringSpeciesTRO()

Adds scattering_species results for totally random oriented spectral calculations to

Method

propagation_matrix_scatteringAirSimple()

Add simple air to propagation_matrix_scattering.

Method

propagation_matrix_scatteringInit()

Initialize propagation_matrix_scattering to zeroes.

Method

propagation_matrix_scatteringSpectralInit()

Initialize propagation_matrix_scattering and co to zeroes.

Method

propagation_matrix_scattering_agendaExecute()

Executes propagation_matrix_scattering_agenda, see it for more details

Method

propagation_matrix_scattering_agendaExecuteOperator()

Executes an operator emulating propagation_matrix_scattering_agenda, see it, and also propagation_matrix_scattering_agendaOperator, for more details

Method

propagation_matrix_scattering_agendaSet()

Set propagation_matrix_scattering_agenda to a specific predefined option

Method

propagation_matrix_scattering_agendaSetOperator()

Set propagation_matrix_scattering_agenda to exclusively use provided external operator. See propagation_matrix_scattering_agendaOperator for more details.

Method

propagation_matrix_scattering_spectral_agendaExecute()

Executes propagation_matrix_scattering_spectral_agenda, see it for more details

Method

propagation_matrix_scattering_spectral_agendaExecuteOperator()

Executes an operator emulating propagation_matrix_scattering_spectral_agenda, see it, and also propagation_matrix_scattering_spectral_agendaOperator, for more details

Method

propagation_matrix_scattering_spectral_agendaSet()

Set propagation_matrix_scattering_spectral_agenda to a specific predefined option

Method

propagation_matrix_scattering_spectral_agendaSetOperator()

Set propagation_matrix_scattering_spectral_agenda to exclusively use provided external operator. See propagation_matrix_scattering_spectral_agendaOperator for more details.

Method

ray_pathAddGeometricGridCrossings()

Fill the path with with points that crosses the grid of the atmspheric field.

Method

ray_pathAddLimbPoint()

Add the limb point to the ray path

Method

ray_pathFillGeometricHalfStep()

Fill the path with geometric step points.

Method

ray_pathFillGeometricStepwise()

Fill the path with geometric step points.

Method

ray_pathFixUpdownAzimuth()

Fix azimuth angle errors that can occur for 180 and 0 degrees zenith.

Method

ray_pathGeometric()

Get a geometric radiation path

Method

ray_pathGeometricDownlooking()

Wraps ray_pathGeometric() for straight downlooking paths from the top-of-the-atmosphere altitude

Method

ray_pathGeometricUplooking()

Wraps ray_pathGeometric() for straight uplooking paths from the surface altitude at the position

Method

ray_pathInit()

Initialize the ray path with a single point.

Method

ray_pathRemoveNearby()

Remove points that are too close to each other.

Method

ray_pathRemoveNonAtm()

Remove non-atmospheric points to the ray path

Method

ray_pathRemoveNonGeometricGridCrossings()

Remove all non-geometric grid crossings from the ray path.

Method

ray_pathSetGeometricExtremes()

Add the geometric extremes to the ray path.

Method

ray_path_atmospheric_pointFromPath()

Gets the atmospheric points along the path.

Method

ray_path_atmospheric_pointFromProfile()

Set ray_path_atmospheric_point = atmospheric_profile.

Method

ray_path_fieldFluxProfile()

Adds observers that covers all zenith angles for each altitude point.

Method

ray_path_fieldFromObserverAgenda()

Create a ray path field from a set of observers.

Method

ray_path_frequency_gridFromPath()

Gets the frequency grids along the path.

Method

ray_path_observer_agendaExecute()

Executes ray_path_observer_agenda, see it for more details

Method

ray_path_observer_agendaExecuteOperator()

Executes an operator emulating ray_path_observer_agenda, see it, and also ray_path_observer_agendaOperator, for more details

Method

ray_path_observer_agendaSetGeometric()

Set ray_path_observer_agenda from programmable geometric settings.

Method

ray_path_observer_agendaSetOperator()

Set ray_path_observer_agenda to exclusively use provided external operator. See ray_path_observer_agendaOperator for more details.

Method

ray_path_observersFieldProfilePseudo2D()

Get a list of observer positions and line of sights to represent observing all angles of a profile.

Method

ray_path_observersFluxProfile()

Add \(n\) observers per altitude point.

Method

ray_path_pointBackground()

Sets ray_path_point to the expected background point of ray_path

Method

ray_path_pointForeground()

Sets ray_path_point to the expected foreground point of ray_path

Method

ray_path_pointHighestFromPath()

Sets ray_path_point to the highest altitude point of ray_path.

Method

ray_path_pointLowestFromPath()

Sets ray_path_point to the lowest altitude point of ray_path.

Method

ray_path_propagation_matrixAddScattering()

Adds the scattering part of the propagation matrix to the rest along the path.

Method

ray_path_propagation_matrixFromPath()

Gets the propagation matrix and non-LTE source term along the path.

Method

ray_path_propagation_matrix_scatteringFromPath()

Gets the propagation matrix for scattering along the path.

Method

ray_path_propagation_matrix_scatteringFromSpectralAgenda()

Compute ray_path_propagation_matrix_scattering and co for a path.

Method

ray_path_propagation_matrix_species_splitFromPath()

As ray_path_propagation_matrixFromPath() but the output is split between the species in the

Method

ray_path_spectral_radiance_scatteringSunsFirstOrderRayleigh()

Add suns to ray_path_spectral_radiance_source.

Method

ray_path_spectral_radiance_sourceAddScattering()

Adds the scattering part of the propagation matrix to the rest along the path.

Method

ray_path_spectral_radiance_sourceFromPropmat()

Gets the source term along the path.

Method

ray_path_suns_pathFromPathObserver()

Wraps sun_pathFromObserverAgenda() for all paths to all suns.

Method

ray_path_transmission_matrixFromPath()

Gets the transmission matrix in layers along the path.

Method

ray_path_transmission_matrix_cumulativeFromPath()

Sets ray_path_transmission_matrix_cumulative by forward iteration of ray_path_transmission_matrix

Method

ray_path_zeeman_magnetic_fieldFromPath()

Sets a path of Zeeman effect magnetic field properties.

Method

readxml()

Read variable from file

Method

savexml()

Saves variable to file

Method

scattering_speciesInit()

Initialize scattering species.

Method

select_species_listCollectAbsorption()

Selects all main absorbers from the absorption data.

Method

set()

Set the variable to the new value.

Method

sortedIndexOfBands()

Get the sorting of the bands by first quantum identifier then some criteria

Method

spectral_flux_profileFromPathField()

Computes the spectral flux from a field of paths.

Method

spectral_flux_profileFromSpectralRadianceField()

Computes the spectral flux. The input field must be a profile.

Method

spectral_flux_profilePseudo2D()

Computes the spectral flux profile using pseudo-2D geometry

Method

spectral_radianceApplyForwardUnit()

Helper to call spectral_radianceApplyUnit() when you do not have spectral_radiance_jacobian.

Method

spectral_radianceApplyUnit()

Applies a unit to spectral_radiance, returning a new field

Method

spectral_radianceApplyUnitFromSpectralRadiance()

Helper method for calling spectral_radianceApplyUnit().

Method

spectral_radianceClearskyBackgroundTransmission()

Computes clearsky transmission of spectral radiances

Method

spectral_radianceClearskyEmission()

Computes clearsky emission of spectral radiances

Method

spectral_radianceClearskyRayleighScattering()

Computes clearsky emission of spectral radiances with solar Rayleigh scattering

Method

spectral_radianceClearskyTransmission()

Computes clearsky transmission of spectral radiances

Method

spectral_radianceCumulativeTransmission()

Gets the spectral radiance from the path transmission.

Method

spectral_radianceDefaultTransmission()

Sets default spectral_radiance and spectral_radiance_jacobian for transmission.

Method

spectral_radianceFlatScalarReflectance()

Set surface spectral radiance from Planck function of the surface temperature and the reflectance of incoming radiation

Method

spectral_radianceIntegrateDisort()

Integrate Disort spectral radiance.

Method

spectral_radianceStepByStepEmission()

Gets the spectral radiance from the path.

Method

spectral_radianceSunOrCosmicBackground()

Get the spectral radiance of a sun or of the cosmic background if the sun is not hit.

Method

spectral_radianceSunsOrCosmicBackground()

Get the spectral radiance of a sun or of the cosmic background if no sun is hit.

Method

spectral_radianceSurfaceBlackbody()

Set surface spectral radiance from Planck function of the surface temperature

Method

spectral_radianceUniformCosmicBackground()

Background spectral radiance is from a uniform cosmic background temperature.

Method

spectral_radiance_backgroundAgendasAtEndOfPath()

Computes the background radiation.

Method

spectral_radiance_fieldFromOperatorPath()

Computes the spectral radiance field using ray_path_observer_agenda.

Method

spectral_radiance_fieldFromOperatorPlanarGeometric()

Computes the spectral radiance field assuming planar geometric paths

Method

spectral_radiance_fieldProfilePseudo2D()

Computes the spectral radiance field assuming a profile and a pseudo-2D path.

Method

spectral_radiance_jacobianAddPathPropagation()

Adds the propagation variables to spectral_radiance_jacobian

Method

spectral_radiance_jacobianAddSensorJacobianPerturbations()

Adds sensor properties to the spectral_radiance_jacobian.

Method

spectral_radiance_jacobianEmpty()

Set the cosmic background radiation derivative to empty.

Method

spectral_radiance_jacobianFromBackground()

Sets spectral_radiance_jacobian from the background values

Method

spectral_radiance_observer_agendaExecute()

Executes spectral_radiance_observer_agenda, see it for more details

Method

spectral_radiance_observer_agendaExecuteOperator()

Executes an operator emulating spectral_radiance_observer_agenda, see it, and also spectral_radiance_observer_agendaOperator, for more details

Method

spectral_radiance_observer_agendaSet()

Set spectral_radiance_observer_agenda to a specific predefined option

Method

spectral_radiance_observer_agendaSetOperator()

Set spectral_radiance_observer_agenda to exclusively use provided external operator. See spectral_radiance_observer_agendaOperator for more details.

Method

spectral_radiance_operatorClearsky1D()

Set up a 1D spectral radiance operator

Method

spectral_radiance_space_agendaExecute()

Executes spectral_radiance_space_agenda, see it for more details

Method

spectral_radiance_space_agendaExecuteOperator()

Executes an operator emulating spectral_radiance_space_agenda, see it, and also spectral_radiance_space_agendaOperator, for more details

Method

spectral_radiance_space_agendaSet()

Set spectral_radiance_space_agenda to a specific predefined option

Method

spectral_radiance_space_agendaSetOperator()

Set spectral_radiance_space_agenda to exclusively use provided external operator. See spectral_radiance_space_agendaOperator for more details.

Method

spectral_radiance_surface_agendaExecute()

Executes spectral_radiance_surface_agenda, see it for more details

Method

spectral_radiance_surface_agendaExecuteOperator()

Executes an operator emulating spectral_radiance_surface_agenda, see it, and also spectral_radiance_surface_agendaOperator, for more details

Method

spectral_radiance_surface_agendaSet()

Set spectral_radiance_surface_agenda to a specific predefined option

Method

spectral_radiance_surface_agendaSetOperator()

Set spectral_radiance_surface_agenda to exclusively use provided external operator. See spectral_radiance_surface_agendaOperator for more details.

Method

spectral_radiance_transform_operatorSet()

Creates a SpectralRadianceTransformOperator from a SpectralRadianceUnitType.

Method

subsurface_fieldFromModelState()

Sets subsurface_field to the state of the model.

Method

sunBlackbody()

Set sun to blackbody.

Method

sunFromGrid()

Extracts a sun spectrum from a field of such data.

Method

sun_pathFromObserverAgenda()

Find a path that hits the sun if possible

Method

sunsAddSun()

Add sun to suns, only exist for composability.

Method

surface_fieldEarth()

Earth reference ellipsoids.

Method

surface_fieldEuropa()

Europa reference ellipsoids.

Method

surface_fieldFromModelState()

Sets surface_field to the state of the model.

Method

surface_fieldGanymede()

Ganymede reference ellipsoids.

Method

surface_fieldInit()

Manual setting of the reference ellipsoid.

Method

surface_fieldIo()

Io reference ellipsoids.

Method

surface_fieldJupiter()

Jupiter reference ellipsoids.

Method

surface_fieldMars()

Mars reference ellipsoids.

Method

surface_fieldMoon()

Moon reference ellipsoids.

Method

surface_fieldPlanet()

Initialize the surface field with the ellipsoid of a planet.

Method

surface_fieldVenus()

Venus reference ellipsoids.

Method

swap()

Swap the workspace for andother.

Method

transmission_matrix_backgroundFromPathPropagationBack()

Sets transmission_matrix_background to back of ray_path_transmission_matrix_cumulative.

Method

transmission_matrix_backgroundFromPathPropagationFront()

Sets transmission_matrix_background to front of ray_path_transmission_matrix_cumulative.

Method

water_equivalent_pressure_operatorMK05()

Sets an operator to compute the water equivalent pressure according to Murphy and Koop, 2005.

Method

zenith_gridProfilePseudo2D()

A custom zenith grid for spectral_radiance_fieldProfilePseudo2D()

Static Method

fromxml()

Create variable from file

Attribute

absorption_bands

Bands of absorption lines for line-by-line (LBL) calculations.

Attribute

absorption_cia_data

HITRAN Collision-Induced Absorption (CIA) Data.

Attribute

absorption_lookup_table

Absorption lookup table for scalar gas absorption coefficients.

Attribute

absorption_predefined_model_data

This contains predefined model data.

Attribute

absorption_species

Tag groups for gas absorption.

Attribute

absorption_vector_scattering

The absorption vector of totally random orientation particles at a single point along a path using spectral representation

Attribute

absorption_xsec_fit_data

Fitting model coefficients for cross section species.

Attribute

altitude

A single altitude in the atmosphere.

Attribute

altitude_grid

An ascending list of altitude. Often related to a field or a profile.

Attribute

atmospheric_field

An atmospheric field in ARTS.

Attribute

atmospheric_point

An atmospheric point in ARTS.

Attribute

atmospheric_profile

An atmospheric profile in ARTS.

Attribute

covariance_matrix_diagonal_blocks

A helper map for setting the covariance matrix.

Attribute

disort_fourier_mode_dimension

The number of Fourier modes for Disort.

Attribute

disort_legendre_polynomial_dimension

The number of input Legendre polynimials for Disort.

Attribute

disort_quadrature

The quadrature angles for Disort with accompying weights.

Attribute

disort_quadrature_dimension

The quadrature size for Disort.

Attribute

disort_settings

Contains the full settings of spectral Disort calculations.

Attribute

disort_settings_agenda

An agenda for setting up Disort.

Attribute

disort_spectral_flux_field

The spectral flux field from Disort.

Attribute

disort_spectral_radiance_field

The spectral radiance field from Disort.

Attribute

do_jacobian

A boolean calculations related to the measurement_jacobian should be ignored.

Attribute

ecs_data

Error corrected sudden data

Attribute

frequency_grid

A single frequency grid.

Attribute

frequency_grid_wind_shift_jacobian

The frequency grid wind shift Jacobian.

Attribute

gravity_operator

The gravity operator.

Attribute

inversion_iterate_agenda

Work in progress …

Attribute

inversion_iterate_agenda_counter

A counter for the inversion iterate agenda.

Attribute

jacobian_targets

A list of targets for the Jacobian Matrix calculations.

Attribute

latitude

A single latitude.

Attribute

latitude_grid

An ascending list of latitude. Often related to a field or a profile.

Attribute

legendre_degree

The degree of a Legendre polynimial.

Attribute

longitude

A single longitude.

Attribute

longitude_grid

An ascending list of longitude. Often related to a field or a profile.

Attribute

measurement_averaging_kernel

Averaging kernel matrix.

Attribute

measurement_gain_matrix

Contribution function (or gain) matrix.

Attribute

measurement_inversion_agenda

This is a helper Agenda intended for use within inversion_iterate_agenda.

Attribute

measurement_jacobian

The first order partial derivatives of the measurement_vector.

Attribute

measurement_jacobian_error

The partial derivatives of the measurement_vector_error.

Attribute

measurement_sensor

A list of sensor elements.

Attribute

measurement_vector

The measurment vector for, e.g., a sensor.

Attribute

measurement_vector_error

The model measurment vector error for, e.g., a sensor.

Attribute

measurement_vector_error_covariance_matrix

Covariance matrix for observation uncertainties.

Attribute

measurement_vector_fitted

As measurement_vector, but fitted to the model.

Attribute

model_state_covariance_matrix

Covariance matrix of a priori distribution.

Attribute

model_state_vector

A state vector of the model.

Attribute

model_state_vector_apriori

An apriori state vector of the model.

Attribute

nlte_line_flux_profile

A per-line flux profile.

Attribute

phase_matrix_scattering_spectral

The spectral phase matrix of totally random orientation particles at a single point along a path using spectral representation

Attribute

propagation_matrix

This contains the fully polarized propagation matrix for the current path point.

Attribute

propagation_matrix_agenda

Compute the propagation matrix, the non-LTE source vector, and their derivatives.

Attribute

propagation_matrix_jacobian

Partial derivative of the propagation_matrix with regards to jacobian_targets.

Attribute

propagation_matrix_scattering

The propgation matrix of totally random orientation particles at a single point along a path using spectral representation

Attribute

propagation_matrix_scattering_agenda

Compute the part of the propagation matrix that relates to scattering.

Attribute

propagation_matrix_scattering_spectral_agenda

Get the scattering propagation matrix, the scattering absorption vector, and the scattering spectral phase matrix.

Attribute

propagation_matrix_source_vector_nonlte

The part of the source vector that is due to non-LTE.

Attribute

propagation_matrix_source_vector_nonlte_jacobian

Partial derivative of the propagation_matrix_source_vector_nonlte with regards to jacobian_targets.

Attribute

ray_path

A list path points making up a propagation path.

Attribute

ray_path_absorption_vector_scattering

The absorption vector of totally random orientation particles along the propagation path using spectral representation

Attribute

ray_path_atmospheric_point

Atmospheric points along the propagation path.

Attribute

ray_path_field

A list of ray_path intended to build up a field of observations.

Attribute

ray_path_frequency_grid

All frequency_grid along the propagation path.

Attribute

ray_path_frequency_grid_wind_shift_jacobian

A list of frequency_grid_wind_shift_jacobian for a ray path.

Attribute

ray_path_observer_agenda

Get the propagation path as it is obeserved.

Attribute

ray_path_observers

A list path points making up the observers of a propagation path.

Attribute

ray_path_phase_matrix_scattering_spectral

The spectral phase matrix of totally random orientation particles along the propagation path using spectral representation

Attribute

ray_path_point

A single path point.

Attribute

ray_path_propagation_matrix

Propagation matrices along the propagation path

Attribute

ray_path_propagation_matrix_jacobian

Propagation derivative matrices along the propagation path

Attribute

ray_path_propagation_matrix_scattering

Propagation matrices along the propagation path for scattering

Attribute

ray_path_propagation_matrix_source_vector_nonlte

Additional non-LTE along the propagation path

Attribute

ray_path_propagation_matrix_source_vector_nonlte_jacobian

Additional non-LTE derivative along the propagation path

Attribute

ray_path_spectral_radiance_jacobian

Spectral radiance derivative along the propagation path

Attribute

ray_path_spectral_radiance_scattering

Spectral radiance scattered into the propagation path

Attribute

ray_path_spectral_radiance_source

Source vectors along the propagation path

Attribute

ray_path_spectral_radiance_source_jacobian

Source derivative vectors along the propagation path

Attribute

ray_path_suns_path

A list of paths to the suns from the ray path.

Attribute

ray_path_transmission_matrix

Transmission matrices along the propagation path.

Attribute

ray_path_transmission_matrix_cumulative

Cumulative transmission matrices along the propagation path

Attribute

ray_path_transmission_matrix_jacobian

Transmission derivative matrices along the propagation path.

Attribute

scattering_species

The scattering species

Attribute

select_species

Species selection.

Attribute

select_species_list

Species selection.

Attribute

spectral_flux_profile

An altitude profile of spectral flux.

Attribute

spectral_radiance

A spectral radiance vector.

Attribute

spectral_radiance_background

Spectral radiance from the background

Attribute

spectral_radiance_background_jacobian

Spectral radiance derivative from the background

Attribute

spectral_radiance_field

The spectral radiance field.

Attribute

spectral_radiance_jacobian

Jacobian of spectral_radiance with respect to jacobian_targets.

Attribute

spectral_radiance_observer_agenda

Spectral radiance as seen from the input position and environment

Attribute

spectral_radiance_observer_line_of_sight

The line-of-sight of the observer of spectral radiance.

Attribute

spectral_radiance_observer_position

The position of an observer of spectral radiance.

Attribute

spectral_radiance_operator

The spectral radiance operator.

Attribute

spectral_radiance_space_agenda

Spectral radiance as seen of space.

Attribute

spectral_radiance_surface_agenda

Spectral radiance as seen of the surface.

Attribute

spectral_radiance_transform_operator

The spectral radiance transform operator

Attribute

subsurface_field

The sub0surface field describes the sub-surface properties.

Attribute

sun

A sun.

Attribute

sun_path

A path to a sun if it is visible.

Attribute

suns

A list of Sun.

Attribute

surface_field

The surface field describes the surface properties.

Attribute

transmission_matrix_background

Transmittance from the background

Attribute

water_equivalent_pressure_operator

The water equivalent pressure operator.

Attribute

zenith_grid

A single zenith angle grid.

Operator

__eq__()

Return self==value.

Operator

__format__()

__format__(self, arg: str, /) -> str

Operator

__ge__()

Return self>=value.

Operator

__getstate__()

Helper for pickle.

Operator

__gt__()

Return self>value.

Operator

__hash__()

Return hash(self).

Operator

__init__()

__init__(self, with_defaults: bool = True) -> None

Operator

__iter__()

Allows iter(self)

Operator

__le__()

Return self<=value.

Operator

__lt__()

Return self<value.

Operator

__ne__()

Return self!=value.

Operator

__repr__()

__repr__(self) -> str

Operator

__str__()

__str__(self) -> str

Constructors

__init__(self, with_defaults: bool = True) None

Methods

Ignore(self, input: object | None = None) None

Ignore a workspace variable.

This method is handy for use in agendas in order to suppress warnings about unused input workspace variables. What it does is: Nothing! In other words, it just ignores the variable it is called on.

This method can ignore any workspace variable you want.

Author: Stefan Buehler

Parameters:

input (Any) – Variable to be ignored. [IN]

OEM(self, model_state_vector: pyarts3.arts.Vector | None = None, measurement_vector_fitted: pyarts3.arts.Vector | None = None, measurement_jacobian: pyarts3.arts.Matrix | None = None, atmospheric_field: pyarts3.arts.AtmField | None = None, absorption_bands: pyarts3.arts.AbsorptionBands | None = None, measurement_sensor: pyarts3.arts.ArrayOfSensorObsel | None = None, surface_field: pyarts3.arts.SurfaceField | None = None, subsurface_field: pyarts3.arts.SubsurfaceField | None = None, measurement_gain_matrix: pyarts3.arts.Matrix | None = None, oem_diagnostics: pyarts3.arts.Vector | None = None, lm_ga_history: pyarts3.arts.Vector | None = None, errors: pyarts3.arts.ArrayOfString | None = None, jacobian_targets: pyarts3.arts.JacobianTargets | None = None, model_state_vector_apriori: pyarts3.arts.Vector | None = None, model_state_covariance_matrix: pyarts3.arts.CovarianceMatrix | None = None, measurement_vector: pyarts3.arts.Vector | None = None, measurement_vector_error_covariance_matrix: pyarts3.arts.CovarianceMatrix | None = None, inversion_iterate_agenda: pyarts3.arts.Agenda | None = None, method: pyarts3.arts.String | None = None, max_start_cost: pyarts3.arts.Numeric | None = None, model_state_covariance_matrix_normalization: pyarts3.arts.Vector | None = None, max_iter: pyarts3.arts.Index | None = None, stop_dx: pyarts3.arts.Numeric | None = None, lm_ga_settings: pyarts3.arts.Vector | None = None, clear_matrices: pyarts3.arts.Index | None = None, display_progress: pyarts3.arts.Index | None = None) None

Inversion by the so called optimal estimation method (OEM).

Work in progress …

The cost function to minimise, including a normalisation with length of measurement_vector, is:

\[\chi^2 = \chi^2_y + \chi^2_x\]

where:

\[\chi^2_y = \frac{1}{m} \left(\vec{y}-\vec{y}_f\right)^\top \mathbf{S}_\epsilon^{-1} \left(\vec{y}-\vec{y}_f\right)\]
\[\chi^2_x = \frac{1}{m} \left(\vec{x}-\vec{x}_a\right)^\top \mathbf{S}_a^{-1} \left(\vec{x}-\vec{x}_a\right)\]

where:

Variable

ARTS parameter

Meaning

\(\vec{x}\)

model_state_vector

The model state vector. All model states that are allowed to vary.

\(\vec{x}_a\)

model_state_vector_apriori

The a priori model state vector.

\(\vec{y}\)

measurement_vector

The measurement vector. This is the measurement that the OEM is trying to fit.

\(\vec{y}_f\)

measurement_vector_fitted

The fitted measurement vector. The simulated measurement vector for the model state vector.

\(\mathbf{S}_\epsilon\)

measurement_vector_error_covariance_matrix

The error covariance matrix of the measurement vector.

\(\mathbf{S}_a\)

model_state_covariance_matrix

The a priori covariance matrix of the model state vector.

The current implementation provides 3 methods for the minimization of the cost functional: Linear, Gauss-Newton and Levenberg-Marquardt. The Gauss-Newton minimizer attempts to find a minimum solution by fitting a quadratic function to the cost functional. The linear minimizer is a special case of the Gauss-Newton method, since for a linear forward model the exact solution of the minimization problem is obtained after the first step. The Levenberg-Marquardt method adaptively constrains the search region for the next iteration step by means of the so-called gamma-factor. This makes the method more suitable for strongly non-linear problems. If the gamma-factor is 0, Levenberg-Marquardt and Gauss-Newton method are identical. Each minimization method (li,gn,lm) has an indirect variant (li_cg,gn_cg,lm_cg), which uses the conjugate gradient solver for the linear system that has to be solved in each minimzation step. This of advantage for very large problems, that would otherwise require the computation of expensive matrix products.

Description of the special input arguments:

  • method:

    • "li": A linear problem is assumed and a single iteration is performed.

    • "li_cg": A linear problem is assumed and solved using the CG solver.

    • "gn": Non-linear, with Gauss-Newton iteration scheme.

    • "gn_cg": Non-linear, with Gauss-Newton and conjugate gradient solver.

    • "lm": Non-linear, with Levenberg-Marquardt (LM) iteration scheme.

    • "lm_cg": Non-linear, with Levenberg-Marquardt (LM) iteration scheme and conjugate gradient solver.

  • max_start_cost:

    No inversion is done if the cost matching the a priori state is above this value. If set to a negative value, all values are accepted. This argument also controls if the start cost is calculated. If set to <= 0, the start cost in oem_diagnostics is set to NaN when using “li” and “gn”.

  • x_norm:

    A normalisation vector for model_state_vector. A normalisation of model_state_vector can be needed due to limited numerical precision. If this vector is set to be empty no normalisation is done (defualt case). Otherwise, this must be a vector with same length as model_state_vector, just having values above zero. Elementwise division between model_state_vector and x_norm (x./x_norm) shall give a vector where all values are in the order of unity. Maybe the best way to set x_norm is x_norm = sqrt( diag( Sx ) ).

  • max_iter:

    Maximum number of iterations to perform. No effect for “li”.

  • stop_dx:n”

    Iteration stop criterion. The criterion used is the same as given in Rodgers' “Inverse Methods for Atmospheric Sounding”

  • lm_ga_settings:

    Settings controlling the gamma factor, part of the “LM” method. This is a vector of length 6, having the elements (0-based index):

    1. Start value.

    2. Fractional decrease after succesfull iteration.

    3. Fractional increase after unsuccessful iteration.

    4. Maximum allowed value. If the value is passed, the inversion is halted.

    5. Lower treshold. If the threshold is passed, gamma is set to zero. If gamma must be increased from zero, gamma is set to this value.

    6. Gamma limit. This is an additional stop criterion. Convergence is not considered until there has been one succesful iteration having a gamma <= this value.

    The default setting triggers an error if “lm” is selected.

  • clear matrices:

    With this flag set to 1, measurement_jacobian and measurement_gain_matrix are returned as empty matrices.

  • display_progress:

    Controls if there is any screen output. The overall report level is ignored by this WSM.

Author: Patrick Eriksson

Parameters:
  • model_state_vector (Vector, optional) – A state vector of the model. See model_state_vector, defaults to self.model_state_vector [INOUT]

  • measurement_vector_fitted (Vector, optional) – As measurement_vector, but fitted to the model. See measurement_vector_fitted, defaults to self.measurement_vector_fitted [INOUT]

  • measurement_jacobian (Matrix, optional) – The first order partial derivatives of the measurement_vector. See measurement_jacobian, defaults to self.measurement_jacobian [INOUT]

  • atmospheric_field (AtmField, optional) – An atmospheric field in ARTS. See atmospheric_field, defaults to self.atmospheric_field [INOUT]

  • absorption_bands (AbsorptionBands, optional) – Bands of absorption lines for line-by-line (LBL) calculations. See absorption_bands, defaults to self.absorption_bands [INOUT]

  • measurement_sensor (ArrayOfSensorObsel, optional) – A list of sensor elements. See measurement_sensor, defaults to self.measurement_sensor [INOUT]

  • surface_field (SurfaceField, optional) – The surface field describes the surface properties. See surface_field, defaults to self.surface_field [INOUT]

  • subsurface_field (SubsurfaceField, optional) – The sub0surface field describes the sub-surface properties. See subsurface_field, defaults to self.subsurface_field [INOUT]

  • measurement_gain_matrix (Matrix, optional) – Contribution function (or gain) matrix. See measurement_gain_matrix, defaults to self.measurement_gain_matrix [OUT]

  • oem_diagnostics (Vector) – Basic diagnostics of an OEM type inversion. Defaults to create and/or use self.oem_diagnostics : Vector. [OUT]

  • lm_ga_history (Vector) – The series of gamma values for a Marquardt-levenberg inversion. Defaults to create and/or use self.lm_ga_history : Vector. [OUT]

  • errors (ArrayOfString) – Errors encountered during OEM execution. Defaults to create and/or use self.errors : ArrayOfString. [OUT]

  • jacobian_targets (JacobianTargets, optional) – A list of targets for the Jacobian Matrix calculations. See jacobian_targets, defaults to self.jacobian_targets [IN]

  • model_state_vector_apriori (Vector, optional) – An apriori state vector of the model. See model_state_vector_apriori, defaults to self.model_state_vector_apriori [IN]

  • model_state_covariance_matrix (CovarianceMatrix, optional) – Covariance matrix of a priori distribution. See model_state_covariance_matrix, defaults to self.model_state_covariance_matrix [IN]

  • measurement_vector (Vector, optional) – The measurment vector for, e.g., a sensor. See measurement_vector, defaults to self.measurement_vector [IN]

  • measurement_vector_error_covariance_matrix (CovarianceMatrix, optional) – Covariance matrix for observation uncertainties. See measurement_vector_error_covariance_matrix, defaults to self.measurement_vector_error_covariance_matrix [IN]

  • inversion_iterate_agenda (Agenda, optional) – Work in progress … See inversion_iterate_agenda, defaults to self.inversion_iterate_agenda [IN]

  • method (String) – Iteration method. For this and all options below, see further above. [IN]

  • max_start_cost (Numeric, optional) – Maximum allowed value of cost function at start. Defaults to inf [IN]

  • model_state_covariance_matrix_normalization (Vector, optional) – Normalisation of Sx. Defaults to [] [IN]

  • max_iter (Index, optional) – Maximum number of iterations. Defaults to 10 [IN]

  • stop_dx (Numeric, optional) – Stop criterion for iterative inversions. Defaults to 0.01 [IN]

  • lm_ga_settings (Vector, optional) – Settings associated with the ga factor of the LM method. Defaults to [] [IN]

  • clear_matrices (Index, optional) – An option to save memory. Defaults to 0 [IN]

  • display_progress (Index, optional) – Flag to control if inversion diagnostics shall be printed on the screen. Defaults to 0 [IN]

ReadCatalogData(self, absorption_predefined_model_data: pyarts3.arts.PredefinedModelData | None = None, absorption_xsec_fit_data: pyarts3.arts.ArrayOfXsecRecord | None = None, absorption_cia_data: pyarts3.arts.ArrayOfCIARecord | None = None, absorption_bands: pyarts3.arts.AbsorptionBands | None = None, absorption_species: pyarts3.arts.ArrayOfArrayOfSpeciesTag | None = None, basename: pyarts3.arts.String | None = None, ignore_missing: pyarts3.arts.Index | None = None) None

Reads split catalog data from a folder structure similar to arts-cat-data

Wraps:

Author: Richard Larsson

Parameters:
  • absorption_predefined_model_data (PredefinedModelData, optional) – This contains predefined model data. See absorption_predefined_model_data, defaults to self.absorption_predefined_model_data [OUT]

  • absorption_xsec_fit_data (ArrayOfXsecRecord, optional) – Fitting model coefficients for cross section species. See absorption_xsec_fit_data, defaults to self.absorption_xsec_fit_data [OUT]

  • absorption_cia_data (ArrayOfCIARecord, optional) – HITRAN Collision-Induced Absorption (CIA) Data. See absorption_cia_data, defaults to self.absorption_cia_data [OUT]

  • absorption_bands (AbsorptionBands, optional) – Bands of absorption lines for line-by-line (LBL) calculations. See absorption_bands, defaults to self.absorption_bands [OUT]

  • absorption_species (ArrayOfArrayOfSpeciesTag, optional) – Tag groups for gas absorption. See absorption_species, defaults to self.absorption_species [IN]

  • basename (String, optional) – Absolute or relative path to the data. Defaults to "" [IN]

  • ignore_missing (Index, optional) – Ignore missing files instead of throwing an error. Defaults to 0 [IN]

ReadXML(self, output: object | None = None, filename: pyarts3.arts.String | None = None) None

Reads a workspace variable from an XML file.

This method can read variables of any group.

If the given filename does not exist, this method will also look for files with an added .xml, .xml.gz and .gz extension

Author: Oliver Lemke

Parameters:
  • output (Any) – Variable to be read. Defaults to create and/or use self.output : Any. [OUT]

  • filename (String) – Name of the XML file. [IN]

ReadXMLIndexed(self, output: object | None = None, file_index: pyarts3.arts.Index | None = None, filename: pyarts3.arts.String | None = None, digits: pyarts3.arts.Index | None = None) None

As ReadXML(), but reads indexed file names.

The variable is read from a file with name:

<filename>.<file_index>.xml.

where <file_index> is the value of file_index.

This means that filename shall here not include the .xml extension.

Author: Oliver Lemke

Parameters:
  • output (Any) – Workspace variable to be read. Defaults to create and/or use self.output : Any. [OUT]

  • file_index (Index) – Index of the file to read. [IN]

  • filename (String) – File name. See above. [IN]

  • digits (Index, optional) – Equalize the widths of all numbers by padding with zeros as necessary. 0 means no padding (default). Defaults to 0 [IN]

RetrievalAddAtmosphere(self, jacobian_targets: pyarts3.arts.JacobianTargets | None = None, covariance_matrix_diagonal_blocks: pyarts3.arts.JacobianTargetsDiagonalCovarianceMatrixMap | None = None, target: pyarts3.arts.AtmKey | pyarts3.arts.SpeciesEnum | pyarts3.arts.SpeciesIsotope | pyarts3.arts.QuantumLevelIdentifier | None = None, d: pyarts3.arts.Numeric | None = None, matrix: pyarts3.arts.BlockMatrix | None = None, inverse: pyarts3.arts.BlockMatrix | None = None) None

Sets an atmospheric target.

This method wraps jacobian_targetsAddAtmosphere() together with adding the covariance matrices, to the covariance_matrix_diagonal_blocks, which are required to perform OEM().

The input covariance matrices must fit the size of the later computed model state represented by the jacobian_targets. The covariance matrix inverse

Author: Richard Larsson

Parameters:
RetrievalAddErrorPolyFit(self, jacobian_targets: pyarts3.arts.JacobianTargets | None = None, covariance_matrix_diagonal_blocks: pyarts3.arts.JacobianTargetsDiagonalCovarianceMatrixMap | None = None, measurement_sensor: pyarts3.arts.ArrayOfSensorObsel | None = None, t: pyarts3.arts.Vector | None = None, sensor_elem: pyarts3.arts.Index | None = None, polyorder: pyarts3.arts.Index | None = None, matrix: pyarts3.arts.BlockMatrix | None = None, inverse: pyarts3.arts.BlockMatrix | None = None) None

Set a measurement error to polynomial fit.

This is a generic error that is simply added to measurement_vector as if

\[y = y_0 + \epsilon(p_0,\; p_1,\; \cdots,\; p_n),\]

where \(y\) represents measurement_vector and \(y_0\) is the measurement vector without any errors)

Order 0 means constant: \(y = y_0 + a\)

Order 1 means linear: \(y = y_0 + a + b t\)

and so on. The derivatives that are added to the model_state_vector are those with regards to a, b, etc..

Note

The rule for the sensor_elem GIN is a bit complex. Generally, methods such as measurement_sensorAddSimple() will simply add a single unique frequency grid to all the different SensorObsel that they add to the measurement_sensor. The GIN sensor_elem is 0 for the first unique frequency grid, 1 for the second, and so on. See ArrayOfSensorObsel member methods in python for help identifying and manipulating how many unique frequency grids are available in measurement_sensor.

This method wraps jacobian_targetsAddErrorPolyFit() together with adding the covariance matrices, to the covariance_matrix_diagonal_blocks, which are required to perform OEM().

The input covariance matrices must fit the size of the later computed model state represented by the jacobian_targets. The covariance matrix inverse

Author: Richard Larsson

Parameters:
  • jacobian_targets (JacobianTargets, optional) – A list of targets for the Jacobian Matrix calculations. See jacobian_targets, defaults to self.jacobian_targets [INOUT]

  • covariance_matrix_diagonal_blocks (JacobianTargetsDiagonalCovarianceMatrixMap, optional) – A helper map for setting the covariance matrix. See covariance_matrix_diagonal_blocks, defaults to self.covariance_matrix_diagonal_blocks [INOUT]

  • measurement_sensor (ArrayOfSensorObsel, optional) – A list of sensor elements. See measurement_sensor, defaults to self.measurement_sensor [IN]

  • t (Vector) – The grid of \(y\). As \(t\) above. [IN]

  • sensor_elem (Index) – The sensor element whose frequency grid to use. [IN]

  • polyorder (Index, optional) – The order of the polynomial fit. Maximum \(n\) above. Defaults to 0 [IN]

  • matrix (BlockMatrix) – The covariance diagonal block matrix. [IN]

  • inverse (BlockMatrix, optional) – The inverse covariance diagonal block matrix. Defaults to pyarts.arts.BlockMatrix() [IN]

RetrievalAddMagneticField(self, jacobian_targets: pyarts3.arts.JacobianTargets | None = None, covariance_matrix_diagonal_blocks: pyarts3.arts.JacobianTargetsDiagonalCovarianceMatrixMap | None = None, component: pyarts3.arts.String | None = None, d: pyarts3.arts.Numeric | None = None, matrix: pyarts3.arts.BlockMatrix | None = None, inverse: pyarts3.arts.BlockMatrix | None = None) None

Set magnetic field derivative.

See FieldComponent for valid component.

This method wraps jacobian_targetsAddMagneticField() together with adding the covariance matrices, to the covariance_matrix_diagonal_blocks, which are required to perform OEM().

The input covariance matrices must fit the size of the later computed model state represented by the jacobian_targets. The covariance matrix inverse

Author: Richard Larsson

Parameters:
  • jacobian_targets (JacobianTargets, optional) – A list of targets for the Jacobian Matrix calculations. See jacobian_targets, defaults to self.jacobian_targets [INOUT]

  • covariance_matrix_diagonal_blocks (JacobianTargetsDiagonalCovarianceMatrixMap, optional) – A helper map for setting the covariance matrix. See covariance_matrix_diagonal_blocks, defaults to self.covariance_matrix_diagonal_blocks [INOUT]

  • component (String) – The component to use [u, v, w]. [IN]

  • d (Numeric, optional) – The perturbation used in methods that cannot compute derivatives analytically. Defaults to 0.1 [IN]

  • matrix (BlockMatrix) – The covariance diagonal block matrix. [IN]

  • inverse (BlockMatrix, optional) – The inverse covariance diagonal block matrix. Defaults to pyarts.arts.BlockMatrix() [IN]

RetrievalAddOverlappingMagneticField(self, jacobian_targets: pyarts3.arts.JacobianTargets | None = None, covariance_matrix_diagonal_blocks: pyarts3.arts.JacobianTargetsDiagonalCovarianceMatrixMap | None = None, matrix: pyarts3.arts.BlockMatrix | None = None, inverse: pyarts3.arts.BlockMatrix | None = None) None

Set magnetic field derivative for overlapping fields.

An overlapping field means that the derivative is computed but that the x-component of the jacobian is at the same position as another Jacobian target.

To call this method, you first have added 1 component of the magnetic field derivative, and then you call this method to add the second and third component.

This method wraps jacobian_targetsAddOverlappingMagneticField() together with adding the covariance matrices, to the covariance_matrix_diagonal_blocks, which are required to perform OEM().

The input covariance matrices must fit the size of the later computed model state represented by the jacobian_targets. The covariance matrix inverse

Author: Richard Larsson

Parameters:
RetrievalAddOverlappingWindField(self, jacobian_targets: pyarts3.arts.JacobianTargets | None = None, covariance_matrix_diagonal_blocks: pyarts3.arts.JacobianTargetsDiagonalCovarianceMatrixMap | None = None, matrix: pyarts3.arts.BlockMatrix | None = None, inverse: pyarts3.arts.BlockMatrix | None = None) None

Set wind field derivative for overlapping fields.

An overlapping field means that the derivative is computed but that the x-component of the jacobian is at the same position as another Jacobian target.

To call this method, you first have added 1 component of the wind field derivative, and then you call this method to add the second and third component.

This method wraps jacobian_targetsAddOverlappingWindField() together with adding the covariance matrices, to the covariance_matrix_diagonal_blocks, which are required to perform OEM().

The input covariance matrices must fit the size of the later computed model state represented by the jacobian_targets. The covariance matrix inverse

Author: Richard Larsson

Parameters:
RetrievalAddPressure(self, jacobian_targets: pyarts3.arts.JacobianTargets | None = None, covariance_matrix_diagonal_blocks: pyarts3.arts.JacobianTargetsDiagonalCovarianceMatrixMap | None = None, d: pyarts3.arts.Numeric | None = None, matrix: pyarts3.arts.BlockMatrix | None = None, inverse: pyarts3.arts.BlockMatrix | None = None) None

Set pressure derivative.

This method wraps jacobian_targetsAddPressure() together with adding the covariance matrices, to the covariance_matrix_diagonal_blocks, which are required to perform OEM().

The input covariance matrices must fit the size of the later computed model state represented by the jacobian_targets. The covariance matrix inverse

Author: Richard Larsson

Parameters:
  • jacobian_targets (JacobianTargets, optional) – A list of targets for the Jacobian Matrix calculations. See jacobian_targets, defaults to self.jacobian_targets [INOUT]

  • covariance_matrix_diagonal_blocks (JacobianTargetsDiagonalCovarianceMatrixMap, optional) – A helper map for setting the covariance matrix. See covariance_matrix_diagonal_blocks, defaults to self.covariance_matrix_diagonal_blocks [INOUT]

  • d (Numeric, optional) – The perturbation used in methods that cannot compute derivatives analytically. Defaults to 0.1 [IN]

  • matrix (BlockMatrix) – The covariance diagonal block matrix. [IN]

  • inverse (BlockMatrix, optional) – The inverse covariance diagonal block matrix. Defaults to pyarts.arts.BlockMatrix() [IN]

RetrievalAddSensorFrequencyPolyOffset(self, jacobian_targets: pyarts3.arts.JacobianTargets | None = None, covariance_matrix_diagonal_blocks: pyarts3.arts.JacobianTargetsDiagonalCovarianceMatrixMap | None = None, measurement_sensor: pyarts3.arts.ArrayOfSensorObsel | None = None, d: pyarts3.arts.Numeric | None = None, sensor_elem: pyarts3.arts.Index | None = None, polyorder: pyarts3.arts.Index | None = None, matrix: pyarts3.arts.BlockMatrix | None = None, inverse: pyarts3.arts.BlockMatrix | None = None) None

Set sensor frequency derivative to use polynomial fitting offset

Order 0 means constant: \(f := f_0 + a\)

Order 1 means linear: \(f := f_0 + a + b f_0\)

and so on. The derivatives that are added to the model_state_vector are those with regards to a, b, etc..

Note

The rule for the sensor_elem GIN is a bit complex. Generally, methods such as measurement_sensorAddSimple() will simply add a single unique frequency grid to all the different SensorObsel that they add to the measurement_sensor. The GIN sensor_elem is 0 for the first unique frequency grid, 1 for the second, and so on. See ArrayOfSensorObsel member methods in python for help identifying and manipulating how many unique frequency grids are available in measurement_sensor.

This method wraps jacobian_targetsAddSensorFrequencyPolyOffset() together with adding the covariance matrices, to the covariance_matrix_diagonal_blocks, which are required to perform OEM().

The input covariance matrices must fit the size of the later computed model state represented by the jacobian_targets. The covariance matrix inverse

Author: Richard Larsson

Parameters:
  • jacobian_targets (JacobianTargets, optional) – A list of targets for the Jacobian Matrix calculations. See jacobian_targets, defaults to self.jacobian_targets [INOUT]

  • covariance_matrix_diagonal_blocks (JacobianTargetsDiagonalCovarianceMatrixMap, optional) – A helper map for setting the covariance matrix. See covariance_matrix_diagonal_blocks, defaults to self.covariance_matrix_diagonal_blocks [INOUT]

  • measurement_sensor (ArrayOfSensorObsel, optional) – A list of sensor elements. See measurement_sensor, defaults to self.measurement_sensor [IN]

  • d (Numeric, optional) – The perturbation used in methods that cannot compute derivatives analytically. Defaults to 0.1 [IN]

  • sensor_elem (Index) – The sensor element whose frequency grid to use. [IN]

  • polyorder (Index, optional) – The order of the polynomial fit. Defaults to 0 [IN]

  • matrix (BlockMatrix) – The covariance diagonal block matrix. [IN]

  • inverse (BlockMatrix, optional) – The inverse covariance diagonal block matrix. Defaults to pyarts.arts.BlockMatrix() [IN]

RetrievalAddSpeciesIsotopologueRatio(self, jacobian_targets: pyarts3.arts.JacobianTargets | None = None, covariance_matrix_diagonal_blocks: pyarts3.arts.JacobianTargetsDiagonalCovarianceMatrixMap | None = None, species: pyarts3.arts.SpeciesIsotope | None = None, d: pyarts3.arts.Numeric | None = None, matrix: pyarts3.arts.BlockMatrix | None = None, inverse: pyarts3.arts.BlockMatrix | None = None) None

Set isotopologue ratio derivative

See SpeciesIsotope for valid species

This method wraps jacobian_targetsAddSpeciesIsotopologueRatio() together with adding the covariance matrices, to the covariance_matrix_diagonal_blocks, which are required to perform OEM().

The input covariance matrices must fit the size of the later computed model state represented by the jacobian_targets. The covariance matrix inverse

Author: Richard Larsson

Parameters:
  • jacobian_targets (JacobianTargets, optional) – A list of targets for the Jacobian Matrix calculations. See jacobian_targets, defaults to self.jacobian_targets [INOUT]

  • covariance_matrix_diagonal_blocks (JacobianTargetsDiagonalCovarianceMatrixMap, optional) – A helper map for setting the covariance matrix. See covariance_matrix_diagonal_blocks, defaults to self.covariance_matrix_diagonal_blocks [INOUT]

  • species (SpeciesIsotope) – The species isotopologue of interest. [IN]

  • d (Numeric, optional) – The perturbation used in methods that cannot compute derivatives analytically. Defaults to 0.1 [IN]

  • matrix (BlockMatrix) – The covariance diagonal block matrix. [IN]

  • inverse (BlockMatrix, optional) – The inverse covariance diagonal block matrix. Defaults to pyarts.arts.BlockMatrix() [IN]

RetrievalAddSpeciesVMR(self, jacobian_targets: pyarts3.arts.JacobianTargets | None = None, covariance_matrix_diagonal_blocks: pyarts3.arts.JacobianTargetsDiagonalCovarianceMatrixMap | None = None, species: pyarts3.arts.SpeciesEnum | None = None, d: pyarts3.arts.Numeric | None = None, matrix: pyarts3.arts.BlockMatrix | None = None, inverse: pyarts3.arts.BlockMatrix | None = None) None

Set volume mixing ratio derivative.

See SpeciesEnum for valid species

This method wraps jacobian_targetsAddSpeciesVMR() together with adding the covariance matrices, to the covariance_matrix_diagonal_blocks, which are required to perform OEM().

The input covariance matrices must fit the size of the later computed model state represented by the jacobian_targets. The covariance matrix inverse

Author: Richard Larsson

Parameters:
  • jacobian_targets (JacobianTargets, optional) – A list of targets for the Jacobian Matrix calculations. See jacobian_targets, defaults to self.jacobian_targets [INOUT]

  • covariance_matrix_diagonal_blocks (JacobianTargetsDiagonalCovarianceMatrixMap, optional) – A helper map for setting the covariance matrix. See covariance_matrix_diagonal_blocks, defaults to self.covariance_matrix_diagonal_blocks [INOUT]

  • species (SpeciesEnum) – The species of interest. [IN]

  • d (Numeric, optional) – The perturbation used in methods that cannot compute derivatives analytically. Defaults to 0.1 [IN]

  • matrix (BlockMatrix) – The covariance diagonal block matrix. [IN]

  • inverse (BlockMatrix, optional) – The inverse covariance diagonal block matrix. Defaults to pyarts.arts.BlockMatrix() [IN]

RetrievalAddSubsurface(self, jacobian_targets: pyarts3.arts.JacobianTargets | None = None, covariance_matrix_diagonal_blocks: pyarts3.arts.JacobianTargetsDiagonalCovarianceMatrixMap | None = None, target: pyarts3.arts.SubsurfaceKey | None = None, d: pyarts3.arts.Numeric | None = None, matrix: pyarts3.arts.BlockMatrix | None = None, inverse: pyarts3.arts.BlockMatrix | None = None) None

Sets a subsurface target

This method wraps jacobian_targetsAddSubsurface() together with adding the covariance matrices, to the covariance_matrix_diagonal_blocks, which are required to perform OEM().

The input covariance matrices must fit the size of the later computed model state represented by the jacobian_targets. The covariance matrix inverse

Author: Richard Larsson

Parameters:
  • jacobian_targets (JacobianTargets, optional) – A list of targets for the Jacobian Matrix calculations. See jacobian_targets, defaults to self.jacobian_targets [INOUT]

  • covariance_matrix_diagonal_blocks (JacobianTargetsDiagonalCovarianceMatrixMap, optional) – A helper map for setting the covariance matrix. See covariance_matrix_diagonal_blocks, defaults to self.covariance_matrix_diagonal_blocks [INOUT]

  • target (SubsurfaceKey) – The target of interest. [IN]

  • d (Numeric, optional) – The perturbation used in methods that cannot compute derivatives analytically. Defaults to 0.1 [IN]

  • matrix (BlockMatrix) – The covariance diagonal block matrix. [IN]

  • inverse (BlockMatrix, optional) – The inverse covariance diagonal block matrix. Defaults to pyarts.arts.BlockMatrix() [IN]

RetrievalAddSurface(self, jacobian_targets: pyarts3.arts.JacobianTargets | None = None, covariance_matrix_diagonal_blocks: pyarts3.arts.JacobianTargetsDiagonalCovarianceMatrixMap | None = None, target: pyarts3.arts.SurfaceKey | pyarts3.arts.SurfacePropertyTag | None = None, d: pyarts3.arts.Numeric | None = None, matrix: pyarts3.arts.BlockMatrix | None = None, inverse: pyarts3.arts.BlockMatrix | None = None) None

Sets a surface target

This method wraps jacobian_targetsAddSurface() together with adding the covariance matrices, to the covariance_matrix_diagonal_blocks, which are required to perform OEM().

The input covariance matrices must fit the size of the later computed model state represented by the jacobian_targets. The covariance matrix inverse

Author: Richard Larsson

Parameters:
RetrievalAddTemperature(self, jacobian_targets: pyarts3.arts.JacobianTargets | None = None, covariance_matrix_diagonal_blocks: pyarts3.arts.JacobianTargetsDiagonalCovarianceMatrixMap | None = None, d: pyarts3.arts.Numeric | None = None, matrix: pyarts3.arts.BlockMatrix | None = None, inverse: pyarts3.arts.BlockMatrix | None = None) None

Set temperature derivative.

This method wraps jacobian_targetsAddTemperature() together with adding the covariance matrices, to the covariance_matrix_diagonal_blocks, which are required to perform OEM().

The input covariance matrices must fit the size of the later computed model state represented by the jacobian_targets. The covariance matrix inverse

Author: Richard Larsson

Parameters:
  • jacobian_targets (JacobianTargets, optional) – A list of targets for the Jacobian Matrix calculations. See jacobian_targets, defaults to self.jacobian_targets [INOUT]

  • covariance_matrix_diagonal_blocks (JacobianTargetsDiagonalCovarianceMatrixMap, optional) – A helper map for setting the covariance matrix. See covariance_matrix_diagonal_blocks, defaults to self.covariance_matrix_diagonal_blocks [INOUT]

  • d (Numeric, optional) – The perturbation used in methods that cannot compute derivatives analytically. Defaults to 0.1 [IN]

  • matrix (BlockMatrix) – The covariance diagonal block matrix. [IN]

  • inverse (BlockMatrix, optional) – The inverse covariance diagonal block matrix. Defaults to pyarts.arts.BlockMatrix() [IN]

RetrievalAddWindField(self, jacobian_targets: pyarts3.arts.JacobianTargets | None = None, covariance_matrix_diagonal_blocks: pyarts3.arts.JacobianTargetsDiagonalCovarianceMatrixMap | None = None, component: pyarts3.arts.String | None = None, d: pyarts3.arts.Numeric | None = None, matrix: pyarts3.arts.BlockMatrix | None = None, inverse: pyarts3.arts.BlockMatrix | None = None) None

Set wind field derivative.

Note that the derivatives from methods that takes the freqeuncy will return their derivatives as if these were frequency derivatives.

See FieldComponent for valid component

This method wraps jacobian_targetsAddWindField() together with adding the covariance matrices, to the covariance_matrix_diagonal_blocks, which are required to perform OEM().

The input covariance matrices must fit the size of the later computed model state represented by the jacobian_targets. The covariance matrix inverse

Author: Richard Larsson

Parameters:
  • jacobian_targets (JacobianTargets, optional) – A list of targets for the Jacobian Matrix calculations. See jacobian_targets, defaults to self.jacobian_targets [INOUT]

  • covariance_matrix_diagonal_blocks (JacobianTargetsDiagonalCovarianceMatrixMap, optional) – A helper map for setting the covariance matrix. See covariance_matrix_diagonal_blocks, defaults to self.covariance_matrix_diagonal_blocks [INOUT]

  • component (String) – The component to use [u, v, w]. [IN]

  • d (Numeric, optional) – The perturbation used in methods that cannot compute derivatives analytically. Defaults to 0.1 [IN]

  • matrix (BlockMatrix) – The covariance diagonal block matrix. [IN]

  • inverse (BlockMatrix, optional) – The inverse covariance diagonal block matrix. Defaults to pyarts.arts.BlockMatrix() [IN]

RetrievalFinalizeDiagonal(self, model_state_covariance_matrix: pyarts3.arts.CovarianceMatrix | None = None, jacobian_targets: pyarts3.arts.JacobianTargets | None = None, covariance_matrix_diagonal_blocks: pyarts3.arts.JacobianTargetsDiagonalCovarianceMatrixMap | None = None, atmospheric_field: pyarts3.arts.AtmField | None = None, surface_field: pyarts3.arts.SurfaceField | None = None, subsurface_field: pyarts3.arts.SubsurfaceField | None = None, absorption_bands: pyarts3.arts.AbsorptionBands | None = None, measurement_sensor: pyarts3.arts.ArrayOfSensorObsel | None = None) None

Finalize the retrieval setup.

See jacobian_targetsFinalize() for more information.

Author: Richard Larsson

Parameters:
RetrievalInit(self, jacobian_targets: pyarts3.arts.JacobianTargets | None = None, model_state_covariance_matrix: pyarts3.arts.CovarianceMatrix | None = None, covariance_matrix_diagonal_blocks: pyarts3.arts.JacobianTargetsDiagonalCovarianceMatrixMap | None = None) None

Initialize the retrieval setup.

Author: Richard Larsson

Parameters:
SpectralFluxDisort(self, spectral_flux_field_up: pyarts3.arts.Matrix | None = None, spectral_flux_field_down: pyarts3.arts.Matrix | None = None, disort_spectral_flux_field: pyarts3.arts.DisortFlux | None = None) None

Integrate Disort spectral radiance.

Author: Richard Larsson

Parameters:
  • spectral_flux_field_up (Matrix) – Upward spectral flux field. Defaults to create and/or use self.spectral_flux_field_up : Matrix. [OUT]

  • spectral_flux_field_down (Matrix) – Downward spectral flux field. Defaults to create and/or use self.spectral_flux_field_down : Matrix. [OUT]

  • disort_spectral_flux_field (DisortFlux, optional) – The spectral flux field from Disort. See disort_spectral_flux_field, defaults to self.disort_spectral_flux_field [IN]

Touch(self, input: object | None = None) None

As Ignore() but for agenda output.

This method is handy for use in agendas in order to suppress warnings about not-produced output workspace variables.

What it does, in case the variable is initialized already, is: Nothing! In case the variable is not yet initialized, it is default initialized.

Author: Oliver Lemke

Parameters:

input (Any) – Variable to do nothing with. Defaults to create and/or use self.input : Any. [OUT]

UpdateModelStates(self, absorption_bands: pyarts3.arts.AbsorptionBands | None = None, surface_field: pyarts3.arts.SurfaceField | None = None, subsurface_field: pyarts3.arts.SubsurfaceField | None = None, atmospheric_field: pyarts3.arts.AtmField | None = None, measurement_sensor: pyarts3.arts.ArrayOfSensorObsel | None = None, jacobian_targets: pyarts3.arts.JacobianTargets | None = None, model_state_vector: pyarts3.arts.Vector | None = None) None

Update state of the model in preparation for a forward model run

Wrapper calling Methods (in order):

Equivalent (mostly) Python code:

1ws = pyarts.Workspace()
2
3# ...
4
5 ws.absorption_bandsFromModelState()
6 ws.surface_fieldFromModelState()
7 ws.subsurface_fieldFromModelState()
8 ws.atmospheric_fieldFromModelState()
9 ws.measurement_sensorFromModelState()

Author: Richard Larsson

Parameters:
  • absorption_bands (AbsorptionBands, optional) – Bands of absorption lines for line-by-line (LBL) calculations. See absorption_bands, defaults to self.absorption_bands [INOUT]

  • surface_field (SurfaceField, optional) – The surface field describes the surface properties. See surface_field, defaults to self.surface_field [INOUT]

  • subsurface_field (SubsurfaceField, optional) – The sub0surface field describes the sub-surface properties. See subsurface_field, defaults to self.subsurface_field [INOUT]

  • atmospheric_field (AtmField, optional) – An atmospheric field in ARTS. See atmospheric_field, defaults to self.atmospheric_field [INOUT]

  • measurement_sensor (ArrayOfSensorObsel, optional) – A list of sensor elements. See measurement_sensor, defaults to self.measurement_sensor [INOUT]

  • jacobian_targets (JacobianTargets, optional) – A list of targets for the Jacobian Matrix calculations. See jacobian_targets, defaults to self.jacobian_targets [IN]

  • model_state_vector (Vector, optional) – A state vector of the model. See model_state_vector, defaults to self.model_state_vector [IN]

WignerInit(self, fast_wigner_stored_symbols: pyarts3.arts.Index | None = None, largest_wigner_symbol_parameter: pyarts3.arts.Index | None = None, symbol_type: pyarts3.arts.Index | None = None) None

Initialize the Wigner tables

The default values take about 1 Gb memory.

The static data is kept in an external library and is therefore only available inside ARTS. Nevertheless, this must be set by the application because any default value might be too small or too large for the needs of any one application.

Author: Richard Larsson

Parameters:
  • fast_wigner_stored_symbols (Index, optional) – Number of stored symbols possible before replacements. Defaults to 20000000 [IN]

  • largest_wigner_symbol_parameter (Index, optional) – Largest symbol used for initializing factorials (e.g., largest J or L). Defaults to 250 [IN]

  • symbol_type (Index, optional) – Type of symbol (3 or 6). Defaults to 6 [IN]

WignerUnload(self) None

Unloads the Wigner tables from static data (see WignerInit())

Author: Richard Larsson

WriteBuiltinPartitionFunctionsXML(self, output_file_format: pyarts3.arts.String | None = None, dir: pyarts3.arts.String | None = None, Tlow: pyarts3.arts.Numeric | None = None, Tupp: pyarts3.arts.Numeric | None = None, N: pyarts3.arts.Index | None = None) None

Writes all the builtin partition functions to file.

All available partition functions are written to files in the select format in the select directory

The temperature will be linearly spaced between [Tlow, Tupp] with N values

See FileType for valid output_file_format.

Author: Richard Larsson

Parameters:
  • output_file_format (String, optional) – The format of the output. Defaults to "ascii" [IN]

  • dir (String) – The directory to write the data towards. [IN]

  • Tlow (Numeric) – The lowest temperature. [IN]

  • Tupp (Numeric) – The highest temperature. [IN]

  • N (Index) – The number of temperature points. [IN]

WriteXML(self, output_file_format: pyarts3.arts.String | None = None, input: object | None = None, filename: pyarts3.arts.String | None = None, no_clobber: pyarts3.arts.Index | None = None) None

Writes a workspace variable to an XML file.

This method can write variables of any group.

If no_clobber is set to 1, an increasing number will be appended to the filename if the file already exists.

See FileType for valid output_file_format.

Author: Oliver Lemke

Parameters:
  • output_file_format (String, optional) – The format of the output. Defaults to "ascii" [IN]

  • input (Any) – Variable to be saved. [IN]

  • filename (String) – Name of the XML file. [IN]

  • no_clobber (Index, optional) – 0: Overwrite existing files, 1: Use unique filenames. Defaults to 0 [IN]

WriteXMLIndexed(self, output_file_format: pyarts3.arts.String | None = None, file_index: pyarts3.arts.Index | None = None, input: object | None = None, filename: pyarts3.arts.String | None = None, digits: pyarts3.arts.Index | None = None) None

As WriteXML(), but creates indexed file names.

The variable is written to a file with name:

<filename>.<file_index>.xml.

where <file_index> is the value of file_index.

This means that filename shall here not include the .xml extension.

See FileType for valid output_file_format.

Author: Patrick Eriksson, Oliver Lemke

Parameters:
  • output_file_format (String, optional) – The format of the output. Defaults to "ascii" [IN]

  • file_index (Index) – Index number for files. [IN]

  • input (Any) – Workspace variable to be saved. [IN]

  • filename (String) – File name. See above. [IN]

  • digits (Index, optional) – Equalize the widths of all numbers by padding with zeros as necessary. 0 means no padding (default). Defaults to 0 [IN]

absorption_bandsFromModelState(self, absorption_bands: pyarts3.arts.AbsorptionBands | None = None, model_state_vector: pyarts3.arts.Vector | None = None, jacobian_targets: pyarts3.arts.JacobianTargets | None = None) None

Sets absorption_bands to the state of the model.

Author: Richard Larsson

Used by wrapper method

Parameters:
  • absorption_bands (AbsorptionBands, optional) – Bands of absorption lines for line-by-line (LBL) calculations. See absorption_bands, defaults to self.absorption_bands [INOUT]

  • model_state_vector (Vector, optional) – A state vector of the model. See model_state_vector, defaults to self.model_state_vector [IN]

  • jacobian_targets (JacobianTargets, optional) – A list of targets for the Jacobian Matrix calculations. See jacobian_targets, defaults to self.jacobian_targets [IN]

absorption_bandsKeepID(self, absorption_bands: pyarts3.arts.AbsorptionBands | None = None, id: pyarts3.arts.QuantumIdentifier | None = None, line: pyarts3.arts.Index | None = None) None

Keeps first band of ID

If line is positive, also keep only the line of this index

Author: Richard Larsson

Parameters:
  • absorption_bands (AbsorptionBands, optional) – Bands of absorption lines for line-by-line (LBL) calculations. See absorption_bands, defaults to self.absorption_bands [INOUT]

  • id (QuantumIdentifier) – Band to keep. [IN]

  • line (Index, optional) – Line to keep (if positive). Defaults to -1 [IN]

absorption_bandsLineMixingAdaptation(self, absorption_bands: pyarts3.arts.AbsorptionBands | None = None, ecs_data: pyarts3.arts.LinemixingEcsData | None = None, atmospheric_point: pyarts3.arts.AtmPoint | None = None, temperatures: pyarts3.arts.AscendingGrid | None = None, band_key: pyarts3.arts.QuantumIdentifier | None = None, rosenkranz_fit_order: pyarts3.arts.Index | None = None, polynomial_fit_degree: pyarts3.arts.Index | None = None) None

Adapts select band to use ordered Line mixing coefficients.

This is an experimental feature and might not work.

The computations of line mixing are done on the grid of temperatures provided.

Author: Richard Larsson

Parameters:
  • absorption_bands (AbsorptionBands, optional) – Bands of absorption lines for line-by-line (LBL) calculations. See absorption_bands, defaults to self.absorption_bands [INOUT]

  • ecs_data (LinemixingEcsData, optional) – Error corrected sudden data. See ecs_data, defaults to self.ecs_data [IN]

  • atmospheric_point (AtmPoint, optional) – An atmospheric point in ARTS. See atmospheric_point, defaults to self.atmospheric_point [IN]

  • temperatures (AscendingGrid) – The temperatures to use for the internal fitting. [IN]

  • band_key (QuantumIdentifier) – The band to adapt. [IN]

  • rosenkranz_fit_order (Index, optional) – The degree of Rosenkranz coefficients (1 for just fitting y, 2 for fitting also g and dv). Defaults to 1 [IN]

  • polynomial_fit_degree (Index, optional) – The highest order of the polynomial fit (2 means square, 3 means cubic, etc). Defaults to 3 [IN]

absorption_bandsReadHITRAN(self, absorption_bands: pyarts3.arts.AbsorptionBands | None = None, file: pyarts3.arts.String | None = None, frequency_range: pyarts3.arts.Vector2 | None = None, line_strength_option: pyarts3.arts.String | None = None, compute_zeeman_parameters: pyarts3.arts.Index | None = None) None

Reads HITRAN data from a file.

The HITRAN file is assumed sorted in frequency, with each line record filling up one line of text.

If the full 160-char line record is consumed without reaching the end of the line, qns’ and qns’’ are assumed appended with default HITRANonline format.

You may pass an inclusive frequency range to limit what is read. This will limit the data read to the range [fmin, fmax]. All data before fmin is limited to parsing just up until the frequency, and the database is returned if the fmax frequency is exceeded.

The optional parameter einstein_coefficient is used to indicate if it is to be computed from the line strength, or simply read from the Hitran data.

Warning

Several HITRAN lines has Einstein coefficients that will not reproduce the results of pure line strength simulations. If the option is set to read the Einstein coefficicent (“A”) instead of computing it (“S”) the program will throw an error if missing data is encountered. For the computed Einstein coeffcient, if the upper degeneracy is missing, it will be set to either - (2J+1) or -1 if J is not a local quantum number. Note that this will also make the Einstein coefficient negative. This should not affect the simulation, but it is a warning that the data is not complete.

Author: Richard Larsson

Parameters:
  • absorption_bands (AbsorptionBands, optional) – Bands of absorption lines for line-by-line (LBL) calculations. See absorption_bands, defaults to self.absorption_bands [OUT]

  • file (String) – Filename. [IN]

  • frequency_range (Vector2, optional) – Frequency range selection. Defaults to -inf inf [IN]

  • line_strength_option (String, optional) – Whether the Hitran line strenght or the Hitran Einstein coefficient is used, the latter has historically been less reliable. Defaults to "S" [IN]

  • compute_zeeman_parameters (Index, optional) – Compute the Zeeman parameters from the HITRAN data (will not activate Zeeman calculations, this must be done manually afterwards). Defaults to 1 [IN]

absorption_bandsReadSpeciesSplitARTSCAT(self, absorption_bands: pyarts3.arts.AbsorptionBands | None = None, absorption_species: pyarts3.arts.ArrayOfArrayOfSpeciesTag | None = None, basename: pyarts3.arts.String | None = None, ignore_missing: pyarts3.arts.Index | None = None, pure_species: pyarts3.arts.Index | None = None) None

Same as absorption_bandsReadSpeciesSplitCatalog() but for reading the old ARTSCAT format.

One key difference is that ARTSCAT were often stored in a single file per SpeciesEnum rather than per SpeciesIsotope, so the optional argument pure_species is available and evaluates to true by default to use SpeciesEnum. Switch this off to use the SpeciesIsotope instead.

Note that ARTSCAT does not support many of the features of the modern line catalog format. This reading routine is intended for use-as-is of the produced absorption_bands. Or after minor changes, like removing absorption lines outside of some frequency span.

Author: Richard Larsson

Parameters:
  • absorption_bands (AbsorptionBands, optional) – Bands of absorption lines for line-by-line (LBL) calculations. See absorption_bands, defaults to self.absorption_bands [OUT]

  • absorption_species (ArrayOfArrayOfSpeciesTag, optional) – Tag groups for gas absorption. See absorption_species, defaults to self.absorption_species [IN]

  • basename (String) – Absolute or relative path to the directory. [IN]

  • ignore_missing (Index, optional) – Flag to ignore missing files instead of throwing an error. Defaults to 0 [IN]

  • pure_species (Index, optional) – Flag that when true uses SpeciesEnum instead of SpeciesIsotope for file names. Defaults to 1 [IN]

absorption_bandsReadSpeciesSplitCatalog(self, absorption_bands: pyarts3.arts.AbsorptionBands | None = None, absorption_species: pyarts3.arts.ArrayOfArrayOfSpeciesTag | None = None, basename: pyarts3.arts.String | None = None, ignore_missing: pyarts3.arts.Index | None = None) None

Reads all species in absorption_species from a basename

basename follows the standard ARTS rules. For example if absorption_species contains only H2O-161, then a basename of "lbl" will read the file "lbl.H2O-161.xml", and a basename of "lbl/" will read the file "lbl/H2O-161.xml".

ignore_missing is a boolean that indicates if the method should ignore missing files or not. If set to true, the method will ignore missing files and continue. If set to false, the method will throw an error if any file is missing.

Author: Richard Larsson

Parameters:
  • absorption_bands (AbsorptionBands, optional) – Bands of absorption lines for line-by-line (LBL) calculations. See absorption_bands, defaults to self.absorption_bands [OUT]

  • absorption_species (ArrayOfArrayOfSpeciesTag, optional) – Tag groups for gas absorption. See absorption_species, defaults to self.absorption_species [IN]

  • basename (String) – Absolute or relative path to the directory. [IN]

  • ignore_missing (Index, optional) – Ignore missing files instead of throwing an error. Defaults to 0 [IN]

absorption_bandsReadSplit(self, absorption_bands: pyarts3.arts.AbsorptionBands | None = None, dir: pyarts3.arts.String | None = None) None

Saves all bands in absorption_bands to a directory

This will create the directory if it does not exist. It will also create subdirectories that are the short-form of the isotopologue names. The bands will be stored as 0.xml, 1.xml, 2.xml, and so on

The dir path has to be absolute or relative to the working path, the environment variables are not considered

Author: Richard Larsson

Parameters:
  • absorption_bands (AbsorptionBands, optional) – Bands of absorption lines for line-by-line (LBL) calculations. See absorption_bands, defaults to self.absorption_bands [OUT]

  • dir (String) – Absolute or relative path to the directory. [IN]

absorption_bandsRemoveID(self, absorption_bands: pyarts3.arts.AbsorptionBands | None = None, id: pyarts3.arts.QuantumIdentifier | None = None) None

Remove first band of with a matching ID

Author: Richard Larsson

Parameters:
absorption_bandsSaveSplit(self, absorption_bands: pyarts3.arts.AbsorptionBands | None = None, dir: pyarts3.arts.String | None = None) None

Saves all bands fin absorption_bands to a directory

This will create the directory if it does not exist. It will also create subdirectories that are the short-form of the isotopologue names. The bands will be stored as 0.xml, 1.xml, 2.xml, and so on

The dir path has to be absolute or relative to the working path, the environment variables are not considered

Author: Richard Larsson

Parameters:
  • absorption_bands (AbsorptionBands, optional) – Bands of absorption lines for line-by-line (LBL) calculations. See absorption_bands, defaults to self.absorption_bands [IN]

  • dir (String) – Absolute or relative path to the directory. [IN]

absorption_bandsSelectFrequencyByBand(self, absorption_bands: pyarts3.arts.AbsorptionBands | None = None, fmin: pyarts3.arts.Numeric | None = None, fmax: pyarts3.arts.Numeric | None = None) None

Remove all bands whose lines all strictly falls outside a frequency range

Authors: Richard Larsson, Oliver Lemke

Parameters:
  • absorption_bands (AbsorptionBands, optional) – Bands of absorption lines for line-by-line (LBL) calculations. See absorption_bands, defaults to self.absorption_bands [INOUT]

  • fmin (Numeric, optional) – Minimum frequency to keep. Defaults to -inf [IN]

  • fmax (Numeric, optional) – Maximum frequency to keep. Defaults to inf [IN]

absorption_bandsSelectFrequencyByLine(self, absorption_bands: pyarts3.arts.AbsorptionBands | None = None, fmin: pyarts3.arts.Numeric | None = None, fmax: pyarts3.arts.Numeric | None = None) None

Remove all lines that strictly falls outside a frequency range

Also remove bands whose lines are all removed.

Authors: Richard Larsson, Oliver Lemke

Parameters:
  • absorption_bands (AbsorptionBands, optional) – Bands of absorption lines for line-by-line (LBL) calculations. See absorption_bands, defaults to self.absorption_bands [INOUT]

  • fmin (Numeric, optional) – Minimum frequency to keep. Defaults to -inf [IN]

  • fmax (Numeric, optional) – Maximum frequency to keep. Defaults to inf [IN]

absorption_bandsSetNonLTE(self, absorption_bands: pyarts3.arts.AbsorptionBands | None = None) None

Set all bands to use non-LTE calculations.

Author: Richard Larsson

Parameters:

absorption_bands (AbsorptionBands, optional) – Bands of absorption lines for line-by-line (LBL) calculations. See absorption_bands, defaults to self.absorption_bands [INOUT]

absorption_bandsSetZeeman(self, absorption_bands: pyarts3.arts.AbsorptionBands | None = None, species: pyarts3.arts.SpeciesIsotope | None = None, fmin: pyarts3.arts.Numeric | None = None, fmax: pyarts3.arts.Numeric | None = None, on: pyarts3.arts.Index | None = None) None

Set the Zeeman splitting for lines within the frequency range

See SpeciesIsotope for valid species

Author: Richard Larsson

Parameters:
  • absorption_bands (AbsorptionBands, optional) – Bands of absorption lines for line-by-line (LBL) calculations. See absorption_bands, defaults to self.absorption_bands [INOUT]

  • species (SpeciesIsotope) – Isotopologue of the species. [IN]

  • fmin (Numeric) – Minimum line frequency to set Zeeman splitting for. [IN]

  • fmax (Numeric) – Maximum line frequency to set Zeeman splitting for. [IN]

  • on (Index, optional) – On or off. Defaults to 1 [IN]

absorption_cia_dataAddCIARecord(self, absorption_cia_data: pyarts3.arts.ArrayOfCIARecord | None = None, cia_record: pyarts3.arts.CIARecord | None = None, clobber: pyarts3.arts.Index | None = None) None

Takes CIARecord as input and appends the results in the appropriate place.

If CIARecord has same species as species in absorption_cia_data, then the array position is used to append all of the CIARecord into the array. If clobber evaluates as true, cia_record overwrites the appropriate absorption_cia_data. If species in cia_record are not in absorption_cia_data, the CIARecord is pushed back.

Author: Richard Larsson

Parameters:
  • absorption_cia_data (ArrayOfCIARecord, optional) – HITRAN Collision-Induced Absorption (CIA) Data. See absorption_cia_data, defaults to self.absorption_cia_data [INOUT]

  • cia_record (CIARecord) – CIA record to append to absorption_cia_data. [IN]

  • clobber (Index, optional) – If true, the new input clobbers the old cia data. Defaults to 0 [IN]

absorption_cia_dataReadFromCIA(self, absorption_cia_data: pyarts3.arts.ArrayOfCIARecord | None = None, absorption_species: pyarts3.arts.ArrayOfArrayOfSpeciesTag | None = None, catalogpath: pyarts3.arts.String | None = None) None

Read data from a CIA data file for all CIA molecules defined in absorption_species.

The units in the HITRAN file are:

  • Frequency: cm^(-1)

  • Binary absorption cross-section: cm^5 molec^(-2)

Upon reading we convert this to the ARTS internal SI units of Hz and m^5 molec^(-2).

Author: Oliver Lemke

Parameters:
absorption_cia_dataReadFromXML(self, absorption_cia_data: pyarts3.arts.ArrayOfCIARecord | None = None, absorption_species: pyarts3.arts.ArrayOfArrayOfSpeciesTag | None = None, filename: pyarts3.arts.String | None = None) None

Read data from a CIA XML file and check that all CIA tags defined in absorption_species are present in the file.

The units of the data are described in absorption_cia_dataReadFromCIA().

Author: Oliver Lemke

Parameters:
absorption_cia_dataReadSpeciesSplitCatalog(self, absorption_cia_data: pyarts3.arts.ArrayOfCIARecord | None = None, absorption_species: pyarts3.arts.ArrayOfArrayOfSpeciesTag | None = None, basename: pyarts3.arts.String | None = None, ignore_missing: pyarts3.arts.Index | None = None) None

Reads a species split CIA dataset.

Author: Richard Larsson

Parameters:
  • absorption_cia_data (ArrayOfCIARecord, optional) – HITRAN Collision-Induced Absorption (CIA) Data. See absorption_cia_data, defaults to self.absorption_cia_data [OUT]

  • absorption_species (ArrayOfArrayOfSpeciesTag, optional) – Tag groups for gas absorption. See absorption_species, defaults to self.absorption_species [IN]

  • basename (String) – The path to the split catalog files. [IN]

  • ignore_missing (Index, optional) – Flag to continue in case nothing is found [0 throws, 1 continues]. Defaults to 0 [IN]

absorption_lookup_tableCalc(self, absorption_lookup_table: pyarts3.arts.AbsorptionLookupTables | None = None, absorption_bands: pyarts3.arts.AbsorptionBands | None = None, altitude_grid: pyarts3.arts.AscendingGrid | None = None, atmospheric_field: pyarts3.arts.AtmField | None = None, ecs_data: pyarts3.arts.LinemixingEcsData | None = None, frequency_grid: pyarts3.arts.AscendingGrid | None = None, latitude: pyarts3.arts.Numeric | None = None, longitude: pyarts3.arts.Numeric | None = None, water_perturbation: pyarts3.arts.AscendingGrid | None = None, water_affected_species: pyarts3.arts.ArrayOfSpeciesEnum | None = None, temperature_perturbation: pyarts3.arts.AscendingGrid | None = None) None

Get absorption_lookup_table from available data.

This method will use the atmospheric_field and absorption_bands to calculate the absorption_lookup_table. The atmospheric field is first gridded using atmospheric_profileExtract().

Wrapper calling Methods (in order):

Equivalent (mostly) Python code:

1ws = pyarts.Workspace()
2
3# ...
4
5 ws.atmospheric_profileExtract()
6 ws.absorption_lookup_tableInit()
7 ws.absorption_lookup_tablePrecomputeAll()

Author: Richard Larsson

Parameters:
  • absorption_lookup_table (AbsorptionLookupTables, optional) – Absorption lookup table for scalar gas absorption coefficients. See absorption_lookup_table, defaults to self.absorption_lookup_table [OUT]

  • absorption_bands (AbsorptionBands, optional) – Bands of absorption lines for line-by-line (LBL) calculations. See absorption_bands, defaults to self.absorption_bands [IN]

  • altitude_grid (AscendingGrid, optional) – An ascending list of altitude. Often related to a field or a profile. See altitude_grid, defaults to self.altitude_grid [IN]

  • atmospheric_field (AtmField, optional) – An atmospheric field in ARTS. See atmospheric_field, defaults to self.atmospheric_field [IN]

  • ecs_data (LinemixingEcsData, optional) – Error corrected sudden data. See ecs_data, defaults to self.ecs_data [IN]

  • frequency_grid (AscendingGrid, optional) – A single frequency grid. See frequency_grid, defaults to self.frequency_grid [IN]

  • latitude (Numeric, optional) – A single latitude. See latitude, defaults to self.latitude [IN]

  • longitude (Numeric, optional) – A single longitude. See longitude, defaults to self.longitude [IN]

  • water_perturbation (AscendingGrid, optional) – Water vapor perturbation to use for the lookup table. Defaults to pyarts.arts.AscendingGrid() [IN]

  • water_affected_species (ArrayOfSpeciesEnum, optional) – A list of absorption species that are affected by water vapor perturbations nonlinearly. Defaults to [] [IN]

  • temperature_perturbation (AscendingGrid, optional) – Temperature perturbation to use for the lookup table. Defaults to pyarts.arts.AscendingGrid() [IN]

absorption_lookup_tableFromProfiles(self, absorption_lookup_table: pyarts3.arts.AbsorptionLookupTables | None = None, frequency_grid: pyarts3.arts.AscendingGrid | None = None, absorption_bands: pyarts3.arts.AbsorptionBands | None = None, ecs_data: pyarts3.arts.LinemixingEcsData | None = None, pressure_profile: pyarts3.arts.DescendingGrid | None = None, temperature_profile: pyarts3.arts.Vector | None = None, vmr_profiles: pyarts3.arts.SpeciesEnumVectors | None = None, temperature_perturbation: pyarts3.arts.AscendingGrid | None = None, water_perturbation: pyarts3.arts.AscendingGrid | None = None, water_affected_species: pyarts3.arts.ArrayOfSpeciesEnum | None = None, default_isotopologue_ratios: pyarts3.arts.String | None = None) None

Compute the lookup table for all species in absorption_bands.

Wraps absorption_lookup_tablePrecomputeAll() after creating a simple ray_path_atmospheric_point from the input data.

Unlike absorption_lookup_tablePrecomputeAll(), this method will initialize absorption_lookup_table

Author: Richard Larsson

Parameters:
  • absorption_lookup_table (AbsorptionLookupTables, optional) – Absorption lookup table for scalar gas absorption coefficients. See absorption_lookup_table, defaults to self.absorption_lookup_table [OUT]

  • frequency_grid (AscendingGrid, optional) – A single frequency grid. See frequency_grid, defaults to self.frequency_grid [IN]

  • absorption_bands (AbsorptionBands, optional) – Bands of absorption lines for line-by-line (LBL) calculations. See absorption_bands, defaults to self.absorption_bands [IN]

  • ecs_data (LinemixingEcsData, optional) – Error corrected sudden data. See ecs_data, defaults to self.ecs_data [IN]

  • pressure_profile (DescendingGrid) – Pressure profile [Pa]. [IN]

  • temperature_profile (Vector) – Temperature profile [K]. [IN]

  • vmr_profiles (SpeciesEnumVectors) – Volume mixing ratio profiles {SpeciesEnum: [VMR]}. [IN]

  • temperature_perturbation (AscendingGrid, optional) – Temperature perturbation to use for the lookup table. Defaults to pyarts.arts.AscendingGrid() [IN]

  • water_perturbation (AscendingGrid, optional) – Water vapor perturbation to use for the lookup table. Defaults to pyarts.arts.AscendingGrid() [IN]

  • water_affected_species (ArrayOfSpeciesEnum, optional) – A list of absorption species that are affected by water vapor perturbations nonlinearly. Defaults to [] [IN]

  • default_isotopologue_ratios (String, optional) – Default isotopologue ratio option to initialize the AtmPoint with. Defaults to "Builtin" [IN]

absorption_lookup_tableInit(self, absorption_lookup_table: pyarts3.arts.AbsorptionLookupTables | None = None) None

Initialize an empty lookup table.

Author: Richard Larsson

Used by wrapper method

Parameters:

absorption_lookup_table (AbsorptionLookupTables, optional) – Absorption lookup table for scalar gas absorption coefficients. See absorption_lookup_table, defaults to self.absorption_lookup_table [OUT]

absorption_lookup_tablePrecompute(self, absorption_lookup_table: pyarts3.arts.AbsorptionLookupTables | None = None, atmospheric_profile: pyarts3.arts.ArrayOfAtmPoint | None = None, frequency_grid: pyarts3.arts.AscendingGrid | None = None, absorption_bands: pyarts3.arts.AbsorptionBands | None = None, ecs_data: pyarts3.arts.LinemixingEcsData | None = None, select_species: pyarts3.arts.SpeciesEnum | None = None, temperature_perturbation: pyarts3.arts.AscendingGrid | None = None, water_perturbation: pyarts3.arts.AscendingGrid | None = None) None

Precompute the lookup table for a single species, adding it to the map.

Author: Richard Larsson

Parameters:
  • absorption_lookup_table (AbsorptionLookupTables, optional) – Absorption lookup table for scalar gas absorption coefficients. See absorption_lookup_table, defaults to self.absorption_lookup_table [INOUT]

  • atmospheric_profile (ArrayOfAtmPoint, optional) – An atmospheric profile in ARTS. See atmospheric_profile, defaults to self.atmospheric_profile [IN]

  • frequency_grid (AscendingGrid, optional) – A single frequency grid. See frequency_grid, defaults to self.frequency_grid [IN]

  • absorption_bands (AbsorptionBands, optional) – Bands of absorption lines for line-by-line (LBL) calculations. See absorption_bands, defaults to self.absorption_bands [IN]

  • ecs_data (LinemixingEcsData, optional) – Error corrected sudden data. See ecs_data, defaults to self.ecs_data [IN]

  • select_species (SpeciesEnum, optional) – Species selection. See select_species, defaults to self.select_species [IN]

  • temperature_perturbation (AscendingGrid, optional) – Temperature perturbation to use for the lookup table. Defaults to pyarts.arts.AscendingGrid() [IN]

  • water_perturbation (AscendingGrid, optional) – Water vapor perturbation to use for the lookup table (makes the species nonlinear). Defaults to pyarts.arts.AscendingGrid() [IN]

absorption_lookup_tablePrecomputeAll(self, absorption_lookup_table: pyarts3.arts.AbsorptionLookupTables | None = None, atmospheric_profile: pyarts3.arts.ArrayOfAtmPoint | None = None, frequency_grid: pyarts3.arts.AscendingGrid | None = None, absorption_bands: pyarts3.arts.AbsorptionBands | None = None, ecs_data: pyarts3.arts.LinemixingEcsData | None = None, temperature_perturbation: pyarts3.arts.AscendingGrid | None = None, water_perturbation: pyarts3.arts.AscendingGrid | None = None, water_affected_species: pyarts3.arts.ArrayOfSpeciesEnum | None = None) None

Compute the lookup table for all species in absorption_bands.

Wraps absorption_lookup_tablePrecompute() for each species, passing water_perturbation along for those species that are water_affected_species.

Author: Richard Larsson

Used by wrapper method

Parameters:
  • absorption_lookup_table (AbsorptionLookupTables, optional) – Absorption lookup table for scalar gas absorption coefficients. See absorption_lookup_table, defaults to self.absorption_lookup_table [INOUT]

  • atmospheric_profile (ArrayOfAtmPoint, optional) – An atmospheric profile in ARTS. See atmospheric_profile, defaults to self.atmospheric_profile [IN]

  • frequency_grid (AscendingGrid, optional) – A single frequency grid. See frequency_grid, defaults to self.frequency_grid [IN]

  • absorption_bands (AbsorptionBands, optional) – Bands of absorption lines for line-by-line (LBL) calculations. See absorption_bands, defaults to self.absorption_bands [IN]

  • ecs_data (LinemixingEcsData, optional) – Error corrected sudden data. See ecs_data, defaults to self.ecs_data [IN]

  • temperature_perturbation (AscendingGrid, optional) – Temperature perturbation to use for the lookup table. Defaults to pyarts.arts.AscendingGrid() [IN]

  • water_perturbation (AscendingGrid, optional) – Water vapor perturbation to use for the lookup table. Defaults to pyarts.arts.AscendingGrid() [IN]

  • water_affected_species (ArrayOfSpeciesEnum, optional) – A list of absorption species that are affected by water vapor perturbations nonlinearly. Defaults to [] [IN]

absorption_lookup_tableSimpleWide(self, absorption_lookup_table: pyarts3.arts.AbsorptionLookupTables | None = None, frequency_grid: pyarts3.arts.AscendingGrid | None = None, absorption_bands: pyarts3.arts.AbsorptionBands | None = None, ecs_data: pyarts3.arts.LinemixingEcsData | None = None, water_affected_species: pyarts3.arts.ArrayOfSpeciesEnum | None = None, pressure_range: pyarts3.arts.Vector2 | None = None, temperature_range: pyarts3.arts.Vector2 | None = None, water_vmr_range: pyarts3.arts.Vector2 | None = None, isoratio_option: pyarts3.arts.String | None = None, vmr_value: pyarts3.arts.Numeric | None = None, atmospheric_steps: pyarts3.arts.Index | None = None, temperature_perturbation_steps: pyarts3.arts.Index | None = None, water_vmr_perturbation_steps: pyarts3.arts.Index | None = None) None

Set up a simple wide lookup table for all species in absorption_bands.

This method simply computes the profiles for Earth-like atmospheres (by defaults) and pass them into absorption_lookup_tableFromProfiles().

The pressure range is set up logarithmically and all other ranges are set linearly.

Author: Richard Larsson

Parameters:
  • absorption_lookup_table (AbsorptionLookupTables, optional) – Absorption lookup table for scalar gas absorption coefficients. See absorption_lookup_table, defaults to self.absorption_lookup_table [OUT]

  • frequency_grid (AscendingGrid, optional) – A single frequency grid. See frequency_grid, defaults to self.frequency_grid [IN]

  • absorption_bands (AbsorptionBands, optional) – Bands of absorption lines for line-by-line (LBL) calculations. See absorption_bands, defaults to self.absorption_bands [IN]

  • ecs_data (LinemixingEcsData, optional) – Error corrected sudden data. See ecs_data, defaults to self.ecs_data [IN]

  • water_affected_species (ArrayOfSpeciesEnum, optional) – A list of absorption species that are affected by water vapor perturbations nonlinearly. Defaults to [] [IN]

  • pressure_range (Vector2, optional) – Pressure range to consider - in increasing order [Pa]. Defaults to 0.01 110000 [IN]

  • temperature_range (Vector2, optional) – Temperature range to consider - in increasing order [K]. Defaults to 150 350 [IN]

  • water_vmr_range (Vector2, optional) – Water VMR range to consider - in increasing order [vmr]. Defaults to 1e-04 0.15 [IN]

  • isoratio_option (String, optional) – Default isotopologue ratio option to initialize the AtmPoint with. Defaults to "Builtin" [IN]

  • vmr_value (Numeric, optional) – The VMR to use for the self-value broadening. Defaults to 1e-09 [IN]

  • atmospheric_steps (Index, optional) – Number of steps in the atmospheric profile. Defaults to 80 [IN]

  • temperature_perturbation_steps (Index, optional) – Number of steps in the temperature perturbation. Defaults to 15 [IN]

  • water_vmr_perturbation_steps (Index, optional) – Number of steps in the water vapor perturbation. Defaults to 15 [IN]

absorption_predefined_model_dataAddWaterMTCKD400(self, absorption_predefined_model_data: pyarts3.arts.PredefinedModelData | None = None, ref_temp: pyarts3.arts.Numeric | None = None, ref_press: pyarts3.arts.Numeric | None = None, ref_h2o_vmr: pyarts3.arts.Numeric | None = None, self_absco_ref: pyarts3.arts.Vector | None = None, for_absco_ref: pyarts3.arts.Vector | None = None, wavenumbers: pyarts3.arts.Vector | None = None, self_texp: pyarts3.arts.Vector | None = None) None

Sets the data for MT CKD 4.0 Water model

Note that the vectors must have the same length, and that wavenumbers must be growing at a constant rate. The minimum length is 4.

Note also that as this is predefined model data, the units of the values of the vectors must be as described by each vector.

This is based on the works cited here: https://hitran.org/mtckd/

Note

The method itself is implemented from scratch. Using any version of data after version 4.0 is supported by this method - all that changes are the values of the vectors.

Author: Richard Larsson

Parameters:
  • absorption_predefined_model_data (PredefinedModelData, optional) – This contains predefined model data. See absorption_predefined_model_data, defaults to self.absorption_predefined_model_data [INOUT]

  • ref_temp (Numeric) – Reference temperature. [IN]

  • ref_press (Numeric) – Reference pressure. [IN]

  • ref_h2o_vmr (Numeric) – Reference volume mixing ratio of water. [IN]

  • self_absco_ref (Vector) – Self absorption [1/(cm-1 molecules/cm^2]. [IN]

  • for_absco_ref (Vector) – Foreign absorption [1/(cm-1 molecules/cm^2)]. [IN]

  • wavenumbers (Vector) – Wavenumbers [cm-1]. [IN]

  • self_texp (Vector) – Self temperature exponent [-]. [IN]

absorption_predefined_model_dataInit(self, absorption_predefined_model_data: pyarts3.arts.PredefinedModelData | None = None) None

Initialize the predefined model data

Author: Richard Larsson

Parameters:

absorption_predefined_model_data (PredefinedModelData, optional) – This contains predefined model data. See absorption_predefined_model_data, defaults to self.absorption_predefined_model_data [OUT]

absorption_predefined_model_dataReadSpeciesSplitCatalog(self, absorption_predefined_model_data: pyarts3.arts.PredefinedModelData | None = None, absorption_species: pyarts3.arts.ArrayOfArrayOfSpeciesTag | None = None, basename: pyarts3.arts.String | None = None, name_missing: pyarts3.arts.Index | None = None, ignore_missing: pyarts3.arts.Index | None = None) None

Reads absorption_predefined_model_data catalog but only for absorption_species

If name_missing is true, missing models are set to named model, which is the most common form of a predefined model.

Author: Richard Larsson

Parameters:
  • absorption_predefined_model_data (PredefinedModelData, optional) – This contains predefined model data. See absorption_predefined_model_data, defaults to self.absorption_predefined_model_data [OUT]

  • absorption_species (ArrayOfArrayOfSpeciesTag, optional) – Tag groups for gas absorption. See absorption_species, defaults to self.absorption_species [IN]

  • basename (String) – The path to the split catalog files. [IN]

  • name_missing (Index, optional) – Flag to name models that are missing. Defaults to 1 [IN]

  • ignore_missing (Index, optional) – Flag to otherwise (if not name_missing is true) ignore missing models. Defaults to 0 [IN]

absorption_speciesDefineAll(self, absorption_species: pyarts3.arts.ArrayOfArrayOfSpeciesTag | None = None) None

Sets absorption_species [i][0] to all species in ARTS

Author: Richard Larsson

Parameters:

absorption_species (ArrayOfArrayOfSpeciesTag, optional) – Tag groups for gas absorption. See absorption_species, defaults to self.absorption_species [OUT]

absorption_speciesSet(self, absorption_species: pyarts3.arts.ArrayOfArrayOfSpeciesTag | None = None, species: pyarts3.arts.ArrayOfString | None = None) None

Set absorption_species to the named species.

The species that are defined by this method are used in various file reading routines to populate both atmosphere- and abosorption-related data variables.

A tag begins with a valid SpeciesEnum. The rest of the tag is optional. Here are the options:

  1. Leave it as is. Example: “H2O”. This selection means all pure isotopologues of water have been selected.

  2. Make it a valid SpeciesIsotope. Example: “H2O-161” emphasis:or “H2O-PWR98”. The former selection is an actual isotopologue, whereas the latter selects a predefined model.

  3. Make it a valid cross-section species. Example: “H2O-XFIT”. This selects a cross-section species, which is defined in the absorption_xsec_fit_data variable. The tagtype “XFIT” is used to indicate that this is a cross-section species.

  4. Make it a valid collision-induced absorption (CIA) species. Example: “N2-CIA-N2”. This selection is used to select a CIA species, which is defined in the absorption_cia_data variable. The tagtype “CIA” is used to indicate that this is a CIA species.

Author: Stefan Buehler

Parameters:
  • absorption_species (ArrayOfArrayOfSpeciesTag, optional) – Tag groups for gas absorption. See absorption_species, defaults to self.absorption_species [OUT]

  • species (ArrayOfString) – Specify one String for each tag group that you want to create. Inside the String, separate the tags by commas (plus optional blanks). [IN]

absorption_xsec_fit_dataReadSpeciesSplitCatalog(self, absorption_xsec_fit_data: pyarts3.arts.ArrayOfXsecRecord | None = None, absorption_species: pyarts3.arts.ArrayOfArrayOfSpeciesTag | None = None, basename: pyarts3.arts.String | None = None, ignore_missing: pyarts3.arts.Index | None = None) None

Reads HITRAN Crosssection coefficients

Reads coefficient files for HITRAN Xsec species defined in absorption_species.

Author: Oliver Lemke

Parameters:
  • absorption_xsec_fit_data (ArrayOfXsecRecord, optional) – Fitting model coefficients for cross section species. See absorption_xsec_fit_data, defaults to self.absorption_xsec_fit_data [OUT]

  • absorption_species (ArrayOfArrayOfSpeciesTag, optional) – Tag groups for gas absorption. See absorption_species, defaults to self.absorption_species [IN]

  • basename (String) – Basepath to the files. [IN]

  • ignore_missing (Index, optional) – Ignore missing files (0: no, 1: yes). Defaults to 0 [IN]

atmospheric_fieldAbsoluteMagneticField(self, atmospheric_field: pyarts3.arts.AtmField | None = None) None

Set the magnetic field to use the magnitude field functional.

The input field must be a GeodeticField3 for all three parameters to call this method.

The main purpose of this method is to retrieve the magnitude rather than the vector field.

Author: Richard Larsson

Parameters:

atmospheric_field (AtmField, optional) – An atmospheric field in ARTS. See atmospheric_field, defaults to self.atmospheric_field [INOUT]

atmospheric_fieldAbsoluteWindField(self, atmospheric_field: pyarts3.arts.AtmField | None = None) None

Set the wind field to use the magnitude field functional.

The input field must be a GeodeticField3 for all three parameters to call this method.

The main purpose of this method is to retrieve the magnitude rather than the vector field.

Author: Richard Larsson

Parameters:

atmospheric_field (AtmField, optional) – An atmospheric field in ARTS. See atmospheric_field, defaults to self.atmospheric_field [INOUT]

atmospheric_fieldAppendAbsorptionData(self, atmospheric_field: pyarts3.arts.AtmField | None = None, basename: pyarts3.arts.String | None = None, extrapolation: pyarts3.arts.String | None = None, missing_is_zero: pyarts3.arts.Index | None = None, replace_existing: pyarts3.arts.Index | None = None, load_isot: pyarts3.arts.Index | None = None, load_nlte: pyarts3.arts.Index | None = None) None

Append data to the atmospheric field based all absorption data

See InterpolationExtrapolation for valid extrapolation.

Wraps:

Author: Richard Larsson

Used by wrapper method

Parameters:
  • atmospheric_field (AtmField, optional) – An atmospheric field in ARTS. See atmospheric_field, defaults to self.atmospheric_field [INOUT]

  • basename (String) – The base name of the files. [IN]

  • extrapolation (String, optional) – The extrapolation to use. Defaults to "Linear" [IN]

  • missing_is_zero (Index, optional) – Whether or not to zero-out missing data. Defaults to 0 [IN]

  • replace_existing (Index, optional) – Whether or not to replace existing data. Defaults to 0 [IN]

  • load_isot (Index, optional) – Whether or not to load isotopologue data. Defaults to 0 [IN]

  • load_nlte (Index, optional) – Whether or not to load NLTE data. Defaults to 0 [IN]

atmospheric_fieldAppendBaseData(self, atmospheric_field: pyarts3.arts.AtmField | None = None, basename: pyarts3.arts.String | None = None, extrapolation: pyarts3.arts.String | None = None, deal_with_field_component: pyarts3.arts.String | None = None, replace_existing: pyarts3.arts.Index | None = None, allow_missing_pressure: pyarts3.arts.Index | None = None, allow_missing_temperature: pyarts3.arts.Index | None = None) None

Append base data to the atmospheric field

This will look at the valid basename for files matching base data. The base data file names are of the form

  • “<…>t.xml”

  • “<…>p.xml”

  • “<…>wind_u.xml”

  • “<…>wind_v.xml”

  • “<…>wind_w.xml”

  • “<…>mag_u.xml”

  • “<…>mag_v.xml”

  • “<…>mag_w.xml”

If any of these files are found, they are appended to the atmospheric field.

See InterpolationExtrapolation for valid extrapolation.

See MissingFieldComponentError for valid deal_with_field_component.

The replace_existing is used to determine if the data should be replaced if it already exists in the atmospheric field.

The allow_missing_pressure and allow_missing_temperature are used to determine if the method should throw if the pressure or temperature is missing.

Author: Richard Larsson

Used by wrapper method

Parameters:
  • atmospheric_field (AtmField, optional) – An atmospheric field in ARTS. See atmospheric_field, defaults to self.atmospheric_field [INOUT]

  • basename (String) – The base name of the files. [IN]

  • extrapolation (String, optional) – The extrapolation to use. Defaults to "Linear" [IN]

  • deal_with_field_component (String, optional) – How to deal with the field component. Defaults to "Throw" [IN]

  • replace_existing (Index, optional) – Whether or not to replace existing data. Defaults to 1 [IN]

  • allow_missing_pressure (Index, optional) – Whether or not to allow missing pressure data. Defaults to 0 [IN]

  • allow_missing_temperature (Index, optional) – Whether or not to allow missing temperature data. Defaults to 0 [IN]

atmospheric_fieldAppendCIASpeciesData(self, atmospheric_field: pyarts3.arts.AtmField | None = None, absorption_cia_data: pyarts3.arts.ArrayOfCIARecord | None = None, basename: pyarts3.arts.String | None = None, extrapolation: pyarts3.arts.String | None = None, missing_is_zero: pyarts3.arts.Index | None = None, replace_existing: pyarts3.arts.Index | None = None) None

Append species data to the atmospheric field based on collision-induced data data

This will look at the valid basename for files matching base data. The base data file names are of the short-name form: “species1.xml” “species2.xml” (e.g., “H2O.xml” “CO2.xml”). See SpeciesEnum for valid short names.

See InterpolationExtrapolation for valid extrapolation.

The missing_is_zero sets missing data to zero.

The replace_existing is used to determine if the data should be replaced if it already exists in the atmospheric field.

Author: Richard Larsson

Parameters:
  • atmospheric_field (AtmField, optional) – An atmospheric field in ARTS. See atmospheric_field, defaults to self.atmospheric_field [INOUT]

  • absorption_cia_data (ArrayOfCIARecord, optional) – HITRAN Collision-Induced Absorption (CIA) Data. See absorption_cia_data, defaults to self.absorption_cia_data [IN]

  • basename (String) – The base name of the files. [IN]

  • extrapolation (String, optional) – The extrapolation to use. Defaults to "Linear" [IN]

  • missing_is_zero (Index, optional) – Whether or not to zero-out missing data. Defaults to 0 [IN]

  • replace_existing (Index, optional) – Whether or not to replace existing data. Defaults to 0 [IN]

atmospheric_fieldAppendLineIsotopologueData(self, atmospheric_field: pyarts3.arts.AtmField | None = None, absorption_bands: pyarts3.arts.AbsorptionBands | None = None, basename: pyarts3.arts.String | None = None, extrapolation: pyarts3.arts.String | None = None, missing_is_zero: pyarts3.arts.Index | None = None, replace_existing: pyarts3.arts.Index | None = None) None

Append isotopologue data to the atmospheric field based on line data

This will look at the valid basename for files matching base data. The base data file names are of the form: “species-n.xml” (e.g., “H2O-161.xml”). See SpeciesIsotopeRecord for valid isotopologue names.

See InterpolationExtrapolation for valid extrapolation.

The missing_is_zero sets missing data to zero.

The replace_existing is used to determine if the data should be replaced if it already exists in the atmospheric field.

Author: Richard Larsson

Parameters:
  • atmospheric_field (AtmField, optional) – An atmospheric field in ARTS. See atmospheric_field, defaults to self.atmospheric_field [INOUT]

  • absorption_bands (AbsorptionBands, optional) – Bands of absorption lines for line-by-line (LBL) calculations. See absorption_bands, defaults to self.absorption_bands [IN]

  • basename (String) – The base name of the files. [IN]

  • extrapolation (String, optional) – The extrapolation to use. Defaults to "Linear" [IN]

  • missing_is_zero (Index, optional) – Whether or not to zero-out missing data. Defaults to 0 [IN]

  • replace_existing (Index, optional) – Whether or not to replace existing data. Defaults to 0 [IN]

atmospheric_fieldAppendLineLevelData(self, atmospheric_field: pyarts3.arts.AtmField | None = None, absorption_bands: pyarts3.arts.AbsorptionBands | None = None, basename: pyarts3.arts.String | None = None, extrapolation: pyarts3.arts.String | None = None, missing_is_zero: pyarts3.arts.Index | None = None, replace_existing: pyarts3.arts.Index | None = None) None

Append NLTE data to the atmospheric field based on line data

This will look at the valid basename for files matching base data. The base data file names are of the form: “species-n QN1 N1 N1 QN2 N2 N2.xml” (e.g., “O2-66 J 1 1 N 0 0.xml”). See SpeciesIsotopeRecord for valid isotopologue names and QuantumNumberValue for valid quantum numbers.

See InterpolationExtrapolation for valid extrapolation.

The missing_is_zero sets missing data to zero.

The replace_existing is used to determine if the data should be replaced if it already exists in the atmospheric field.

Author: Richard Larsson

Parameters:
  • atmospheric_field (AtmField, optional) – An atmospheric field in ARTS. See atmospheric_field, defaults to self.atmospheric_field [INOUT]

  • absorption_bands (AbsorptionBands, optional) – Bands of absorption lines for line-by-line (LBL) calculations. See absorption_bands, defaults to self.absorption_bands [IN]

  • basename (String) – The base name of the files. [IN]

  • extrapolation (String, optional) – The extrapolation to use. Defaults to "Linear" [IN]

  • missing_is_zero (Index, optional) – Whether or not to zero-out missing data. Defaults to 0 [IN]

  • replace_existing (Index, optional) – Whether or not to replace existing data. Defaults to 0 [IN]

atmospheric_fieldAppendLineSpeciesData(self, atmospheric_field: pyarts3.arts.AtmField | None = None, absorption_bands: pyarts3.arts.AbsorptionBands | None = None, basename: pyarts3.arts.String | None = None, extrapolation: pyarts3.arts.String | None = None, missing_is_zero: pyarts3.arts.Index | None = None, replace_existing: pyarts3.arts.Index | None = None) None

Append species data to the atmospheric field based on line data

This will look at the valid basename for files matching base data. The base data file names are of the short-name form: “species.xml” (e.g., “H2O.xml”). See SpeciesEnum for valid short names.

See InterpolationExtrapolation for valid extrapolation.

The missing_is_zero sets missing data to zero.

The replace_existing is used to determine if the data should be replaced if it already exists in the atmospheric field.

Author: Richard Larsson

Parameters:
  • atmospheric_field (AtmField, optional) – An atmospheric field in ARTS. See atmospheric_field, defaults to self.atmospheric_field [INOUT]

  • absorption_bands (AbsorptionBands, optional) – Bands of absorption lines for line-by-line (LBL) calculations. See absorption_bands, defaults to self.absorption_bands [IN]

  • basename (String) – The base name of the files. [IN]

  • extrapolation (String, optional) – The extrapolation to use. Defaults to "Linear" [IN]

  • missing_is_zero (Index, optional) – Whether or not to zero-out missing data. Defaults to 0 [IN]

  • replace_existing (Index, optional) – Whether or not to replace existing data. Defaults to 0 [IN]

atmospheric_fieldAppendLookupTableSpeciesData(self, atmospheric_field: pyarts3.arts.AtmField | None = None, absorption_lookup_table: pyarts3.arts.AbsorptionLookupTables | None = None, basename: pyarts3.arts.String | None = None, extrapolation: pyarts3.arts.String | None = None, missing_is_zero: pyarts3.arts.Index | None = None, replace_existing: pyarts3.arts.Index | None = None) None

Append species data to the atmospheric field based on lookup data

This will look at the valid basename for files matching base data. The base data file names are of the short-name form: “species.xml” (e.g., “H2O.xml”). See SpeciesEnum for valid short names.

See InterpolationExtrapolation for valid extrapolation.

The missing_is_zero sets missing data to zero.

The replace_existing is used to determine if the data should be replaced if it already exists in the atmospheric field.

Author: Richard Larsson

Parameters:
  • atmospheric_field (AtmField, optional) – An atmospheric field in ARTS. See atmospheric_field, defaults to self.atmospheric_field [INOUT]

  • absorption_lookup_table (AbsorptionLookupTables, optional) – Absorption lookup table for scalar gas absorption coefficients. See absorption_lookup_table, defaults to self.absorption_lookup_table [IN]

  • basename (String) – The base name of the files. [IN]

  • extrapolation (String, optional) – The extrapolation to use. Defaults to "Linear" [IN]

  • missing_is_zero (Index, optional) – Whether or not to zero-out missing data. Defaults to 0 [IN]

  • replace_existing (Index, optional) – Whether or not to replace existing data. Defaults to 0 [IN]

atmospheric_fieldAppendPredefSpeciesData(self, atmospheric_field: pyarts3.arts.AtmField | None = None, absorption_predefined_model_data: pyarts3.arts.PredefinedModelData | None = None, basename: pyarts3.arts.String | None = None, extrapolation: pyarts3.arts.String | None = None, missing_is_zero: pyarts3.arts.Index | None = None, replace_existing: pyarts3.arts.Index | None = None) None

Append species data to the atmospheric field based on predefined model data

This will look at the valid basename for files matching base data. The base data file names are of the short-name form: “species-MODEL.xml” (e.g., “H2O-ForeignContCKDMT400.xml”). See SpeciesEnum for valid short names.

See InterpolationExtrapolation for valid extrapolation.

The missing_is_zero sets missing data to zero.

The replace_existing is used to determine if the data should be replaced if it already exists in the atmospheric field.

Author: Richard Larsson

Parameters:
  • atmospheric_field (AtmField, optional) – An atmospheric field in ARTS. See atmospheric_field, defaults to self.atmospheric_field [INOUT]

  • absorption_predefined_model_data (PredefinedModelData, optional) – This contains predefined model data. See absorption_predefined_model_data, defaults to self.absorption_predefined_model_data [IN]

  • basename (String) – The base name of the files. [IN]

  • extrapolation (String, optional) – The extrapolation to use. Defaults to "Linear" [IN]

  • missing_is_zero (Index, optional) – Whether or not to zero-out missing data. Defaults to 0 [IN]

  • replace_existing (Index, optional) – Whether or not to replace existing data. Defaults to 0 [IN]

atmospheric_fieldAppendTagsSpeciesData(self, atmospheric_field: pyarts3.arts.AtmField | None = None, absorption_species: pyarts3.arts.ArrayOfArrayOfSpeciesTag | None = None, basename: pyarts3.arts.String | None = None, extrapolation: pyarts3.arts.String | None = None, missing_is_zero: pyarts3.arts.Index | None = None, replace_existing: pyarts3.arts.Index | None = None) None

Append species data to the atmospheric field based on species data

This will look at the valid basename for files matching base data. The base data file names are of the short-name form: “species.xml” (e.g., “H2O.xml”). See SpeciesEnum for valid short names.

See InterpolationExtrapolation for valid extrapolation.

The missing_is_zero sets missing data to zero.

The replace_existing is used to determine if the data should be replaced if it already exists in the atmospheric field.

Author: Richard Larsson

Parameters:
  • atmospheric_field (AtmField, optional) – An atmospheric field in ARTS. See atmospheric_field, defaults to self.atmospheric_field [INOUT]

  • absorption_species (ArrayOfArrayOfSpeciesTag, optional) – Tag groups for gas absorption. See absorption_species, defaults to self.absorption_species [IN]

  • basename (String) – The base name of the files. [IN]

  • extrapolation (String, optional) – The extrapolation to use. Defaults to "Linear" [IN]

  • missing_is_zero (Index, optional) – Whether or not to zero-out missing data. Defaults to 0 [IN]

  • replace_existing (Index, optional) – Whether or not to replace existing data. Defaults to 0 [IN]

atmospheric_fieldAppendXsecSpeciesData(self, atmospheric_field: pyarts3.arts.AtmField | None = None, absorption_xsec_fit_data: pyarts3.arts.ArrayOfXsecRecord | None = None, basename: pyarts3.arts.String | None = None, extrapolation: pyarts3.arts.String | None = None, missing_is_zero: pyarts3.arts.Index | None = None, replace_existing: pyarts3.arts.Index | None = None) None

Append species data to the atmospheric field based on cross-section data

This will look at the valid basename for files matching base data. The base data file names are of the short-name form: “species.xml” (e.g., “H2O.xml”). See SpeciesEnum for valid short names.

See InterpolationExtrapolation for valid extrapolation.

The missing_is_zero sets missing data to zero.

The replace_existing is used to determine if the data should be replaced if it already exists in the atmospheric field.

Author: Richard Larsson

Parameters:
  • atmospheric_field (AtmField, optional) – An atmospheric field in ARTS. See atmospheric_field, defaults to self.atmospheric_field [INOUT]

  • absorption_xsec_fit_data (ArrayOfXsecRecord, optional) – Fitting model coefficients for cross section species. See absorption_xsec_fit_data, defaults to self.absorption_xsec_fit_data [IN]

  • basename (String) – The base name of the files. [IN]

  • extrapolation (String, optional) – The extrapolation to use. Defaults to "Linear" [IN]

  • missing_is_zero (Index, optional) – Whether or not to zero-out missing data. Defaults to 0 [IN]

  • replace_existing (Index, optional) – Whether or not to replace existing data. Defaults to 0 [IN]

atmospheric_fieldFitNonLTE(self, atmospheric_field: pyarts3.arts.AtmField | None = None, absorption_bands: pyarts3.arts.AbsorptionBands | None = None, frequency_grid: pyarts3.arts.AscendingGrid | None = None, propagation_matrix_agenda: pyarts3.arts.Agenda | None = None, surface_field: pyarts3.arts.SurfaceField | None = None, pol: pyarts3.arts.Stokvec | None = None, levels: pyarts3.arts.ArrayOfQuantumLevelIdentifier | None = None, key: pyarts3.arts.AtmKey | None = None, iteration_limit: pyarts3.arts.Index | None = None, dza: pyarts3.arts.Numeric | None = None, convergence_limit: pyarts3.arts.Numeric | None = None, consider_limb: pyarts3.arts.Index | None = None, collision_data: pyarts3.arts.QuantumIdentifierGriddedField1Map | None = None, azimuth: pyarts3.arts.Numeric | None = None, altitude_extrapolation: pyarts3.arts.InterpolationExtrapolation | None = None) None

Fits non-LTE atmospheric field values

Wrapper calling Methods (in order):

Equivalent (mostly) Python code:

1ws = pyarts.Workspace()
2
3# ...
4
5 ws.atmospheric_profileFromGrid()
6 ws.atmospheric_profileFitNonLTE()
7 ws.atmospheric_fieldFromProfile()

Author: Richard Larsson

Parameters:
  • atmospheric_field (AtmField, optional) – An atmospheric field in ARTS. See atmospheric_field, defaults to self.atmospheric_field [INOUT]

  • absorption_bands (AbsorptionBands, optional) – Bands of absorption lines for line-by-line (LBL) calculations. See absorption_bands, defaults to self.absorption_bands [IN]

  • frequency_grid (AscendingGrid, optional) – A single frequency grid. See frequency_grid, defaults to self.frequency_grid [IN]

  • propagation_matrix_agenda (Agenda, optional) – Compute the propagation matrix, the non-LTE source vector, and their derivatives. See propagation_matrix_agenda, defaults to self.propagation_matrix_agenda [IN]

  • surface_field (SurfaceField, optional) – The surface field describes the surface properties. See surface_field, defaults to self.surface_field [IN]

  • pol (Stokvec, optional) – The polarization selection vector (use the default unless you know what you are doing). Defaults to 1 0 0 0 [IN]

  • levels (ArrayOfQuantumLevelIdentifier) – The order of the energy levels. [IN]

  • key (AtmKey, optional) – Key to find the GriddedField3 in the atmospheric field. Defaults to t [IN]

  • iteration_limit (Index, optional) – Maximum number of iterations. Defaults to 100 [IN]

  • dza (Numeric, optional) – The zenith angle limit for the internal call to zenith_gridProfilePseudo2D(). Defaults to 5 [IN]

  • convergence_limit (Numeric, optional) – Convergence criterion for the energy level distribution. Defaults to 1e-06 [IN]

  • consider_limb (Index, optional) – Whether to add extra limb points in zenith_gridProfilePseudo2D(). Defaults to 1 [IN]

  • collision_data (QuantumIdentifierGriddedField1Map) – Collision data for the transitions - for \(C_{ij}\) and \(C_{ji}\). [IN]

  • azimuth (Numeric, optional) – The azimuth of the radiation. Defaults to 0 [IN]

  • altitude_extrapolation (InterpolationExtrapolation, optional) – Extrapolation method along the altitude grid. Defaults to Linear [IN]

atmospheric_fieldFromModelState(self, atmospheric_field: pyarts3.arts.AtmField | None = None, model_state_vector: pyarts3.arts.Vector | None = None, jacobian_targets: pyarts3.arts.JacobianTargets | None = None) None

Sets atmospheric_field to the state of the model.

Author: Richard Larsson

Used by wrapper method

Parameters:
  • atmospheric_field (AtmField, optional) – An atmospheric field in ARTS. See atmospheric_field, defaults to self.atmospheric_field [INOUT]

  • model_state_vector (Vector, optional) – A state vector of the model. See model_state_vector, defaults to self.model_state_vector [IN]

  • jacobian_targets (JacobianTargets, optional) – A list of targets for the Jacobian Matrix calculations. See jacobian_targets, defaults to self.jacobian_targets [IN]

atmospheric_fieldFromProfile(self, atmospheric_field: pyarts3.arts.AtmField | None = None, atmospheric_profile: pyarts3.arts.ArrayOfAtmPoint | None = None, altitude_grid: pyarts3.arts.AscendingGrid | None = None, altitude_extrapolation: pyarts3.arts.InterpolationExtrapolation | None = None) None

Sets the atmospheric field to be the 1D atmospheric profile.

The top of the atmosphere is the last value of the altitude grid.

Author: Richard Larsson

Used by wrapper method

Parameters:
atmospheric_fieldHydrostaticPressure(self, atmospheric_field: pyarts3.arts.AtmField | None = None, gravity_operator: pyarts3.arts.NumericTernaryOperator | None = None, altitude_grid: pyarts3.arts.AscendingGrid | None = None, p0: pyarts3.arts.GeodeticField2 | pyarts3.arts.Numeric | None = None, fixed_specific_gas_constant: pyarts3.arts.Numeric | None = None, fixed_atmospheric_temperature: pyarts3.arts.Numeric | None = None, hydrostatic_option: pyarts3.arts.String | None = None) None

Add the hydrostatic pressure to the atmospheric field

The field must already be able to compute temperature as a function of altitude, latitude, and longitude.

If a positive fixed_specific_gas_constant is not provided, the field must also consist of correct volume mixing ratios so that the mass of an average molecule can be computed.

The first altitude in altitude_grid is used as the altitude of the p0 grid. The extrapolation outside of this range simply uses the formalism of the select hydrostatic_option.

Note

The gradient changes only at the grid points of the altitude_grid. Please make it dense enough to avoid missing features. A recommendation is to extract the altitude_grid directly from the temperature field.

Also be aware that missing VMRs for important species, e.g., N \(_2\) or O \(_2\), will lead to incorrect results. The mean molecular mass need these VMRs, so if the VMRs are missing, the pressure will not be correct either.

Author: Richard Larsson

Parameters:
  • atmospheric_field (AtmField, optional) – An atmospheric field in ARTS. See atmospheric_field, defaults to self.atmospheric_field [INOUT]

  • gravity_operator (NumericTernaryOperator, optional) – The gravity operator. See gravity_operator, defaults to self.gravity_operator [IN]

  • altitude_grid (AscendingGrid, optional) – An ascending list of altitude. Often related to a field or a profile. See altitude_grid, defaults to self.altitude_grid [IN]

  • p0 (GeodeticField2,Numeric) – Lowest altitude pressure field. \(P_0\) above. [IN]

  • fixed_specific_gas_constant (Numeric, optional) – Specific gas constant if larger than 0. Defaults to -1 [IN]

  • fixed_atmospheric_temperature (Numeric, optional) – Constant atmospheric temprature if larger than 0. Defaults to -1 [IN]

  • hydrostatic_option (String, optional) – Computational option for levels. See HydrostaticPressureOption for valid options. Defaults to "HydrostaticEquation" [IN]

atmospheric_fieldIGRF(self, atmospheric_field: pyarts3.arts.AtmField | None = None, time: pyarts3.arts.Time | None = None) None

Use IGRF to compute the magnetic field at each point.

The IGRF model is a model of the Earth’s magnetic field. It is based on spherical harmonics and is only valid for a limited time period.

Author: Richard Larsson

Parameters:
  • atmospheric_field (AtmField, optional) – An atmospheric field in ARTS. See atmospheric_field, defaults to self.atmospheric_field [INOUT]

  • time (Time, optional) – Time of data to use. Defaults to 2025-09-04 05:19:34.055137236 [IN]

atmospheric_fieldInit(self, atmospheric_field: pyarts3.arts.AtmField | None = None, toa: pyarts3.arts.Numeric | None = None, default_isotopologue: pyarts3.arts.String | None = None) None

Initialize the atmospheric field with some altitude and isotopologue ratios

See IsoRatioOption for valid default_isotopologue.

Author: Richard Larsson

Used by wrapper method

Parameters:
  • atmospheric_field (AtmField, optional) – An atmospheric field in ARTS. See atmospheric_field, defaults to self.atmospheric_field [OUT]

  • toa (Numeric) – Top of atmosphere altitude [m]. [IN]

  • default_isotopologue (String, optional) – Default option for the isotopologue ratios. Defaults to "Builtin" [IN]

atmospheric_fieldInitializeNonLTE(self, atmospheric_field: pyarts3.arts.AtmField | None = None, absorption_bands: pyarts3.arts.AbsorptionBands | None = None, normalization: pyarts3.arts.Numeric | None = None) None

Initialize the non-LTE atmospheric field from the LTE temperature field.

Note that the bands have to be 1-line long to work.

This is because of how non-LTE is implemented in ARTS.

Author: Richard Larsson

Parameters:
  • atmospheric_field (AtmField, optional) – An atmospheric field in ARTS. See atmospheric_field, defaults to self.atmospheric_field [INOUT]

  • absorption_bands (AbsorptionBands, optional) – Bands of absorption lines for line-by-line (LBL) calculations. See absorption_bands, defaults to self.absorption_bands [IN]

  • normalization (Numeric, optional) – Normalization factor for the non-LTE field - all species of same isotopologue will be summed to this value (non-positive means no normalization). Defaults to 0 [IN]

atmospheric_fieldRead(self, atmospheric_field: pyarts3.arts.AtmField | None = None, toa: pyarts3.arts.Numeric | None = None, missing_is_zero: pyarts3.arts.Index | None = None, load_nlte: pyarts3.arts.Index | None = None, load_isot: pyarts3.arts.Index | None = None, extrapolation: pyarts3.arts.String | None = None, default_isotopologue: pyarts3.arts.String | None = None, deal_with_field_component: pyarts3.arts.String | None = None, basename: pyarts3.arts.String | None = None, allow_missing_temperature: pyarts3.arts.Index | None = None, allow_missing_pressure: pyarts3.arts.Index | None = None) None

Read atmospheric data files from a directory

Wrapper calling Methods (in order):

Equivalent (mostly) Python code:

1ws = pyarts.Workspace()
2
3# ...
4
5 ws.atmospheric_fieldInit()
6 ws.atmospheric_fieldAppendBaseData()
7 ws.atmospheric_fieldAppendAbsorptionData()

Author: Richard Larsson

Parameters:
  • atmospheric_field (AtmField, optional) – An atmospheric field in ARTS. See atmospheric_field, defaults to self.atmospheric_field [OUT]

  • toa (Numeric) – Top of atmosphere altitude [m]. [IN]

  • missing_is_zero (Index, optional) – Whether or not to zero-out missing data. Defaults to 0 [IN]

  • load_nlte (Index, optional) – Whether or not to load NLTE data. Defaults to 0 [IN]

  • load_isot (Index, optional) – Whether or not to load isotopologue data. Defaults to 0 [IN]

  • extrapolation (String, optional) – The extrapolation to use. Defaults to "Linear" [IN]

  • default_isotopologue (String, optional) – Default option for the isotopologue ratios. Defaults to "Builtin" [IN]

  • deal_with_field_component (String, optional) – How to deal with the field component. Defaults to "Throw" [IN]

  • basename (String) – The base name of the files. [IN]

  • allow_missing_temperature (Index, optional) – Whether or not to allow missing temperature data. Defaults to 0 [IN]

  • allow_missing_pressure (Index, optional) – Whether or not to allow missing pressure data. Defaults to 0 [IN]

atmospheric_fieldRegrid(self, atmospheric_field: pyarts3.arts.AtmField | None = None, altitude_grid: pyarts3.arts.AscendingGrid | None = None, latitude_grid: pyarts3.arts.LatGrid | None = None, longitude_grid: pyarts3.arts.LonGrid | None = None, parameter: pyarts3.arts.AtmKey | pyarts3.arts.SpeciesEnum | pyarts3.arts.SpeciesIsotope | pyarts3.arts.QuantumLevelIdentifier | pyarts3.arts.ScatteringSpeciesProperty | None = None, extrapolation: pyarts3.arts.String | None = None) None

Regrid the input atmospheric field parameter to a new grid.

The atmospheric field parameter will have a GriddedField3 with the input grid after the regridding.

Author: Richard Larsson

Parameters:
atmospheric_fieldRegridAll(self, atmospheric_field: pyarts3.arts.AtmField | None = None, altitude_grid: pyarts3.arts.AscendingGrid | None = None, latitude_grid: pyarts3.arts.LatGrid | None = None, longitude_grid: pyarts3.arts.LonGrid | None = None, extrapolation: pyarts3.arts.String | None = None) None

Regrid all parameters of the input atmospheric field to a new grid

The atmospheric field will have a GriddedField3 with the input grid after the regridding at all positions.

Author: Richard Larsson

Parameters:
  • atmospheric_field (AtmField, optional) – An atmospheric field in ARTS. See atmospheric_field, defaults to self.atmospheric_field [INOUT]

  • altitude_grid (AscendingGrid, optional) – An ascending list of altitude. Often related to a field or a profile. See altitude_grid, defaults to self.altitude_grid [IN]

  • latitude_grid (LatGrid, optional) – An ascending list of latitude. Often related to a field or a profile. See latitude_grid, defaults to self.latitude_grid [IN]

  • longitude_grid (LonGrid, optional) – An ascending list of longitude. Often related to a field or a profile. See longitude_grid, defaults to self.longitude_grid [IN]

  • extrapolation (String, optional) – The extrapolation to use (post regridding - pre regridding the current extrapolation is used). Defaults to "Nearest" [IN]

atmospheric_fieldSchmidthFieldFromIGRF(self, atmospheric_field: pyarts3.arts.AtmField | None = None, time: pyarts3.arts.Time | None = None) None

For forward calculations, this should be similar to atmospheric_fieldIGRF().

What it does different is that it is 1) not a direct computations matching the IGRF field, instead averaging the Legendre coefficient matrices.

What it does very different is that it supports retrievals of the magnetic field Legendre coefficients.

Author: Richard Larsson

Parameters:
  • atmospheric_field (AtmField, optional) – An atmospheric field in ARTS. See atmospheric_field, defaults to self.atmospheric_field [INOUT]

  • time (Time, optional) – Time of IGRF data to use. Defaults to 2025-09-04 05:19:34.055138368 [IN]

atmospheric_pointInit(self, atmospheric_point: pyarts3.arts.AtmPoint | None = None, default_isotopologue: pyarts3.arts.String | None = None) None

Initialize an atmospheric point with some isotopologue ratios

See IsoRatioOption for valid default_isotopologue.

Author: Richard Larsson

Parameters:
  • atmospheric_point (AtmPoint, optional) – An atmospheric point in ARTS. See atmospheric_point, defaults to self.atmospheric_point [OUT]

  • default_isotopologue (String, optional) – Default option for the isotopologue ratios. Defaults to "Builtin" [IN]

atmospheric_profileExtendInPressure(self, atmospheric_profile: pyarts3.arts.ArrayOfAtmPoint | None = None, extended_max_pressure: pyarts3.arts.Numeric | None = None, extended_min_pressure: pyarts3.arts.Numeric | None = None, extrapolation_option: pyarts3.arts.String | None = None) None

Extends the atmospheric profile in pressure.

Author: Richard Larsson

Parameters:
  • atmospheric_profile (ArrayOfAtmPoint, optional) – An atmospheric profile in ARTS. See atmospheric_profile, defaults to self.atmospheric_profile [INOUT]

  • extended_max_pressure (Numeric, optional) – Maximum pressure to extend to. Defaults to nan [IN]

  • extended_min_pressure (Numeric, optional) – Minimum pressure to extend to. Defaults to nan [IN]

  • extrapolation_option (String, optional) – Extrapolation option. Defaults to "Nearest" [IN]

atmospheric_profileExtract(self, atmospheric_profile: pyarts3.arts.ArrayOfAtmPoint | None = None, atmospheric_field: pyarts3.arts.AtmField | None = None, altitude_grid: pyarts3.arts.AscendingGrid | None = None, latitude: pyarts3.arts.Numeric | None = None, longitude: pyarts3.arts.Numeric | None = None) None

Extract an atmospheric profile from the atmospheric field.

Author: Richard Larsson

Used by wrapper method

Parameters:
  • atmospheric_profile (ArrayOfAtmPoint, optional) – An atmospheric profile in ARTS. See atmospheric_profile, defaults to self.atmospheric_profile [OUT]

  • atmospheric_field (AtmField, optional) – An atmospheric field in ARTS. See atmospheric_field, defaults to self.atmospheric_field [IN]

  • altitude_grid (AscendingGrid, optional) – An ascending list of altitude. Often related to a field or a profile. See altitude_grid, defaults to self.altitude_grid [IN]

  • latitude (Numeric, optional) – A single latitude. See latitude, defaults to self.latitude [IN]

  • longitude (Numeric, optional) – A single longitude. See longitude, defaults to self.longitude [IN]

atmospheric_profileFitNonLTE(self, atmospheric_profile: pyarts3.arts.ArrayOfAtmPoint | None = None, absorption_bands: pyarts3.arts.AbsorptionBands | None = None, propagation_matrix_agenda: pyarts3.arts.Agenda | None = None, surface_field: pyarts3.arts.SurfaceField | None = None, frequency_grid: pyarts3.arts.AscendingGrid | None = None, altitude_grid: pyarts3.arts.AscendingGrid | None = None, latitude: pyarts3.arts.Numeric | None = None, longitude: pyarts3.arts.Numeric | None = None, collision_data: pyarts3.arts.QuantumIdentifierGriddedField1Map | None = None, levels: pyarts3.arts.ArrayOfQuantumLevelIdentifier | None = None, pol: pyarts3.arts.Stokvec | None = None, azimuth: pyarts3.arts.Numeric | None = None, dza: pyarts3.arts.Numeric | None = None, convergence_limit: pyarts3.arts.Numeric | None = None, iteration_limit: pyarts3.arts.Index | None = None, consider_limb: pyarts3.arts.Index | None = None) None

Fits non-LTE distributions to the level data.

The spectral flux is computed from the pseudo-2D assumption.

This method fits non-LTE distributions to the level data in the atmospheric field. It only works for absorption band data that is separated by single-lines-per-band, and will produce nonsense for overlapping line data. If the lines overlap, the method will keep introducing more-and-more energy into the system, meaning that the method will not converge or turn to some extreme stable state.

The statistical equilibrium equation is given by finding valid set of energy level distribution \(n\) such that for all valid energy level combination of upper levels \(i\) and lower levels \(j\) the rate of change is zero for some \(n\) that satisfies the equation

\[\frac{d n_i}{dt} = \sum_{j > i} \left[ n_j A_{ji} - \left( n_i B_{ij} - n_j B_{ji} \right) J_{ij} \right] - \sum_{j < i} \left[ n_i A_{ij} - \left( n_j B_{ji} - n_i B_{ij} \right) J_{ij} \right] + \sum_{j} \left[ n_j C_{ji} - n_i C_{ij} \right],\]

where \(A_{ij}\) is the spontaneous emission rate, \(B_{ij}\) is the stimulated emission rate, \(B_{ij}\) is the photon absorption rate, \(J_{ij}\) is the line-integrated flux, and \(C_{ij}\) is the collisional rate.

Generally, you need \(n\) to compute \(J_{ij}\), making the problem non-linear. Thus an iterative process is used to find the solution. The iteration is considered converged when the relative change in the energy level distribution is below the convergence criterion. Alternatively, the iteration is halted if the iteration count limit is breached.

Author: Richard Larsson

Used by wrapper method

Parameters:
  • atmospheric_profile (ArrayOfAtmPoint, optional) – An atmospheric profile in ARTS. See atmospheric_profile, defaults to self.atmospheric_profile [INOUT]

  • absorption_bands (AbsorptionBands, optional) – Bands of absorption lines for line-by-line (LBL) calculations. See absorption_bands, defaults to self.absorption_bands [IN]

  • propagation_matrix_agenda (Agenda, optional) – Compute the propagation matrix, the non-LTE source vector, and their derivatives. See propagation_matrix_agenda, defaults to self.propagation_matrix_agenda [IN]

  • surface_field (SurfaceField, optional) – The surface field describes the surface properties. See surface_field, defaults to self.surface_field [IN]

  • frequency_grid (AscendingGrid, optional) – A single frequency grid. See frequency_grid, defaults to self.frequency_grid [IN]

  • altitude_grid (AscendingGrid, optional) – An ascending list of altitude. Often related to a field or a profile. See altitude_grid, defaults to self.altitude_grid [IN]

  • latitude (Numeric, optional) – A single latitude. See latitude, defaults to self.latitude [IN]

  • longitude (Numeric, optional) – A single longitude. See longitude, defaults to self.longitude [IN]

  • collision_data (QuantumIdentifierGriddedField1Map) – Collision data for the transitions - for \(C_{ij}\) and \(C_{ji}\). [IN]

  • levels (ArrayOfQuantumLevelIdentifier) – The order of the energy levels. [IN]

  • pol (Stokvec, optional) – The polarization selection vector (use the default unless you know what you are doing). Defaults to 1 0 0 0 [IN]

  • azimuth (Numeric, optional) – The azimuth of the radiation. Defaults to 0 [IN]

  • dza (Numeric, optional) – The zenith angle limit for the internal call to zenith_gridProfilePseudo2D(). Defaults to 5 [IN]

  • convergence_limit (Numeric, optional) – Convergence criterion for the energy level distribution. Defaults to 1e-06 [IN]

  • iteration_limit (Index, optional) – Maximum number of iterations. Defaults to 100 [IN]

  • consider_limb (Index, optional) – Whether to add extra limb points in zenith_gridProfilePseudo2D(). Defaults to 1 [IN]

atmospheric_profileFromGrid(self, atmospheric_profile: pyarts3.arts.ArrayOfAtmPoint | None = None, altitude_grid: pyarts3.arts.AscendingGrid | None = None, latitude: pyarts3.arts.Numeric | None = None, longitude: pyarts3.arts.Numeric | None = None, atmospheric_field: pyarts3.arts.AtmField | None = None, key: pyarts3.arts.AtmKey | None = None) None

Extract an atmospheric profile and its grids.

The key is used to find a GriddedField3 in the atmospheric field. Its grids must form a profile. The profile is extracted and returned. The grids are returned as well.

Author: Richard Larsson

Used by wrapper method

Parameters:
  • atmospheric_profile (ArrayOfAtmPoint, optional) – An atmospheric profile in ARTS. See atmospheric_profile, defaults to self.atmospheric_profile [OUT]

  • altitude_grid (AscendingGrid, optional) – An ascending list of altitude. Often related to a field or a profile. See altitude_grid, defaults to self.altitude_grid [OUT]

  • latitude (Numeric, optional) – A single latitude. See latitude, defaults to self.latitude [OUT]

  • longitude (Numeric, optional) – A single longitude. See longitude, defaults to self.longitude [OUT]

  • atmospheric_field (AtmField, optional) – An atmospheric field in ARTS. See atmospheric_field, defaults to self.atmospheric_field [IN]

  • key (AtmKey, optional) – Key to find the GriddedField3 in the atmospheric field. Defaults to t [IN]

disort_settingsCosmicMicrowaveBackgroundRadiation(self, disort_settings: pyarts3.arts.DisortSettings | None = None, frequency_grid: pyarts3.arts.AscendingGrid | None = None) None

Space radiation into Disort is isotropic cosmic background radiation.

Author: Richard Larsson

Parameters:
  • disort_settings (DisortSettings, optional) – Contains the full settings of spectral Disort calculations. See disort_settings, defaults to self.disort_settings [INOUT]

  • frequency_grid (AscendingGrid, optional) – A single frequency grid. See frequency_grid, defaults to self.frequency_grid [IN]

disort_settingsInit(self, disort_settings: pyarts3.arts.DisortSettings | None = None, frequency_grid: pyarts3.arts.AscendingGrid | None = None, ray_path: pyarts3.arts.ArrayOfPropagationPathPoint | None = None, disort_quadrature_dimension: pyarts3.arts.Index | None = None, disort_legendre_polynomial_dimension: pyarts3.arts.Index | None = None, disort_fourier_mode_dimension: pyarts3.arts.Index | None = None) None

Perform Disort calculations for spectral flux.

Author: Richard Larsson

Parameters:
  • disort_settings (DisortSettings, optional) – Contains the full settings of spectral Disort calculations. See disort_settings, defaults to self.disort_settings [OUT]

  • frequency_grid (AscendingGrid, optional) – A single frequency grid. See frequency_grid, defaults to self.frequency_grid [IN]

  • ray_path (ArrayOfPropagationPathPoint, optional) – A list path points making up a propagation path. See ray_path, defaults to self.ray_path [IN]

  • disort_quadrature_dimension (Index, optional) – The quadrature size for Disort. See disort_quadrature_dimension, defaults to self.disort_quadrature_dimension [IN]

  • disort_legendre_polynomial_dimension (Index, optional) – The number of input Legendre polynimials for Disort. See disort_legendre_polynomial_dimension, defaults to self.disort_legendre_polynomial_dimension [IN]

  • disort_fourier_mode_dimension (Index, optional) – The number of Fourier modes for Disort. See disort_fourier_mode_dimension, defaults to self.disort_fourier_mode_dimension [IN]

disort_settingsLayerNonThermalEmissionLinearInTau(self, disort_settings: pyarts3.arts.DisortSettings | None = None, ray_path_atmospheric_point: pyarts3.arts.ArrayOfAtmPoint | None = None, ray_path_propagation_matrix: pyarts3.arts.ArrayOfPropmatVector | None = None, ray_path_propagation_matrix_source_vector_nonlte: pyarts3.arts.ArrayOfStokvecVector | None = None, frequency_grid: pyarts3.arts.AscendingGrid | None = None) None

Same as disort_settingsLayerThermalEmissionLinearInTau() but considers non-LTE

This is WIP and should not be used.

Author: Richard Larsson

Parameters:
disort_settingsLayerThermalEmissionLinearInTau(self, disort_settings: pyarts3.arts.DisortSettings | None = None, ray_path_atmospheric_point: pyarts3.arts.ArrayOfAtmPoint | None = None, frequency_grid: pyarts3.arts.AscendingGrid | None = None) None

Use a source function that changes linearly in optical thickness.

Note that you must have set the optical thickness before calling this.

Author: Richard Larsson

Parameters:
disort_settingsLegendreCoefficientsFromPath(self, disort_settings: pyarts3.arts.DisortSettings | None = None, ray_path_phase_matrix_scattering_spectral: pyarts3.arts.ArrayOfSpecmatMatrix | None = None) None

Sets the legendre coefficients from the path-variable.

Author: Richard Larsson

Parameters:
  • disort_settings (DisortSettings, optional) – Contains the full settings of spectral Disort calculations. See disort_settings, defaults to self.disort_settings [INOUT]

  • ray_path_phase_matrix_scattering_spectral (ArrayOfSpecmatMatrix, optional) – The spectral phase matrix of totally random orientation particles along the propagation path using spectral representation. See ray_path_phase_matrix_scattering_spectral, defaults to self.ray_path_phase_matrix_scattering_spectral [IN]

disort_settingsNoFractionalScattering(self, disort_settings: pyarts3.arts.DisortSettings | None = None) None

Turns off fractional scattering in Disort calculations.

Author: Richard Larsson

Parameters:

disort_settings (DisortSettings, optional) – Contains the full settings of spectral Disort calculations. See disort_settings, defaults to self.disort_settings [INOUT]

disort_settingsNoLayerThermalEmission(self, disort_settings: pyarts3.arts.DisortSettings | None = None) None

Turns off source radiation in Disort calculations.

Author: Richard Larsson

Parameters:

disort_settings (DisortSettings, optional) – Contains the full settings of spectral Disort calculations. See disort_settings, defaults to self.disort_settings [INOUT]

disort_settingsNoLegendre(self, disort_settings: pyarts3.arts.DisortSettings | None = None) None

Turns off Legendre coefficients in Disort calculations.

Author: Richard Larsson

Parameters:

disort_settings (DisortSettings, optional) – Contains the full settings of spectral Disort calculations. See disort_settings, defaults to self.disort_settings [INOUT]

disort_settingsNoSingleScatteringAlbedo(self, disort_settings: pyarts3.arts.DisortSettings | None = None) None

Turns off single albedo scattering in Disort calculations.

Author: Richard Larsson

Parameters:

disort_settings (DisortSettings, optional) – Contains the full settings of spectral Disort calculations. See disort_settings, defaults to self.disort_settings [INOUT]

disort_settingsNoSpaceEmission(self, disort_settings: pyarts3.arts.DisortSettings | None = None) None

Turns off boundary condition from space for Disort calculations.

Author: Richard Larsson

Parameters:

disort_settings (DisortSettings, optional) – Contains the full settings of spectral Disort calculations. See disort_settings, defaults to self.disort_settings [INOUT]

disort_settingsNoSun(self, disort_settings: pyarts3.arts.DisortSettings | None = None) None

Turns off solar radiation in Disort calculations.

Author: Richard Larsson

Parameters:

disort_settings (DisortSettings, optional) – Contains the full settings of spectral Disort calculations. See disort_settings, defaults to self.disort_settings [INOUT]

disort_settingsNoSurfaceEmission(self, disort_settings: pyarts3.arts.DisortSettings | None = None) None

Turns boundary condition from surface for Disort calculations.

Author: Richard Larsson

Parameters:

disort_settings (DisortSettings, optional) – Contains the full settings of spectral Disort calculations. See disort_settings, defaults to self.disort_settings [INOUT]

disort_settingsNoSurfaceScattering(self, disort_settings: pyarts3.arts.DisortSettings | None = None) None

Turns off BDRF in Disort calculations.

Author: Richard Larsson

Parameters:

disort_settings (DisortSettings, optional) – Contains the full settings of spectral Disort calculations. See disort_settings, defaults to self.disort_settings [INOUT]

disort_settingsOpticalThicknessFromPath(self, disort_settings: pyarts3.arts.DisortSettings | None = None, ray_path: pyarts3.arts.ArrayOfPropagationPathPoint | None = None, ray_path_propagation_matrix: pyarts3.arts.ArrayOfPropmatVector | None = None, min_optical_depth: pyarts3.arts.Numeric | None = None) None

Get optical thickness from path.

Author: Richard Larsson

Parameters:
  • disort_settings (DisortSettings, optional) – Contains the full settings of spectral Disort calculations. See disort_settings, defaults to self.disort_settings [INOUT]

  • ray_path (ArrayOfPropagationPathPoint, optional) – A list path points making up a propagation path. See ray_path, defaults to self.ray_path [IN]

  • ray_path_propagation_matrix (ArrayOfPropmatVector, optional) – Propagation matrices along the propagation path. See ray_path_propagation_matrix, defaults to self.ray_path_propagation_matrix [IN]

  • min_optical_depth (Numeric, optional) – The minimum increase in optical thickness per level. The DISORT algorithm employed is numerically unstable if the change between levels is too small. Defaults to 1e-11 [IN]

disort_settingsSetSun(self, disort_settings: pyarts3.arts.DisortSettings | None = None, frequency_grid: pyarts3.arts.AscendingGrid | None = None, surface_field: pyarts3.arts.SurfaceField | None = None, sun: pyarts3.arts.Sun | None = None, ray_path_point: pyarts3.arts.PropagationPathPoint | None = None) None

Uses Set the FOV to the sun input for Disort calculations.

Author: Richard Larsson

Parameters:
  • disort_settings (DisortSettings, optional) – Contains the full settings of spectral Disort calculations. See disort_settings, defaults to self.disort_settings [INOUT]

  • frequency_grid (AscendingGrid, optional) – A single frequency grid. See frequency_grid, defaults to self.frequency_grid [IN]

  • surface_field (SurfaceField, optional) – The surface field describes the surface properties. See surface_field, defaults to self.surface_field [IN]

  • sun (Sun, optional) – A sun. See sun, defaults to self.sun [IN]

  • ray_path_point (PropagationPathPoint, optional) – A single path point. See ray_path_point, defaults to self.ray_path_point [IN]

disort_settingsSingleScatteringAlbedoFromPath(self, disort_settings: pyarts3.arts.DisortSettings | None = None, ray_path_propagation_matrix: pyarts3.arts.ArrayOfPropmatVector | None = None, ray_path_propagation_matrix_scattering: pyarts3.arts.ArrayOfPropmatVector | None = None, ray_path_absorption_vector_scattering: pyarts3.arts.ArrayOfStokvecVector | None = None) None

Sets the single scattering albedo from the path-variable.

Author: Richard Larsson

Parameters:
disort_settingsSurfaceEmissionByTemperature(self, disort_settings: pyarts3.arts.DisortSettings | None = None, frequency_grid: pyarts3.arts.AscendingGrid | None = None, ray_path_point: pyarts3.arts.PropagationPathPoint | None = None, surface_field: pyarts3.arts.SurfaceField | None = None) None

Surface radiation into Disort is isotropic from surface temperature.

Author: Richard Larsson

Parameters:
  • disort_settings (DisortSettings, optional) – Contains the full settings of spectral Disort calculations. See disort_settings, defaults to self.disort_settings [INOUT]

  • frequency_grid (AscendingGrid, optional) – A single frequency grid. See frequency_grid, defaults to self.frequency_grid [IN]

  • ray_path_point (PropagationPathPoint, optional) – A single path point. See ray_path_point, defaults to self.ray_path_point [IN]

  • surface_field (SurfaceField, optional) – The surface field describes the surface properties. See surface_field, defaults to self.surface_field [IN]

disort_settingsSurfaceLambertian(self, disort_settings: pyarts3.arts.DisortSettings | None = None, value: pyarts3.arts.Numeric | pyarts3.arts.Vector | None = None) None

Sets the surface to Lambertian.

Author: Richard Larsson

Parameters:
  • disort_settings (DisortSettings, optional) – Contains the full settings of spectral Disort calculations. See disort_settings, defaults to self.disort_settings [INOUT]

  • value (Numeric,Vector) – The value of the BDRF in all directions (Numeric for constant, Vector for spectral). [IN]

disort_settings_agendaExecute(self, disort_settings: pyarts3.arts.DisortSettings | None = None, frequency_grid: pyarts3.arts.AscendingGrid | None = None, ray_path: pyarts3.arts.ArrayOfPropagationPathPoint | None = None, disort_quadrature_dimension: pyarts3.arts.Index | None = None, disort_fourier_mode_dimension: pyarts3.arts.Index | None = None, disort_legendre_polynomial_dimension: pyarts3.arts.Index | None = None, disort_settings_agenda: pyarts3.arts.Agenda | None = None) None

Executes disort_settings_agenda, see it for more details

Author: Automatically Generated

Used by wrapper methods

Parameters:
  • disort_settings (DisortSettings, optional) – Contains the full settings of spectral Disort calculations. See disort_settings, defaults to self.disort_settings [OUT]

  • frequency_grid (AscendingGrid, optional) – A single frequency grid. See frequency_grid, defaults to self.frequency_grid [IN]

  • ray_path (ArrayOfPropagationPathPoint, optional) – A list path points making up a propagation path. See ray_path, defaults to self.ray_path [IN]

  • disort_quadrature_dimension (Index, optional) – The quadrature size for Disort. See disort_quadrature_dimension, defaults to self.disort_quadrature_dimension [IN]

  • disort_fourier_mode_dimension (Index, optional) – The number of Fourier modes for Disort. See disort_fourier_mode_dimension, defaults to self.disort_fourier_mode_dimension [IN]

  • disort_legendre_polynomial_dimension (Index, optional) – The number of input Legendre polynimials for Disort. See disort_legendre_polynomial_dimension, defaults to self.disort_legendre_polynomial_dimension [IN]

  • disort_settings_agenda (Agenda, optional) – An agenda for setting up Disort. See disort_settings_agenda, defaults to self.disort_settings_agenda [IN]

disort_settings_agendaExecuteOperator(self, disort_settings: pyarts3.arts.DisortSettings | None = None, frequency_grid: pyarts3.arts.AscendingGrid | None = None, ray_path: pyarts3.arts.ArrayOfPropagationPathPoint | None = None, disort_quadrature_dimension: pyarts3.arts.Index | None = None, disort_fourier_mode_dimension: pyarts3.arts.Index | None = None, disort_legendre_polynomial_dimension: pyarts3.arts.Index | None = None, disort_settings_agenda_operator: pyarts3.arts.disort_settings_agendaOperator | None = None) None

Executes an operator emulating disort_settings_agenda, see it, and also disort_settings_agendaOperator, for more details

Author: Automatically Generated

Parameters:
disort_settings_agendaSetOperator(self, disort_settings_agenda: pyarts3.arts.Agenda | None = None, f: pyarts3.arts.disort_settings_agendaOperator | None = None) None

Set disort_settings_agenda to exclusively use provided external operator. See disort_settings_agendaOperator for more details.

Author: Automatically Generated

Parameters:
disort_settings_agendaSetup(self, disort_settings_agenda: pyarts3.arts.Agenda | None = None, layer_emission_setting: pyarts3.arts.String | None = None, scattering_setting: pyarts3.arts.String | None = None, space_setting: pyarts3.arts.String | None = None, sun_setting: pyarts3.arts.String | None = None, surface_setting: pyarts3.arts.String | None = None, surface_lambertian_value: pyarts3.arts.Vector | None = None, min_optical_depth: pyarts3.arts.Numeric | None = None) None

Setup for Disort standard calculations.

This method allows setting up disort_settings_agenda by named options. A description of the options is given below.

Author: Richard Larsson

Parameters:
  • disort_settings_agenda (Agenda, optional) – An agenda for setting up Disort. See disort_settings_agenda, defaults to self.disort_settings_agenda [OUT]

  • layer_emission_setting (String, optional) – Layer emission settings. Defaults to "LinearInTau" [IN]

  • scattering_setting (String, optional) – Scattering settings. Defaults to "None" [IN]

  • space_setting (String, optional) – Space settings. Defaults to "CosmicMicrowaveBackgroundRadiation" [IN]

  • sun_setting (String, optional) – Sun settings. Defaults to "None" [IN]

  • surface_setting (String, optional) – Surface settings. Defaults to "Thermal" [IN]

  • surface_lambertian_value (Vector, optional) – Surface lambertian value (must be the size of the frequency grid; used only when surface is set to a Lambertian variant). Defaults to [] [IN]

  • min_optical_depth (Numeric, optional) – The minimum increase in optical thickness per level. The DISORT algorithm employed is numerically unstable if the change between levels is too small. Defaults to 1e-11 [IN]

Extra

There are 96 possible combinations for calling the disort_settings_agendaSetup method.

Below, these are all listed with the generated agenda-call order for each combination in full.

Before that, a concise overview of what each option do is available by the types in this table:

Input variable

pyarts class

layer_emission_setting

disort_settings_agenda_setup_layer_emission_type

scattering_setting

disort_settings_agenda_setup_scattering_type

space_setting

disort_settings_agenda_setup_space_type

sun_setting

disort_settings_agenda_setup_sun_type

surface_setting

disort_settings_agenda_setup_surface_type


disort_settings_agendaSetup(layer_emission_setting="None", scattering_setting="None", space_setting="None", sun_setting="None", surface_setting="None", surface_lambertian_value=lambertian_reflection, min_optical_depth=min_optical_depth)


disort_settings_agendaSetup(layer_emission_setting="None", scattering_setting="None", space_setting="None", sun_setting="None", surface_setting="Thermal", surface_lambertian_value=lambertian_reflection, min_optical_depth=min_optical_depth)


disort_settings_agendaSetup(layer_emission_setting="None", scattering_setting="None", space_setting="None", sun_setting="None", surface_setting="ThermalLambertian", surface_lambertian_value=lambertian_reflection, min_optical_depth=min_optical_depth)


disort_settings_agendaSetup(layer_emission_setting="None", scattering_setting="None", space_setting="None", sun_setting="None", surface_setting="Lambertian", surface_lambertian_value=lambertian_reflection, min_optical_depth=min_optical_depth)


disort_settings_agendaSetup(layer_emission_setting="None", scattering_setting="None", space_setting="None", sun_setting="Sun", surface_setting="None", surface_lambertian_value=lambertian_reflection, min_optical_depth=min_optical_depth)


disort_settings_agendaSetup(layer_emission_setting="None", scattering_setting="None", space_setting="None", sun_setting="Sun", surface_setting="Thermal", surface_lambertian_value=lambertian_reflection, min_optical_depth=min_optical_depth)


disort_settings_agendaSetup(layer_emission_setting="None", scattering_setting="None", space_setting="None", sun_setting="Sun", surface_setting="ThermalLambertian", surface_lambertian_value=lambertian_reflection, min_optical_depth=min_optical_depth)


disort_settings_agendaSetup(layer_emission_setting="None", scattering_setting="None", space_setting="None", sun_setting="Sun", surface_setting="Lambertian", surface_lambertian_value=lambertian_reflection, min_optical_depth=min_optical_depth)


disort_settings_agendaSetup(layer_emission_setting="None", scattering_setting="None", space_setting="CosmicMicrowaveBackgroundRadiation", sun_setting="None", surface_setting="None", surface_lambertian_value=lambertian_reflection, min_optical_depth=min_optical_depth)


disort_settings_agendaSetup(layer_emission_setting="None", scattering_setting="None", space_setting="CosmicMicrowaveBackgroundRadiation", sun_setting="None", surface_setting="Thermal", surface_lambertian_value=lambertian_reflection, min_optical_depth=min_optical_depth)


disort_settings_agendaSetup(layer_emission_setting="None", scattering_setting="None", space_setting="CosmicMicrowaveBackgroundRadiation", sun_setting="None", surface_setting="ThermalLambertian", surface_lambertian_value=lambertian_reflection, min_optical_depth=min_optical_depth)


disort_settings_agendaSetup(layer_emission_setting="None", scattering_setting="None", space_setting="CosmicMicrowaveBackgroundRadiation", sun_setting="None", surface_setting="Lambertian", surface_lambertian_value=lambertian_reflection, min_optical_depth=min_optical_depth)


disort_settings_agendaSetup(layer_emission_setting="None", scattering_setting="None", space_setting="CosmicMicrowaveBackgroundRadiation", sun_setting="Sun", surface_setting="None", surface_lambertian_value=lambertian_reflection, min_optical_depth=min_optical_depth)


disort_settings_agendaSetup(layer_emission_setting="None", scattering_setting="None", space_setting="CosmicMicrowaveBackgroundRadiation", sun_setting="Sun", surface_setting="Thermal", surface_lambertian_value=lambertian_reflection, min_optical_depth=min_optical_depth)


disort_settings_agendaSetup(layer_emission_setting="None", scattering_setting="None", space_setting="CosmicMicrowaveBackgroundRadiation", sun_setting="Sun", surface_setting="ThermalLambertian", surface_lambertian_value=lambertian_reflection, min_optical_depth=min_optical_depth)


disort_settings_agendaSetup(layer_emission_setting="None", scattering_setting="None", space_setting="CosmicMicrowaveBackgroundRadiation", sun_setting="Sun", surface_setting="Lambertian", surface_lambertian_value=lambertian_reflection, min_optical_depth=min_optical_depth)


disort_settings_agendaSetup(layer_emission_setting="None", scattering_setting="ScatteringSpecies", space_setting="None", sun_setting="None", surface_setting="None", surface_lambertian_value=lambertian_reflection, min_optical_depth=min_optical_depth)


disort_settings_agendaSetup(layer_emission_setting="None", scattering_setting="ScatteringSpecies", space_setting="None", sun_setting="None", surface_setting="Thermal", surface_lambertian_value=lambertian_reflection, min_optical_depth=min_optical_depth)


disort_settings_agendaSetup(layer_emission_setting="None", scattering_setting="ScatteringSpecies", space_setting="None", sun_setting="None", surface_setting="ThermalLambertian", surface_lambertian_value=lambertian_reflection, min_optical_depth=min_optical_depth)


disort_settings_agendaSetup(layer_emission_setting="None", scattering_setting="ScatteringSpecies", space_setting="None", sun_setting="None", surface_setting="Lambertian", surface_lambertian_value=lambertian_reflection, min_optical_depth=min_optical_depth)


disort_settings_agendaSetup(layer_emission_setting="None", scattering_setting="ScatteringSpecies", space_setting="None", sun_setting="Sun", surface_setting="None", surface_lambertian_value=lambertian_reflection, min_optical_depth=min_optical_depth)


disort_settings_agendaSetup(layer_emission_setting="None", scattering_setting="ScatteringSpecies", space_setting="None", sun_setting="Sun", surface_setting="Thermal", surface_lambertian_value=lambertian_reflection, min_optical_depth=min_optical_depth)


disort_settings_agendaSetup(layer_emission_setting="None", scattering_setting="ScatteringSpecies", space_setting="None", sun_setting="Sun", surface_setting="ThermalLambertian", surface_lambertian_value=lambertian_reflection, min_optical_depth=min_optical_depth)


disort_settings_agendaSetup(layer_emission_setting="None", scattering_setting="ScatteringSpecies", space_setting="None", sun_setting="Sun", surface_setting="Lambertian", surface_lambertian_value=lambertian_reflection, min_optical_depth=min_optical_depth)


disort_settings_agendaSetup(layer_emission_setting="None", scattering_setting="ScatteringSpecies", space_setting="CosmicMicrowaveBackgroundRadiation", sun_setting="None", surface_setting="None", surface_lambertian_value=lambertian_reflection, min_optical_depth=min_optical_depth)


disort_settings_agendaSetup(layer_emission_setting="None", scattering_setting="ScatteringSpecies", space_setting="CosmicMicrowaveBackgroundRadiation", sun_setting="None", surface_setting="Thermal", surface_lambertian_value=lambertian_reflection, min_optical_depth=min_optical_depth)


disort_settings_agendaSetup(layer_emission_setting="None", scattering_setting="ScatteringSpecies", space_setting="CosmicMicrowaveBackgroundRadiation", sun_setting="None", surface_setting="ThermalLambertian", surface_lambertian_value=lambertian_reflection, min_optical_depth=min_optical_depth)


disort_settings_agendaSetup(layer_emission_setting="None", scattering_setting="ScatteringSpecies", space_setting="CosmicMicrowaveBackgroundRadiation", sun_setting="None", surface_setting="Lambertian", surface_lambertian_value=lambertian_reflection, min_optical_depth=min_optical_depth)


disort_settings_agendaSetup(layer_emission_setting="None", scattering_setting="ScatteringSpecies", space_setting="CosmicMicrowaveBackgroundRadiation", sun_setting="Sun", surface_setting="None", surface_lambertian_value=lambertian_reflection, min_optical_depth=min_optical_depth)


disort_settings_agendaSetup(layer_emission_setting="None", scattering_setting="ScatteringSpecies", space_setting="CosmicMicrowaveBackgroundRadiation", sun_setting="Sun", surface_setting="Thermal", surface_lambertian_value=lambertian_reflection, min_optical_depth=min_optical_depth)


disort_settings_agendaSetup(layer_emission_setting="None", scattering_setting="ScatteringSpecies", space_setting="CosmicMicrowaveBackgroundRadiation", sun_setting="Sun", surface_setting="ThermalLambertian", surface_lambertian_value=lambertian_reflection, min_optical_depth=min_optical_depth)


disort_settings_agendaSetup(layer_emission_setting="None", scattering_setting="ScatteringSpecies", space_setting="CosmicMicrowaveBackgroundRadiation", sun_setting="Sun", surface_setting="Lambertian", surface_lambertian_value=lambertian_reflection, min_optical_depth=min_optical_depth)


disort_settings_agendaSetup(layer_emission_setting="LinearInTau", scattering_setting="None", space_setting="None", sun_setting="None", surface_setting="None", surface_lambertian_value=lambertian_reflection, min_optical_depth=min_optical_depth)


disort_settings_agendaSetup(layer_emission_setting="LinearInTau", scattering_setting="None", space_setting="None", sun_setting="None", surface_setting="Thermal", surface_lambertian_value=lambertian_reflection, min_optical_depth=min_optical_depth)


disort_settings_agendaSetup(layer_emission_setting="LinearInTau", scattering_setting="None", space_setting="None", sun_setting="None", surface_setting="ThermalLambertian", surface_lambertian_value=lambertian_reflection, min_optical_depth=min_optical_depth)


disort_settings_agendaSetup(layer_emission_setting="LinearInTau", scattering_setting="None", space_setting="None", sun_setting="None", surface_setting="Lambertian", surface_lambertian_value=lambertian_reflection, min_optical_depth=min_optical_depth)


disort_settings_agendaSetup(layer_emission_setting="LinearInTau", scattering_setting="None", space_setting="None", sun_setting="Sun", surface_setting="None", surface_lambertian_value=lambertian_reflection, min_optical_depth=min_optical_depth)


disort_settings_agendaSetup(layer_emission_setting="LinearInTau", scattering_setting="None", space_setting="None", sun_setting="Sun", surface_setting="Thermal", surface_lambertian_value=lambertian_reflection, min_optical_depth=min_optical_depth)


disort_settings_agendaSetup(layer_emission_setting="LinearInTau", scattering_setting="None", space_setting="None", sun_setting="Sun", surface_setting="ThermalLambertian", surface_lambertian_value=lambertian_reflection, min_optical_depth=min_optical_depth)


disort_settings_agendaSetup(layer_emission_setting="LinearInTau", scattering_setting="None", space_setting="None", sun_setting="Sun", surface_setting="Lambertian", surface_lambertian_value=lambertian_reflection, min_optical_depth=min_optical_depth)


disort_settings_agendaSetup(layer_emission_setting="LinearInTau", scattering_setting="None", space_setting="CosmicMicrowaveBackgroundRadiation", sun_setting="None", surface_setting="None", surface_lambertian_value=lambertian_reflection, min_optical_depth=min_optical_depth)


disort_settings_agendaSetup(layer_emission_setting="LinearInTau", scattering_setting="None", space_setting="CosmicMicrowaveBackgroundRadiation", sun_setting="None", surface_setting="Thermal", surface_lambertian_value=lambertian_reflection, min_optical_depth=min_optical_depth)


disort_settings_agendaSetup(layer_emission_setting="LinearInTau", scattering_setting="None", space_setting="CosmicMicrowaveBackgroundRadiation", sun_setting="None", surface_setting="ThermalLambertian", surface_lambertian_value=lambertian_reflection, min_optical_depth=min_optical_depth)


disort_settings_agendaSetup(layer_emission_setting="LinearInTau", scattering_setting="None", space_setting="CosmicMicrowaveBackgroundRadiation", sun_setting="None", surface_setting="Lambertian", surface_lambertian_value=lambertian_reflection, min_optical_depth=min_optical_depth)


disort_settings_agendaSetup(layer_emission_setting="LinearInTau", scattering_setting="None", space_setting="CosmicMicrowaveBackgroundRadiation", sun_setting="Sun", surface_setting="None", surface_lambertian_value=lambertian_reflection, min_optical_depth=min_optical_depth)


disort_settings_agendaSetup(layer_emission_setting="LinearInTau", scattering_setting="None", space_setting="CosmicMicrowaveBackgroundRadiation", sun_setting="Sun", surface_setting="Thermal", surface_lambertian_value=lambertian_reflection, min_optical_depth=min_optical_depth)


disort_settings_agendaSetup(layer_emission_setting="LinearInTau", scattering_setting="None", space_setting="CosmicMicrowaveBackgroundRadiation", sun_setting="Sun", surface_setting="ThermalLambertian", surface_lambertian_value=lambertian_reflection, min_optical_depth=min_optical_depth)


disort_settings_agendaSetup(layer_emission_setting="LinearInTau", scattering_setting="None", space_setting="CosmicMicrowaveBackgroundRadiation", sun_setting="Sun", surface_setting="Lambertian", surface_lambertian_value=lambertian_reflection, min_optical_depth=min_optical_depth)


disort_settings_agendaSetup(layer_emission_setting="LinearInTau", scattering_setting="ScatteringSpecies", space_setting="None", sun_setting="None", surface_setting="None", surface_lambertian_value=lambertian_reflection, min_optical_depth=min_optical_depth)


disort_settings_agendaSetup(layer_emission_setting="LinearInTau", scattering_setting="ScatteringSpecies", space_setting="None", sun_setting="None", surface_setting="Thermal", surface_lambertian_value=lambertian_reflection, min_optical_depth=min_optical_depth)


disort_settings_agendaSetup(layer_emission_setting="LinearInTau", scattering_setting="ScatteringSpecies", space_setting="None", sun_setting="None", surface_setting="ThermalLambertian", surface_lambertian_value=lambertian_reflection, min_optical_depth=min_optical_depth)


disort_settings_agendaSetup(layer_emission_setting="LinearInTau", scattering_setting="ScatteringSpecies", space_setting="None", sun_setting="None", surface_setting="Lambertian", surface_lambertian_value=lambertian_reflection, min_optical_depth=min_optical_depth)


disort_settings_agendaSetup(layer_emission_setting="LinearInTau", scattering_setting="ScatteringSpecies", space_setting="None", sun_setting="Sun", surface_setting="None", surface_lambertian_value=lambertian_reflection, min_optical_depth=min_optical_depth)


disort_settings_agendaSetup(layer_emission_setting="LinearInTau", scattering_setting="ScatteringSpecies", space_setting="None", sun_setting="Sun", surface_setting="Thermal", surface_lambertian_value=lambertian_reflection, min_optical_depth=min_optical_depth)


disort_settings_agendaSetup(layer_emission_setting="LinearInTau", scattering_setting="ScatteringSpecies", space_setting="None", sun_setting="Sun", surface_setting="ThermalLambertian", surface_lambertian_value=lambertian_reflection, min_optical_depth=min_optical_depth)


disort_settings_agendaSetup(layer_emission_setting="LinearInTau", scattering_setting="ScatteringSpecies", space_setting="None", sun_setting="Sun", surface_setting="Lambertian", surface_lambertian_value=lambertian_reflection, min_optical_depth=min_optical_depth)


disort_settings_agendaSetup(layer_emission_setting="LinearInTau", scattering_setting="ScatteringSpecies", space_setting="CosmicMicrowaveBackgroundRadiation", sun_setting="None", surface_setting="None", surface_lambertian_value=lambertian_reflection, min_optical_depth=min_optical_depth)


disort_settings_agendaSetup(layer_emission_setting="LinearInTau", scattering_setting="ScatteringSpecies", space_setting="CosmicMicrowaveBackgroundRadiation", sun_setting="None", surface_setting="Thermal", surface_lambertian_value=lambertian_reflection, min_optical_depth=min_optical_depth)


disort_settings_agendaSetup(layer_emission_setting="LinearInTau", scattering_setting="ScatteringSpecies", space_setting="CosmicMicrowaveBackgroundRadiation", sun_setting="None", surface_setting="ThermalLambertian", surface_lambertian_value=lambertian_reflection, min_optical_depth=min_optical_depth)


disort_settings_agendaSetup(layer_emission_setting="LinearInTau", scattering_setting="ScatteringSpecies", space_setting="CosmicMicrowaveBackgroundRadiation", sun_setting="None", surface_setting="Lambertian", surface_lambertian_value=lambertian_reflection, min_optical_depth=min_optical_depth)


disort_settings_agendaSetup(layer_emission_setting="LinearInTau", scattering_setting="ScatteringSpecies", space_setting="CosmicMicrowaveBackgroundRadiation", sun_setting="Sun", surface_setting="None", surface_lambertian_value=lambertian_reflection, min_optical_depth=min_optical_depth)


disort_settings_agendaSetup(layer_emission_setting="LinearInTau", scattering_setting="ScatteringSpecies", space_setting="CosmicMicrowaveBackgroundRadiation", sun_setting="Sun", surface_setting="Thermal", surface_lambertian_value=lambertian_reflection, min_optical_depth=min_optical_depth)


disort_settings_agendaSetup(layer_emission_setting="LinearInTau", scattering_setting="ScatteringSpecies", space_setting="CosmicMicrowaveBackgroundRadiation", sun_setting="Sun", surface_setting="ThermalLambertian", surface_lambertian_value=lambertian_reflection, min_optical_depth=min_optical_depth)


disort_settings_agendaSetup(layer_emission_setting="LinearInTau", scattering_setting="ScatteringSpecies", space_setting="CosmicMicrowaveBackgroundRadiation", sun_setting="Sun", surface_setting="Lambertian", surface_lambertian_value=lambertian_reflection, min_optical_depth=min_optical_depth)


disort_settings_agendaSetup(layer_emission_setting="LinearInTauNonLTE", scattering_setting="None", space_setting="None", sun_setting="None", surface_setting="None", surface_lambertian_value=lambertian_reflection, min_optical_depth=min_optical_depth)


disort_settings_agendaSetup(layer_emission_setting="LinearInTauNonLTE", scattering_setting="None", space_setting="None", sun_setting="None", surface_setting="Thermal", surface_lambertian_value=lambertian_reflection, min_optical_depth=min_optical_depth)


disort_settings_agendaSetup(layer_emission_setting="LinearInTauNonLTE", scattering_setting="None", space_setting="None", sun_setting="None", surface_setting="ThermalLambertian", surface_lambertian_value=lambertian_reflection, min_optical_depth=min_optical_depth)


disort_settings_agendaSetup(layer_emission_setting="LinearInTauNonLTE", scattering_setting="None", space_setting="None", sun_setting="None", surface_setting="Lambertian", surface_lambertian_value=lambertian_reflection, min_optical_depth=min_optical_depth)


disort_settings_agendaSetup(layer_emission_setting="LinearInTauNonLTE", scattering_setting="None", space_setting="None", sun_setting="Sun", surface_setting="None", surface_lambertian_value=lambertian_reflection, min_optical_depth=min_optical_depth)


disort_settings_agendaSetup(layer_emission_setting="LinearInTauNonLTE", scattering_setting="None", space_setting="None", sun_setting="Sun", surface_setting="Thermal", surface_lambertian_value=lambertian_reflection, min_optical_depth=min_optical_depth)


disort_settings_agendaSetup(layer_emission_setting="LinearInTauNonLTE", scattering_setting="None", space_setting="None", sun_setting="Sun", surface_setting="ThermalLambertian", surface_lambertian_value=lambertian_reflection, min_optical_depth=min_optical_depth)


disort_settings_agendaSetup(layer_emission_setting="LinearInTauNonLTE", scattering_setting="None", space_setting="None", sun_setting="Sun", surface_setting="Lambertian", surface_lambertian_value=lambertian_reflection, min_optical_depth=min_optical_depth)


disort_settings_agendaSetup(layer_emission_setting="LinearInTauNonLTE", scattering_setting="None", space_setting="CosmicMicrowaveBackgroundRadiation", sun_setting="None", surface_setting="None", surface_lambertian_value=lambertian_reflection, min_optical_depth=min_optical_depth)


disort_settings_agendaSetup(layer_emission_setting="LinearInTauNonLTE", scattering_setting="None", space_setting="CosmicMicrowaveBackgroundRadiation", sun_setting="None", surface_setting="Thermal", surface_lambertian_value=lambertian_reflection, min_optical_depth=min_optical_depth)


disort_settings_agendaSetup(layer_emission_setting="LinearInTauNonLTE", scattering_setting="None", space_setting="CosmicMicrowaveBackgroundRadiation", sun_setting="None", surface_setting="ThermalLambertian", surface_lambertian_value=lambertian_reflection, min_optical_depth=min_optical_depth)


disort_settings_agendaSetup(layer_emission_setting="LinearInTauNonLTE", scattering_setting="None", space_setting="CosmicMicrowaveBackgroundRadiation", sun_setting="None", surface_setting="Lambertian", surface_lambertian_value=lambertian_reflection, min_optical_depth=min_optical_depth)


disort_settings_agendaSetup(layer_emission_setting="LinearInTauNonLTE", scattering_setting="None", space_setting="CosmicMicrowaveBackgroundRadiation", sun_setting="Sun", surface_setting="None", surface_lambertian_value=lambertian_reflection, min_optical_depth=min_optical_depth)


disort_settings_agendaSetup(layer_emission_setting="LinearInTauNonLTE", scattering_setting="None", space_setting="CosmicMicrowaveBackgroundRadiation", sun_setting="Sun", surface_setting="Thermal", surface_lambertian_value=lambertian_reflection, min_optical_depth=min_optical_depth)


disort_settings_agendaSetup(layer_emission_setting="LinearInTauNonLTE", scattering_setting="None", space_setting="CosmicMicrowaveBackgroundRadiation", sun_setting="Sun", surface_setting="ThermalLambertian", surface_lambertian_value=lambertian_reflection, min_optical_depth=min_optical_depth)


disort_settings_agendaSetup(layer_emission_setting="LinearInTauNonLTE", scattering_setting="None", space_setting="CosmicMicrowaveBackgroundRadiation", sun_setting="Sun", surface_setting="Lambertian", surface_lambertian_value=lambertian_reflection, min_optical_depth=min_optical_depth)


disort_settings_agendaSetup(layer_emission_setting="LinearInTauNonLTE", scattering_setting="ScatteringSpecies", space_setting="None", sun_setting="None", surface_setting="None", surface_lambertian_value=lambertian_reflection, min_optical_depth=min_optical_depth)


disort_settings_agendaSetup(layer_emission_setting="LinearInTauNonLTE", scattering_setting="ScatteringSpecies", space_setting="None", sun_setting="None", surface_setting="Thermal", surface_lambertian_value=lambertian_reflection, min_optical_depth=min_optical_depth)


disort_settings_agendaSetup(layer_emission_setting="LinearInTauNonLTE", scattering_setting="ScatteringSpecies", space_setting="None", sun_setting="None", surface_setting="ThermalLambertian", surface_lambertian_value=lambertian_reflection, min_optical_depth=min_optical_depth)


disort_settings_agendaSetup(layer_emission_setting="LinearInTauNonLTE", scattering_setting="ScatteringSpecies", space_setting="None", sun_setting="None", surface_setting="Lambertian", surface_lambertian_value=lambertian_reflection, min_optical_depth=min_optical_depth)


disort_settings_agendaSetup(layer_emission_setting="LinearInTauNonLTE", scattering_setting="ScatteringSpecies", space_setting="None", sun_setting="Sun", surface_setting="None", surface_lambertian_value=lambertian_reflection, min_optical_depth=min_optical_depth)


disort_settings_agendaSetup(layer_emission_setting="LinearInTauNonLTE", scattering_setting="ScatteringSpecies", space_setting="None", sun_setting="Sun", surface_setting="Thermal", surface_lambertian_value=lambertian_reflection, min_optical_depth=min_optical_depth)


disort_settings_agendaSetup(layer_emission_setting="LinearInTauNonLTE", scattering_setting="ScatteringSpecies", space_setting="None", sun_setting="Sun", surface_setting="ThermalLambertian", surface_lambertian_value=lambertian_reflection, min_optical_depth=min_optical_depth)


disort_settings_agendaSetup(layer_emission_setting="LinearInTauNonLTE", scattering_setting="ScatteringSpecies", space_setting="None", sun_setting="Sun", surface_setting="Lambertian", surface_lambertian_value=lambertian_reflection, min_optical_depth=min_optical_depth)


disort_settings_agendaSetup(layer_emission_setting="LinearInTauNonLTE", scattering_setting="ScatteringSpecies", space_setting="CosmicMicrowaveBackgroundRadiation", sun_setting="None", surface_setting="None", surface_lambertian_value=lambertian_reflection, min_optical_depth=min_optical_depth)


disort_settings_agendaSetup(layer_emission_setting="LinearInTauNonLTE", scattering_setting="ScatteringSpecies", space_setting="CosmicMicrowaveBackgroundRadiation", sun_setting="None", surface_setting="Thermal", surface_lambertian_value=lambertian_reflection, min_optical_depth=min_optical_depth)


disort_settings_agendaSetup(layer_emission_setting="LinearInTauNonLTE", scattering_setting="ScatteringSpecies", space_setting="CosmicMicrowaveBackgroundRadiation", sun_setting="None", surface_setting="ThermalLambertian", surface_lambertian_value=lambertian_reflection, min_optical_depth=min_optical_depth)


disort_settings_agendaSetup(layer_emission_setting="LinearInTauNonLTE", scattering_setting="ScatteringSpecies", space_setting="CosmicMicrowaveBackgroundRadiation", sun_setting="None", surface_setting="Lambertian", surface_lambertian_value=lambertian_reflection, min_optical_depth=min_optical_depth)


disort_settings_agendaSetup(layer_emission_setting="LinearInTauNonLTE", scattering_setting="ScatteringSpecies", space_setting="CosmicMicrowaveBackgroundRadiation", sun_setting="Sun", surface_setting="None", surface_lambertian_value=lambertian_reflection, min_optical_depth=min_optical_depth)


disort_settings_agendaSetup(layer_emission_setting="LinearInTauNonLTE", scattering_setting="ScatteringSpecies", space_setting="CosmicMicrowaveBackgroundRadiation", sun_setting="Sun", surface_setting="Thermal", surface_lambertian_value=lambertian_reflection, min_optical_depth=min_optical_depth)


disort_settings_agendaSetup(layer_emission_setting="LinearInTauNonLTE", scattering_setting="ScatteringSpecies", space_setting="CosmicMicrowaveBackgroundRadiation", sun_setting="Sun", surface_setting="ThermalLambertian", surface_lambertian_value=lambertian_reflection, min_optical_depth=min_optical_depth)


disort_settings_agendaSetup(layer_emission_setting="LinearInTauNonLTE", scattering_setting="ScatteringSpecies", space_setting="CosmicMicrowaveBackgroundRadiation", sun_setting="Sun", surface_setting="Lambertian", surface_lambertian_value=lambertian_reflection, min_optical_depth=min_optical_depth)

disort_spectral_flux_fieldCalc(self, disort_spectral_flux_field: pyarts3.arts.DisortFlux | None = None, disort_settings: pyarts3.arts.DisortSettings | None = None) None

Perform Disort calculations for spectral flux.

Author: Richard Larsson

Used by wrapper method

Parameters:
  • disort_spectral_flux_field (DisortFlux, optional) – The spectral flux field from Disort. See disort_spectral_flux_field, defaults to self.disort_spectral_flux_field [OUT]

  • disort_settings (DisortSettings, optional) – Contains the full settings of spectral Disort calculations. See disort_settings, defaults to self.disort_settings [IN]

disort_spectral_flux_fieldFromAgenda(self, disort_spectral_flux_field: pyarts3.arts.DisortFlux | None = None, disort_fourier_mode_dimension: pyarts3.arts.Index | None = None, disort_legendre_polynomial_dimension: pyarts3.arts.Index | None = None, disort_quadrature_dimension: pyarts3.arts.Index | None = None, disort_settings_agenda: pyarts3.arts.Agenda | None = None, frequency_grid: pyarts3.arts.AscendingGrid | None = None, ray_path: pyarts3.arts.ArrayOfPropagationPathPoint | None = None) None

Use Disort for clearsky calculations of spectral flux field

Wrapper calling Methods (in order):

Equivalent (mostly) Python code:

1ws = pyarts.Workspace()
2
3# ...
4
5 ws.disort_settings_agendaExecute()
6 ws.disort_spectral_flux_fieldCalc()

Authors: Richard Larsson, Automatically Generated

Used by wrapper method

Parameters:
disort_spectral_flux_fieldProfile(self, disort_spectral_flux_field: pyarts3.arts.DisortFlux | None = None, ray_path: pyarts3.arts.ArrayOfPropagationPathPoint | None = None, atmospheric_field: pyarts3.arts.AtmField | None = None, disort_fourier_mode_dimension: pyarts3.arts.Index | None = None, disort_legendre_polynomial_dimension: pyarts3.arts.Index | None = None, disort_quadrature_dimension: pyarts3.arts.Index | None = None, disort_settings_agenda: pyarts3.arts.Agenda | None = None, frequency_grid: pyarts3.arts.AscendingGrid | None = None, latitude: pyarts3.arts.Numeric | None = None, longitude: pyarts3.arts.Numeric | None = None, surface_field: pyarts3.arts.SurfaceField | None = None, max_step: pyarts3.arts.Numeric | None = None) None

Extract a 1D path through the atmospheric field and calculate spectral flux using Disort

Wrapper calling Methods (in order):

Equivalent (mostly) Python code:

1ws = pyarts.Workspace()
2
3# ...
4
5 ws.ray_pathGeometricDownlooking()
6 ws.disort_spectral_flux_fieldFromAgenda()

Authors: Richard Larsson, Automatically Generated

Parameters:
  • disort_spectral_flux_field (DisortFlux, optional) – The spectral flux field from Disort. See disort_spectral_flux_field, defaults to self.disort_spectral_flux_field [OUT]

  • ray_path (ArrayOfPropagationPathPoint, optional) – A list path points making up a propagation path. See ray_path, defaults to self.ray_path [OUT]

  • atmospheric_field (AtmField, optional) – An atmospheric field in ARTS. See atmospheric_field, defaults to self.atmospheric_field [IN]

  • disort_fourier_mode_dimension (Index, optional) – The number of Fourier modes for Disort. See disort_fourier_mode_dimension, defaults to self.disort_fourier_mode_dimension [IN]

  • disort_legendre_polynomial_dimension (Index, optional) – The number of input Legendre polynimials for Disort. See disort_legendre_polynomial_dimension, defaults to self.disort_legendre_polynomial_dimension [IN]

  • disort_quadrature_dimension (Index, optional) – The quadrature size for Disort. See disort_quadrature_dimension, defaults to self.disort_quadrature_dimension [IN]

  • disort_settings_agenda (Agenda, optional) – An agenda for setting up Disort. See disort_settings_agenda, defaults to self.disort_settings_agenda [IN]

  • frequency_grid (AscendingGrid, optional) – A single frequency grid. See frequency_grid, defaults to self.frequency_grid [IN]

  • latitude (Numeric, optional) – A single latitude. See latitude, defaults to self.latitude [IN]

  • longitude (Numeric, optional) – A single longitude. See longitude, defaults to self.longitude [IN]

  • surface_field (SurfaceField, optional) – The surface field describes the surface properties. See surface_field, defaults to self.surface_field [IN]

  • max_step (Numeric, optional) – The maximum step length. Defaults to 1000 [IN]

disort_spectral_radiance_fieldCalc(self, disort_spectral_radiance_field: pyarts3.arts.DisortRadiance | None = None, disort_quadrature: pyarts3.arts.ZenithGriddedField1 | None = None, disort_settings: pyarts3.arts.DisortSettings | None = None, phis: pyarts3.arts.AzimuthGrid | None = None) None

Perform Disort calculations for spectral radiance.

Author: Richard Larsson

Used by wrapper method

Parameters:
  • disort_spectral_radiance_field (DisortRadiance, optional) – The spectral radiance field from Disort. See disort_spectral_radiance_field, defaults to self.disort_spectral_radiance_field [OUT]

  • disort_quadrature (ZenithGriddedField1, optional) – The quadrature angles for Disort with accompying weights. See disort_quadrature, defaults to self.disort_quadrature [OUT]

  • disort_settings (DisortSettings, optional) – Contains the full settings of spectral Disort calculations. See disort_settings, defaults to self.disort_settings [IN]

  • phis (AzimuthGrid, optional) – The azimuthal angles. Defaults to 0 [IN]

disort_spectral_radiance_fieldCalcCdisort(self, disort_spectral_radiance_field: pyarts3.arts.DisortRadiance | None = None, disort_quadrature: pyarts3.arts.ZenithGriddedField1 | None = None, disort_settings: pyarts3.arts.DisortSettings | None = None, ray_path_atmospheric_point: pyarts3.arts.ArrayOfAtmPoint | None = None, ray_path_frequency_grid: pyarts3.arts.ArrayOfAscendingGrid | None = None, ray_path: pyarts3.arts.ArrayOfPropagationPathPoint | None = None, surface_field: pyarts3.arts.SurfaceField | None = None, phis: pyarts3.arts.AzimuthGrid | None = None) None

Perform CDisort calculations for spectral radiance.

CDisort is only included for testing and comparisons with our own disort implementation.

Author: Oliver Lemke

Used by wrapper method

Parameters:
disort_spectral_radiance_fieldFromAgenda(self, disort_spectral_radiance_field: pyarts3.arts.DisortRadiance | None = None, disort_quadrature: pyarts3.arts.ZenithGriddedField1 | None = None, disort_fourier_mode_dimension: pyarts3.arts.Index | None = None, disort_legendre_polynomial_dimension: pyarts3.arts.Index | None = None, disort_quadrature_dimension: pyarts3.arts.Index | None = None, disort_settings_agenda: pyarts3.arts.Agenda | None = None, frequency_grid: pyarts3.arts.AscendingGrid | None = None, ray_path: pyarts3.arts.ArrayOfPropagationPathPoint | None = None, phis: pyarts3.arts.AzimuthGrid | None = None) None

Use the disort settings agenda to calculate spectral radiance

Wrapper calling Methods (in order):

Equivalent (mostly) Python code:

1ws = pyarts.Workspace()
2
3# ...
4
5 ws.disort_settings_agendaExecute()
6 ws.disort_spectral_radiance_fieldCalc()

Authors: Richard Larsson, Automatically Generated

Used by wrapper method

Parameters:
disort_spectral_radiance_fieldFromAgendaCdisort(self, disort_spectral_radiance_field: pyarts3.arts.DisortRadiance | None = None, disort_quadrature: pyarts3.arts.ZenithGriddedField1 | None = None, atmospheric_field: pyarts3.arts.AtmField | None = None, disort_fourier_mode_dimension: pyarts3.arts.Index | None = None, disort_legendre_polynomial_dimension: pyarts3.arts.Index | None = None, disort_quadrature_dimension: pyarts3.arts.Index | None = None, disort_settings_agenda: pyarts3.arts.Agenda | None = None, frequency_grid: pyarts3.arts.AscendingGrid | None = None, ray_path: pyarts3.arts.ArrayOfPropagationPathPoint | None = None, surface_field: pyarts3.arts.SurfaceField | None = None, phis: pyarts3.arts.AzimuthGrid | None = None) None

Use the disort settings agenda to calculate spectral radiance

Wrapper calling Methods (in order):

Equivalent (mostly) Python code:

1ws = pyarts.Workspace()
2
3# ...
4
5 ws.disort_settings_agendaExecute()
6 ws.ray_path_atmospheric_pointFromPath()
7 ws.ray_path_frequency_gridFromPath()
8 ws.disort_spectral_radiance_fieldCalcCdisort()

Authors: Oliver Lemke, Richard Larsson, Automatically Generated

Used by wrapper method

Parameters:
  • disort_spectral_radiance_field (DisortRadiance, optional) – The spectral radiance field from Disort. See disort_spectral_radiance_field, defaults to self.disort_spectral_radiance_field [OUT]

  • disort_quadrature (ZenithGriddedField1, optional) – The quadrature angles for Disort with accompying weights. See disort_quadrature, defaults to self.disort_quadrature [OUT]

  • atmospheric_field (AtmField, optional) – An atmospheric field in ARTS. See atmospheric_field, defaults to self.atmospheric_field [IN]

  • disort_fourier_mode_dimension (Index, optional) – The number of Fourier modes for Disort. See disort_fourier_mode_dimension, defaults to self.disort_fourier_mode_dimension [IN]

  • disort_legendre_polynomial_dimension (Index, optional) – The number of input Legendre polynimials for Disort. See disort_legendre_polynomial_dimension, defaults to self.disort_legendre_polynomial_dimension [IN]

  • disort_quadrature_dimension (Index, optional) – The quadrature size for Disort. See disort_quadrature_dimension, defaults to self.disort_quadrature_dimension [IN]

  • disort_settings_agenda (Agenda, optional) – An agenda for setting up Disort. See disort_settings_agenda, defaults to self.disort_settings_agenda [IN]

  • frequency_grid (AscendingGrid, optional) – A single frequency grid. See frequency_grid, defaults to self.frequency_grid [IN]

  • ray_path (ArrayOfPropagationPathPoint, optional) – A list path points making up a propagation path. See ray_path, defaults to self.ray_path [IN]

  • surface_field (SurfaceField, optional) – The surface field describes the surface properties. See surface_field, defaults to self.surface_field [IN]

  • phis (AzimuthGrid, optional) – The azimuthal angles. Defaults to 0 [IN]

disort_spectral_radiance_fieldProfile(self, disort_spectral_radiance_field: pyarts3.arts.DisortRadiance | None = None, disort_quadrature: pyarts3.arts.ZenithGriddedField1 | None = None, ray_path: pyarts3.arts.ArrayOfPropagationPathPoint | None = None, atmospheric_field: pyarts3.arts.AtmField | None = None, disort_fourier_mode_dimension: pyarts3.arts.Index | None = None, disort_legendre_polynomial_dimension: pyarts3.arts.Index | None = None, disort_quadrature_dimension: pyarts3.arts.Index | None = None, disort_settings_agenda: pyarts3.arts.Agenda | None = None, frequency_grid: pyarts3.arts.AscendingGrid | None = None, latitude: pyarts3.arts.Numeric | None = None, longitude: pyarts3.arts.Numeric | None = None, surface_field: pyarts3.arts.SurfaceField | None = None, phis: pyarts3.arts.AzimuthGrid | None = None, max_step: pyarts3.arts.Numeric | None = None) None

Extract a 1D path through the atmospheric field and calculate spectral radiance using Disort

Wrapper calling Methods (in order):

Equivalent (mostly) Python code:

1ws = pyarts.Workspace()
2
3# ...
4
5 ws.ray_pathGeometricDownlooking()
6 ws.disort_spectral_radiance_fieldFromAgenda()

Authors: Richard Larsson, Automatically Generated

Parameters:
  • disort_spectral_radiance_field (DisortRadiance, optional) – The spectral radiance field from Disort. See disort_spectral_radiance_field, defaults to self.disort_spectral_radiance_field [OUT]

  • disort_quadrature (ZenithGriddedField1, optional) – The quadrature angles for Disort with accompying weights. See disort_quadrature, defaults to self.disort_quadrature [OUT]

  • ray_path (ArrayOfPropagationPathPoint, optional) – A list path points making up a propagation path. See ray_path, defaults to self.ray_path [OUT]

  • atmospheric_field (AtmField, optional) – An atmospheric field in ARTS. See atmospheric_field, defaults to self.atmospheric_field [IN]

  • disort_fourier_mode_dimension (Index, optional) – The number of Fourier modes for Disort. See disort_fourier_mode_dimension, defaults to self.disort_fourier_mode_dimension [IN]

  • disort_legendre_polynomial_dimension (Index, optional) – The number of input Legendre polynimials for Disort. See disort_legendre_polynomial_dimension, defaults to self.disort_legendre_polynomial_dimension [IN]

  • disort_quadrature_dimension (Index, optional) – The quadrature size for Disort. See disort_quadrature_dimension, defaults to self.disort_quadrature_dimension [IN]

  • disort_settings_agenda (Agenda, optional) – An agenda for setting up Disort. See disort_settings_agenda, defaults to self.disort_settings_agenda [IN]

  • frequency_grid (AscendingGrid, optional) – A single frequency grid. See frequency_grid, defaults to self.frequency_grid [IN]

  • latitude (Numeric, optional) – A single latitude. See latitude, defaults to self.latitude [IN]

  • longitude (Numeric, optional) – A single longitude. See longitude, defaults to self.longitude [IN]

  • surface_field (SurfaceField, optional) – The surface field describes the surface properties. See surface_field, defaults to self.surface_field [IN]

  • phis (AzimuthGrid, optional) – The azimuthal angles. Defaults to 0 [IN]

  • max_step (Numeric, optional) – The maximum step length. Defaults to 1000 [IN]

disort_spectral_radiance_fieldProfileCdisort(self, disort_spectral_radiance_field: pyarts3.arts.DisortRadiance | None = None, disort_quadrature: pyarts3.arts.ZenithGriddedField1 | None = None, ray_path: pyarts3.arts.ArrayOfPropagationPathPoint | None = None, atmospheric_field: pyarts3.arts.AtmField | None = None, disort_fourier_mode_dimension: pyarts3.arts.Index | None = None, disort_legendre_polynomial_dimension: pyarts3.arts.Index | None = None, disort_quadrature_dimension: pyarts3.arts.Index | None = None, disort_settings_agenda: pyarts3.arts.Agenda | None = None, frequency_grid: pyarts3.arts.AscendingGrid | None = None, latitude: pyarts3.arts.Numeric | None = None, longitude: pyarts3.arts.Numeric | None = None, surface_field: pyarts3.arts.SurfaceField | None = None, phis: pyarts3.arts.AzimuthGrid | None = None, max_step: pyarts3.arts.Numeric | None = None) None

Extract a 1D path through the atmospheric field and calculate spectral radiance using Disort

Wrapper calling Methods (in order):

Equivalent (mostly) Python code:

1ws = pyarts.Workspace()
2
3# ...
4
5 ws.ray_pathGeometricDownlooking()
6 ws.disort_spectral_radiance_fieldFromAgendaCdisort()

Authors: Oliver Lemke, Richard Larsson, Automatically Generated

Parameters:
  • disort_spectral_radiance_field (DisortRadiance, optional) – The spectral radiance field from Disort. See disort_spectral_radiance_field, defaults to self.disort_spectral_radiance_field [OUT]

  • disort_quadrature (ZenithGriddedField1, optional) – The quadrature angles for Disort with accompying weights. See disort_quadrature, defaults to self.disort_quadrature [OUT]

  • ray_path (ArrayOfPropagationPathPoint, optional) – A list path points making up a propagation path. See ray_path, defaults to self.ray_path [OUT]

  • atmospheric_field (AtmField, optional) – An atmospheric field in ARTS. See atmospheric_field, defaults to self.atmospheric_field [IN]

  • disort_fourier_mode_dimension (Index, optional) – The number of Fourier modes for Disort. See disort_fourier_mode_dimension, defaults to self.disort_fourier_mode_dimension [IN]

  • disort_legendre_polynomial_dimension (Index, optional) – The number of input Legendre polynimials for Disort. See disort_legendre_polynomial_dimension, defaults to self.disort_legendre_polynomial_dimension [IN]

  • disort_quadrature_dimension (Index, optional) – The quadrature size for Disort. See disort_quadrature_dimension, defaults to self.disort_quadrature_dimension [IN]

  • disort_settings_agenda (Agenda, optional) – An agenda for setting up Disort. See disort_settings_agenda, defaults to self.disort_settings_agenda [IN]

  • frequency_grid (AscendingGrid, optional) – A single frequency grid. See frequency_grid, defaults to self.frequency_grid [IN]

  • latitude (Numeric, optional) – A single latitude. See latitude, defaults to self.latitude [IN]

  • longitude (Numeric, optional) – A single longitude. See longitude, defaults to self.longitude [IN]

  • surface_field (SurfaceField, optional) – The surface field describes the surface properties. See surface_field, defaults to self.surface_field [IN]

  • phis (AzimuthGrid, optional) – The azimuthal angles. Defaults to 0 [IN]

  • max_step (Numeric, optional) – The maximum step length. Defaults to 1000 [IN]

ecs_dataAddMakarov2020(self, ecs_data: pyarts3.arts.LinemixingEcsData | None = None) None

Sets the O2-66 microwave band data for ECS.

This is based on the work of:

Dmitriy S. Makarov, Mikhail Yu. Tretyakov, Philip W. Rosenkranz, Revision of the 60-GHz atmospheric oxygen absorption band models for practical use, Journal of Quantitative Spectroscopy and Radiative Transfer, Volume 243, 2020, 106798, ISSN 0022-4073, https://doi.org/10.1016/j.jqsrt.2019.106798. (https://www.sciencedirect.com/science/article/pii/S002240731930576X)

Author: Richard Larsson

Parameters:

ecs_data (LinemixingEcsData, optional) – Error corrected sudden data. See ecs_data, defaults to self.ecs_data [INOUT]

ecs_dataAddMeanAir(self, ecs_data: pyarts3.arts.LinemixingEcsData | None = None, vmrs: pyarts3.arts.Vector | None = None, species: pyarts3.arts.ArrayOfSpeciesEnum | None = None) None

Sets ECS data for air from other data if available.

Author: Richard Larsson

Parameters:
ecs_dataAddRodrigues1997(self, ecs_data: pyarts3.arts.LinemixingEcsData | None = None) None

Sets the CO2-626, CO2-628, and CO2-636 band data for ECS.

Sets N2 and O2 species.

This is based on the work of:

R. Rodrigues, Gh. Blanquet, J. Walrand, B. Khalil, R.Le Doucen, F. Thibault, J.-M. Hartmann, Line-Mixing Effects inQBranches of CO2, Journal of Molecular Spectroscopy, Volume 186, Issue 2, 1997, Pages 256-268, ISSN 0022-2852, https://doi.org/10.1006/jmsp.1997.7453. (https://www.sciencedirect.com/science/article/pii/S0022285297974531)

Author: Richard Larsson

Parameters:

ecs_data (LinemixingEcsData, optional) – Error corrected sudden data. See ecs_data, defaults to self.ecs_data [INOUT]

ecs_dataAddTran2011(self, ecs_data: pyarts3.arts.LinemixingEcsData | None = None) None

Sets the CO2-626, CO2-628, and CO2-636 band data for ECS.

Sets CO2 species.

This is based on the work of:

H. Tran, C. Boulet, S. Stefani, M. Snels, G. Piccioni, Measurements and modelling of high pressure pure CO2 spectra from 750 to 8500cm−1. I—central and wing regions of the allowed vibrational bands, Journal of Quantitative Spectroscopy and Radiative Transfer, Volume 112, Issue 6, 2011, Pages 925-936, ISSN 0022-4073, https://doi.org/10.1016/j.jqsrt.2010.11.021. (https://www.sciencedirect.com/science/article/pii/S0022407310004449)

Author: Richard Larsson

Parameters:

ecs_data (LinemixingEcsData, optional) – Error corrected sudden data. See ecs_data, defaults to self.ecs_data [INOUT]

ecs_dataInit(self, ecs_data: pyarts3.arts.LinemixingEcsData | None = None) None

Resets/initializes the ECS data.

Author: Richard Larsson

Parameters:

ecs_data (LinemixingEcsData, optional) – Error corrected sudden data. See ecs_data, defaults to self.ecs_data [OUT]

flux_profileIntegrate(self, flux_profile: pyarts3.arts.Vector | None = None, spectral_flux_profile: pyarts3.arts.Matrix | None = None, frequency_grid: pyarts3.arts.AscendingGrid | None = None) None

Computes the spectral flux

Author: Richard Larsson

Parameters:
  • flux_profile (Vector) – The spectral flux profile. Defaults to create and/or use self.flux_profile : Vector. [OUT]

  • spectral_flux_profile (Matrix, optional) – An altitude profile of spectral flux. See spectral_flux_profile, defaults to self.spectral_flux_profile [IN]

  • frequency_grid (AscendingGrid, optional) – A single frequency grid. See frequency_grid, defaults to self.frequency_grid [IN]

frequency_gridFitNonLTE(self, frequency_grid: pyarts3.arts.AscendingGrid | None = None, absorption_bands: pyarts3.arts.AbsorptionBands | None = None, df: pyarts3.arts.Numeric | None = None, nf: pyarts3.arts.Index | None = None) None

Frequency grid useful for atmospheric_profileFitNonLTE().

This method creates a frequency grid around the line-center of each absorption line in the absorption_bands variable.

Note

For all sorted absorption line centers \(f_i\), the following should be true:

\[f_{i -1} + \delta f < f_i < f_{i + 1} - \delta f\]

That is, the frequency ranges are not allowed to overlap.

Author: Richard Larsson

Parameters:
  • frequency_grid (AscendingGrid, optional) – A single frequency grid. See frequency_grid, defaults to self.frequency_grid [OUT]

  • absorption_bands (AbsorptionBands, optional) – Bands of absorption lines for line-by-line (LBL) calculations. See absorption_bands, defaults to self.absorption_bands [IN]

  • df (Numeric) – Frequency grid around the line-center. The range will cover \(f_i\) pm left(1-delta fright)forall i` of each absorption line \(i\), where this variable is \(\delta f\). [IN]

  • nf (Index, optional) – Number of frequency points per line. The step between frequency grid points will be \(2\frac{\delta f}{N - 1}\), where this is \(N\). Defaults to 401 [IN]

frequency_gridWindShift(self, frequency_grid: pyarts3.arts.AscendingGrid | None = None, frequency_grid_wind_shift_jacobian: pyarts3.arts.Vector3 | None = None, atmospheric_point: pyarts3.arts.AtmPoint | None = None, ray_path_point: pyarts3.arts.PropagationPathPoint | None = None) None

Applies wind shift to the frequency_grid for the local frequency grid.

Also sets frequency_grid_wind_shift_jacobian.

If the wind is 0 or nan, the frequency_grid remains unchanged.

Author: Richard Larsson

Parameters:
get(self, name: str) object

Gets the value of the variable with the given name.

gravity_operatorCentralMass(self, gravity_operator: pyarts3.arts.NumericTernaryOperator | None = None, surface_field: pyarts3.arts.SurfaceField | None = None, mass: pyarts3.arts.Numeric | None = None) None

Sets a gravity operator from the gravitational constant and the mass of the planet

Gets the ellispoid from surface_field

Author: Richard Larsson

Parameters:
  • gravity_operator (NumericTernaryOperator, optional) – The gravity operator. See gravity_operator, defaults to self.gravity_operator [OUT]

  • surface_field (SurfaceField, optional) – The surface field describes the surface properties. See surface_field, defaults to self.surface_field [IN]

  • mass (Numeric) – Gravitation constant so that the gravity at radius r is GM / r^2. [IN]

has(self, name: str) bool

Checks if the workspace contains the variable.

init(self, arg: str, /) None
init(self, name: str, typename: str) None

Overloaded function.

  1. init(self, arg: str, /) -> None

  2. init(self, name: str, typename: str) -> None

Initiate the variable to the named type.

inversion_iterate_agendaExecute(self, atmospheric_field: pyarts3.arts.AtmField | None = None, absorption_bands: pyarts3.arts.AbsorptionBands | None = None, measurement_sensor: pyarts3.arts.ArrayOfSensorObsel | None = None, surface_field: pyarts3.arts.SurfaceField | None = None, subsurface_field: pyarts3.arts.SubsurfaceField | None = None, measurement_vector_fitted: pyarts3.arts.Vector | None = None, measurement_jacobian: pyarts3.arts.Matrix | None = None, jacobian_targets: pyarts3.arts.JacobianTargets | None = None, model_state_vector: pyarts3.arts.Vector | None = None, do_jacobian: pyarts3.arts.Index | None = None, inversion_iterate_agenda_counter: pyarts3.arts.Index | None = None, inversion_iterate_agenda: pyarts3.arts.Agenda | None = None) None

Executes inversion_iterate_agenda, see it for more details

Author: Automatically Generated

Parameters:
inversion_iterate_agendaExecuteOperator(self, atmospheric_field: pyarts3.arts.AtmField | None = None, absorption_bands: pyarts3.arts.AbsorptionBands | None = None, measurement_sensor: pyarts3.arts.ArrayOfSensorObsel | None = None, surface_field: pyarts3.arts.SurfaceField | None = None, subsurface_field: pyarts3.arts.SubsurfaceField | None = None, measurement_vector_fitted: pyarts3.arts.Vector | None = None, measurement_jacobian: pyarts3.arts.Matrix | None = None, jacobian_targets: pyarts3.arts.JacobianTargets | None = None, model_state_vector: pyarts3.arts.Vector | None = None, do_jacobian: pyarts3.arts.Index | None = None, inversion_iterate_agenda_counter: pyarts3.arts.Index | None = None, inversion_iterate_agenda_operator: pyarts3.arts.inversion_iterate_agendaOperator | None = None) None

Executes an operator emulating inversion_iterate_agenda, see it, and also inversion_iterate_agendaOperator, for more details

Author: Automatically Generated

Parameters:
inversion_iterate_agendaSet(self, inversion_iterate_agenda: pyarts3.arts.Agenda | None = None, option: pyarts3.arts.String | None = None) None

Set inversion_iterate_agenda to a specific predefined option

Author: Automatically Generated

Parameters:
  • inversion_iterate_agenda (Agenda, optional) – Work in progress … See inversion_iterate_agenda, defaults to self.inversion_iterate_agenda [OUT]

  • option (String, optional) – Choice of generated agenda. Defaults to "Full" [IN]

Valid options

These are the valid options for the inversion_iterate_agendaSet method. The listed method calls describe the order of the agenda calls for each option.


inversion_iterate_agendaSet(option="Full")

inversion_iterate_agendaSetOperator(self, inversion_iterate_agenda: pyarts3.arts.Agenda | None = None, f: pyarts3.arts.inversion_iterate_agendaOperator | None = None) None

Set inversion_iterate_agenda to exclusively use provided external operator. See inversion_iterate_agendaOperator for more details.

Author: Automatically Generated

Parameters:
jacobian_targetsAddAtmosphere(self, jacobian_targets: pyarts3.arts.JacobianTargets | None = None, target: pyarts3.arts.AtmKey | pyarts3.arts.SpeciesEnum | pyarts3.arts.SpeciesIsotope | pyarts3.arts.QuantumLevelIdentifier | None = None, d: pyarts3.arts.Numeric | None = None) None

Sets an atmospheric target.

Author: Richard Larsson

Parameters:
jacobian_targetsAddErrorPolyFit(self, jacobian_targets: pyarts3.arts.JacobianTargets | None = None, measurement_sensor: pyarts3.arts.ArrayOfSensorObsel | None = None, t: pyarts3.arts.Vector | None = None, sensor_elem: pyarts3.arts.Index | None = None, polyorder: pyarts3.arts.Index | None = None) None

Set a measurement error to polynomial fit.

This is a generic error that is simply added to measurement_vector as if

\[y = y_0 + \epsilon(p_0,\; p_1,\; \cdots,\; p_n),\]

where \(y\) represents measurement_vector and \(y_0\) is the measurement vector without any errors)

Order 0 means constant: \(y = y_0 + a\)

Order 1 means linear: \(y = y_0 + a + b t\)

and so on. The derivatives that are added to the model_state_vector are those with regards to a, b, etc..

Note

The rule for the sensor_elem GIN is a bit complex. Generally, methods such as measurement_sensorAddSimple() will simply add a single unique frequency grid to all the different SensorObsel that they add to the measurement_sensor. The GIN sensor_elem is 0 for the first unique frequency grid, 1 for the second, and so on. See ArrayOfSensorObsel member methods in python for help identifying and manipulating how many unique frequency grids are available in measurement_sensor.

Author: Richard Larsson

Parameters:
  • jacobian_targets (JacobianTargets, optional) – A list of targets for the Jacobian Matrix calculations. See jacobian_targets, defaults to self.jacobian_targets [INOUT]

  • measurement_sensor (ArrayOfSensorObsel, optional) – A list of sensor elements. See measurement_sensor, defaults to self.measurement_sensor [IN]

  • t (Vector) – The grid of \(y\). As \(t\) above. [IN]

  • sensor_elem (Index) – The sensor element whose frequency grid to use. [IN]

  • polyorder (Index, optional) – The order of the polynomial fit. Maximum \(n\) above. Defaults to 0 [IN]

jacobian_targetsAddMagneticField(self, jacobian_targets: pyarts3.arts.JacobianTargets | None = None, component: pyarts3.arts.String | None = None, d: pyarts3.arts.Numeric | None = None) None

Set magnetic field derivative.

See FieldComponent for valid component.

Author: Richard Larsson

Parameters:
  • jacobian_targets (JacobianTargets, optional) – A list of targets for the Jacobian Matrix calculations. See jacobian_targets, defaults to self.jacobian_targets [INOUT]

  • component (String) – The component to use [u, v, w]. [IN]

  • d (Numeric, optional) – The perturbation used in methods that cannot compute derivatives analytically. Defaults to 0.1 [IN]

jacobian_targetsAddOverlappingMagneticField(self, jacobian_targets: pyarts3.arts.JacobianTargets | None = None) None

Set magnetic field derivative for overlapping fields.

An overlapping field means that the derivative is computed but that the x-component of the jacobian is at the same position as another Jacobian target.

To call this method, you first have added 1 component of the magnetic field derivative, and then you call this method to add the second and third component.

Author: Richard Larsson

Parameters:

jacobian_targets (JacobianTargets, optional) – A list of targets for the Jacobian Matrix calculations. See jacobian_targets, defaults to self.jacobian_targets [INOUT]

jacobian_targetsAddOverlappingWindField(self, jacobian_targets: pyarts3.arts.JacobianTargets | None = None) None

Set wind field derivative for overlapping fields.

An overlapping field means that the derivative is computed but that the x-component of the jacobian is at the same position as another Jacobian target.

To call this method, you first have added 1 component of the wind field derivative, and then you call this method to add the second and third component.

Author: Richard Larsson

Parameters:

jacobian_targets (JacobianTargets, optional) – A list of targets for the Jacobian Matrix calculations. See jacobian_targets, defaults to self.jacobian_targets [INOUT]

jacobian_targetsAddPressure(self, jacobian_targets: pyarts3.arts.JacobianTargets | None = None, d: pyarts3.arts.Numeric | None = None) None

Set pressure derivative.

Author: Richard Larsson

Parameters:
  • jacobian_targets (JacobianTargets, optional) – A list of targets for the Jacobian Matrix calculations. See jacobian_targets, defaults to self.jacobian_targets [INOUT]

  • d (Numeric, optional) – The perturbation used in methods that cannot compute derivatives analytically. Defaults to 0.1 [IN]

jacobian_targetsAddSensorFrequencyPolyOffset(self, jacobian_targets: pyarts3.arts.JacobianTargets | None = None, measurement_sensor: pyarts3.arts.ArrayOfSensorObsel | None = None, d: pyarts3.arts.Numeric | None = None, sensor_elem: pyarts3.arts.Index | None = None, polyorder: pyarts3.arts.Index | None = None) None

Set sensor frequency derivative to use polynomial fitting offset

Order 0 means constant: \(f := f_0 + a\)

Order 1 means linear: \(f := f_0 + a + b f_0\)

and so on. The derivatives that are added to the model_state_vector are those with regards to a, b, etc..

Note

The rule for the sensor_elem GIN is a bit complex. Generally, methods such as measurement_sensorAddSimple() will simply add a single unique frequency grid to all the different SensorObsel that they add to the measurement_sensor. The GIN sensor_elem is 0 for the first unique frequency grid, 1 for the second, and so on. See ArrayOfSensorObsel member methods in python for help identifying and manipulating how many unique frequency grids are available in measurement_sensor.

Author: Richard Larsson

Parameters:
  • jacobian_targets (JacobianTargets, optional) – A list of targets for the Jacobian Matrix calculations. See jacobian_targets, defaults to self.jacobian_targets [INOUT]

  • measurement_sensor (ArrayOfSensorObsel, optional) – A list of sensor elements. See measurement_sensor, defaults to self.measurement_sensor [IN]

  • d (Numeric, optional) – The perturbation used in methods that cannot compute derivatives analytically. Defaults to 0.1 [IN]

  • sensor_elem (Index) – The sensor element whose frequency grid to use. [IN]

  • polyorder (Index, optional) – The order of the polynomial fit. Defaults to 0 [IN]

jacobian_targetsAddSpeciesIsotopologueRatio(self, jacobian_targets: pyarts3.arts.JacobianTargets | None = None, species: pyarts3.arts.SpeciesIsotope | None = None, d: pyarts3.arts.Numeric | None = None) None

Set isotopologue ratio derivative

See SpeciesIsotope for valid species

Author: Richard Larsson

Parameters:
  • jacobian_targets (JacobianTargets, optional) – A list of targets for the Jacobian Matrix calculations. See jacobian_targets, defaults to self.jacobian_targets [INOUT]

  • species (SpeciesIsotope) – The species isotopologue of interest. [IN]

  • d (Numeric, optional) – The perturbation used in methods that cannot compute derivatives analytically. Defaults to 0.1 [IN]

jacobian_targetsAddSpeciesVMR(self, jacobian_targets: pyarts3.arts.JacobianTargets | None = None, species: pyarts3.arts.SpeciesEnum | None = None, d: pyarts3.arts.Numeric | None = None) None

Set volume mixing ratio derivative.

See SpeciesEnum for valid species

Author: Richard Larsson

Parameters:
  • jacobian_targets (JacobianTargets, optional) – A list of targets for the Jacobian Matrix calculations. See jacobian_targets, defaults to self.jacobian_targets [INOUT]

  • species (SpeciesEnum) – The species of interest. [IN]

  • d (Numeric, optional) – The perturbation used in methods that cannot compute derivatives analytically. Defaults to 0.1 [IN]

jacobian_targetsAddSubsurface(self, jacobian_targets: pyarts3.arts.JacobianTargets | None = None, target: pyarts3.arts.SubsurfaceKey | None = None, d: pyarts3.arts.Numeric | None = None) None

Sets a subsurface target

Author: Richard Larsson

Parameters:
  • jacobian_targets (JacobianTargets, optional) – A list of targets for the Jacobian Matrix calculations. See jacobian_targets, defaults to self.jacobian_targets [INOUT]

  • target (SubsurfaceKey) – The target of interest. [IN]

  • d (Numeric, optional) – The perturbation used in methods that cannot compute derivatives analytically. Defaults to 0.1 [IN]

jacobian_targetsAddSurface(self, jacobian_targets: pyarts3.arts.JacobianTargets | None = None, target: pyarts3.arts.SurfaceKey | pyarts3.arts.SurfacePropertyTag | None = None, d: pyarts3.arts.Numeric | None = None) None

Sets a surface target

Author: Richard Larsson

Parameters:
  • jacobian_targets (JacobianTargets, optional) – A list of targets for the Jacobian Matrix calculations. See jacobian_targets, defaults to self.jacobian_targets [INOUT]

  • target (SurfaceKey,SurfacePropertyTag) – The target of interest. [IN]

  • d (Numeric, optional) – The perturbation used in methods that cannot compute derivatives analytically. Defaults to 0.1 [IN]

jacobian_targetsAddTemperature(self, jacobian_targets: pyarts3.arts.JacobianTargets | None = None, d: pyarts3.arts.Numeric | None = None) None

Set temperature derivative.

Author: Richard Larsson

Parameters:
  • jacobian_targets (JacobianTargets, optional) – A list of targets for the Jacobian Matrix calculations. See jacobian_targets, defaults to self.jacobian_targets [INOUT]

  • d (Numeric, optional) – The perturbation used in methods that cannot compute derivatives analytically. Defaults to 0.1 [IN]

jacobian_targetsAddWindField(self, jacobian_targets: pyarts3.arts.JacobianTargets | None = None, component: pyarts3.arts.String | None = None, d: pyarts3.arts.Numeric | None = None) None

Set wind field derivative.

Note that the derivatives from methods that takes the freqeuncy will return their derivatives as if these were frequency derivatives.

See FieldComponent for valid component

Author: Richard Larsson

Parameters:
  • jacobian_targets (JacobianTargets, optional) – A list of targets for the Jacobian Matrix calculations. See jacobian_targets, defaults to self.jacobian_targets [INOUT]

  • component (String) – The component to use [u, v, w]. [IN]

  • d (Numeric, optional) – The perturbation used in methods that cannot compute derivatives analytically. Defaults to 0.1 [IN]

jacobian_targetsConditionalClear(self, jacobian_targets: pyarts3.arts.JacobianTargets | None = None, do_jacobian: pyarts3.arts.Index | None = None) None

Clears jacobian_targets if do_jacobian evaluates false.

Author: Richard Larsson

Parameters:
jacobian_targetsFinalize(self, jacobian_targets: pyarts3.arts.JacobianTargets | None = None, atmospheric_field: pyarts3.arts.AtmField | None = None, surface_field: pyarts3.arts.SurfaceField | None = None, subsurface_field: pyarts3.arts.SubsurfaceField | None = None, absorption_bands: pyarts3.arts.AbsorptionBands | None = None, measurement_sensor: pyarts3.arts.ArrayOfSensorObsel | None = None) None

Finalize jacobian_targets.

The finalization computes the size of the required model_state_vector. It is thus necessary if any OEM() or other functionality that requires the building of an actual Jacobian matrix.

Author: Richard Larsson

Parameters:
  • jacobian_targets (JacobianTargets, optional) – A list of targets for the Jacobian Matrix calculations. See jacobian_targets, defaults to self.jacobian_targets [INOUT]

  • atmospheric_field (AtmField, optional) – An atmospheric field in ARTS. See atmospheric_field, defaults to self.atmospheric_field [IN]

  • surface_field (SurfaceField, optional) – The surface field describes the surface properties. See surface_field, defaults to self.surface_field [IN]

  • subsurface_field (SubsurfaceField, optional) – The sub0surface field describes the sub-surface properties. See subsurface_field, defaults to self.subsurface_field [IN]

  • absorption_bands (AbsorptionBands, optional) – Bands of absorption lines for line-by-line (LBL) calculations. See absorption_bands, defaults to self.absorption_bands [IN]

  • measurement_sensor (ArrayOfSensorObsel, optional) – A list of sensor elements. See measurement_sensor, defaults to self.measurement_sensor [IN]

jacobian_targetsInit(self, jacobian_targets: pyarts3.arts.JacobianTargets | None = None) None

Initialize or reset the jacobian_targets.

Author: Richard Larsson

Parameters:

jacobian_targets (JacobianTargets, optional) – A list of targets for the Jacobian Matrix calculations. See jacobian_targets, defaults to self.jacobian_targets [OUT]

jacobian_targetsOff(self, jacobian_targets: pyarts3.arts.JacobianTargets | None = None) None

Turns off jacobian_targets

Author: Richard Larsson

Parameters:

jacobian_targets (JacobianTargets, optional) – A list of targets for the Jacobian Matrix calculations. See jacobian_targets, defaults to self.jacobian_targets [OUT]

jacobian_targetsToggleLogRelAtmTarget(self, jacobian_targets: pyarts3.arts.JacobianTargets | None = None, atmospheric_field: pyarts3.arts.AtmField | None = None, key: pyarts3.arts.AtmKey | pyarts3.arts.SpeciesEnum | pyarts3.arts.SpeciesIsotope | pyarts3.arts.QuantumLevelIdentifier | pyarts3.arts.ScatteringSpeciesProperty | None = None) None

Toggles logarithmic/relative or absolute retrievals.

This means to take the logarithm of the relative value.

If the target is in logarithmic/relative mode, it becomes absolute. If the target is not in logarithmic/relative mode, it becomes logarithmic/relative.

Overwrites all other functional toggles.

Author: Richard Larsson

Parameters:
jacobian_targetsToggleLogRelSubsurfaceTarget(self, jacobian_targets: pyarts3.arts.JacobianTargets | None = None, subsurface_field: pyarts3.arts.SubsurfaceField | None = None, key: pyarts3.arts.SubsurfaceKey | None = None) None

Toggles logarithmic/relative or absolute retrievals.

This means to take the logarithm of the relative value.

If the target is in logarithmic/relative mode, it becomes absolute. If the target is not in logarithmic/relative mode, it becomes logarithmic/relative.

Overwrites all other functional toggles.

Author: Richard Larsson

Parameters:
  • jacobian_targets (JacobianTargets, optional) – A list of targets for the Jacobian Matrix calculations. See jacobian_targets, defaults to self.jacobian_targets [INOUT]

  • subsurface_field (SubsurfaceField, optional) – The sub0surface field describes the sub-surface properties. See subsurface_field, defaults to self.subsurface_field [IN]

  • key (SubsurfaceKey) – Key to toggle. [IN]

jacobian_targetsToggleLogRelSurfaceTarget(self, jacobian_targets: pyarts3.arts.JacobianTargets | None = None, surface_field: pyarts3.arts.SurfaceField | None = None, key: pyarts3.arts.SurfaceKey | pyarts3.arts.SurfacePropertyTag | None = None) None

Toggles logarithmic/relative or absolute retrievals.

This means to take the logarithm of the relative value.

If the target is in logarithmic/relative mode, it becomes absolute. If the target is not in logarithmic/relative mode, it becomes logarithmic/relative.

Overwrites all other functional toggles.

Author: Richard Larsson

Parameters:
jacobian_targetsToggleLogarithmicAtmTarget(self, jacobian_targets: pyarts3.arts.JacobianTargets | None = None, atmospheric_field: pyarts3.arts.AtmField | None = None, key: pyarts3.arts.AtmKey | pyarts3.arts.SpeciesEnum | pyarts3.arts.SpeciesIsotope | pyarts3.arts.QuantumLevelIdentifier | pyarts3.arts.ScatteringSpeciesProperty | None = None) None

Toggles logarithmic or absolute retrievals.

If the target is in logarithmic mode, it becomes absolute. If the target is not in logarithmic mode, it becomes logarithmic.

Overwrites all other functional toggles.

Author: Richard Larsson

Parameters:
jacobian_targetsToggleLogarithmicSubsurfaceTarget(self, jacobian_targets: pyarts3.arts.JacobianTargets | None = None, subsurface_field: pyarts3.arts.SubsurfaceField | None = None, key: pyarts3.arts.SubsurfaceKey | None = None) None

Toggles logarithmic or absolute retrievals.

If the target is in logarithmic mode, it becomes absolute. If the target is not in logarithmic mode, it becomes logarithmic.

Overwrites all other functional toggles.

Author: Richard Larsson

Parameters:
  • jacobian_targets (JacobianTargets, optional) – A list of targets for the Jacobian Matrix calculations. See jacobian_targets, defaults to self.jacobian_targets [INOUT]

  • subsurface_field (SubsurfaceField, optional) – The sub0surface field describes the sub-surface properties. See subsurface_field, defaults to self.subsurface_field [IN]

  • key (SubsurfaceKey) – Key to toggle. [IN]

jacobian_targetsToggleLogarithmicSurfaceTarget(self, jacobian_targets: pyarts3.arts.JacobianTargets | None = None, surface_field: pyarts3.arts.SurfaceField | None = None, key: pyarts3.arts.SurfaceKey | pyarts3.arts.SurfacePropertyTag | None = None) None

Toggles logarithmic or absolute retrievals.

If the target is in logarithmic mode, it becomes absolute. If the target is not in logarithmic mode, it becomes logarithmic.

Overwrites all other functional toggles.

Author: Richard Larsson

Parameters:
jacobian_targetsToggleRelativeAtmTarget(self, jacobian_targets: pyarts3.arts.JacobianTargets | None = None, atmospheric_field: pyarts3.arts.AtmField | None = None, key: pyarts3.arts.AtmKey | pyarts3.arts.SpeciesEnum | pyarts3.arts.SpeciesIsotope | pyarts3.arts.QuantumLevelIdentifier | pyarts3.arts.ScatteringSpeciesProperty | None = None) None

Toggles relative or absolute retrievals.

If the target is in relative mode, it becomes absolute. If the target is not in relative mode, it becomes relative.

Overwrites all other functional toggles.

Author: Richard Larsson

Parameters:
jacobian_targetsToggleRelativeHumidityAtmTarget(self, jacobian_targets: pyarts3.arts.JacobianTargets | None = None, atmospheric_field: pyarts3.arts.AtmField | None = None, water_equivalent_pressure_operator: pyarts3.arts.NumericUnaryOperator | None = None, key: pyarts3.arts.AtmKey | pyarts3.arts.SpeciesEnum | pyarts3.arts.SpeciesIsotope | pyarts3.arts.QuantumLevelIdentifier | pyarts3.arts.ScatteringSpeciesProperty | None = None, nonnegative: pyarts3.arts.Index | None = None) None

Toggles relative humidity or absolute retrievals.

If the target is in relative humidity mode, it becomes absolute. If the target is not in relative humidity mode, it becomes relative humidity.

Overwrites all other functional toggles.

Author: Richard Larsson

Parameters:
jacobian_targetsToggleRelativeSubsurfaceTarget(self, jacobian_targets: pyarts3.arts.JacobianTargets | None = None, subsurface_field: pyarts3.arts.SubsurfaceField | None = None, key: pyarts3.arts.SubsurfaceKey | None = None) None

Toggles relative or absolute retrievals.

If the target is in relative mode, it becomes absolute. If the target is not in relative mode, it becomes relative.

Overwrites all other functional toggles.

Author: Richard Larsson

Parameters:
  • jacobian_targets (JacobianTargets, optional) – A list of targets for the Jacobian Matrix calculations. See jacobian_targets, defaults to self.jacobian_targets [INOUT]

  • subsurface_field (SubsurfaceField, optional) – The sub0surface field describes the sub-surface properties. See subsurface_field, defaults to self.subsurface_field [IN]

  • key (SubsurfaceKey) – Key to toggle. [IN]

jacobian_targetsToggleRelativeSurfaceTarget(self, jacobian_targets: pyarts3.arts.JacobianTargets | None = None, surface_field: pyarts3.arts.SurfaceField | None = None, key: pyarts3.arts.SurfaceKey | pyarts3.arts.SurfacePropertyTag | None = None) None

Toggles relative or absolute retrievals.

If the target is in relative mode, it becomes absolute. If the target is not in relative mode, it becomes relative.

Overwrites all other functional toggles.

Author: Richard Larsson

Parameters:
legendre_degreeFromDisortSettings(self, legendre_degree: pyarts3.arts.Index | None = None, disort_settings: pyarts3.arts.DisortSettings | None = None) None

Sets legendre_degree to disort_settings legendre_polynomial_dimension

Method is purely for convenience and composition.

Author: Richard Larsson

Parameters:
  • legendre_degree (Index, optional) – The degree of a Legendre polynimial. See legendre_degree, defaults to self.legendre_degree [OUT]

  • disort_settings (DisortSettings, optional) – Contains the full settings of spectral Disort calculations. See disort_settings, defaults to self.disort_settings [IN]

measurement_averaging_kernelCalc(self, measurement_averaging_kernel: pyarts3.arts.Matrix | None = None, measurement_gain_matrix: pyarts3.arts.Matrix | None = None, measurement_jacobian: pyarts3.arts.Matrix | None = None) None

Calculate the averaging kernel matrix.

This is done by describing the sensitivity of the OEM() retrieval with respect to the true state of the system. A prerequisite for the calculation of the averaging kernel matrix is a successful OEM() calculation in which the measurement_jacobian and the gain matrix measurement_gain_matrix have been calculated.

Author: Simon Pfreundschuh

Parameters:
measurement_inversion_agendaExecute(self, measurement_vector_fitted: pyarts3.arts.Vector | None = None, measurement_jacobian: pyarts3.arts.Matrix | None = None, jacobian_targets: pyarts3.arts.JacobianTargets | None = None, do_jacobian: pyarts3.arts.Index | None = None, measurement_inversion_agenda: pyarts3.arts.Agenda | None = None) None

Executes measurement_inversion_agenda, see it for more details

Author: Automatically Generated

Parameters:
measurement_inversion_agendaExecuteOperator(self, measurement_vector_fitted: pyarts3.arts.Vector | None = None, measurement_jacobian: pyarts3.arts.Matrix | None = None, jacobian_targets: pyarts3.arts.JacobianTargets | None = None, do_jacobian: pyarts3.arts.Index | None = None, measurement_inversion_agenda_operator: pyarts3.arts.measurement_inversion_agendaOperator | None = None) None

Executes an operator emulating measurement_inversion_agenda, see it, and also measurement_inversion_agendaOperator, for more details

Author: Automatically Generated

Parameters:
measurement_inversion_agendaSet(self, measurement_inversion_agenda: pyarts3.arts.Agenda | None = None, option: pyarts3.arts.String | None = None) None

Set measurement_inversion_agenda to a specific predefined option

Author: Automatically Generated

Parameters:

Valid options

These are the valid options for the measurement_inversion_agendaSet method. The listed method calls describe the order of the agenda calls for each option.


measurement_inversion_agendaSet(option="Standard")

measurement_inversion_agendaSetOperator(self, measurement_inversion_agenda: pyarts3.arts.Agenda | None = None, f: pyarts3.arts.measurement_inversion_agendaOperator | None = None) None

Set measurement_inversion_agenda to exclusively use provided external operator. See measurement_inversion_agendaOperator for more details.

Author: Automatically Generated

Parameters:
measurement_jacobianAtmosphereTransformation(self, measurement_jacobian: pyarts3.arts.Matrix | None = None, model_state_vector: pyarts3.arts.Vector | None = None, atmospheric_field: pyarts3.arts.AtmField | None = None, jacobian_targets: pyarts3.arts.JacobianTargets | None = None) None

Applies transformations to the atmospheric state Jacobian

Author: Richard Larsson

Used by wrapper method

Parameters:
measurement_jacobianBandTransformation(self, measurement_jacobian: pyarts3.arts.Matrix | None = None, model_state_vector: pyarts3.arts.Vector | None = None, absorption_bands: pyarts3.arts.AbsorptionBands | None = None, jacobian_targets: pyarts3.arts.JacobianTargets | None = None) None

Applies transformations to the line-by-line state Jacobian

Author: Richard Larsson

Used by wrapper method

Parameters:
  • measurement_jacobian (Matrix, optional) – The first order partial derivatives of the measurement_vector. See measurement_jacobian, defaults to self.measurement_jacobian [INOUT]

  • model_state_vector (Vector, optional) – A state vector of the model. See model_state_vector, defaults to self.model_state_vector [IN]

  • absorption_bands (AbsorptionBands, optional) – Bands of absorption lines for line-by-line (LBL) calculations. See absorption_bands, defaults to self.absorption_bands [IN]

  • jacobian_targets (JacobianTargets, optional) – A list of targets for the Jacobian Matrix calculations. See jacobian_targets, defaults to self.jacobian_targets [IN]

measurement_jacobianSensorTransformation(self, measurement_jacobian: pyarts3.arts.Matrix | None = None, model_state_vector: pyarts3.arts.Vector | None = None, measurement_sensor: pyarts3.arts.ArrayOfSensorObsel | None = None, jacobian_targets: pyarts3.arts.JacobianTargets | None = None) None

Applies transformations to the measurement sensor state Jacobian

Author: Richard Larsson

Used by wrapper method

Parameters:
measurement_jacobianSubsurfaceTransformation(self, measurement_jacobian: pyarts3.arts.Matrix | None = None, model_state_vector: pyarts3.arts.Vector | None = None, subsurface_field: pyarts3.arts.SubsurfaceField | None = None, jacobian_targets: pyarts3.arts.JacobianTargets | None = None) None

Applies transformations to the subsurface state Jacobian

Author: Richard Larsson

Used by wrapper method

Parameters:
  • measurement_jacobian (Matrix, optional) – The first order partial derivatives of the measurement_vector. See measurement_jacobian, defaults to self.measurement_jacobian [INOUT]

  • model_state_vector (Vector, optional) – A state vector of the model. See model_state_vector, defaults to self.model_state_vector [IN]

  • subsurface_field (SubsurfaceField, optional) – The sub0surface field describes the sub-surface properties. See subsurface_field, defaults to self.subsurface_field [IN]

  • jacobian_targets (JacobianTargets, optional) – A list of targets for the Jacobian Matrix calculations. See jacobian_targets, defaults to self.jacobian_targets [IN]

measurement_jacobianSurfaceTransformation(self, measurement_jacobian: pyarts3.arts.Matrix | None = None, model_state_vector: pyarts3.arts.Vector | None = None, surface_field: pyarts3.arts.SurfaceField | None = None, jacobian_targets: pyarts3.arts.JacobianTargets | None = None) None

Applies transformations to the surface state Jacobian

Author: Richard Larsson

Used by wrapper method

Parameters:
  • measurement_jacobian (Matrix, optional) – The first order partial derivatives of the measurement_vector. See measurement_jacobian, defaults to self.measurement_jacobian [INOUT]

  • model_state_vector (Vector, optional) – A state vector of the model. See model_state_vector, defaults to self.model_state_vector [IN]

  • surface_field (SurfaceField, optional) – The surface field describes the surface properties. See surface_field, defaults to self.surface_field [IN]

  • jacobian_targets (JacobianTargets, optional) – A list of targets for the Jacobian Matrix calculations. See jacobian_targets, defaults to self.jacobian_targets [IN]

measurement_jacobianTransformations(self, measurement_jacobian: pyarts3.arts.Matrix | None = None, absorption_bands: pyarts3.arts.AbsorptionBands | None = None, atmospheric_field: pyarts3.arts.AtmField | None = None, jacobian_targets: pyarts3.arts.JacobianTargets | None = None, measurement_sensor: pyarts3.arts.ArrayOfSensorObsel | None = None, model_state_vector: pyarts3.arts.Vector | None = None, subsurface_field: pyarts3.arts.SubsurfaceField | None = None, surface_field: pyarts3.arts.SurfaceField | None = None) None

Apply all transformations to the Jacobian related to states in model_state_vectorFromData()

Wrapper calling Methods (in order):

Equivalent (mostly) Python code:

1ws = pyarts.Workspace()
2
3# ...
4
5 ws.measurement_jacobianAtmosphereTransformation()
6 ws.measurement_jacobianSurfaceTransformation()
7 ws.measurement_jacobianSubsurfaceTransformation()
8 ws.measurement_jacobianBandTransformation()
9 ws.measurement_jacobianSensorTransformation()

Author: Richard Larsson

Parameters:
  • measurement_jacobian (Matrix, optional) – The first order partial derivatives of the measurement_vector. See measurement_jacobian, defaults to self.measurement_jacobian [INOUT]

  • absorption_bands (AbsorptionBands, optional) – Bands of absorption lines for line-by-line (LBL) calculations. See absorption_bands, defaults to self.absorption_bands [IN]

  • atmospheric_field (AtmField, optional) – An atmospheric field in ARTS. See atmospheric_field, defaults to self.atmospheric_field [IN]

  • jacobian_targets (JacobianTargets, optional) – A list of targets for the Jacobian Matrix calculations. See jacobian_targets, defaults to self.jacobian_targets [IN]

  • measurement_sensor (ArrayOfSensorObsel, optional) – A list of sensor elements. See measurement_sensor, defaults to self.measurement_sensor [IN]

  • model_state_vector (Vector, optional) – A state vector of the model. See model_state_vector, defaults to self.model_state_vector [IN]

  • subsurface_field (SubsurfaceField, optional) – The sub0surface field describes the sub-surface properties. See subsurface_field, defaults to self.subsurface_field [IN]

  • surface_field (SurfaceField, optional) – The surface field describes the surface properties. See surface_field, defaults to self.surface_field [IN]

measurement_sensorAddRawSensor(self, measurement_sensor: pyarts3.arts.ArrayOfSensorObsel | None = None, frequency_grid: pyarts3.arts.AscendingGrid | None = None, pos: pyarts3.arts.Vector3 | None = None, los: pyarts3.arts.Vector2 | None = None, raw_sensor_perturbation: pyarts3.arts.StokvecSortedGriddedField1 | pyarts3.arts.StokvecSortedGriddedField2 | pyarts3.arts.StokvecSortedGriddedField3 | pyarts3.arts.StokvecSortedGriddedField4 | pyarts3.arts.StokvecSortedGriddedField5 | pyarts3.arts.StokvecSortedGriddedField6 | pyarts3.arts.SortedGriddedField1 | pyarts3.arts.SortedGriddedField2 | pyarts3.arts.SortedGriddedField3 | pyarts3.arts.SortedGriddedField4 | pyarts3.arts.SortedGriddedField5 | pyarts3.arts.SortedGriddedField6 | None = None, normalize: pyarts3.arts.Index | None = None) None

Adds sensor elements from a raw perturbation of the sensor

The perturbation is a gridded field of up to 6-dimensions. The input frequency grid determines how many elements are added to the sensor. The cartesian perturbation is added to the sensor’s position, line of sight, and frequency grid.

The order of the dimensions are:

  1. Frequency ("df")

  2. Zenith angle ("dza")

  3. Azimuth angle ("daa")

  4. Altitude ("dalt")

  5. Latitude ("dlat")

  6. Longitude ("dlon")

The quoted strings must be used as the grid names of the gridded field.

Note

It is OK to have fewer than 6 dimensions, the missing dimensions will be assumed to have a size of 1. Since the data is exhaustive, the missing dimensions will not affect the output. What does matter is that the order of the dimensions do not change from the one above.

Author: Richard Larsson

Parameters:
measurement_sensorAddSimple(self, measurement_sensor: pyarts3.arts.ArrayOfSensorObsel | None = None, frequency_grid: pyarts3.arts.AscendingGrid | None = None, pos: pyarts3.arts.Vector3 | None = None, los: pyarts3.arts.Vector2 | None = None, pol: pyarts3.arts.Stokvec | None = None) None

Adds a sensor with a dirac channel opening around the frequency grid.

All elements share position, line-of-sight, and frequency grid.

Author: Richard Larsson

Used by wrapper method

Parameters:
  • measurement_sensor (ArrayOfSensorObsel, optional) – A list of sensor elements. See measurement_sensor, defaults to self.measurement_sensor [INOUT]

  • frequency_grid (AscendingGrid, optional) – A single frequency grid. See frequency_grid, defaults to self.frequency_grid [IN]

  • pos (Vector3) – A position [alt, lat, lon]. [IN]

  • los (Vector2) – A line of sight [zenith, azimuth]. [IN]

  • pol (Stokvec, optional) – The polarization whos dot-product with the spectral radiance becomes the measurement. Defaults to 1 0 0 0 [IN]

measurement_sensorAddSimpleGaussian(self, measurement_sensor: pyarts3.arts.ArrayOfSensorObsel | None = None, frequency_grid: pyarts3.arts.AscendingGrid | None = None, std: pyarts3.arts.Numeric | None = None, pos: pyarts3.arts.Vector3 | None = None, los: pyarts3.arts.Vector2 | None = None, pol: pyarts3.arts.Stokvec | None = None) None

Adds a sensor with a Gaussian channel opening around the frequency grid.

All elements share position, line-of-sight, and frequency grid.

Note that this means you only get “half” a Gaussian channel for the outermost channels.

The I component’s distribution is normalized to 1 or 0 by itself, while the Q, U, and V components’ hypotenuse are normalized to 1 or 0 together.

Author: Richard Larsson

Used by wrapper method

Parameters:
  • measurement_sensor (ArrayOfSensorObsel, optional) – A list of sensor elements. See measurement_sensor, defaults to self.measurement_sensor [INOUT]

  • frequency_grid (AscendingGrid, optional) – A single frequency grid. See frequency_grid, defaults to self.frequency_grid [IN]

  • std (Numeric) – The standard deviations of the channels. [IN]

  • pos (Vector3) – A position [alt, lat, lon]. [IN]

  • los (Vector2) – A line of sight [zenith, azimuth]. [IN]

  • pol (Stokvec, optional) – The polarization whos dot-product with the spectral radiance becomes the measurement. Defaults to 1 0 0 0 [IN]

measurement_sensorAddVectorGaussian(self, measurement_sensor: pyarts3.arts.ArrayOfSensorObsel | None = None, frequency_grid: pyarts3.arts.AscendingGrid | None = None, std: pyarts3.arts.Vector | None = None, pos: pyarts3.arts.Vector3 | None = None, los: pyarts3.arts.Vector2 | None = None, pol: pyarts3.arts.Stokvec | None = None) None

Adds a sensor with a Gaussian channel opening around the frequency grid.

All elements share position, line-of-sight, and frequency grid.

Note that this means you only get “half” a Gaussian channel for the outermost channels.

The I component’s distribution is normalized to 1 or 0 by itself, while the Q, U, and V components’ hypotenuse are normalized to 1 or 0 together.

Author: Richard Larsson

Used by wrapper method

Parameters:
  • measurement_sensor (ArrayOfSensorObsel, optional) – A list of sensor elements. See measurement_sensor, defaults to self.measurement_sensor [INOUT]

  • frequency_grid (AscendingGrid, optional) – A single frequency grid. See frequency_grid, defaults to self.frequency_grid [IN]

  • std (Vector) – The standard deviations of the channels. [IN]

  • pos (Vector3) – A position [alt, lat, lon]. [IN]

  • los (Vector2) – A line of sight [zenith, azimuth]. [IN]

  • pol (Stokvec, optional) – The polarization whos dot-product with the spectral radiance becomes the measurement. Defaults to 1 0 0 0 [IN]

measurement_sensorFromModelState(self, measurement_sensor: pyarts3.arts.ArrayOfSensorObsel | None = None, model_state_vector: pyarts3.arts.Vector | None = None, jacobian_targets: pyarts3.arts.JacobianTargets | None = None) None

Update measurement_sensor from model_state_vector.

Author: Richard Larsson

Used by wrapper method

Parameters:
measurement_sensorInit(self, measurement_sensor: pyarts3.arts.ArrayOfSensorObsel | None = None) None

Initialize measurement_sensor to empty.

Author: Richard Larsson

Used by wrapper methods

Parameters:

measurement_sensor (ArrayOfSensorObsel, optional) – A list of sensor elements. See measurement_sensor, defaults to self.measurement_sensor [OUT]

measurement_sensorMakeExclusive(self, measurement_sensor: pyarts3.arts.ArrayOfSensorObsel | None = None, start: pyarts3.arts.Index | None = None, end: pyarts3.arts.Index | None = None) None

Make the measurement_sensor excluive.

This means that there will no overlapping frequency grids for any observation geometries.

Author: Richard Larsson

Parameters:
  • measurement_sensor (ArrayOfSensorObsel, optional) – A list of sensor elements. See measurement_sensor, defaults to self.measurement_sensor [INOUT]

  • start (Index, optional) – The start index for measurement_sensor elements to exclude, negative means first element. Defaults to -1 [IN]

  • end (Index, optional) – The end index for measurement_sensor elements to exclude, negative means all element. Defaults to -1 [IN]

measurement_sensorSimple(self, measurement_sensor: pyarts3.arts.ArrayOfSensorObsel | None = None, frequency_grid: pyarts3.arts.AscendingGrid | None = None, pos: pyarts3.arts.Vector3 | None = None, pol: pyarts3.arts.Stokvec | None = None, los: pyarts3.arts.Vector2 | None = None) None

Creates a single simple dirac-opening sensor

Wrapper calling Methods (in order):

Equivalent (mostly) Python code:

1ws = pyarts.Workspace()
2
3# ...
4
5 ws.measurement_sensorInit()
6 ws.measurement_sensorAddSimple()

Author: Richard Larsson

Parameters:
  • measurement_sensor (ArrayOfSensorObsel, optional) – A list of sensor elements. See measurement_sensor, defaults to self.measurement_sensor [OUT]

  • frequency_grid (AscendingGrid, optional) – A single frequency grid. See frequency_grid, defaults to self.frequency_grid [IN]

  • pos (Vector3) – A position [alt, lat, lon]. [IN]

  • pol (Stokvec, optional) – The polarization whos dot-product with the spectral radiance becomes the measurement. Defaults to 1 0 0 0 [IN]

  • los (Vector2) – A line of sight [zenith, azimuth]. [IN]

measurement_sensorSimpleGaussian(self, measurement_sensor: pyarts3.arts.ArrayOfSensorObsel | None = None, frequency_grid: pyarts3.arts.AscendingGrid | None = None, std: pyarts3.arts.Numeric | None = None, pos: pyarts3.arts.Vector3 | None = None, pol: pyarts3.arts.Stokvec | None = None, los: pyarts3.arts.Vector2 | None = None) None

Creates a single simple Gaussian-opening sensor

Wrapper calling Methods (in order):

Equivalent (mostly) Python code:

1ws = pyarts.Workspace()
2
3# ...
4
5 ws.measurement_sensorInit()
6 ws.measurement_sensorAddSimpleGaussian()

Author: Richard Larsson

Parameters:
  • measurement_sensor (ArrayOfSensorObsel, optional) – A list of sensor elements. See measurement_sensor, defaults to self.measurement_sensor [OUT]

  • frequency_grid (AscendingGrid, optional) – A single frequency grid. See frequency_grid, defaults to self.frequency_grid [IN]

  • std (Numeric) – The standard deviations of the channels. [IN]

  • pos (Vector3) – A position [alt, lat, lon]. [IN]

  • pol (Stokvec, optional) – The polarization whos dot-product with the spectral radiance becomes the measurement. Defaults to 1 0 0 0 [IN]

  • los (Vector2) – A line of sight [zenith, azimuth]. [IN]

measurement_sensorVectorGaussian(self, measurement_sensor: pyarts3.arts.ArrayOfSensorObsel | None = None, frequency_grid: pyarts3.arts.AscendingGrid | None = None, std: pyarts3.arts.Vector | None = None, pos: pyarts3.arts.Vector3 | None = None, pol: pyarts3.arts.Stokvec | None = None, los: pyarts3.arts.Vector2 | None = None) None

Creates a single simple Gaussian-opening sensor

Wrapper calling Methods (in order):

Equivalent (mostly) Python code:

1ws = pyarts.Workspace()
2
3# ...
4
5 ws.measurement_sensorInit()
6 ws.measurement_sensorAddVectorGaussian()

Author: Richard Larsson

Parameters:
  • measurement_sensor (ArrayOfSensorObsel, optional) – A list of sensor elements. See measurement_sensor, defaults to self.measurement_sensor [OUT]

  • frequency_grid (AscendingGrid, optional) – A single frequency grid. See frequency_grid, defaults to self.frequency_grid [IN]

  • std (Vector) – The standard deviations of the channels. [IN]

  • pos (Vector3) – A position [alt, lat, lon]. [IN]

  • pol (Stokvec, optional) – The polarization whos dot-product with the spectral radiance becomes the measurement. Defaults to 1 0 0 0 [IN]

  • los (Vector2) – A line of sight [zenith, azimuth]. [IN]

measurement_vectorConditionalAddError(self, measurement_vector: pyarts3.arts.Vector | None = None, measurement_jacobian: pyarts3.arts.Matrix | None = None, measurement_vector_error: pyarts3.arts.Vector | None = None, measurement_jacobian_error: pyarts3.arts.Matrix | None = None, do_jacobian: pyarts3.arts.Index | None = None) None

Add the measurement error to the measurement. Conditionally, also to the Jacobian.

Author: Richard Larsson

Parameters:
measurement_vectorFromOperatorPath(self, measurement_vector: pyarts3.arts.Vector | None = None, measurement_sensor: pyarts3.arts.ArrayOfSensorObsel | None = None, spectral_radiance_operator: pyarts3.arts.SpectralRadianceOperator | None = None, ray_path_observer_agenda: pyarts3.arts.Agenda | None = None) None

Sets measurement vector by looping over all sensor elements

The core calculations happens inside the spectral_radiance_operator.

Author: Richard Larsson

Parameters:
measurement_vectorFromSensor(self, measurement_vector: pyarts3.arts.Vector | None = None, measurement_jacobian: pyarts3.arts.Matrix | None = None, measurement_sensor: pyarts3.arts.ArrayOfSensorObsel | None = None, jacobian_targets: pyarts3.arts.JacobianTargets | None = None, atmospheric_field: pyarts3.arts.AtmField | None = None, surface_field: pyarts3.arts.SurfaceField | None = None, subsurface_field: pyarts3.arts.SubsurfaceField | None = None, spectral_radiance_transform_operator: pyarts3.arts.SpectralRadianceTransformOperator | None = None, spectral_radiance_observer_agenda: pyarts3.arts.Agenda | None = None) None

Sets measurement vector by looping over all sensor elements

The core calculations happens inside the spectral_radiance_observer_agenda.

Note

If you want to convert from radiance units to other units as part of your sensor setup, please set the GIN. It can be constructed from strings or from SpectralRadianceUnitType. The latter’s documentation shows the type of transformations that are applied. By default, no transformations are applied.

Author: Richard Larsson

Parameters:
measurement_vector_errorFromModelState(self, measurement_vector_error: pyarts3.arts.Vector | None = None, measurement_jacobian_error: pyarts3.arts.Matrix | None = None, measurement_sensor: pyarts3.arts.ArrayOfSensorObsel | None = None, jacobian_targets: pyarts3.arts.JacobianTargets | None = None, model_state_vector: pyarts3.arts.Vector | None = None) None

Set the error and its Jacobian from the state of the model.

Author: Richard Larsson

Parameters:
measurement_vector_error_covariance_matrixConstant(self, measurement_vector_error_covariance_matrix: pyarts3.arts.CovarianceMatrix | None = None, measurement_sensor: pyarts3.arts.ArrayOfSensorObsel | None = None, value: pyarts3.arts.Numeric | None = None) None

Sets a constant measurement vector error covariance matrix.

Author: Richard Larsson

Parameters:
measurement_vector_error_covariance_matrix_observation_systemCalc(self, measurement_vector_error_covariance_matrix_observation_system: pyarts3.arts.Matrix | None = None, measurement_gain_matrix: pyarts3.arts.Matrix | None = None, measurement_vector_error_covariance_matrix: pyarts3.arts.CovarianceMatrix | None = None) None

Calculates the covariance matrix describing the error due to uncertainties in the observation system.

The uncertainties of the observation system are described by measurement_vector_error_covariance_matrix, which must be set by the user to include the relevant contributions from the measurement and the forward model.

Prerequisite for the calculation of measurement_vector_error_covariance_matrix_observation_system is a successful OEM() computation where also the gain matrix has been computed.

Author: Simon Pfreundschuh

Parameters:
  • measurement_vector_error_covariance_matrix_observation_system (Matrix) – Covariance matrix describing the retrieval error due to uncertainties of the observation system. Defaults to create and/or use self.measurement_vector_error_covariance_matrix_observation_system : Matrix. [OUT]

  • measurement_gain_matrix (Matrix, optional) – Contribution function (or gain) matrix. See measurement_gain_matrix, defaults to self.measurement_gain_matrix [IN]

  • measurement_vector_error_covariance_matrix (CovarianceMatrix, optional) – Covariance matrix for observation uncertainties. See measurement_vector_error_covariance_matrix, defaults to self.measurement_vector_error_covariance_matrix [IN]

measurement_vector_fittedFromMeasurement(self, measurement_vector_fitted: pyarts3.arts.Vector | None = None, measurement_vector: pyarts3.arts.Vector | None = None) None

Sets the fitted measurement vector to the current measurement vector.

Author: Richard Larsson

Parameters:
model_state_covariance_matrixAddSpeciesVMR(self, model_state_covariance_matrix: pyarts3.arts.CovarianceMatrix | None = None, jacobian_targets: pyarts3.arts.JacobianTargets | None = None, species: pyarts3.arts.SpeciesEnum | None = None, matrix: pyarts3.arts.BlockMatrix | None = None, inverse: pyarts3.arts.BlockMatrix | None = None) None

Set a species model state covariance matrix element.

Author: Richard Larsson

Parameters:
  • model_state_covariance_matrix (CovarianceMatrix, optional) – Covariance matrix of a priori distribution. See model_state_covariance_matrix, defaults to self.model_state_covariance_matrix [INOUT]

  • jacobian_targets (JacobianTargets, optional) – A list of targets for the Jacobian Matrix calculations. See jacobian_targets, defaults to self.jacobian_targets [IN]

  • species (SpeciesEnum) – The species to set the covariance matrix for. [IN]

  • matrix (BlockMatrix) – The covariance diagoinal block matrix. [IN]

  • inverse (BlockMatrix, optional) – The inverse covariance diagoinal block matrix. Defaults to pyarts.arts.BlockMatrix() [IN]

model_state_covariance_matrixInit(self, model_state_covariance_matrix: pyarts3.arts.CovarianceMatrix | None = None) None

Initialises the model state covariance matrix to the identity matrix.

Author: Richard Larsson

Parameters:

model_state_covariance_matrix (CovarianceMatrix, optional) – Covariance matrix of a priori distribution. See model_state_covariance_matrix, defaults to self.model_state_covariance_matrix [OUT]

model_state_covariance_matrix_smoothing_errorCalc(self, model_state_covariance_matrix_smoothing_error: pyarts3.arts.Matrix | None = None, measurement_averaging_kernel: pyarts3.arts.Matrix | None = None, model_state_covariance_matrix: pyarts3.arts.CovarianceMatrix | None = None) None

Calculates the covariance matrix describing the error due to smoothing.

The calculation of model_state_covariance_matrix_smoothing_error also requires the averaging kernel matrix measurement_averaging_kernel to be computed after a successful OEM calculation.

Author: Simon Pfreundschuh

Parameters:
  • model_state_covariance_matrix_smoothing_error (Matrix) – Covariance matrix describing the retrieval error due to smoothing. Defaults to create and/or use self.model_state_covariance_matrix_smoothing_error : Matrix. [OUT]

  • measurement_averaging_kernel (Matrix, optional) – Averaging kernel matrix. See measurement_averaging_kernel, defaults to self.measurement_averaging_kernel [IN]

  • model_state_covariance_matrix (CovarianceMatrix, optional) – Covariance matrix of a priori distribution. See model_state_covariance_matrix, defaults to self.model_state_covariance_matrix [IN]

model_state_vectorFromAtmosphere(self, model_state_vector: pyarts3.arts.Vector | None = None, atmospheric_field: pyarts3.arts.AtmField | None = None, jacobian_targets: pyarts3.arts.JacobianTargets | None = None) None

Sets model_state_vector’s atmospheric part.

Author: Richard Larsson

Used by wrapper method

Parameters:
  • model_state_vector (Vector, optional) – A state vector of the model. See model_state_vector, defaults to self.model_state_vector [INOUT]

  • atmospheric_field (AtmField, optional) – An atmospheric field in ARTS. See atmospheric_field, defaults to self.atmospheric_field [IN]

  • jacobian_targets (JacobianTargets, optional) – A list of targets for the Jacobian Matrix calculations. See jacobian_targets, defaults to self.jacobian_targets [IN]

model_state_vectorFromBands(self, model_state_vector: pyarts3.arts.Vector | None = None, absorption_bands: pyarts3.arts.AbsorptionBands | None = None, jacobian_targets: pyarts3.arts.JacobianTargets | None = None) None

Sets model_state_vector’s absorption line part.

Author: Richard Larsson

Used by wrapper method

Parameters:
  • model_state_vector (Vector, optional) – A state vector of the model. See model_state_vector, defaults to self.model_state_vector [INOUT]

  • absorption_bands (AbsorptionBands, optional) – Bands of absorption lines for line-by-line (LBL) calculations. See absorption_bands, defaults to self.absorption_bands [IN]

  • jacobian_targets (JacobianTargets, optional) – A list of targets for the Jacobian Matrix calculations. See jacobian_targets, defaults to self.jacobian_targets [IN]

model_state_vectorFromData(self, model_state_vector: pyarts3.arts.Vector | None = None, absorption_bands: pyarts3.arts.AbsorptionBands | None = None, atmospheric_field: pyarts3.arts.AtmField | None = None, jacobian_targets: pyarts3.arts.JacobianTargets | None = None, measurement_sensor: pyarts3.arts.ArrayOfSensorObsel | None = None, subsurface_field: pyarts3.arts.SubsurfaceField | None = None, surface_field: pyarts3.arts.SurfaceField | None = None) None

Get model_state_vector from available data

Wrapper calling Methods (in order):

Equivalent (mostly) Python code:

 1ws = pyarts.Workspace()
 2
 3# ...
 4
 5 ws.model_state_vectorInit()
 6 ws.model_state_vectorFromAtmosphere()
 7 ws.model_state_vectorFromSurface()
 8 ws.model_state_vectorFromSubsurface()
 9 ws.model_state_vectorFromBands()
10 ws.model_state_vectorFromSensor()

Author: Richard Larsson

Used by wrapper method

Parameters:
  • model_state_vector (Vector, optional) – A state vector of the model. See model_state_vector, defaults to self.model_state_vector [OUT]

  • absorption_bands (AbsorptionBands, optional) – Bands of absorption lines for line-by-line (LBL) calculations. See absorption_bands, defaults to self.absorption_bands [IN]

  • atmospheric_field (AtmField, optional) – An atmospheric field in ARTS. See atmospheric_field, defaults to self.atmospheric_field [IN]

  • jacobian_targets (JacobianTargets, optional) – A list of targets for the Jacobian Matrix calculations. See jacobian_targets, defaults to self.jacobian_targets [IN]

  • measurement_sensor (ArrayOfSensorObsel, optional) – A list of sensor elements. See measurement_sensor, defaults to self.measurement_sensor [IN]

  • subsurface_field (SubsurfaceField, optional) – The sub0surface field describes the sub-surface properties. See subsurface_field, defaults to self.subsurface_field [IN]

  • surface_field (SurfaceField, optional) – The surface field describes the surface properties. See surface_field, defaults to self.surface_field [IN]

model_state_vectorFromSensor(self, model_state_vector: pyarts3.arts.Vector | None = None, measurement_sensor: pyarts3.arts.ArrayOfSensorObsel | None = None, jacobian_targets: pyarts3.arts.JacobianTargets | None = None) None

Sets model_state_vector’s sensor part.

Author: Richard Larsson

Used by wrapper method

Parameters:
model_state_vectorFromSubsurface(self, model_state_vector: pyarts3.arts.Vector | None = None, subsurface_field: pyarts3.arts.SubsurfaceField | None = None, jacobian_targets: pyarts3.arts.JacobianTargets | None = None) None

Sets model_state_vector’s subsurface part.

Author: Richard Larsson

Used by wrapper method

Parameters:
  • model_state_vector (Vector, optional) – A state vector of the model. See model_state_vector, defaults to self.model_state_vector [INOUT]

  • subsurface_field (SubsurfaceField, optional) – The sub0surface field describes the sub-surface properties. See subsurface_field, defaults to self.subsurface_field [IN]

  • jacobian_targets (JacobianTargets, optional) – A list of targets for the Jacobian Matrix calculations. See jacobian_targets, defaults to self.jacobian_targets [IN]

model_state_vectorFromSurface(self, model_state_vector: pyarts3.arts.Vector | None = None, surface_field: pyarts3.arts.SurfaceField | None = None, jacobian_targets: pyarts3.arts.JacobianTargets | None = None) None

Sets model_state_vector’s surface part.

Author: Richard Larsson

Used by wrapper method

Parameters:
  • model_state_vector (Vector, optional) – A state vector of the model. See model_state_vector, defaults to self.model_state_vector [INOUT]

  • surface_field (SurfaceField, optional) – The surface field describes the surface properties. See surface_field, defaults to self.surface_field [IN]

  • jacobian_targets (JacobianTargets, optional) – A list of targets for the Jacobian Matrix calculations. See jacobian_targets, defaults to self.jacobian_targets [IN]

model_state_vectorInit(self, model_state_vector: pyarts3.arts.Vector | None = None, jacobian_targets: pyarts3.arts.JacobianTargets | None = None) None

Sets model_state_vector to the size jacobian_targets demand.

Author: Richard Larsson

Used by wrapper method

Parameters:
  • model_state_vector (Vector, optional) – A state vector of the model. See model_state_vector, defaults to self.model_state_vector [OUT]

  • jacobian_targets (JacobianTargets, optional) – A list of targets for the Jacobian Matrix calculations. See jacobian_targets, defaults to self.jacobian_targets [IN]

model_state_vector_aprioriFromData(self, model_state_vector_apriori: pyarts3.arts.Vector | None = None, absorption_bands: pyarts3.arts.AbsorptionBands | None = None, atmospheric_field: pyarts3.arts.AtmField | None = None, jacobian_targets: pyarts3.arts.JacobianTargets | None = None, measurement_sensor: pyarts3.arts.ArrayOfSensorObsel | None = None, subsurface_field: pyarts3.arts.SubsurfaceField | None = None, surface_field: pyarts3.arts.SurfaceField | None = None) None

Get model_state_vector_apriori from available data

Wrapper calling Methods (in order):

Equivalent (mostly) Python code:

1ws = pyarts.Workspace()
2
3# ...
4
5 ws.model_state_vectorFromData()
6 ws.model_state_vector_aprioriFromState()

Author: Richard Larsson

Parameters:
  • model_state_vector_apriori (Vector, optional) – An apriori state vector of the model. See model_state_vector_apriori, defaults to self.model_state_vector_apriori [OUT]

  • absorption_bands (AbsorptionBands, optional) – Bands of absorption lines for line-by-line (LBL) calculations. See absorption_bands, defaults to self.absorption_bands [IN]

  • atmospheric_field (AtmField, optional) – An atmospheric field in ARTS. See atmospheric_field, defaults to self.atmospheric_field [IN]

  • jacobian_targets (JacobianTargets, optional) – A list of targets for the Jacobian Matrix calculations. See jacobian_targets, defaults to self.jacobian_targets [IN]

  • measurement_sensor (ArrayOfSensorObsel, optional) – A list of sensor elements. See measurement_sensor, defaults to self.measurement_sensor [IN]

  • subsurface_field (SubsurfaceField, optional) – The sub0surface field describes the sub-surface properties. See subsurface_field, defaults to self.subsurface_field [IN]

  • surface_field (SurfaceField, optional) – The surface field describes the surface properties. See surface_field, defaults to self.surface_field [IN]

model_state_vector_aprioriFromState(self, model_state_vector_apriori: pyarts3.arts.Vector | None = None, model_state_vector: pyarts3.arts.Vector | None = None) None

Sets the a priori state of the model state vector to the current state.

Author: Richard Larsson

Used by wrapper method

Parameters:
  • model_state_vector_apriori (Vector, optional) – An apriori state vector of the model. See model_state_vector_apriori, defaults to self.model_state_vector_apriori [OUT]

  • model_state_vector (Vector, optional) – A state vector of the model. See model_state_vector, defaults to self.model_state_vector [IN]

nlte_line_flux_profileIntegrate(self, nlte_line_flux_profile: pyarts3.arts.QuantumIdentifierVectorMap | None = None, spectral_flux_profile: pyarts3.arts.Matrix | None = None, absorption_bands: pyarts3.arts.AbsorptionBands | None = None, atmospheric_profile: pyarts3.arts.ArrayOfAtmPoint | None = None, frequency_grid: pyarts3.arts.AscendingGrid | None = None) None

Integrate the spectral flux profile to get the line non-LTE flux

Author: Richard Larsson

Parameters:
propagation_matrixAddCIA(self, propagation_matrix: pyarts3.arts.PropmatVector | None = None, propagation_matrix_jacobian: pyarts3.arts.PropmatMatrix | None = None, select_species: pyarts3.arts.SpeciesEnum | None = None, jacobian_targets: pyarts3.arts.JacobianTargets | None = None, frequency_grid: pyarts3.arts.AscendingGrid | None = None, atmospheric_point: pyarts3.arts.AtmPoint | None = None, absorption_cia_data: pyarts3.arts.ArrayOfCIARecord | None = None, T_extrapolfac: pyarts3.arts.Numeric | None = None, ignore_errors: pyarts3.arts.Index | None = None) None

Add absorption coefficients for HITRAN collision induced absorption (CIA).

This interpolates the cross sections from absorption_cia_data. If too few temperature grid-points are available, its polynomial order of interpolation decreases to the maximum allowed. Otherwise, both frequency and temperature are interpolated using third order polynomials.

Given that the interpolation is \(\vec{x}_{ij} = f\left(T, \vec{f}\right)\), where the atmospheric_point temperature is \(T\) and \(f\) is the frequency_grid, \(i\) is an index into the absorption_cia_data and \(j\) is an index into the underlying CIARecord data structure, the absorption coefficient from CIA is given by

\[vec{\alpha}_\mathbf{CIA} = \sum_i n_{i,0} n_{i,1} \sum_j vec{x}_{ij}\]

where \(n_{i,0}\) and \(n_{i,1}\) are number densities of the two species involved in the CIA.

The input T_extrapolfac sets a limit on the interpolation along the temperature grid of the data. If the temperature grid is \([T_0, T_1, \cdots, T_{n-1}, T_n]\), then this method throws an error if

\[T < T_0 - \Delta T_e \left(T_1 - T_0\right)\]

or

\[T > T_n + \Delta T_e \left(T_n - T_{n-1}\right)\]

where \(\Delta T_e\) is the extrapolation factor given by T_extrapolfac. If this happens to you and you believe you can use the computations anyways, set T_extrapolfac to a very large or infinite value.

The frequnecy grid interpolation is limited to within the range of the available data. Any point in frequency_grid outside this range will simply be ignored. The frequency interpolation can thus not fail.

Note

ignore_errors can be set to 1 to suppress runtime errors, but any error will result in NaN values in the output. This is useful if you want to debug your results, but not if you want to use them.

Author: Stefan Buehler, Oliver Lemke

Parameters:
  • propagation_matrix (PropmatVector, optional) – This contains the fully polarized propagation matrix for the current path point. See propagation_matrix, defaults to self.propagation_matrix [INOUT]

  • propagation_matrix_jacobian (PropmatMatrix, optional) – Partial derivative of the propagation_matrix with regards to jacobian_targets. See propagation_matrix_jacobian, defaults to self.propagation_matrix_jacobian [INOUT]

  • select_species (SpeciesEnum, optional) – Species selection. See select_species, defaults to self.select_species [IN]

  • jacobian_targets (JacobianTargets, optional) – A list of targets for the Jacobian Matrix calculations. See jacobian_targets, defaults to self.jacobian_targets [IN]

  • frequency_grid (AscendingGrid, optional) – A single frequency grid. See frequency_grid, defaults to self.frequency_grid [IN]

  • atmospheric_point (AtmPoint, optional) – An atmospheric point in ARTS. See atmospheric_point, defaults to self.atmospheric_point [IN]

  • absorption_cia_data (ArrayOfCIARecord, optional) – HITRAN Collision-Induced Absorption (CIA) Data. See absorption_cia_data, defaults to self.absorption_cia_data [IN]

  • T_extrapolfac (Numeric, optional) – Temperature extrapolation factor (relative to grid spacing). \(\Delta T_e\) in text above. Defaults to 0.5 [IN]

  • ignore_errors (Index, optional) – Set to 1 to suppress runtime errors (and return NAN values instead). Defaults to 0 [IN]

propagation_matrixAddFaraday(self, propagation_matrix: pyarts3.arts.PropmatVector | None = None, propagation_matrix_jacobian: pyarts3.arts.PropmatMatrix | None = None, frequency_grid: pyarts3.arts.AscendingGrid | None = None, select_species: pyarts3.arts.SpeciesEnum | None = None, jacobian_targets: pyarts3.arts.JacobianTargets | None = None, atmospheric_point: pyarts3.arts.AtmPoint | None = None, ray_path_point: pyarts3.arts.PropagationPathPoint | None = None) None

Calculates absorption matrix describing Faraday rotation.

Faraday rotation is a change of polarization state of an electromagnetic wave propagating through charged matter by interaction with a magnetic field. Hence, this method requires that the magnetic field is non-zero and that the electron density is held by atmospheric_point (SpeciesEnum : free_electrons).

Faraday rotation affects Stokes parameters 2 and 3 (but not intensity!).

Like all propagation_matrix-modifying methods, the method is additive, i.e., does not overwrite the propagation matrix propagation_matrix, but adds further contributions.

Author: Patrick Eriksson

Parameters:
propagation_matrixAddLines(self, propagation_matrix: pyarts3.arts.PropmatVector | None = None, propagation_matrix_source_vector_nonlte: pyarts3.arts.StokvecVector | None = None, propagation_matrix_jacobian: pyarts3.arts.PropmatMatrix | None = None, propagation_matrix_source_vector_nonlte_jacobian: pyarts3.arts.StokvecMatrix | None = None, frequency_grid: pyarts3.arts.AscendingGrid | None = None, jacobian_targets: pyarts3.arts.JacobianTargets | None = None, select_species: pyarts3.arts.SpeciesEnum | None = None, absorption_bands: pyarts3.arts.AbsorptionBands | None = None, ecs_data: pyarts3.arts.LinemixingEcsData | None = None, atmospheric_point: pyarts3.arts.AtmPoint | None = None, ray_path_point: pyarts3.arts.PropagationPathPoint | None = None, no_negative_absorption: pyarts3.arts.Index | None = None) None

Line-by-line calculations.

Author: Richard Larsson

Parameters:
propagation_matrixAddLookup(self, propagation_matrix: pyarts3.arts.PropmatVector | None = None, propagation_matrix_jacobian: pyarts3.arts.PropmatMatrix | None = None, frequency_grid: pyarts3.arts.AscendingGrid | None = None, jacobian_targets: pyarts3.arts.JacobianTargets | None = None, select_species: pyarts3.arts.SpeciesEnum | None = None, absorption_lookup_table: pyarts3.arts.AbsorptionLookupTables | None = None, atmospheric_point: pyarts3.arts.AtmPoint | None = None, no_negative_absorption: pyarts3.arts.Index | None = None, p_interp_order: pyarts3.arts.Index | None = None, t_interp_order: pyarts3.arts.Index | None = None, water_interp_order: pyarts3.arts.Index | None = None, f_interp_order: pyarts3.arts.Index | None = None, extpolfac: pyarts3.arts.Numeric | None = None) None

Lookup calculations.

Author: Richard Larsson

Parameters:
  • propagation_matrix (PropmatVector, optional) – This contains the fully polarized propagation matrix for the current path point. See propagation_matrix, defaults to self.propagation_matrix [INOUT]

  • propagation_matrix_jacobian (PropmatMatrix, optional) – Partial derivative of the propagation_matrix with regards to jacobian_targets. See propagation_matrix_jacobian, defaults to self.propagation_matrix_jacobian [INOUT]

  • frequency_grid (AscendingGrid, optional) – A single frequency grid. See frequency_grid, defaults to self.frequency_grid [IN]

  • jacobian_targets (JacobianTargets, optional) – A list of targets for the Jacobian Matrix calculations. See jacobian_targets, defaults to self.jacobian_targets [IN]

  • select_species (SpeciesEnum, optional) – Species selection. See select_species, defaults to self.select_species [IN]

  • absorption_lookup_table (AbsorptionLookupTables, optional) – Absorption lookup table for scalar gas absorption coefficients. See absorption_lookup_table, defaults to self.absorption_lookup_table [IN]

  • atmospheric_point (AtmPoint, optional) – An atmospheric point in ARTS. See atmospheric_point, defaults to self.atmospheric_point [IN]

  • no_negative_absorption (Index, optional) – Turn off to allow individual absorbers to have negative absorption. Defaults to 1 [IN]

  • p_interp_order (Index, optional) – Interpolation order for pressure. Defaults to 7 [IN]

  • t_interp_order (Index, optional) – Interpolation order for temperature. Defaults to 7 [IN]

  • water_interp_order (Index, optional) – Interpolation order for water vapor. Defaults to 7 [IN]

  • f_interp_order (Index, optional) – Interpolation order for frequency. Defaults to 7 [IN]

  • extpolfac (Numeric, optional) – Extrapolation factor. Defaults to 0.5 [IN]

propagation_matrixAddPredefined(self, propagation_matrix: pyarts3.arts.PropmatVector | None = None, propagation_matrix_jacobian: pyarts3.arts.PropmatMatrix | None = None, absorption_predefined_model_data: pyarts3.arts.PredefinedModelData | None = None, select_species: pyarts3.arts.SpeciesEnum | None = None, jacobian_targets: pyarts3.arts.JacobianTargets | None = None, frequency_grid: pyarts3.arts.AscendingGrid | None = None, atmospheric_point: pyarts3.arts.AtmPoint | None = None) None

Adds all of the predefined models in absorption_species to the propagation_matrix

Only supports temperature and wind speed derivatives

Available models:

  • O2-MPM2020: 60 GHz and 118 GHz lines only (no continua, no higher Hz line centers)

    Dmitriy S. Makarov, Mikhail Yu. Tretyakov, Philip W. Rosenkranz, JQSRT 243, 2020, Revision of the 60-GHz atmospheric oxygen absorption band models for practical use, https://doi.org/10.1016/j.jqsrt.2019.106798

  • H2O-ForeignContCKDMT350: Foreign continua. Expects H2O line center cutoff at 25 cm-1

    CKD_MTv3.50 H2O foreign continuum from the FORTRAN77 code written by Atmospheric and Environmental Research Inc. (AER), Radiation and Climate Group 131 Hartwell Avenue Lexington, MA 02421, USA http://www.rtweb.aer.com/continuum_frame.html

  • H2O-SelfContCKDMT350: Self continua. Expects H2O line center cutoff at 25 cm-1

    CKD_MTv3.50 H2O self continuum from the FORTRAN77 code written by Atmospheric and Environmental Research Inc. (AER), Radiation and Climate Group 131 Hartwell Avenue Lexington, MA 02421, USA http://www.rtweb.aer.com/continuum_frame.html

  • H2O-ForeignContCKDMT320: Foreign continua. Expects H2O line center cutoff at 25 cm-1

    CKD_MTv3.20 H2O foreign continuum from the FORTRAN77 code written by Atmospheric and Environmental Research Inc. (AER), Radiation and Climate Group 131 Hartwell Avenue Lexington, MA 02421, USA http://www.rtweb.aer.com/continuum_frame.html

  • H2O-SelfContCKDMT320: Self continua. Expects H2O line center cutoff at 25 cm-1

    CKD_MTv3.20 H2O self continuum from the FORTRAN77 code written by Atmospheric and Environmental Research Inc. (AER), Radiation and Climate Group 131 Hartwell Avenue Lexington, MA 02421, USA http://www.rtweb.aer.com/continuum_frame.html

  • H2O-SelfContCKDMT400: Self continuum for water. General reference: Mlawer et al. (2012), doi:10.1098/rsta.2011.0295

    Our code is reimplemented based on original Fortran90 code that is/was/will-be-made available via hitran.org

    Note that this model comes with the copyright statement [1].

    Note also that this model requires absorption_predefined_model_data to contain relevant data set either using absorption_predefined_model_dataAddWaterMTCKD400() or via some file reading routine.

  • H2O-ForeignContCKDMT400: Foreign continuum for water. General reference: Mlawer et al. (2012), doi:10.1098/rsta.2011.0295

    Our code is reimplemented based on original Fortran90 code that is/was/will-be-made available via hitran.org

    Note that this model comes with the copyright statement [1].

    Note also that this model requires absorption_predefined_model_data to contain relevant data set either using absorption_predefined_model_dataAddWaterMTCKD400() or via some file reading routine.

  • H2O-ForeignContStandardType: Water microwave continua

    P. W. Rosenkranz., Radio Science, 33(4), 919, 1998 and Radio Science, Vol. 34(4), 1025, 1999.

  • H2O-SelfContStandardType: Water microwave continua

    P. W. Rosenkranz., Radio Science, 33(4), 919, 1998 and Radio Science, Vol. 34(4), 1025, 1999.

  • H2O-MPM89: Microwave water absorption model

      1. Liebe, Int. J. Infrared and Millimeter Waves, 10(6), 1989, 631.

  • H2O-PWR98: Microwave water absorption model

    P. W. Rosenkranz., Radio Science, 33(4), 919, 1998 and Radio Science, Vol. 34(4), 1025, 1999.

  • H2O-PWR2021: Microwave water absorption model developed by P.W. Rosenkranz.

    Our code is reimplemented based on the Fortran code available at http://cetemps.aquila.infn.it/mwrnet/lblmrt_ns.html

  • H2O-PWR2022: Microwave water absorption model developed by P.W. Rosenkranz.

    Our code is reimplemented based on the Fortran code available at http://cetemps.aquila.infn.it/mwrnet/lblmrt_ns.html

  • CO2-CKDMT252: MT CKD absorption for CO2

    This absorption model is taken from the FORTRAN77 code of CKD_MT version 2.50 written by<br> Atmospheric and Environmental Research Inc. (AER),<br> Radiation and Climate Group<br> 131 Hartwell Avenue<br> Lexington, MA 02421, USA<br> http://www.rtweb.aer.com/continuum_frame.html

  • O2-CIAfunCKDMT100: CIA for oxygen from MT CKD

    F. Thibault, V. Menoux, R. Le Doucen, L. Rosenman, J.-M. Hartmann, Ch. Boulet,<br> Infrared collision-induced absorption by O2 near 6.4 microns for atmospheric applications: measurements and emprirical modeling,<br> Appl. Optics, 35, 5911-5917, (1996).

    This absorption model is taken from the FORTRAN77 code of CKD_MT version 1.00 written by<br> Atmospheric and Environmental Research Inc. (AER),<br> Radiation and Climate Group<br> 131 Hartwell Avenue<br> Lexington, MA 02421, USA<br> http://www.rtweb.aer.com/continuum_frame.html

  • O2-MPM89: Oxygen microwave absorption model

    Reference: H. J. Liebe and G. A. Hufford and M. G. Cotton,<br> <i>Propagation modeling of moist air and suspended water/ice particles at frequencies below 1000 GHz</i>,<br> AGARD 52nd Specialists Meeting of the Electromagnetic Wave Propagation Panel,<br> Palma de Mallorca, Spain, 1993, May 17-21

  • O2-PWR98: Oxygen microwave absorption model

    P.W. Rosenkranz, CHAP. 2 and appendix, in ATMOSPHERIC REMOTE SENSING BY MICROWAVE RADIOMETRY (M.A. Janssen, ed., 1993). H.J. Liebe et al, JQSRT V.48, PP.629-643 (1992). M.J. Schwartz, Ph.D. thesis, M.I.T. (1997). SUBMILLIMETER LINE INTENSITIES FROM HITRAN96.

  • O2-PWR2021: Oxygen microwave absorption model developed by P.W. Rosenkranz.

    Our code is reimplemented based on the Fortran code available at http://cetemps.aquila.infn.it/mwrnet/lblmrt_ns.html

  • O2-PWR2022: Oxygen microwave absorption model developed by P.W. Rosenkranz.

    Our code is reimplemented based on the Fortran code available at http://cetemps.aquila.infn.it/mwrnet/lblmrt_ns.html

  • O2-SelfContStandardType: Microwave continua term

    Reference: P. W. Rosenkranz, Chapter 2, in M. A. Janssen, <br> <I>Atmospheric Remote Sensing by Microwave Radiometry</i>,<br> John Wiley & Sons, Inc., 1993.<br> <br> Reference: H. J. Liebe and G. A. Hufford and M. G. Cotton,<br> <i>Propagation modeling of moist air and suspended water/ice particles at frequencies below 1000 GHz</i>,<br> AGARD 52nd Specialists Meeting of the Electromagnetic Wave Propagation Panel,<br> Palma de Mallorca, Spain, 1993, May 17-21

  • O2-TRE05: Oxygen microwave absorption model

    References: H. J. Liebe and G. A. Hufford and M. G. Cotton,<br> <i>Propagation modeling of moist air and suspended water/ice particles at frequencies below 1000 GHz</i>,<br> AGARD 52nd Specialists Meeting of the Electromagnetic Wave Propagation Panel,<br> Palma de Mallorca, Spain, 1993, May 17-21

    M.Yu. Tretyakov, M.A. Koshelev, V.V. Dorovskikh, D.S. Makarov, P.W. Rosenkranz; 60-GHz oxygen band: precise broadening and central frequencies of fine-structure lines, absolute absorption profile at atmospheric pressure, and revision of mixing coefficients doi:10.1016/j.jms.2004.11.011

  • O2-v0v0CKDMT100: MT CKD

    CKD_MT 1.00 implementation of oxygen collision induced fundamental model of O2 continuum formulated by Mate et al. over the spectral region 7550-8486 cm-1: B. Mate, C. Lugez, G.T. Fraser, W.J. Lafferty, “Absolute Intensities for the O2 1.27 micron continuum absorption”, J. Geophys. Res., 104, 30,585-30,590, 1999.

    Also, refer to the paper “Observed Atmospheric Collision Induced Absorption in Near Infrared Oxygen Bands”, Mlawer, Clough, Brown, Stephen, Landry, Goldman, & Murcray, Journal of Geophysical Research (1997).

    This absorption model is taken from the FORTRAN77 code of CKD_MT version 1.00 written by<br> Atmospheric and Environmental Research Inc. (AER),<br> Radiation and Climate Group<br> 131 Hartwell Avenue<br> Lexington, MA 02421, USA<br> http://www.rtweb.aer.com/continuum_frame.html<br> <br>

  • O2-v1v0CKDMT100: MT CKD

    Mlawer, Clough, Brown, Stephen, Landry, Goldman, Murcray,<br> Observed Atmospheric Collision Induced Absorption in Near Infrared Oxygen Bands,<br> J. Geophys. Res., 103, D4, 3859-3863, 1998.

    This absorption model is taken from the FORTRAN77 code of CKD_MT version 1.00 written by<br> Atmospheric and Environmental Research Inc. (AER),<br> Radiation and Climate Group<br> 131 Hartwell Avenue<br> Lexington, MA 02421, USA<br> http://www.rtweb.aer.com/continuum_frame.html<br>

  • O2-visCKDMT252: MT CKD

    O2 continuum formulated by Greenblatt et al. over the spectral region 8797-29870 cm-1: “Absorption Coefficients of Oxygen Between 330 and 1140 nm, G.D. Green blatt, J.J. Orlando, J.B. Burkholder, and A.R. Ravishabkara, J. Geophys. Res., 95, 18577-18582, 1990.

    This absorption model is taken from the FORTRAN77 code of CKD_MT version 2.50 written by<br> Atmospheric and Environmental Research Inc. (AER),<br> Radiation and Climate Group<br> 131 Hartwell Avenue<br> Lexington, MA 02421, USA<br> http://www.rtweb.aer.com/continuum_frame.html<br>

  • N2-CIAfunCKDMT252: MT CKD

    Lafferty, W.J., A.M. Solodov,A. Weber, W.B. Olson and J._M. Hartmann,<br> Infrared collision-induced absorption by N2 near 4.3 microns for atmospheric applications: Measurements and emprirical modeling, <br> Appl. Optics, 35, 5911-5917, (1996)

    This absorption model is taken from the FORTRAN77 code of CKD_MT version 1.00 written by<br> Atmospheric and Environmental Research Inc. (AER),<br> Radiation and Climate Group<br> 131 Hartwell Avenue<br> Lexington, MA 02421, USA<br> http://www.rtweb.aer.com/continuum_frame.html

  • N2-CIArotCKDMT252: MT CKD

    Borysow, A, and L. Frommhold,<br> Collision-induced rototranslational absorption spectra of N2-N2 pairs for temperatures from 50 to 300 K,<br> The Astrophysical Journal, 311, 1043-1057, 1986.

    This absorption model is taken from the FORTRAN77 code of CKD_MT version 1.00 written by<br> Atmospheric and Environmental Research Inc. (AER),<br> Radiation and Climate Group<br> 131 Hartwell Avenue<br> Lexington, MA 02421, USA<br> http://www.rtweb.aer.com/continuum_frame.html

  • N2-SelfContStandardType: Microwave nitrogen absorption continua

    Reference: P. W. Rosenkranz, Chapter 2, in M. A. Janssen, <br> <I>Atmospheric Remote Sensing by Microwave Radiometry</i>,<br> John Wiley & Sons, Inc., 1993.

  • N2-SelfContMPM93: Microwave nitrogen absorption continua from MPM93 model

    Reference: H. J. Liebe and G. A. Hufford and M. G. Cotton,<br> <i>Propagation modeling of moist air and suspended water/ice particles at frequencies below 1000 GHz</i>,<br> AGARD 52nd Specialists Meeting of the Electromagnetic Wave Propagation Panel,<br> Palma de Mallorca, Spain, 1993, May 17-21

  • N2-SelfContPWR2021: Microwave nitrogen absorption continua developed by P.W. Rosenkranz.

    Note that this also includes O2-N2 and O2-O2 collision-induced absorption and is only applicable to Earth

    Our code is reimplemented based on the Fortran code available at http://cetemps.aquila.infn.it/mwrnet/lblmrt_ns.html

  • liquidcloud-ELL07: Water droplet absorption

    W. J. Ellison, <br> <i>Permittivity of Pure Water, at Standard Atmospheric Pressure, over the Frequency Range 0-25 THz and Temperature Range 0-100C</i>,<br> J. Phys. Chem. Ref. Data, Vol. 36, No. 1, 2007

Author: Richard Larsson

Parameters:
propagation_matrixAddXsecFit(self, propagation_matrix: pyarts3.arts.PropmatVector | None = None, propagation_matrix_jacobian: pyarts3.arts.PropmatMatrix | None = None, select_species: pyarts3.arts.SpeciesEnum | None = None, jacobian_targets: pyarts3.arts.JacobianTargets | None = None, frequency_grid: pyarts3.arts.AscendingGrid | None = None, atmospheric_point: pyarts3.arts.AtmPoint | None = None, absorption_xsec_fit_data: pyarts3.arts.ArrayOfXsecRecord | None = None, force_p: pyarts3.arts.Numeric | None = None, force_t: pyarts3.arts.Numeric | None = None) None

Calculate absorption cross sections per tag group for HITRAN xsec species.

This broadens the cross section data from absorption_xsec_fit_data and interpolates it onto the current frequency_grid.

Model data needs to be read in with absorption_xsec_fit_dataReadSpeciesSplitCatalog() before calling this method.

Author: Oliver Lemke

Parameters:
  • propagation_matrix (PropmatVector, optional) – This contains the fully polarized propagation matrix for the current path point. See propagation_matrix, defaults to self.propagation_matrix [INOUT]

  • propagation_matrix_jacobian (PropmatMatrix, optional) – Partial derivative of the propagation_matrix with regards to jacobian_targets. See propagation_matrix_jacobian, defaults to self.propagation_matrix_jacobian [INOUT]

  • select_species (SpeciesEnum, optional) – Species selection. See select_species, defaults to self.select_species [IN]

  • jacobian_targets (JacobianTargets, optional) – A list of targets for the Jacobian Matrix calculations. See jacobian_targets, defaults to self.jacobian_targets [IN]

  • frequency_grid (AscendingGrid, optional) – A single frequency grid. See frequency_grid, defaults to self.frequency_grid [IN]

  • atmospheric_point (AtmPoint, optional) – An atmospheric point in ARTS. See atmospheric_point, defaults to self.atmospheric_point [IN]

  • absorption_xsec_fit_data (ArrayOfXsecRecord, optional) – Fitting model coefficients for cross section species. See absorption_xsec_fit_data, defaults to self.absorption_xsec_fit_data [IN]

  • force_p (Numeric, optional) – Positive value forces constant pressure [Pa]. Defaults to -1 [IN]

  • force_t (Numeric, optional) – Positive value forces constant temperature [K]. Defaults to -1 [IN]

propagation_matrixInit(self, propagation_matrix: pyarts3.arts.PropmatVector | None = None, propagation_matrix_source_vector_nonlte: pyarts3.arts.StokvecVector | None = None, propagation_matrix_jacobian: pyarts3.arts.PropmatMatrix | None = None, propagation_matrix_source_vector_nonlte_jacobian: pyarts3.arts.StokvecMatrix | None = None, jacobian_targets: pyarts3.arts.JacobianTargets | None = None, frequency_grid: pyarts3.arts.AscendingGrid | None = None) None

Initialize propagation_matrix, propagation_matrix_source_vector_nonlte, and their derivatives to zeroes.

This method must be used inside propagation_matrix_agenda and then be called first.

Authors: Oliver Lemke, Richard Larsson

Parameters:
propagation_matrix_agendaAuto(self, propagation_matrix_agenda: pyarts3.arts.Agenda | None = None, absorption_species: pyarts3.arts.ArrayOfArrayOfSpeciesTag | None = None, absorption_bands: pyarts3.arts.AbsorptionBands | None = None, use_absorption_lookup_table: pyarts3.arts.Index | None = None, T_extrapolfac: pyarts3.arts.Numeric | None = None, ignore_errors: pyarts3.arts.Index | None = None, no_negative_absorption: pyarts3.arts.Index | None = None, force_p: pyarts3.arts.Numeric | None = None, force_t: pyarts3.arts.Numeric | None = None, p_interp_order: pyarts3.arts.Index | None = None, t_interp_order: pyarts3.arts.Index | None = None, water_interp_order: pyarts3.arts.Index | None = None, f_interp_order: pyarts3.arts.Index | None = None, extpolfac: pyarts3.arts.Numeric | None = None) None

Sets the propagation_matrix_agenda automatically from absorption data and species tag meta information.

The following methods are considered for addition to the agenda:

If use_absorption_lookup_table evaluates to true, lookup table calculations, via propagation_matrixAddLookup(), are used instead of propagation_matrixAddLines().

Note that the signature of this method changes depending on the input methods. This is important because several generic input parameters are used in the methods. Please see the individual methods for more information.

Author: Richard Larsson

Parameters:
propagation_matrix_agendaExecute(self, propagation_matrix: pyarts3.arts.PropmatVector | None = None, propagation_matrix_source_vector_nonlte: pyarts3.arts.StokvecVector | None = None, propagation_matrix_jacobian: pyarts3.arts.PropmatMatrix | None = None, propagation_matrix_source_vector_nonlte_jacobian: pyarts3.arts.StokvecMatrix | None = None, frequency_grid: pyarts3.arts.AscendingGrid | None = None, frequency_grid_wind_shift_jacobian: pyarts3.arts.Vector3 | None = None, jacobian_targets: pyarts3.arts.JacobianTargets | None = None, select_species: pyarts3.arts.SpeciesEnum | None = None, ray_path_point: pyarts3.arts.PropagationPathPoint | None = None, atmospheric_point: pyarts3.arts.AtmPoint | None = None, propagation_matrix_agenda: pyarts3.arts.Agenda | None = None) None

Executes propagation_matrix_agenda, see it for more details

Author: Automatically Generated

Parameters:
propagation_matrix_agendaExecuteOperator(self, propagation_matrix: pyarts3.arts.PropmatVector | None = None, propagation_matrix_source_vector_nonlte: pyarts3.arts.StokvecVector | None = None, propagation_matrix_jacobian: pyarts3.arts.PropmatMatrix | None = None, propagation_matrix_source_vector_nonlte_jacobian: pyarts3.arts.StokvecMatrix | None = None, frequency_grid: pyarts3.arts.AscendingGrid | None = None, frequency_grid_wind_shift_jacobian: pyarts3.arts.Vector3 | None = None, jacobian_targets: pyarts3.arts.JacobianTargets | None = None, select_species: pyarts3.arts.SpeciesEnum | None = None, ray_path_point: pyarts3.arts.PropagationPathPoint | None = None, atmospheric_point: pyarts3.arts.AtmPoint | None = None, propagation_matrix_agenda_operator: pyarts3.arts.propagation_matrix_agendaOperator | None = None) None

Executes an operator emulating propagation_matrix_agenda, see it, and also propagation_matrix_agendaOperator, for more details

Author: Automatically Generated

Parameters:
propagation_matrix_agendaSet(self, propagation_matrix_agenda: pyarts3.arts.Agenda | None = None, option: pyarts3.arts.String | None = None) None

Set propagation_matrix_agenda to a specific predefined option

Author: Automatically Generated

Parameters:
  • propagation_matrix_agenda (Agenda, optional) – Compute the propagation matrix, the non-LTE source vector, and their derivatives. See propagation_matrix_agenda, defaults to self.propagation_matrix_agenda [OUT]

  • option (String) – Choice of generated agenda. [IN]

Valid options

These are the valid options for the propagation_matrix_agendaSet method. The listed method calls describe the order of the agenda calls for each option.


propagation_matrix_agendaSet(option="Empty")

propagation_matrix_agendaSetOperator(self, propagation_matrix_agenda: pyarts3.arts.Agenda | None = None, f: pyarts3.arts.propagation_matrix_agendaOperator | None = None) None

Set propagation_matrix_agenda to exclusively use provided external operator. See propagation_matrix_agendaOperator for more details.

Author: Automatically Generated

Parameters:
propagation_matrix_jacobianWindFix(self, propagation_matrix_jacobian: pyarts3.arts.PropmatMatrix | None = None, propagation_matrix_source_vector_nonlte_jacobian: pyarts3.arts.StokvecMatrix | None = None, frequency_grid: pyarts3.arts.AscendingGrid | None = None, jacobian_targets: pyarts3.arts.JacobianTargets | None = None, frequency_grid_wind_shift_jacobian: pyarts3.arts.Vector3 | None = None) None

Fix for the wind field derivative.

The propagation_matrix_agenda will set the wind derivatives to those of the frequency derivative if this method is not used. This will cause the wind field to be treated as a frequency derivative, meaning no OEM() or other functionality that requires the Jacobian matrix to be calculated will work.

Author: Richard Larsson

Parameters:
propagation_matrix_scatteringAddSpectralScatteringSpeciesTRO(self, propagation_matrix_scattering: pyarts3.arts.PropmatVector | None = None, absorption_vector_scattering: pyarts3.arts.StokvecVector | None = None, phase_matrix_scattering_spectral: pyarts3.arts.SpecmatMatrix | None = None, frequency_grid: pyarts3.arts.AscendingGrid | None = None, atmospheric_point: pyarts3.arts.AtmPoint | None = None, scattering_species: pyarts3.arts.ArrayOfScatteringSpecies | None = None) None

Adds scattering_species results for totally random oriented spectral calculations to propagation_matrix_scattering and co.

Author: Richard Larsson

Parameters:
  • propagation_matrix_scattering (PropmatVector, optional) – The propgation matrix of totally random orientation particles at a single point along a path using spectral representation. See propagation_matrix_scattering, defaults to self.propagation_matrix_scattering [INOUT]

  • absorption_vector_scattering (StokvecVector, optional) – The absorption vector of totally random orientation particles at a single point along a path using spectral representation. See absorption_vector_scattering, defaults to self.absorption_vector_scattering [INOUT]

  • phase_matrix_scattering_spectral (SpecmatMatrix, optional) – The spectral phase matrix of totally random orientation particles at a single point along a path using spectral representation. See phase_matrix_scattering_spectral, defaults to self.phase_matrix_scattering_spectral [INOUT]

  • frequency_grid (AscendingGrid, optional) – A single frequency grid. See frequency_grid, defaults to self.frequency_grid [IN]

  • atmospheric_point (AtmPoint, optional) – An atmospheric point in ARTS. See atmospheric_point, defaults to self.atmospheric_point [IN]

  • scattering_species (ArrayOfScatteringSpecies, optional) – The scattering species. See scattering_species, defaults to self.scattering_species [IN]

propagation_matrix_scatteringAirSimple(self, propagation_matrix_scattering: pyarts3.arts.PropmatVector | None = None, frequency_grid: pyarts3.arts.AscendingGrid | None = None, atmospheric_point: pyarts3.arts.AtmPoint | None = None) None

Add simple air to propagation_matrix_scattering.

Authors: Jon Petersen, Richard Larsson

Parameters:
  • propagation_matrix_scattering (PropmatVector, optional) – The propgation matrix of totally random orientation particles at a single point along a path using spectral representation. See propagation_matrix_scattering, defaults to self.propagation_matrix_scattering [INOUT]

  • frequency_grid (AscendingGrid, optional) – A single frequency grid. See frequency_grid, defaults to self.frequency_grid [IN]

  • atmospheric_point (AtmPoint, optional) – An atmospheric point in ARTS. See atmospheric_point, defaults to self.atmospheric_point [IN]

propagation_matrix_scatteringInit(self, propagation_matrix_scattering: pyarts3.arts.PropmatVector | None = None, frequency_grid: pyarts3.arts.AscendingGrid | None = None) None

Initialize propagation_matrix_scattering to zeroes.

This method must be used inside propagation_matrix_scattering_agenda and then be called first.

Author: Richard Larsson

Parameters:
  • propagation_matrix_scattering (PropmatVector, optional) – The propgation matrix of totally random orientation particles at a single point along a path using spectral representation. See propagation_matrix_scattering, defaults to self.propagation_matrix_scattering [OUT]

  • frequency_grid (AscendingGrid, optional) – A single frequency grid. See frequency_grid, defaults to self.frequency_grid [IN]

propagation_matrix_scatteringSpectralInit(self, propagation_matrix_scattering: pyarts3.arts.PropmatVector | None = None, absorption_vector_scattering: pyarts3.arts.StokvecVector | None = None, phase_matrix_scattering_spectral: pyarts3.arts.SpecmatMatrix | None = None, frequency_grid: pyarts3.arts.AscendingGrid | None = None, legendre_degree: pyarts3.arts.Index | None = None) None

Initialize propagation_matrix_scattering and co to zeroes.

This method must be used inside propagation_matrix_scattering_spectral_agenda and then be called first.

Author: Richard Larsson

Parameters:
  • propagation_matrix_scattering (PropmatVector, optional) – The propgation matrix of totally random orientation particles at a single point along a path using spectral representation. See propagation_matrix_scattering, defaults to self.propagation_matrix_scattering [OUT]

  • absorption_vector_scattering (StokvecVector, optional) – The absorption vector of totally random orientation particles at a single point along a path using spectral representation. See absorption_vector_scattering, defaults to self.absorption_vector_scattering [OUT]

  • phase_matrix_scattering_spectral (SpecmatMatrix, optional) – The spectral phase matrix of totally random orientation particles at a single point along a path using spectral representation. See phase_matrix_scattering_spectral, defaults to self.phase_matrix_scattering_spectral [OUT]

  • frequency_grid (AscendingGrid, optional) – A single frequency grid. See frequency_grid, defaults to self.frequency_grid [IN]

  • legendre_degree (Index, optional) – The degree of a Legendre polynimial. See legendre_degree, defaults to self.legendre_degree [IN]

propagation_matrix_scattering_agendaExecute(self, propagation_matrix_scattering: pyarts3.arts.PropmatVector | None = None, frequency_grid: pyarts3.arts.AscendingGrid | None = None, atmospheric_point: pyarts3.arts.AtmPoint | None = None, propagation_matrix_scattering_agenda: pyarts3.arts.Agenda | None = None) None

Executes propagation_matrix_scattering_agenda, see it for more details

Author: Automatically Generated

Parameters:
  • propagation_matrix_scattering (PropmatVector, optional) – The propgation matrix of totally random orientation particles at a single point along a path using spectral representation. See propagation_matrix_scattering, defaults to self.propagation_matrix_scattering [OUT]

  • frequency_grid (AscendingGrid, optional) – A single frequency grid. See frequency_grid, defaults to self.frequency_grid [IN]

  • atmospheric_point (AtmPoint, optional) – An atmospheric point in ARTS. See atmospheric_point, defaults to self.atmospheric_point [IN]

  • propagation_matrix_scattering_agenda (Agenda, optional) – Compute the part of the propagation matrix that relates to scattering. See propagation_matrix_scattering_agenda, defaults to self.propagation_matrix_scattering_agenda [IN]

propagation_matrix_scattering_agendaExecuteOperator(self, propagation_matrix_scattering: pyarts3.arts.PropmatVector | None = None, frequency_grid: pyarts3.arts.AscendingGrid | None = None, atmospheric_point: pyarts3.arts.AtmPoint | None = None, propagation_matrix_scattering_agenda_operator: pyarts3.arts.propagation_matrix_scattering_agendaOperator | None = None) None

Executes an operator emulating propagation_matrix_scattering_agenda, see it, and also propagation_matrix_scattering_agendaOperator, for more details

Author: Automatically Generated

Parameters:
propagation_matrix_scattering_agendaSet(self, propagation_matrix_scattering_agenda: pyarts3.arts.Agenda | None = None, option: pyarts3.arts.String | None = None) None

Set propagation_matrix_scattering_agenda to a specific predefined option

Author: Automatically Generated

Parameters:
  • propagation_matrix_scattering_agenda (Agenda, optional) – Compute the part of the propagation matrix that relates to scattering. See propagation_matrix_scattering_agenda, defaults to self.propagation_matrix_scattering_agenda [OUT]

  • option (String, optional) – Choice of generated agenda. Defaults to "AirSimple" [IN]

Valid options

These are the valid options for the propagation_matrix_scattering_agendaSet method. The listed method calls describe the order of the agenda calls for each option.


propagation_matrix_scattering_agendaSet(option="AirSimple")

propagation_matrix_scattering_agendaSetOperator(self, propagation_matrix_scattering_agenda: pyarts3.arts.Agenda | None = None, f: pyarts3.arts.propagation_matrix_scattering_agendaOperator | None = None) None

Set propagation_matrix_scattering_agenda to exclusively use provided external operator. See propagation_matrix_scattering_agendaOperator for more details.

Author: Automatically Generated

Parameters:
propagation_matrix_scattering_spectral_agendaExecute(self, propagation_matrix_scattering: pyarts3.arts.PropmatVector | None = None, absorption_vector_scattering: pyarts3.arts.StokvecVector | None = None, phase_matrix_scattering_spectral: pyarts3.arts.SpecmatMatrix | None = None, frequency_grid: pyarts3.arts.AscendingGrid | None = None, atmospheric_point: pyarts3.arts.AtmPoint | None = None, legendre_degree: pyarts3.arts.Index | None = None, propagation_matrix_scattering_spectral_agenda: pyarts3.arts.Agenda | None = None) None

Executes propagation_matrix_scattering_spectral_agenda, see it for more details

Author: Automatically Generated

Parameters:
  • propagation_matrix_scattering (PropmatVector, optional) – The propgation matrix of totally random orientation particles at a single point along a path using spectral representation. See propagation_matrix_scattering, defaults to self.propagation_matrix_scattering [OUT]

  • absorption_vector_scattering (StokvecVector, optional) – The absorption vector of totally random orientation particles at a single point along a path using spectral representation. See absorption_vector_scattering, defaults to self.absorption_vector_scattering [OUT]

  • phase_matrix_scattering_spectral (SpecmatMatrix, optional) – The spectral phase matrix of totally random orientation particles at a single point along a path using spectral representation. See phase_matrix_scattering_spectral, defaults to self.phase_matrix_scattering_spectral [OUT]

  • frequency_grid (AscendingGrid, optional) – A single frequency grid. See frequency_grid, defaults to self.frequency_grid [IN]

  • atmospheric_point (AtmPoint, optional) – An atmospheric point in ARTS. See atmospheric_point, defaults to self.atmospheric_point [IN]

  • legendre_degree (Index, optional) – The degree of a Legendre polynimial. See legendre_degree, defaults to self.legendre_degree [IN]

  • propagation_matrix_scattering_spectral_agenda (Agenda, optional) – Get the scattering propagation matrix, the scattering absorption vector, and the scattering spectral phase matrix. See propagation_matrix_scattering_spectral_agenda, defaults to self.propagation_matrix_scattering_spectral_agenda [IN]

propagation_matrix_scattering_spectral_agendaExecuteOperator(self, propagation_matrix_scattering: pyarts3.arts.PropmatVector | None = None, absorption_vector_scattering: pyarts3.arts.StokvecVector | None = None, phase_matrix_scattering_spectral: pyarts3.arts.SpecmatMatrix | None = None, frequency_grid: pyarts3.arts.AscendingGrid | None = None, atmospheric_point: pyarts3.arts.AtmPoint | None = None, legendre_degree: pyarts3.arts.Index | None = None, propagation_matrix_scattering_spectral_agenda_operator: pyarts3.arts.propagation_matrix_scattering_spectral_agendaOperator | None = None) None

Executes an operator emulating propagation_matrix_scattering_spectral_agenda, see it, and also propagation_matrix_scattering_spectral_agendaOperator, for more details

Author: Automatically Generated

Parameters:
propagation_matrix_scattering_spectral_agendaSet(self, propagation_matrix_scattering_spectral_agenda: pyarts3.arts.Agenda | None = None, option: pyarts3.arts.String | None = None) None

Set propagation_matrix_scattering_spectral_agenda to a specific predefined option

Author: Automatically Generated

Parameters:
  • propagation_matrix_scattering_spectral_agenda (Agenda, optional) – Get the scattering propagation matrix, the scattering absorption vector, and the scattering spectral phase matrix. See propagation_matrix_scattering_spectral_agenda, defaults to self.propagation_matrix_scattering_spectral_agenda [OUT]

  • option (String, optional) – Choice of generated agenda. Defaults to "FromSpeciesTRO" [IN]

Valid options

These are the valid options for the propagation_matrix_scattering_spectral_agendaSet method. The listed method calls describe the order of the agenda calls for each option.


propagation_matrix_scattering_spectral_agendaSet(option="FromSpeciesTRO")

propagation_matrix_scattering_spectral_agendaSetOperator(self, propagation_matrix_scattering_spectral_agenda: pyarts3.arts.Agenda | None = None, f: pyarts3.arts.propagation_matrix_scattering_spectral_agendaOperator | None = None) None

Set propagation_matrix_scattering_spectral_agenda to exclusively use provided external operator. See propagation_matrix_scattering_spectral_agendaOperator for more details.

Author: Automatically Generated

Parameters:
ray_pathAddGeometricGridCrossings(self, ray_path: pyarts3.arts.ArrayOfPropagationPathPoint | None = None, atmospheric_field: pyarts3.arts.AtmField | None = None, surface_field: pyarts3.arts.SurfaceField | None = None, atm_key: pyarts3.arts.AtmKey | None = None) None

Fill the path with with points that crosses the grid of the atmspheric field.

The atmospheric field parameter must be gridded. Only grids with size() > 1 are considered.

Author: Richard Larsson

Parameters:
  • ray_path (ArrayOfPropagationPathPoint, optional) – A list path points making up a propagation path. See ray_path, defaults to self.ray_path [INOUT]

  • atmospheric_field (AtmField, optional) – An atmospheric field in ARTS. See atmospheric_field, defaults to self.atmospheric_field [IN]

  • surface_field (SurfaceField, optional) – The surface field describes the surface properties. See surface_field, defaults to self.surface_field [IN]

  • atm_key (AtmKey, optional) – The atmospheric field key for which the grid is expected if adding grid crossings is desired. Defaults to t [IN]

ray_pathAddLimbPoint(self, ray_path: pyarts3.arts.ArrayOfPropagationPathPoint | None = None, surface_field: pyarts3.arts.SurfaceField | None = None) None

Add the limb point to the ray path

Author: Richard Larsson

Parameters:
  • ray_path (ArrayOfPropagationPathPoint, optional) – A list path points making up a propagation path. See ray_path, defaults to self.ray_path [INOUT]

  • surface_field (SurfaceField, optional) – The surface field describes the surface properties. See surface_field, defaults to self.surface_field [IN]

ray_pathFillGeometricHalfStep(self, ray_path: pyarts3.arts.ArrayOfPropagationPathPoint | None = None, surface_field: pyarts3.arts.SurfaceField | None = None, max_step: pyarts3.arts.Numeric | None = None) None

Fill the path with geometric step points.

If two path points are more than max_step apart, additional points are added at half the distance between these two points.

This process is repeated until there are no more neighboring points for which the premise is true.

Author: Richard Larsson

Parameters:
  • ray_path (ArrayOfPropagationPathPoint, optional) – A list path points making up a propagation path. See ray_path, defaults to self.ray_path [INOUT]

  • surface_field (SurfaceField, optional) – The surface field describes the surface properties. See surface_field, defaults to self.surface_field [IN]

  • max_step (Numeric, optional) – The maximum step length. Defaults to 1000 [IN]

ray_pathFillGeometricStepwise(self, ray_path: pyarts3.arts.ArrayOfPropagationPathPoint | None = None, surface_field: pyarts3.arts.SurfaceField | None = None, max_step: pyarts3.arts.Numeric | None = None) None

Fill the path with geometric step points.

If two path points are more than max_step apart, additional points are added by propagating one of the points towards the other with a step length of max_step.

This process is repeated until there are no more neighboring points for which the premise is true.

Author: Richard Larsson

Parameters:
  • ray_path (ArrayOfPropagationPathPoint, optional) – A list path points making up a propagation path. See ray_path, defaults to self.ray_path [INOUT]

  • surface_field (SurfaceField, optional) – The surface field describes the surface properties. See surface_field, defaults to self.surface_field [IN]

  • max_step (Numeric, optional) – The maximum step length. Defaults to 1000 [IN]

ray_pathFixUpdownAzimuth(self, ray_path: pyarts3.arts.ArrayOfPropagationPathPoint | None = None) None

Fix azimuth angle errors that can occur for 180 and 0 degrees zenith.

These only matter for polarized radiative transfer.

Author: Richard Larsson

Parameters:

ray_path (ArrayOfPropagationPathPoint, optional) – A list path points making up a propagation path. See ray_path, defaults to self.ray_path [INOUT]

ray_pathGeometric(self, ray_path: pyarts3.arts.ArrayOfPropagationPathPoint | None = None, atmospheric_field: pyarts3.arts.AtmField | None = None, surface_field: pyarts3.arts.SurfaceField | None = None, pos: pyarts3.arts.Vector3 | None = None, los: pyarts3.arts.Vector2 | None = None, max_step: pyarts3.arts.Numeric | None = None, surface_search_accuracy: pyarts3.arts.Numeric | None = None, as_observer: pyarts3.arts.Index | None = None, add_limb: pyarts3.arts.Index | None = None, remove_non_atm: pyarts3.arts.Index | None = None, fix_updown_azimuth: pyarts3.arts.Index | None = None, surface_safe_search: pyarts3.arts.Index | None = None) None

Get a geometric radiation path

The path is defined by the origo and the line of sight.

The pos is either at the end or at the beginning of the path depending on the as_observer flag. A value that evaluates to true means that it is at the end of the path. If as_observer is true, the los is therefore looking backwards along the path. Basically, as_observer true means that pos and los behaves as sensor pos and los.

The max_step is the maximum step length in meters. The path is first created between the two extremes of either space and/or surface. Afterwards, there are additional points added every max_step meters between these points until no more fits (the last step is shorter or exactly max_step).

Upon closing the method, the following options are available to modify the output:

If add_limb is true, the limb point is added to the path at the end. It is computed using bisections to ensure that the zenith angle of the tangent point is as close to 90 degrees as it can numerically be.

If remove_non_atm is true, all points that are not in the atmosphere are removed. It is recommended to remove these points as multiple methods will either perform poorly or not at all with these points present.

If fix_updown_azimuth is true, the azimuthal angle of the path is fixed to the initial azimuthal angle of the path. Because calculations of the azimuth angle makes use of IEEE atan2, some paths may produce bad angles if this is turned off.

Author: Richard Larsson

Parameters:
  • ray_path (ArrayOfPropagationPathPoint, optional) – A list path points making up a propagation path. See ray_path, defaults to self.ray_path [OUT]

  • atmospheric_field (AtmField, optional) – An atmospheric field in ARTS. See atmospheric_field, defaults to self.atmospheric_field [IN]

  • surface_field (SurfaceField, optional) – The surface field describes the surface properties. See surface_field, defaults to self.surface_field [IN]

  • pos (Vector3) – The origo of the radiation path. [IN]

  • los (Vector2) – The line of sight of the radiation path. [IN]

  • max_step (Numeric, optional) – The maximum step length. Defaults to 1000 [IN]

  • surface_search_accuracy (Numeric, optional) – The accuracy within which the surface intersection is counted as a hit. Defaults to 0.1 [IN]

  • as_observer (Index, optional) – Whether or not the path is as seen by the sensor or by the radiation (see text). Defaults to 1 [IN]

  • add_limb (Index, optional) – Wheter or not to add the limb point. Defaults to 0 [IN]

  • remove_non_atm (Index, optional) – Wheter or not to keep only atmospheric points. Defaults to 1 [IN]

  • fix_updown_azimuth (Index, optional) – Whether or not to attempt fix a potential issue with the path azimuthal angle. Defaults to 1 [IN]

  • surface_safe_search (Index, optional) – Whether or not to search for the surface intersection in a safer but slower manner. Defaults to 1 [IN]

ray_pathGeometricDownlooking(self, ray_path: pyarts3.arts.ArrayOfPropagationPathPoint | None = None, atmospheric_field: pyarts3.arts.AtmField | None = None, surface_field: pyarts3.arts.SurfaceField | None = None, latitude: pyarts3.arts.Numeric | None = None, longitude: pyarts3.arts.Numeric | None = None, max_step: pyarts3.arts.Numeric | None = None) None

Wraps ray_pathGeometric() for straight downlooking paths from the top-of-the-atmosphere altitude

Author: Richard Larsson

Used by wrapper methods

Parameters:
  • ray_path (ArrayOfPropagationPathPoint, optional) – A list path points making up a propagation path. See ray_path, defaults to self.ray_path [OUT]

  • atmospheric_field (AtmField, optional) – An atmospheric field in ARTS. See atmospheric_field, defaults to self.atmospheric_field [IN]

  • surface_field (SurfaceField, optional) – The surface field describes the surface properties. See surface_field, defaults to self.surface_field [IN]

  • latitude (Numeric, optional) – A single latitude. See latitude, defaults to self.latitude [IN]

  • longitude (Numeric, optional) – A single longitude. See longitude, defaults to self.longitude [IN]

  • max_step (Numeric, optional) – The maximum step length. Defaults to 1000 [IN]

ray_pathGeometricUplooking(self, ray_path: pyarts3.arts.ArrayOfPropagationPathPoint | None = None, atmospheric_field: pyarts3.arts.AtmField | None = None, surface_field: pyarts3.arts.SurfaceField | None = None, latitude: pyarts3.arts.Numeric | None = None, longitude: pyarts3.arts.Numeric | None = None, max_step: pyarts3.arts.Numeric | None = None) None

Wraps ray_pathGeometric() for straight uplooking paths from the surface altitude at the position

Author: Richard Larsson

Parameters:
  • ray_path (ArrayOfPropagationPathPoint, optional) – A list path points making up a propagation path. See ray_path, defaults to self.ray_path [OUT]

  • atmospheric_field (AtmField, optional) – An atmospheric field in ARTS. See atmospheric_field, defaults to self.atmospheric_field [IN]

  • surface_field (SurfaceField, optional) – The surface field describes the surface properties. See surface_field, defaults to self.surface_field [IN]

  • latitude (Numeric, optional) – A single latitude. See latitude, defaults to self.latitude [IN]

  • longitude (Numeric, optional) – A single longitude. See longitude, defaults to self.longitude [IN]

  • max_step (Numeric, optional) – The maximum step length. Defaults to 1000 [IN]

ray_pathInit(self, ray_path: pyarts3.arts.ArrayOfPropagationPathPoint | None = None, atmospheric_field: pyarts3.arts.AtmField | None = None, surface_field: pyarts3.arts.SurfaceField | None = None, pos: pyarts3.arts.Vector3 | None = None, los: pyarts3.arts.Vector2 | None = None, as_sensor: pyarts3.arts.Index | None = None) None

Initialize the ray path with a single point.

Author: Richard Larsson

Parameters:
  • ray_path (ArrayOfPropagationPathPoint, optional) – A list path points making up a propagation path. See ray_path, defaults to self.ray_path [OUT]

  • atmospheric_field (AtmField, optional) – An atmospheric field in ARTS. See atmospheric_field, defaults to self.atmospheric_field [IN]

  • surface_field (SurfaceField, optional) – The surface field describes the surface properties. See surface_field, defaults to self.surface_field [IN]

  • pos (Vector3) – The start position. [IN]

  • los (Vector2) – The start line-of-sight. [IN]

  • as_sensor (Index, optional) – Whether or not the position is the sensor position or the observer position. Defaults to 1 [IN]

ray_pathRemoveNearby(self, ray_path: pyarts3.arts.ArrayOfPropagationPathPoint | None = None, surface_field: pyarts3.arts.SurfaceField | None = None, min_distance: pyarts3.arts.Numeric | None = None, first: pyarts3.arts.Index | None = None) None

Remove points that are too close to each other.

Author: Richard Larsson

Parameters:
  • ray_path (ArrayOfPropagationPathPoint, optional) – A list path points making up a propagation path. See ray_path, defaults to self.ray_path [INOUT]

  • surface_field (SurfaceField, optional) – The surface field describes the surface properties. See surface_field, defaults to self.surface_field [IN]

  • min_distance (Numeric) – The minimum distance between points. [IN]

  • first (Index, optional) – Whether to remove the first or second point. Defaults to 0 [IN]

ray_pathRemoveNonAtm(self, ray_path: pyarts3.arts.ArrayOfPropagationPathPoint | None = None) None

Remove non-atmospheric points to the ray path

Author: Richard Larsson

Parameters:

ray_path (ArrayOfPropagationPathPoint, optional) – A list path points making up a propagation path. See ray_path, defaults to self.ray_path [INOUT]

ray_pathRemoveNonGeometricGridCrossings(self, ray_path: pyarts3.arts.ArrayOfPropagationPathPoint | None = None, atmospheric_field: pyarts3.arts.AtmField | None = None, atm_key: pyarts3.arts.AtmKey | None = None) None

Remove all non-geometric grid crossings from the ray path.

The atmospheric field parameter must be gridded. All points overlapping with any of the three grids are kept.

Author: Richard Larsson

Parameters:
  • ray_path (ArrayOfPropagationPathPoint, optional) – A list path points making up a propagation path. See ray_path, defaults to self.ray_path [INOUT]

  • atmospheric_field (AtmField, optional) – An atmospheric field in ARTS. See atmospheric_field, defaults to self.atmospheric_field [IN]

  • atm_key (AtmKey) – The atmospheric key. [IN]

ray_pathSetGeometricExtremes(self, ray_path: pyarts3.arts.ArrayOfPropagationPathPoint | None = None, atmospheric_field: pyarts3.arts.AtmField | None = None, surface_field: pyarts3.arts.SurfaceField | None = None, surface_search_accuracy: pyarts3.arts.Numeric | None = None, surface_safe_search: pyarts3.arts.Index | None = None) None

Add the geometric extremes to the ray path.

Author: Richard Larsson

Parameters:
  • ray_path (ArrayOfPropagationPathPoint, optional) – A list path points making up a propagation path. See ray_path, defaults to self.ray_path [INOUT]

  • atmospheric_field (AtmField, optional) – An atmospheric field in ARTS. See atmospheric_field, defaults to self.atmospheric_field [IN]

  • surface_field (SurfaceField, optional) – The surface field describes the surface properties. See surface_field, defaults to self.surface_field [IN]

  • surface_search_accuracy (Numeric, optional) – The accuracy within which the surface intersection is counted as a hit. Defaults to 0.1 [IN]

  • surface_safe_search (Index, optional) – Whether or not to search for the surface intersection in a safer but slower manner. Defaults to 1 [IN]

ray_path_atmospheric_pointFromPath(self, ray_path_atmospheric_point: pyarts3.arts.ArrayOfAtmPoint | None = None, ray_path: pyarts3.arts.ArrayOfPropagationPathPoint | None = None, atmospheric_field: pyarts3.arts.AtmField | None = None) None

Gets the atmospheric points along the path.

Author: Richard Larsson

Used by wrapper methods

Parameters:
ray_path_atmospheric_pointFromProfile(self, ray_path_atmospheric_point: pyarts3.arts.ArrayOfAtmPoint | None = None, atmospheric_profile: pyarts3.arts.ArrayOfAtmPoint | None = None) None

Set ray_path_atmospheric_point = atmospheric_profile.

This is purely compositional and it is better to use pure python code if need this functionality in your own control-flow.

Author: Richard Larsson

Parameters:
ray_path_fieldFluxProfile(self, ray_path_field: pyarts3.arts.ArrayOfArrayOfPropagationPathPoint | None = None, atmospheric_field: pyarts3.arts.AtmField | None = None, ray_path_observer_agenda: pyarts3.arts.Agenda | None = None, azimuth: pyarts3.arts.Numeric | None = None, dza: pyarts3.arts.Numeric | None = None, atm_key: pyarts3.arts.AtmKey | None = None) None

Adds observers that covers all zenith angles for each altitude point.

By default, up-looking from surface, downlooking from top of atmosphere and limb looking just hitting the surface and just missing the surface are added.

In addition to these, all up-looking ppoints will have additional observers for max dza resolution and all downlooking points will have additional observers for max dza resolution.

Additional work is requires if proper coverage of the limb is required

Author: Richard Larsson

Parameters:
  • ray_path_field (ArrayOfArrayOfPropagationPathPoint, optional) – A list of ray_path intended to build up a field of observations. See ray_path_field, defaults to self.ray_path_field [OUT]

  • atmospheric_field (AtmField, optional) – An atmospheric field in ARTS. See atmospheric_field, defaults to self.atmospheric_field [IN]

  • ray_path_observer_agenda (Agenda, optional) – Get the propagation path as it is obeserved. See ray_path_observer_agenda, defaults to self.ray_path_observer_agenda [IN]

  • azimuth (Numeric, optional) – Azimuth angle for the observer. Defaults to 0 [IN]

  • dza (Numeric, optional) – The minimum step coverage in zenith angles. Defaults to 180 [IN]

  • atm_key (AtmKey, optional) – The altitude profile key in the atmosphere. Defaults to t [IN]

ray_path_fieldFromObserverAgenda(self, ray_path_field: pyarts3.arts.ArrayOfArrayOfPropagationPathPoint | None = None, ray_path_observers: pyarts3.arts.ArrayOfPropagationPathPoint | None = None, ray_path_observer_agenda: pyarts3.arts.Agenda | None = None) None

Create a ray path field from a set of observers.

Author: Richard Larsson

Parameters:
ray_path_frequency_gridFromPath(self, ray_path_frequency_grid: pyarts3.arts.ArrayOfAscendingGrid | None = None, ray_path_frequency_grid_wind_shift_jacobian: pyarts3.arts.ArrayOfVector3 | None = None, frequency_grid: pyarts3.arts.AscendingGrid | None = None, ray_path: pyarts3.arts.ArrayOfPropagationPathPoint | None = None, ray_path_atmospheric_point: pyarts3.arts.ArrayOfAtmPoint | None = None) None

Gets the frequency grids along the path.

The derivative transformation is also returned.

Author: Richard Larsson

Used by wrapper methods

Parameters:
ray_path_observer_agendaExecute(self, ray_path: pyarts3.arts.ArrayOfPropagationPathPoint | None = None, spectral_radiance_observer_position: pyarts3.arts.Vector3 | None = None, spectral_radiance_observer_line_of_sight: pyarts3.arts.Vector2 | None = None, ray_path_observer_agenda: pyarts3.arts.Agenda | None = None) None

Executes ray_path_observer_agenda, see it for more details

Author: Automatically Generated

Parameters:
ray_path_observer_agendaExecuteOperator(self, ray_path: pyarts3.arts.ArrayOfPropagationPathPoint | None = None, spectral_radiance_observer_position: pyarts3.arts.Vector3 | None = None, spectral_radiance_observer_line_of_sight: pyarts3.arts.Vector2 | None = None, ray_path_observer_agenda_operator: pyarts3.arts.ray_path_observer_agendaOperator | None = None) None

Executes an operator emulating ray_path_observer_agenda, see it, and also ray_path_observer_agendaOperator, for more details

Author: Automatically Generated

Parameters:
ray_path_observer_agendaSetGeometric(self, ray_path_observer_agenda: pyarts3.arts.Agenda | None = None, max_step_option: pyarts3.arts.String | None = None, surface_search_accuracy: pyarts3.arts.Numeric | None = None, max_step: pyarts3.arts.Numeric | None = None, remove_nearby: pyarts3.arts.Numeric | None = None, atm_key: pyarts3.arts.AtmKey | None = None, surface_safe_search: pyarts3.arts.Index | None = None, remove_nearby_first: pyarts3.arts.Index | None = None, add_crossings: pyarts3.arts.Index | None = None, remove_non_crossings: pyarts3.arts.Index | None = None, fix_updown_azimuth: pyarts3.arts.Index | None = None, add_limb: pyarts3.arts.Index | None = None, remove_non_atm: pyarts3.arts.Index | None = None) None

Set ray_path_observer_agenda from programmable geometric settings.

The default settings essentially call the default settings for ray_pathGeometric().

Options:

  • max_step_option and max_step: Choose the maximum distance between two points. The first string tells the behavior, and the second the distance.

  • surface_search_accuracy and surface_safe_search: The accuracy to search for surface intersections and whether or not to do it at all.

  • remove_nearby and remove_nearby_first: The minimum distance between points, ignored if 0 or less. The second option tells which point to remove if they are too close.

  • atm_key and add_crossings and remove_non_crossings: The atmospheric field key for which the grid is expected if adding grid crossings is desired. The other two options tell whether to add all grid points or remove non-crossings. The removal happens after the filling of the path.

  • fix_updown_azimuth: Fix the azimuth angle when looking at 0 or 180 degrees.

  • add_limb: Add the limb point.

  • remove_non_atm: Remove points in space or in the subsurface.

Author: Richard Larsson

Parameters:
  • ray_path_observer_agenda (Agenda, optional) – Get the propagation path as it is obeserved. See ray_path_observer_agenda, defaults to self.ray_path_observer_agenda [OUT]

  • max_step_option (String, optional) – Option for max stepping. See ray_path_observer_agendaSetGeometricMaxStep. Defaults to "step" [IN]

  • surface_search_accuracy (Numeric, optional) – The accuracy to search for surface intersections. Defaults to 0.1 [IN]

  • max_step (Numeric, optional) – The distance to step in-case max stepping is required. Defaults to 1000 [IN]

  • remove_nearby (Numeric, optional) – The minimum distance between points, ignroed if 0 or less. Defaults to 0 [IN]

  • atm_key (AtmKey, optional) – The atmospheric field key for which the grid is expected if adding grid crossings is desired. Defaults to t [IN]

  • surface_safe_search (Index, optional) – Whether or not to search for the surface intersection in a safer but slower manner. Defaults to 1 [IN]

  • remove_nearby_first (Index, optional) – Which point (first or second) to remove if they are too close. Defaults to 1 [IN]

  • add_crossings (Index, optional) – Add all grid crossings. Defaults to 0 [IN]

  • remove_non_crossings (Index, optional) – Remove non-crossings. Defaults to 0 [IN]

  • fix_updown_azimuth (Index, optional) – Fix the azimuth angle when looking at 0 or 180 degrees. Defaults to 1 [IN]

  • add_limb (Index, optional) – Add the limb point. Defaults to 0 [IN]

  • remove_non_atm (Index, optional) – Remove non-atmospheric points. Defaults to 1 [IN]

ray_path_observer_agendaSetOperator(self, ray_path_observer_agenda: pyarts3.arts.Agenda | None = None, f: pyarts3.arts.ray_path_observer_agendaOperator | None = None) None

Set ray_path_observer_agenda to exclusively use provided external operator. See ray_path_observer_agendaOperator for more details.

Author: Automatically Generated

Parameters:
ray_path_observersFieldProfilePseudo2D(self, ray_path_observers: pyarts3.arts.ArrayOfPropagationPathPoint | None = None, atmospheric_field: pyarts3.arts.AtmField | None = None, surface_field: pyarts3.arts.SurfaceField | None = None, ray_path_observer_agenda: pyarts3.arts.Agenda | None = None, latitude: pyarts3.arts.Numeric | None = None, longitude: pyarts3.arts.Numeric | None = None, azimuth: pyarts3.arts.Numeric | None = None, nup: pyarts3.arts.Index | None = None, nlimb: pyarts3.arts.Index | None = None, ndown: pyarts3.arts.Index | None = None) None

Get a list of observer positions and line of sights to represent observing all angles of a profile.

Three observer types are added:

  • Downward looking. At the top-of-atmosphere, cover [za+e, 180] degrees zenith.

  • Limb looking. At top of the atmosphere, cover [90, za-e] degrees zenith.

  • Upward looking. At the surface, cover [0, 90] degrees zenith.

Here za is the surface tangent zenith angle from the top of the atmosphere. e indicates the smallest possible numerical offset from that angle in the signed direction.

Note

Each position has their zenith angle coverage linearly separated in degrees. To avoid the top-of-atmosphere limb singularity and bottom of atmosphere limb overlap, the limb zentih angle grid is divided into nlimb+1 segments. The 90 degree angle is then discarded.

Below is an example using this method to create a ray_path_field.

import pyarts3 as pyarts
import numpy as np

ws = pyarts.Workspace()

ws.atmospheric_fieldRead(toa=100e3, basename="planets/Earth/afgl/tropical/")
ws.surface_fieldEarth()
ws.ray_path_observer_agendaSetGeometric(
    add_crossings=True, remove_non_crossings=True
)
ws.ray_path_observersFieldProfilePseudo2D(nup=3, nlimb=3, ndown=3)
ws.ray_path_fieldFromObserverAgenda()

f, a = None, None
for x in ws.ray_path_field:
    f, a = pyarts.plots.ray_path.polar_ray_path(
        x, draw_za_aa=True, draw_map=False, fig=f, axes=a
    )

(Source code, svg, pdf)

_images/pyarts3-arts-CxxWorkspace-1.svg

Author: Richard Larsson

Parameters:
  • ray_path_observers (ArrayOfPropagationPathPoint, optional) – A list path points making up the observers of a propagation path. See ray_path_observers, defaults to self.ray_path_observers [OUT]

  • atmospheric_field (AtmField, optional) – An atmospheric field in ARTS. See atmospheric_field, defaults to self.atmospheric_field [IN]

  • surface_field (SurfaceField, optional) – The surface field describes the surface properties. See surface_field, defaults to self.surface_field [IN]

  • ray_path_observer_agenda (Agenda, optional) – Get the propagation path as it is obeserved. See ray_path_observer_agenda, defaults to self.ray_path_observer_agenda [IN]

  • latitude (Numeric, optional) – A single latitude. See latitude, defaults to self.latitude [IN]

  • longitude (Numeric, optional) – A single longitude. See longitude, defaults to self.longitude [IN]

  • azimuth (Numeric, optional) – Azimuth angle for the observer. Defaults to 0 [IN]

  • nup (Index) – Number of upward looking observers (min 2). [IN]

  • nlimb (Index) – Number of limb looking observers (min 2). [IN]

  • ndown (Index) – Number of downward looking observers (min 2). [IN]

ray_path_observersFluxProfile(self, ray_path_observers: pyarts3.arts.ArrayOfPropagationPathPoint | None = None, atmospheric_field: pyarts3.arts.AtmField | None = None, azimuth: pyarts3.arts.Numeric | None = None, n: pyarts3.arts.Index | None = None, atm_key: pyarts3.arts.AtmKey | None = None) None

Add \(n\) observers per altitude point.

The number \(n\) must be uneven and larger than 2.

Author: Richard Larsson

Parameters:
  • ray_path_observers (ArrayOfPropagationPathPoint, optional) – A list path points making up the observers of a propagation path. See ray_path_observers, defaults to self.ray_path_observers [OUT]

  • atmospheric_field (AtmField, optional) – An atmospheric field in ARTS. See atmospheric_field, defaults to self.atmospheric_field [IN]

  • azimuth (Numeric, optional) – Azimuth angle for the observer. Defaults to 0 [IN]

  • n (Index) – Number of limb looking observers (min 2). \(n\) above. [IN]

  • atm_key (AtmKey, optional) – The altitude profile key in the atmosphere. Defaults to t [IN]

ray_path_pointBackground(self, ray_path_point: pyarts3.arts.PropagationPathPoint | None = None, ray_path: pyarts3.arts.ArrayOfPropagationPathPoint | None = None) None

Sets ray_path_point to the expected background point of ray_path

Author: Richard Larsson

Used by wrapper methods

Parameters:
ray_path_pointForeground(self, ray_path_point: pyarts3.arts.PropagationPathPoint | None = None, ray_path: pyarts3.arts.ArrayOfPropagationPathPoint | None = None) None

Sets ray_path_point to the expected foreground point of ray_path

Author: Richard Larsson

Used by wrapper method

Parameters:
ray_path_pointHighestFromPath(self, ray_path_point: pyarts3.arts.PropagationPathPoint | None = None, ray_path: pyarts3.arts.ArrayOfPropagationPathPoint | None = None) None

Sets ray_path_point to the highest altitude point of ray_path.

Author: Richard Larsson

Parameters:
ray_path_pointLowestFromPath(self, ray_path_point: pyarts3.arts.PropagationPathPoint | None = None, ray_path: pyarts3.arts.ArrayOfPropagationPathPoint | None = None) None

Sets ray_path_point to the lowest altitude point of ray_path.

Author: Richard Larsson

Parameters:
ray_path_propagation_matrixAddScattering(self, ray_path_propagation_matrix: pyarts3.arts.ArrayOfPropmatVector | None = None, ray_path_propagation_matrix_scattering: pyarts3.arts.ArrayOfPropmatVector | None = None) None

Adds the scattering part of the propagation matrix to the rest along the path.

The calculations are in parallel if the program is not in parallel already.

Author: Richard Larsson

Used by wrapper method

Parameters:
ray_path_propagation_matrixFromPath(self, ray_path_propagation_matrix: pyarts3.arts.ArrayOfPropmatVector | None = None, ray_path_propagation_matrix_source_vector_nonlte: pyarts3.arts.ArrayOfStokvecVector | None = None, ray_path_propagation_matrix_jacobian: pyarts3.arts.ArrayOfPropmatMatrix | None = None, ray_path_propagation_matrix_source_vector_nonlte_jacobian: pyarts3.arts.ArrayOfStokvecMatrix | None = None, propagation_matrix_agenda: pyarts3.arts.Agenda | None = None, ray_path_frequency_grid: pyarts3.arts.ArrayOfAscendingGrid | None = None, ray_path_frequency_grid_wind_shift_jacobian: pyarts3.arts.ArrayOfVector3 | None = None, jacobian_targets: pyarts3.arts.JacobianTargets | None = None, ray_path: pyarts3.arts.ArrayOfPropagationPathPoint | None = None, ray_path_atmospheric_point: pyarts3.arts.ArrayOfAtmPoint | None = None) None

Gets the propagation matrix and non-LTE source term along the path.

The calculations are in parallel if the program is not in parallel already.

Also outputs the ray_path_frequency_grid as a side effect (of wind).

Author: Richard Larsson

Used by wrapper methods

Parameters:
ray_path_propagation_matrix_scatteringFromPath(self, ray_path_propagation_matrix_scattering: pyarts3.arts.ArrayOfPropmatVector | None = None, propagation_matrix_scattering_agenda: pyarts3.arts.Agenda | None = None, ray_path_frequency_grid: pyarts3.arts.ArrayOfAscendingGrid | None = None, ray_path_atmospheric_point: pyarts3.arts.ArrayOfAtmPoint | None = None) None

Gets the propagation matrix for scattering along the path.

The calculations are in parallel if the program is not in parallel already.

Author: Richard Larsson

Used by wrapper method

Parameters:
ray_path_propagation_matrix_scatteringFromSpectralAgenda(self, ray_path_propagation_matrix_scattering: pyarts3.arts.ArrayOfPropmatVector | None = None, ray_path_absorption_vector_scattering: pyarts3.arts.ArrayOfStokvecVector | None = None, ray_path_phase_matrix_scattering_spectral: pyarts3.arts.ArrayOfSpecmatMatrix | None = None, ray_path_frequency_grid: pyarts3.arts.ArrayOfAscendingGrid | None = None, ray_path_atmospheric_point: pyarts3.arts.ArrayOfAtmPoint | None = None, legendre_degree: pyarts3.arts.Index | None = None, propagation_matrix_scattering_spectral_agenda: pyarts3.arts.Agenda | None = None) None

Compute ray_path_propagation_matrix_scattering and co for a path.

Author: Richard Larsson

Parameters:
ray_path_propagation_matrix_species_splitFromPath(self, ray_path_propagation_matrix_species_split: pyarts3.arts.ArrayOfArrayOfPropmatVector | None = None, ray_path_propagation_matrix_source_vector_nonlte_species_split: pyarts3.arts.ArrayOfArrayOfStokvecVector | None = None, ray_path_propagation_matrix_jacobian_species_split: pyarts3.arts.ArrayOfArrayOfPropmatMatrix | None = None, ray_path_propagation_matrix_source_vector_nonlte_jacobian_species_split: pyarts3.arts.ArrayOfArrayOfStokvecMatrix | None = None, propagation_matrix_agenda: pyarts3.arts.Agenda | None = None, ray_path_frequency_grid: pyarts3.arts.ArrayOfAscendingGrid | None = None, ray_path_frequency_grid_wind_shift_jacobian: pyarts3.arts.ArrayOfVector3 | None = None, jacobian_targets: pyarts3.arts.JacobianTargets | None = None, ray_path: pyarts3.arts.ArrayOfPropagationPathPoint | None = None, ray_path_atmospheric_point: pyarts3.arts.ArrayOfAtmPoint | None = None, select_species_list: pyarts3.arts.ArrayOfSpeciesEnum | None = None) None

As ray_path_propagation_matrixFromPath() but the output is split between the species in the select_species_list.

The outer dimension of the output arrays are the size of the species selection list. The inner dimensions are as per ray_path_propagation_matrixFromPath().

Author: Richard Larsson

Parameters:
ray_path_spectral_radiance_scatteringSunsFirstOrderRayleigh(self, ray_path_spectral_radiance_scattering: pyarts3.arts.ArrayOfStokvecVector | None = None, ray_path_propagation_matrix_scattering: pyarts3.arts.ArrayOfPropmatVector | None = None, ray_path: pyarts3.arts.ArrayOfPropagationPathPoint | None = None, ray_path_suns_path: pyarts3.arts.ArrayOfArrayOfArrayOfPropagationPathPoint | None = None, suns: pyarts3.arts.ArrayOfSun | None = None, jacobian_targets: pyarts3.arts.JacobianTargets | None = None, frequency_grid: pyarts3.arts.AscendingGrid | None = None, atmospheric_field: pyarts3.arts.AtmField | None = None, surface_field: pyarts3.arts.SurfaceField | None = None, propagation_matrix_agenda: pyarts3.arts.Agenda | None = None, depolarization_factor: pyarts3.arts.Numeric | None = None, hse_derivative: pyarts3.arts.Index | None = None) None

Add suns to ray_path_spectral_radiance_source.

Author: Richard Larsson

Used by wrapper method

Parameters:
  • ray_path_spectral_radiance_scattering (ArrayOfStokvecVector, optional) – Spectral radiance scattered into the propagation path. See ray_path_spectral_radiance_scattering, defaults to self.ray_path_spectral_radiance_scattering [OUT]

  • ray_path_propagation_matrix_scattering (ArrayOfPropmatVector, optional) – Propagation matrices along the propagation path for scattering. See ray_path_propagation_matrix_scattering, defaults to self.ray_path_propagation_matrix_scattering [IN]

  • ray_path (ArrayOfPropagationPathPoint, optional) – A list path points making up a propagation path. See ray_path, defaults to self.ray_path [IN]

  • ray_path_suns_path (ArrayOfArrayOfArrayOfPropagationPathPoint, optional) – A list of paths to the suns from the ray path. See ray_path_suns_path, defaults to self.ray_path_suns_path [IN]

  • suns (ArrayOfSun, optional) – A list of Sun. See suns, defaults to self.suns [IN]

  • jacobian_targets (JacobianTargets, optional) – A list of targets for the Jacobian Matrix calculations. See jacobian_targets, defaults to self.jacobian_targets [IN]

  • frequency_grid (AscendingGrid, optional) – A single frequency grid. See frequency_grid, defaults to self.frequency_grid [IN]

  • atmospheric_field (AtmField, optional) – An atmospheric field in ARTS. See atmospheric_field, defaults to self.atmospheric_field [IN]

  • surface_field (SurfaceField, optional) – The surface field describes the surface properties. See surface_field, defaults to self.surface_field [IN]

  • propagation_matrix_agenda (Agenda, optional) – Compute the propagation matrix, the non-LTE source vector, and their derivatives. See propagation_matrix_agenda, defaults to self.propagation_matrix_agenda [IN]

  • depolarization_factor (Numeric, optional) – The depolarization factor to use. Defaults to 0 [IN]

  • hse_derivative (Index, optional) – Flag to compute the hypsometric distance derivatives. Defaults to 0 [IN]

ray_path_spectral_radiance_sourceAddScattering(self, ray_path_spectral_radiance_source: pyarts3.arts.ArrayOfStokvecVector | None = None, ray_path_spectral_radiance_scattering: pyarts3.arts.ArrayOfStokvecVector | None = None, ray_path_propagation_matrix: pyarts3.arts.ArrayOfPropmatVector | None = None) None

Adds the scattering part of the propagation matrix to the rest along the path.

The calculations are in parallel if the program is not in parallel already.

Author: Richard Larsson

Used by wrapper method

Parameters:
ray_path_spectral_radiance_sourceFromPropmat(self, ray_path_spectral_radiance_source: pyarts3.arts.ArrayOfStokvecVector | None = None, ray_path_spectral_radiance_source_jacobian: pyarts3.arts.ArrayOfStokvecMatrix | None = None, ray_path_propagation_matrix: pyarts3.arts.ArrayOfPropmatVector | None = None, ray_path_propagation_matrix_source_vector_nonlte: pyarts3.arts.ArrayOfStokvecVector | None = None, ray_path_propagation_matrix_jacobian: pyarts3.arts.ArrayOfPropmatMatrix | None = None, ray_path_propagation_matrix_source_vector_nonlte_jacobian: pyarts3.arts.ArrayOfStokvecMatrix | None = None, ray_path_frequency_grid: pyarts3.arts.ArrayOfAscendingGrid | None = None, ray_path_atmospheric_point: pyarts3.arts.ArrayOfAtmPoint | None = None, jacobian_targets: pyarts3.arts.JacobianTargets | None = None) None

Gets the source term along the path.

Per Stokvec element (single frequency, single temperature, single derivative target), the source term is computed as:

\[\vec{J} = B(T, f) + \mathbf{K}^{-1} \vec{S}\]

and the Jacobian is computed as:

\[\frac{\partial \vec{J}}{\partial x} = \frac{\partial B(T, f)}{\partial x} - \mathbf{K}^{-1} \left( \frac{\partial \mathbf{K}}{\partial x} \mathbf{K}^{-1} - \frac{\partial \vec{S}}{\partial x} \right)\]

where:

Variable

Extracted from ARTS parameter

Meaning

\(\vec{J}\)

ray_path_spectral_radiance_source

The spectral radiance source term along the path.

\(B(T, f)\)

None - this is computed locally

The Planck function at the temperature and frequency.

\(\mathbf{K}\)

ray_path_propagation_matrix

The propagation matrix along the path.

\(\vec{S}\)

ray_path_propagation_matrix_source_vector_nonlte

The non-LTE source vector along the path.

\(\frac{\partial \vec{J}}{\partial x}\)

ray_path_spectral_radiance_source_jacobian

The Jacobian of the spectral radiance source term with respect to the jacobian_targets.

\(\frac{\partial B(T, f)}{\partial x}\)

None - this is computed locally

The Jacobian of the Planck function with respect to the jacobian_targets. Only tempertature is supported.

\(\frac{\partial \mathbf{K}}{\partial x}\)

ray_path_propagation_matrix_jacobian

The Jacobian of the propagation matrix with respect to the jacobian_targets.

\(\frac{\partial \vec{S}}{\partial x}\)

ray_path_propagation_matrix_source_vector_nonlte_jacobian

The Jacobian of the non-LTE source vector with respect to the jacobian_targets.

\(x\)

jacobian_targets

The targets for the Jacobian computation.

\(T\)

ray_path_atmospheric_point

The temperature at the atmospheric point along the path.

\(f\)

ray_path_frequency_grid

The frequency grid at the atmospheric point along the path.

The output dimensions are:

Author: Richard Larsson

Used by wrapper methods

Parameters:
ray_path_suns_pathFromPathObserver(self, ray_path_suns_path: pyarts3.arts.ArrayOfArrayOfArrayOfPropagationPathPoint | None = None, surface_field: pyarts3.arts.SurfaceField | None = None, ray_path_observer_agenda: pyarts3.arts.Agenda | None = None, ray_path: pyarts3.arts.ArrayOfPropagationPathPoint | None = None, suns: pyarts3.arts.ArrayOfSun | None = None, angle_cut: pyarts3.arts.Numeric | None = None, refinement: pyarts3.arts.Index | None = None, just_hit: pyarts3.arts.Index | None = None) None

Wraps sun_pathFromObserverAgenda() for all paths to all suns.

Author: Richard Larsson

Parameters:
  • ray_path_suns_path (ArrayOfArrayOfArrayOfPropagationPathPoint, optional) – A list of paths to the suns from the ray path. See ray_path_suns_path, defaults to self.ray_path_suns_path [OUT]

  • surface_field (SurfaceField, optional) – The surface field describes the surface properties. See surface_field, defaults to self.surface_field [IN]

  • ray_path_observer_agenda (Agenda, optional) – Get the propagation path as it is obeserved. See ray_path_observer_agenda, defaults to self.ray_path_observer_agenda [IN]

  • ray_path (ArrayOfPropagationPathPoint, optional) – A list path points making up a propagation path. See ray_path, defaults to self.ray_path [IN]

  • suns (ArrayOfSun, optional) – A list of Sun. See suns, defaults to self.suns [IN]

  • angle_cut (Numeric, optional) – The angle delta-cutoff in the iterative solver [0.0, …]. Defaults to 0 [IN]

  • refinement (Index, optional) – The refinement of the search algorithm (twice the power of this is the resultion). Defaults to 1 [IN]

  • just_hit (Index, optional) – Whether or not it is enough to just hit the sun or if better accuracy is needed. Defaults to 0 [IN]

ray_path_transmission_matrixFromPath(self, ray_path_transmission_matrix: pyarts3.arts.ArrayOfMuelmatVector | None = None, ray_path_transmission_matrix_jacobian: pyarts3.arts.ArrayOfMuelmatTensor3 | None = None, ray_path_propagation_matrix: pyarts3.arts.ArrayOfPropmatVector | None = None, ray_path_propagation_matrix_jacobian: pyarts3.arts.ArrayOfPropmatMatrix | None = None, ray_path: pyarts3.arts.ArrayOfPropagationPathPoint | None = None, ray_path_atmospheric_point: pyarts3.arts.ArrayOfAtmPoint | None = None, surface_field: pyarts3.arts.SurfaceField | None = None, jacobian_targets: pyarts3.arts.JacobianTargets | None = None, hse_derivative: pyarts3.arts.Index | None = None) None

Gets the transmission matrix in layers along the path.

The assumption is that each path variable forms a layer from the ray path. So there is a reduction in size by one. A demand therefore is that there are at least 2 points in the path.

The derivatives first dimensions are also 2, the first for the derivative wrt the level before and one for the level after.

Author: Richard Larsson

Used by wrapper methods

Parameters:
ray_path_transmission_matrix_cumulativeFromPath(self, ray_path_transmission_matrix_cumulative: pyarts3.arts.ArrayOfMuelmatVector | None = None, ray_path_transmission_matrix: pyarts3.arts.ArrayOfMuelmatVector | None = None) None

Sets ray_path_transmission_matrix_cumulative by forward iteration of ray_path_transmission_matrix

Author: Richard Larsson

Used by wrapper methods

Parameters:
ray_path_zeeman_magnetic_fieldFromPath(self, ray_path_zeeman_magnetic_field: pyarts3.arts.ArrayOfVector3 | None = None, ray_path: pyarts3.arts.ArrayOfPropagationPathPoint | None = None, ray_path_atmospheric_point: pyarts3.arts.ArrayOfAtmPoint | None = None) None

Sets a path of Zeeman effect magnetic field properties.

This will return a list of magnetic field properties along the path. The magnetic properties in Zeeman coordinates are the absolute strength [H], the angle between the magnetic field and the line of sight [theta], and the the rotation of the magnetic field in the plane perpendicular to the line of sight [eta].

Author: Richard Larsson

Parameters:
readxml(self, file: str) str

Read variable from file

Parameters:

file (str) – A file that can be read

On Error:

Throws RuntimeError for any failure to read

savexml(self, file: str, type: str = 'ascii', clobber: bool = True) str

Saves variable to file

Parameters:
  • file (str) – The path to which the file is written. Note that several of the options might modify the name or write more files

  • type (str) – Type of file to save. See FileType for options.

  • clobber (bool) – Overwrite existing files or add new file with modified name?

On Error:

Throws RuntimeError for any failure to save

scattering_speciesInit(self, scattering_species: pyarts3.arts.ArrayOfScatteringSpecies | None = None) None

Initialize scattering species.

Author: Richard Larsson

Parameters:

scattering_species (ArrayOfScatteringSpecies, optional) – The scattering species. See scattering_species, defaults to self.scattering_species [OUT]

select_species_listCollectAbsorption(self, select_species_list: pyarts3.arts.ArrayOfSpeciesEnum | None = None, absorption_predefined_model_data: pyarts3.arts.PredefinedModelData | None = None, absorption_xsec_fit_data: pyarts3.arts.ArrayOfXsecRecord | None = None, absorption_cia_data: pyarts3.arts.ArrayOfCIARecord | None = None, absorption_bands: pyarts3.arts.AbsorptionBands | None = None) None

Selects all main absorbers from the absorption data.

Author: Richard Larsson

Parameters:
set(self, name: str, value: object) None

Set the variable to the new value.

sortedIndexOfBands(self, sorted: pyarts3.arts.ArrayOfIndex | None = None, absorption_bands: pyarts3.arts.AbsorptionBands | None = None, criteria: pyarts3.arts.String | None = None, reverse: pyarts3.arts.Index | None = None, temperature: pyarts3.arts.Numeric | None = None) None

Get the sorting of the bands by first quantum identifier then some criteria

The reverse sorting can also be achieved by setting reverse.

See AbsorptionBandSortingOption for valid criteria.

Author: Richard Larsson

Parameters:
  • sorted (ArrayOfIndex) – Sorted band indices (of absorption_bands). Defaults to create and/or use self.sorted : ArrayOfIndex. [OUT]

  • absorption_bands (AbsorptionBands, optional) – Bands of absorption lines for line-by-line (LBL) calculations. See absorption_bands, defaults to self.absorption_bands [IN]

  • criteria (String, optional) – Internal sorting criteria. Defaults to "None" [IN]

  • reverse (Index, optional) – Sort in reverse order if true. Defaults to 0 [IN]

  • temperature (Numeric, optional) – Temperature to use for integrated intensity. Defaults to 296 [IN]

spectral_flux_profileFromPathField(self, spectral_flux_profile: pyarts3.arts.Matrix | None = None, ray_path_field: pyarts3.arts.ArrayOfArrayOfPropagationPathPoint | None = None, atmospheric_field: pyarts3.arts.AtmField | None = None, propagation_matrix_agenda: pyarts3.arts.Agenda | None = None, spectral_radiance_space_agenda: pyarts3.arts.Agenda | None = None, spectral_radiance_surface_agenda: pyarts3.arts.Agenda | None = None, surface_field: pyarts3.arts.SurfaceField | None = None, subsurface_field: pyarts3.arts.SubsurfaceField | None = None, frequency_grid: pyarts3.arts.AscendingGrid | None = None, altitude_grid: pyarts3.arts.AscendingGrid | None = None) None

Computes the spectral flux from a field of paths.

Author: Richard Larsson

Parameters:
  • spectral_flux_profile (Matrix, optional) – An altitude profile of spectral flux. See spectral_flux_profile, defaults to self.spectral_flux_profile [OUT]

  • ray_path_field (ArrayOfArrayOfPropagationPathPoint, optional) – A list of ray_path intended to build up a field of observations. See ray_path_field, defaults to self.ray_path_field [IN]

  • atmospheric_field (AtmField, optional) – An atmospheric field in ARTS. See atmospheric_field, defaults to self.atmospheric_field [IN]

  • propagation_matrix_agenda (Agenda, optional) – Compute the propagation matrix, the non-LTE source vector, and their derivatives. See propagation_matrix_agenda, defaults to self.propagation_matrix_agenda [IN]

  • spectral_radiance_space_agenda (Agenda, optional) – Spectral radiance as seen of space. See spectral_radiance_space_agenda, defaults to self.spectral_radiance_space_agenda [IN]

  • spectral_radiance_surface_agenda (Agenda, optional) – Spectral radiance as seen of the surface. See spectral_radiance_surface_agenda, defaults to self.spectral_radiance_surface_agenda [IN]

  • surface_field (SurfaceField, optional) – The surface field describes the surface properties. See surface_field, defaults to self.surface_field [IN]

  • subsurface_field (SubsurfaceField, optional) – The sub0surface field describes the sub-surface properties. See subsurface_field, defaults to self.subsurface_field [IN]

  • frequency_grid (AscendingGrid, optional) – A single frequency grid. See frequency_grid, defaults to self.frequency_grid [IN]

  • altitude_grid (AscendingGrid, optional) – An ascending list of altitude. Often related to a field or a profile. See altitude_grid, defaults to self.altitude_grid [IN]

spectral_flux_profileFromSpectralRadianceField(self, spectral_flux_profile: pyarts3.arts.Matrix | None = None, spectral_radiance_field: pyarts3.arts.GriddedSpectralField6 | None = None, pol: pyarts3.arts.Stokvec | None = None) None

Computes the spectral flux. The input field must be a profile.

Author: Richard Larsson

Used by wrapper method

Parameters:
  • spectral_flux_profile (Matrix, optional) – An altitude profile of spectral flux. See spectral_flux_profile, defaults to self.spectral_flux_profile [OUT]

  • spectral_radiance_field (GriddedSpectralField6, optional) – The spectral radiance field. See spectral_radiance_field, defaults to self.spectral_radiance_field [IN]

  • pol (Stokvec, optional) – Polarization vector for the spectral flux profile. Defaults to 1 0 0 0 [IN]

spectral_flux_profilePseudo2D(self, spectral_flux_profile: pyarts3.arts.Matrix | None = None, altitude_grid: pyarts3.arts.AscendingGrid | None = None, atmospheric_profile: pyarts3.arts.ArrayOfAtmPoint | None = None, frequency_grid: pyarts3.arts.AscendingGrid | None = None, latitude: pyarts3.arts.Numeric | None = None, longitude: pyarts3.arts.Numeric | None = None, propagation_matrix_agenda: pyarts3.arts.Agenda | None = None, surface_field: pyarts3.arts.SurfaceField | None = None, pol: pyarts3.arts.Stokvec | None = None, dza: pyarts3.arts.Numeric | None = None, consider_limb: pyarts3.arts.Index | None = None, azimuth: pyarts3.arts.Numeric | None = None) None

Computes the spectral flux profile using pseudo-2D geometry

Wrapper calling Methods (in order):

Equivalent (mostly) Python code:

1ws = pyarts.Workspace()
2
3# ...
4
5 ws.zenith_gridProfilePseudo2D()
6 ws.spectral_radiance_fieldProfilePseudo2D()
7 ws.spectral_flux_profileFromSpectralRadianceField()

Author: Richard Larsson

Parameters:
  • spectral_flux_profile (Matrix, optional) – An altitude profile of spectral flux. See spectral_flux_profile, defaults to self.spectral_flux_profile [OUT]

  • altitude_grid (AscendingGrid, optional) – An ascending list of altitude. Often related to a field or a profile. See altitude_grid, defaults to self.altitude_grid [IN]

  • atmospheric_profile (ArrayOfAtmPoint, optional) – An atmospheric profile in ARTS. See atmospheric_profile, defaults to self.atmospheric_profile [IN]

  • frequency_grid (AscendingGrid, optional) – A single frequency grid. See frequency_grid, defaults to self.frequency_grid [IN]

  • latitude (Numeric, optional) – A single latitude. See latitude, defaults to self.latitude [IN]

  • longitude (Numeric, optional) – A single longitude. See longitude, defaults to self.longitude [IN]

  • propagation_matrix_agenda (Agenda, optional) – Compute the propagation matrix, the non-LTE source vector, and their derivatives. See propagation_matrix_agenda, defaults to self.propagation_matrix_agenda [IN]

  • surface_field (SurfaceField, optional) – The surface field describes the surface properties. See surface_field, defaults to self.surface_field [IN]

  • pol (Stokvec, optional) – Polarization vector for the spectral flux profile. Defaults to 1 0 0 0 [IN]

  • dza (Numeric, optional) – The zenith grid max step size. Defaults to 1 [IN]

  • consider_limb (Index, optional) – Whether or not special care is given to the limb. Defaults to 1 [IN]

  • azimuth (Numeric, optional) – The azimuth. Defaults to 0 [IN]

spectral_radianceApplyForwardUnit(self, spectral_radiance: pyarts3.arts.StokvecVector | None = None, frequency_grid: pyarts3.arts.AscendingGrid | None = None, ray_path_point: pyarts3.arts.PropagationPathPoint | None = None, spectral_radiance_transform_operator: pyarts3.arts.SpectralRadianceTransformOperator | None = None) None

Helper to call spectral_radianceApplyUnit() when you do not have spectral_radiance_jacobian.

Author: Richard Larsson

Parameters:
spectral_radianceApplyUnit(self, spectral_radiance: pyarts3.arts.StokvecVector | None = None, spectral_radiance_jacobian: pyarts3.arts.StokvecMatrix | None = None, frequency_grid: pyarts3.arts.AscendingGrid | None = None, ray_path_point: pyarts3.arts.PropagationPathPoint | None = None, spectral_radiance_transform_operator: pyarts3.arts.SpectralRadianceTransformOperator | None = None) None

Applies a unit to spectral_radiance, returning a new field

See SpectralRadianceUnitType for valid use cases and limitations.

This effectively wraps the local creation of a SpectralRadianceTransformOperator call.

Warning

This is a destructive method. Any use of it means that it is undefined behavior to use spectral_radiance or spectral_radiance_jacobian in future methods.

Author: Richard Larsson

Used by wrapper method

Parameters:
spectral_radianceApplyUnitFromSpectralRadiance(self, spectral_radiance: pyarts3.arts.StokvecVector | None = None, spectral_radiance_jacobian: pyarts3.arts.StokvecMatrix | None = None, frequency_grid: pyarts3.arts.AscendingGrid | None = None, ray_path: pyarts3.arts.ArrayOfPropagationPathPoint | None = None, spectral_radiance_transform_operator: pyarts3.arts.SpectralRadianceTransformOperator | None = None) None

Helper method for calling spectral_radianceApplyUnit().

It is common that ray_path is defined but not ray_path_point. This method simply is a convenience wrapper for that use case.

Wrapper calling Methods (in order):

Equivalent (mostly) Python code:

1ws = pyarts.Workspace()
2
3# ...
4
5 ws.ray_path_pointForeground()
6 ws.spectral_radianceApplyUnit()

Author: Richard Larsson

Parameters:
spectral_radianceClearskyBackgroundTransmission(self, spectral_radiance: pyarts3.arts.StokvecVector | None = None, spectral_radiance_jacobian: pyarts3.arts.StokvecMatrix | None = None, atmospheric_field: pyarts3.arts.AtmField | None = None, frequency_grid: pyarts3.arts.AscendingGrid | None = None, jacobian_targets: pyarts3.arts.JacobianTargets | None = None, propagation_matrix_agenda: pyarts3.arts.Agenda | None = None, ray_path: pyarts3.arts.ArrayOfPropagationPathPoint | None = None, spectral_radiance_background: pyarts3.arts.StokvecVector | None = None, spectral_radiance_background_jacobian: pyarts3.arts.StokvecMatrix | None = None, surface_field: pyarts3.arts.SurfaceField | None = None, hse_derivative: pyarts3.arts.Index | None = None) None

Computes clearsky transmission of spectral radiances

Wrapper calling Methods (in order):

Equivalent (mostly) Python code:

 1ws = pyarts.Workspace()
 2
 3# ...
 4
 5 ws.ray_path_pointBackground()
 6 ws.ray_path_atmospheric_pointFromPath()
 7 ws.ray_path_frequency_gridFromPath()
 8 ws.ray_path_propagation_matrixFromPath()
 9 ws.ray_path_transmission_matrixFromPath()
10 ws.ray_path_transmission_matrix_cumulativeFromPath()
11 ws.transmission_matrix_backgroundFromPathPropagationBack()
12 ws.spectral_radianceCumulativeTransmission()
13 ws.spectral_radiance_jacobianFromBackground()
14 ws.spectral_radiance_jacobianAddPathPropagation()

Author: Richard Larsson

Parameters:
spectral_radianceClearskyEmission(self, spectral_radiance: pyarts3.arts.StokvecVector | None = None, spectral_radiance_jacobian: pyarts3.arts.StokvecMatrix | None = None, atmospheric_field: pyarts3.arts.AtmField | None = None, frequency_grid: pyarts3.arts.AscendingGrid | None = None, jacobian_targets: pyarts3.arts.JacobianTargets | None = None, propagation_matrix_agenda: pyarts3.arts.Agenda | None = None, ray_path: pyarts3.arts.ArrayOfPropagationPathPoint | None = None, spectral_radiance_space_agenda: pyarts3.arts.Agenda | None = None, spectral_radiance_surface_agenda: pyarts3.arts.Agenda | None = None, subsurface_field: pyarts3.arts.SubsurfaceField | None = None, surface_field: pyarts3.arts.SurfaceField | None = None, hse_derivative: pyarts3.arts.Index | None = None) None

Computes clearsky emission of spectral radiances

Wrapper calling Methods (in order):

Equivalent (mostly) Python code:

 1ws = pyarts.Workspace()
 2
 3# ...
 4
 5 ws.ray_path_pointBackground()
 6 ws.spectral_radiance_backgroundAgendasAtEndOfPath()
 7 ws.ray_path_atmospheric_pointFromPath()
 8 ws.ray_path_frequency_gridFromPath()
 9 ws.ray_path_propagation_matrixFromPath()
10 ws.ray_path_transmission_matrixFromPath()
11 ws.ray_path_transmission_matrix_cumulativeFromPath()
12 ws.ray_path_spectral_radiance_sourceFromPropmat()
13 ws.transmission_matrix_backgroundFromPathPropagationBack()
14 ws.spectral_radianceStepByStepEmission()
15 ws.spectral_radiance_jacobianFromBackground()
16 ws.spectral_radiance_jacobianAddPathPropagation()

Author: Richard Larsson

Parameters:
  • spectral_radiance (StokvecVector, optional) – A spectral radiance vector. See spectral_radiance, defaults to self.spectral_radiance [OUT]

  • spectral_radiance_jacobian (StokvecMatrix, optional) – Jacobian of spectral_radiance with respect to jacobian_targets. See spectral_radiance_jacobian, defaults to self.spectral_radiance_jacobian [OUT]

  • atmospheric_field (AtmField, optional) – An atmospheric field in ARTS. See atmospheric_field, defaults to self.atmospheric_field [IN]

  • frequency_grid (AscendingGrid, optional) – A single frequency grid. See frequency_grid, defaults to self.frequency_grid [IN]

  • jacobian_targets (JacobianTargets, optional) – A list of targets for the Jacobian Matrix calculations. See jacobian_targets, defaults to self.jacobian_targets [IN]

  • propagation_matrix_agenda (Agenda, optional) – Compute the propagation matrix, the non-LTE source vector, and their derivatives. See propagation_matrix_agenda, defaults to self.propagation_matrix_agenda [IN]

  • ray_path (ArrayOfPropagationPathPoint, optional) – A list path points making up a propagation path. See ray_path, defaults to self.ray_path [IN]

  • spectral_radiance_space_agenda (Agenda, optional) – Spectral radiance as seen of space. See spectral_radiance_space_agenda, defaults to self.spectral_radiance_space_agenda [IN]

  • spectral_radiance_surface_agenda (Agenda, optional) – Spectral radiance as seen of the surface. See spectral_radiance_surface_agenda, defaults to self.spectral_radiance_surface_agenda [IN]

  • subsurface_field (SubsurfaceField, optional) – The sub0surface field describes the sub-surface properties. See subsurface_field, defaults to self.subsurface_field [IN]

  • surface_field (SurfaceField, optional) – The surface field describes the surface properties. See surface_field, defaults to self.surface_field [IN]

  • hse_derivative (Index, optional) – Flag to compute the hypsometric distance derivatives. Defaults to 0 [IN]

spectral_radianceClearskyRayleighScattering(self, spectral_radiance: pyarts3.arts.StokvecVector | None = None, spectral_radiance_jacobian: pyarts3.arts.StokvecMatrix | None = None, atmospheric_field: pyarts3.arts.AtmField | None = None, frequency_grid: pyarts3.arts.AscendingGrid | None = None, jacobian_targets: pyarts3.arts.JacobianTargets | None = None, propagation_matrix_agenda: pyarts3.arts.Agenda | None = None, propagation_matrix_scattering_agenda: pyarts3.arts.Agenda | None = None, ray_path: pyarts3.arts.ArrayOfPropagationPathPoint | None = None, ray_path_suns_path: pyarts3.arts.ArrayOfArrayOfArrayOfPropagationPathPoint | None = None, spectral_radiance_space_agenda: pyarts3.arts.Agenda | None = None, spectral_radiance_surface_agenda: pyarts3.arts.Agenda | None = None, subsurface_field: pyarts3.arts.SubsurfaceField | None = None, suns: pyarts3.arts.ArrayOfSun | None = None, surface_field: pyarts3.arts.SurfaceField | None = None, hse_derivative: pyarts3.arts.Index | None = None, depolarization_factor: pyarts3.arts.Numeric | None = None) None

Computes clearsky emission of spectral radiances with solar Rayleigh scattering

Wrapper calling Methods (in order):

Equivalent (mostly) Python code:

 1ws = pyarts.Workspace()
 2
 3# ...
 4
 5 ws.ray_path_pointBackground()
 6 ws.spectral_radiance_backgroundAgendasAtEndOfPath()
 7 ws.ray_path_atmospheric_pointFromPath()
 8 ws.ray_path_frequency_gridFromPath()
 9 ws.ray_path_propagation_matrixFromPath()
10 ws.ray_path_propagation_matrix_scatteringFromPath()
11 ws.ray_path_propagation_matrixAddScattering()
12 ws.ray_path_transmission_matrixFromPath()
13 ws.ray_path_transmission_matrix_cumulativeFromPath()
14 ws.ray_path_spectral_radiance_sourceFromPropmat()
15 ws.ray_path_spectral_radiance_scatteringSunsFirstOrderRayleigh()
16 ws.ray_path_spectral_radiance_sourceAddScattering()
17 ws.transmission_matrix_backgroundFromPathPropagationBack()
18 ws.spectral_radianceStepByStepEmission()
19 ws.spectral_radiance_jacobianFromBackground()
20 ws.spectral_radiance_jacobianAddPathPropagation()

Author: Richard Larsson

Parameters:
spectral_radianceClearskyTransmission(self, spectral_radiance: pyarts3.arts.StokvecVector | None = None, spectral_radiance_jacobian: pyarts3.arts.StokvecMatrix | None = None, atmospheric_field: pyarts3.arts.AtmField | None = None, frequency_grid: pyarts3.arts.AscendingGrid | None = None, jacobian_targets: pyarts3.arts.JacobianTargets | None = None, propagation_matrix_agenda: pyarts3.arts.Agenda | None = None, ray_path: pyarts3.arts.ArrayOfPropagationPathPoint | None = None, spectral_radiance_space_agenda: pyarts3.arts.Agenda | None = None, spectral_radiance_surface_agenda: pyarts3.arts.Agenda | None = None, subsurface_field: pyarts3.arts.SubsurfaceField | None = None, surface_field: pyarts3.arts.SurfaceField | None = None, hse_derivative: pyarts3.arts.Index | None = None) None

Computes clearsky transmission of spectral radiances

Wrapper calling Methods (in order):

Equivalent (mostly) Python code:

 1ws = pyarts.Workspace()
 2
 3# ...
 4
 5 ws.ray_path_pointBackground()
 6 ws.spectral_radiance_backgroundAgendasAtEndOfPath()
 7 ws.ray_path_atmospheric_pointFromPath()
 8 ws.ray_path_frequency_gridFromPath()
 9 ws.ray_path_propagation_matrixFromPath()
10 ws.ray_path_transmission_matrixFromPath()
11 ws.ray_path_transmission_matrix_cumulativeFromPath()
12 ws.transmission_matrix_backgroundFromPathPropagationBack()
13 ws.spectral_radianceCumulativeTransmission()
14 ws.spectral_radiance_jacobianFromBackground()
15 ws.spectral_radiance_jacobianAddPathPropagation()

Author: Richard Larsson

Parameters:
  • spectral_radiance (StokvecVector, optional) – A spectral radiance vector. See spectral_radiance, defaults to self.spectral_radiance [OUT]

  • spectral_radiance_jacobian (StokvecMatrix, optional) – Jacobian of spectral_radiance with respect to jacobian_targets. See spectral_radiance_jacobian, defaults to self.spectral_radiance_jacobian [OUT]

  • atmospheric_field (AtmField, optional) – An atmospheric field in ARTS. See atmospheric_field, defaults to self.atmospheric_field [IN]

  • frequency_grid (AscendingGrid, optional) – A single frequency grid. See frequency_grid, defaults to self.frequency_grid [IN]

  • jacobian_targets (JacobianTargets, optional) – A list of targets for the Jacobian Matrix calculations. See jacobian_targets, defaults to self.jacobian_targets [IN]

  • propagation_matrix_agenda (Agenda, optional) – Compute the propagation matrix, the non-LTE source vector, and their derivatives. See propagation_matrix_agenda, defaults to self.propagation_matrix_agenda [IN]

  • ray_path (ArrayOfPropagationPathPoint, optional) – A list path points making up a propagation path. See ray_path, defaults to self.ray_path [IN]

  • spectral_radiance_space_agenda (Agenda, optional) – Spectral radiance as seen of space. See spectral_radiance_space_agenda, defaults to self.spectral_radiance_space_agenda [IN]

  • spectral_radiance_surface_agenda (Agenda, optional) – Spectral radiance as seen of the surface. See spectral_radiance_surface_agenda, defaults to self.spectral_radiance_surface_agenda [IN]

  • subsurface_field (SubsurfaceField, optional) – The sub0surface field describes the sub-surface properties. See subsurface_field, defaults to self.subsurface_field [IN]

  • surface_field (SurfaceField, optional) – The surface field describes the surface properties. See surface_field, defaults to self.surface_field [IN]

  • hse_derivative (Index, optional) – Flag to compute the hypsometric distance derivatives. Defaults to 0 [IN]

spectral_radianceCumulativeTransmission(self, spectral_radiance: pyarts3.arts.StokvecVector | None = None, ray_path_spectral_radiance_jacobian: pyarts3.arts.ArrayOfStokvecMatrix | None = None, ray_path_transmission_matrix: pyarts3.arts.ArrayOfMuelmatVector | None = None, ray_path_transmission_matrix_cumulative: pyarts3.arts.ArrayOfMuelmatVector | None = None, ray_path_transmission_matrix_jacobian: pyarts3.arts.ArrayOfMuelmatTensor3 | None = None, spectral_radiance_background: pyarts3.arts.StokvecVector | None = None) None

Gets the spectral radiance from the path transmission.

Also get the Jacobian of the spectral radiance with regards to the path parameters.

Author: Richard Larsson

Used by wrapper methods

Parameters:
spectral_radianceDefaultTransmission(self, spectral_radiance: pyarts3.arts.StokvecVector | None = None, spectral_radiance_jacobian: pyarts3.arts.StokvecMatrix | None = None, frequency_grid: pyarts3.arts.AscendingGrid | None = None, jacobian_targets: pyarts3.arts.JacobianTargets | None = None) None

Sets default spectral_radiance and spectral_radiance_jacobian for transmission.

The Jacobian variable is all 0s, the background is [1 0 0 0] everywhere

Author: Richard Larsson

Parameters:
spectral_radianceFlatScalarReflectance(self, spectral_radiance: pyarts3.arts.StokvecVector | None = None, spectral_radiance_jacobian: pyarts3.arts.StokvecMatrix | None = None, frequency_grid: pyarts3.arts.AscendingGrid | None = None, atmospheric_field: pyarts3.arts.AtmField | None = None, surface_field: pyarts3.arts.SurfaceField | None = None, subsurface_field: pyarts3.arts.SubsurfaceField | None = None, jacobian_targets: pyarts3.arts.JacobianTargets | None = None, ray_path_point: pyarts3.arts.PropagationPathPoint | None = None, spectral_radiance_observer_agenda: pyarts3.arts.Agenda | None = None) None

Set surface spectral radiance from Planck function of the surface temperature and the reflectance of incoming radiation

Gets incoming radiation by placing an observer at the surface looking at the specular reflection of the outgoing radiation (as described by ray_path_point)

The surface field must contain the surface temperature and the reflectance. The reflectance lives under the SurfacePropertyTag key “flat scalar reflectance”.

Author: Richard Larsson

Parameters:
spectral_radianceIntegrateDisort(self, spectral_radiance: pyarts3.arts.StokvecVector | None = None, disort_spectral_radiance_field: pyarts3.arts.DisortRadiance | None = None, disort_quadrature: pyarts3.arts.ZenithGriddedField1 | None = None) None

Integrate Disort spectral radiance.

Author: Richard Larsson

Parameters:
spectral_radianceStepByStepEmission(self, spectral_radiance: pyarts3.arts.StokvecVector | None = None, ray_path_spectral_radiance_jacobian: pyarts3.arts.ArrayOfStokvecMatrix | None = None, ray_path_transmission_matrix: pyarts3.arts.ArrayOfMuelmatVector | None = None, ray_path_transmission_matrix_cumulative: pyarts3.arts.ArrayOfMuelmatVector | None = None, ray_path_transmission_matrix_jacobian: pyarts3.arts.ArrayOfMuelmatTensor3 | None = None, ray_path_spectral_radiance_source: pyarts3.arts.ArrayOfStokvecVector | None = None, ray_path_spectral_radiance_source_jacobian: pyarts3.arts.ArrayOfStokvecMatrix | None = None, spectral_radiance_background: pyarts3.arts.StokvecVector | None = None) None

Gets the spectral radiance from the path.

This uses a step-by-step solver to propagate background radiation along the path.

Author: Richard Larsson

Used by wrapper methods

Parameters:
spectral_radianceSunOrCosmicBackground(self, spectral_radiance: pyarts3.arts.StokvecVector | None = None, frequency_grid: pyarts3.arts.AscendingGrid | None = None, sun_path: pyarts3.arts.ArrayOfPropagationPathPoint | None = None, sun: pyarts3.arts.Sun | None = None, surface_field: pyarts3.arts.SurfaceField | None = None) None

Get the spectral radiance of a sun or of the cosmic background if the sun is not hit.

Author: Richard Larsson

Parameters:
  • spectral_radiance (StokvecVector, optional) – A spectral radiance vector. See spectral_radiance, defaults to self.spectral_radiance [OUT]

  • frequency_grid (AscendingGrid, optional) – A single frequency grid. See frequency_grid, defaults to self.frequency_grid [IN]

  • sun_path (ArrayOfPropagationPathPoint, optional) – A path to a sun if it is visible. See sun_path, defaults to self.sun_path [IN]

  • sun (Sun, optional) – A sun. See sun, defaults to self.sun [IN]

  • surface_field (SurfaceField, optional) – The surface field describes the surface properties. See surface_field, defaults to self.surface_field [IN]

spectral_radianceSunsOrCosmicBackground(self, spectral_radiance: pyarts3.arts.StokvecVector | None = None, frequency_grid: pyarts3.arts.AscendingGrid | None = None, ray_path_point: pyarts3.arts.PropagationPathPoint | None = None, suns: pyarts3.arts.ArrayOfSun | None = None, surface_field: pyarts3.arts.SurfaceField | None = None) None

Get the spectral radiance of a sun or of the cosmic background if no sun is hit.

Note that only the first sun is used if multiple suns are defined, so it is advantageous to have sorted suns by distance before running this code.

Author: Richard Larsson

Parameters:
spectral_radianceSurfaceBlackbody(self, spectral_radiance: pyarts3.arts.StokvecVector | None = None, spectral_radiance_jacobian: pyarts3.arts.StokvecMatrix | None = None, frequency_grid: pyarts3.arts.AscendingGrid | None = None, surface_field: pyarts3.arts.SurfaceField | None = None, jacobian_targets: pyarts3.arts.JacobianTargets | None = None, ray_path_point: pyarts3.arts.PropagationPathPoint | None = None) None

Set surface spectral radiance from Planck function of the surface temperature

Author: Richard Larsson

Parameters:
spectral_radianceUniformCosmicBackground(self, spectral_radiance: pyarts3.arts.StokvecVector | None = None, frequency_grid: pyarts3.arts.AscendingGrid | None = None) None

Background spectral radiance is from a uniform cosmic background temperature.

Author: Richard Larsson

Parameters:
spectral_radiance_backgroundAgendasAtEndOfPath(self, spectral_radiance_background: pyarts3.arts.StokvecVector | None = None, spectral_radiance_background_jacobian: pyarts3.arts.StokvecMatrix | None = None, frequency_grid: pyarts3.arts.AscendingGrid | None = None, jacobian_targets: pyarts3.arts.JacobianTargets | None = None, ray_path_point: pyarts3.arts.PropagationPathPoint | None = None, surface_field: pyarts3.arts.SurfaceField | None = None, subsurface_field: pyarts3.arts.SubsurfaceField | None = None, spectral_radiance_space_agenda: pyarts3.arts.Agenda | None = None, spectral_radiance_surface_agenda: pyarts3.arts.Agenda | None = None) None

Computes the background radiation.

Author: Richard Larsson

Used by wrapper methods

Parameters:
spectral_radiance_fieldFromOperatorPath(self, spectral_radiance_field: pyarts3.arts.GriddedSpectralField6 | None = None, spectral_radiance_operator: pyarts3.arts.SpectralRadianceOperator | None = None, ray_path_observer_agenda: pyarts3.arts.Agenda | None = None, frequency_grid: pyarts3.arts.AscendingGrid | None = None, zenith_grid: pyarts3.arts.ZenithGrid | None = None, azimuth_grid: pyarts3.arts.AzimuthGrid | None = None) None

Computes the spectral radiance field using ray_path_observer_agenda.

Each point is in computed individually, so there will be zenith x azimuth x altitude x latitude x longitude x frequency number of calculations. The positional arguments are taken from spectral_radiance_operator.

If the code is not already in parallel operation mode when this method is called, the first 5 dimensions are computed in parallel.

Author: Richard Larsson

Parameters:
spectral_radiance_fieldFromOperatorPlanarGeometric(self, spectral_radiance_field: pyarts3.arts.GriddedSpectralField6 | None = None, spectral_radiance_operator: pyarts3.arts.SpectralRadianceOperator | None = None, frequency_grid: pyarts3.arts.AscendingGrid | None = None, zenith_grid: pyarts3.arts.ZenithGrid | None = None, azimuth_grid: pyarts3.arts.AzimuthGrid | None = None) None

Computes the spectral radiance field assuming planar geometric paths

A planar geometric path is just defined by a 1D atmospheric profile. If the spectral_radiance_operator contains more than one latitude and/or longitude point, their altitude profiles are treated independently.

Limitations:

  • The zenith grid is not allowed to contain the value 90 degrees.

Author: Richard Larsson

Parameters:
spectral_radiance_fieldProfilePseudo2D(self, spectral_radiance_field: pyarts3.arts.GriddedSpectralField6 | None = None, propagation_matrix_agenda: pyarts3.arts.Agenda | None = None, atmospheric_profile: pyarts3.arts.ArrayOfAtmPoint | None = None, surface_field: pyarts3.arts.SurfaceField | None = None, frequency_grid: pyarts3.arts.AscendingGrid | None = None, zenith_grid: pyarts3.arts.ZenithGrid | None = None, altitude_grid: pyarts3.arts.AscendingGrid | None = None, latitude: pyarts3.arts.Numeric | None = None, longitude: pyarts3.arts.Numeric | None = None, azimuth: pyarts3.arts.Numeric | None = None) None

Computes the spectral radiance field assuming a profile and a pseudo-2D path.

A profile is defined as having space blackbody emission from the top and surface temperature blackbody emissision from the surface.

Limb paths are only considered when the zenith angle misses the next lower level using the same mechanism as in zenith_gridProfilePseudo2D().

Author: Richard Larsson

Used by wrapper method

Parameters:
  • spectral_radiance_field (GriddedSpectralField6, optional) – The spectral radiance field. See spectral_radiance_field, defaults to self.spectral_radiance_field [OUT]

  • propagation_matrix_agenda (Agenda, optional) – Compute the propagation matrix, the non-LTE source vector, and their derivatives. See propagation_matrix_agenda, defaults to self.propagation_matrix_agenda [IN]

  • atmospheric_profile (ArrayOfAtmPoint, optional) – An atmospheric profile in ARTS. See atmospheric_profile, defaults to self.atmospheric_profile [IN]

  • surface_field (SurfaceField, optional) – The surface field describes the surface properties. See surface_field, defaults to self.surface_field [IN]

  • frequency_grid (AscendingGrid, optional) – A single frequency grid. See frequency_grid, defaults to self.frequency_grid [IN]

  • zenith_grid (ZenithGrid, optional) – A single zenith angle grid. See zenith_grid, defaults to self.zenith_grid [IN]

  • altitude_grid (AscendingGrid, optional) – An ascending list of altitude. Often related to a field or a profile. See altitude_grid, defaults to self.altitude_grid [IN]

  • latitude (Numeric, optional) – A single latitude. See latitude, defaults to self.latitude [IN]

  • longitude (Numeric, optional) – A single longitude. See longitude, defaults to self.longitude [IN]

  • azimuth (Numeric, optional) – The azimuth. Defaults to 0 [IN]

spectral_radiance_jacobianAddPathPropagation(self, spectral_radiance_jacobian: pyarts3.arts.StokvecMatrix | None = None, ray_path_spectral_radiance_jacobian: pyarts3.arts.ArrayOfStokvecMatrix | None = None, jacobian_targets: pyarts3.arts.JacobianTargets | None = None, atmospheric_field: pyarts3.arts.AtmField | None = None, ray_path: pyarts3.arts.ArrayOfPropagationPathPoint | None = None) None

Adds the propagation variables to spectral_radiance_jacobian

Author: Richard Larsson

Used by wrapper methods

Parameters:
spectral_radiance_jacobianAddSensorJacobianPerturbations(self, spectral_radiance_jacobian: pyarts3.arts.StokvecMatrix | None = None, spectral_radiance: pyarts3.arts.StokvecVector | None = None, measurement_sensor: pyarts3.arts.ArrayOfSensorObsel | None = None, frequency_grid: pyarts3.arts.AscendingGrid | None = None, jacobian_targets: pyarts3.arts.JacobianTargets | None = None, spectral_radiance_observer_position: pyarts3.arts.Vector3 | None = None, spectral_radiance_observer_line_of_sight: pyarts3.arts.Vector2 | None = None, atmospheric_field: pyarts3.arts.AtmField | None = None, surface_field: pyarts3.arts.SurfaceField | None = None, subsurface_field: pyarts3.arts.SubsurfaceField | None = None, spectral_radiance_observer_agenda: pyarts3.arts.Agenda | None = None) None

Adds sensor properties to the spectral_radiance_jacobian.

This is done via perturbation based on the input delta values to the sensor Jacobian targets and a callback to spectral_radiance_observer_agenda with a modified jacobian_targets, making it safe to use this method inside spectral_radiance_observer_agenda.

Author: Richard Larsson

Parameters:
spectral_radiance_jacobianEmpty(self, spectral_radiance_jacobian: pyarts3.arts.StokvecMatrix | None = None, frequency_grid: pyarts3.arts.AscendingGrid | None = None, jacobian_targets: pyarts3.arts.JacobianTargets | None = None) None

Set the cosmic background radiation derivative to empty.

Size : (jacobian_targets, frequency_grid)

Author: Richard Larsson

Parameters:
spectral_radiance_jacobianFromBackground(self, spectral_radiance_jacobian: pyarts3.arts.StokvecMatrix | None = None, spectral_radiance_background_jacobian: pyarts3.arts.StokvecMatrix | None = None, transmission_matrix_background: pyarts3.arts.MuelmatVector | None = None) None

Sets spectral_radiance_jacobian from the background values

Author: Richard Larsson

Used by wrapper methods

Parameters:
spectral_radiance_observer_agendaExecute(self, spectral_radiance: pyarts3.arts.StokvecVector | None = None, spectral_radiance_jacobian: pyarts3.arts.StokvecMatrix | None = None, ray_path: pyarts3.arts.ArrayOfPropagationPathPoint | None = None, frequency_grid: pyarts3.arts.AscendingGrid | None = None, jacobian_targets: pyarts3.arts.JacobianTargets | None = None, spectral_radiance_observer_position: pyarts3.arts.Vector3 | None = None, spectral_radiance_observer_line_of_sight: pyarts3.arts.Vector2 | None = None, atmospheric_field: pyarts3.arts.AtmField | None = None, surface_field: pyarts3.arts.SurfaceField | None = None, subsurface_field: pyarts3.arts.SubsurfaceField | None = None, spectral_radiance_observer_agenda: pyarts3.arts.Agenda | None = None) None

Executes spectral_radiance_observer_agenda, see it for more details

Author: Automatically Generated

Parameters:
spectral_radiance_observer_agendaExecuteOperator(self, spectral_radiance: pyarts3.arts.StokvecVector | None = None, spectral_radiance_jacobian: pyarts3.arts.StokvecMatrix | None = None, ray_path: pyarts3.arts.ArrayOfPropagationPathPoint | None = None, frequency_grid: pyarts3.arts.AscendingGrid | None = None, jacobian_targets: pyarts3.arts.JacobianTargets | None = None, spectral_radiance_observer_position: pyarts3.arts.Vector3 | None = None, spectral_radiance_observer_line_of_sight: pyarts3.arts.Vector2 | None = None, atmospheric_field: pyarts3.arts.AtmField | None = None, surface_field: pyarts3.arts.SurfaceField | None = None, subsurface_field: pyarts3.arts.SubsurfaceField | None = None, spectral_radiance_observer_agenda_operator: pyarts3.arts.spectral_radiance_observer_agendaOperator | None = None) None

Executes an operator emulating spectral_radiance_observer_agenda, see it, and also spectral_radiance_observer_agendaOperator, for more details

Author: Automatically Generated

Parameters:
spectral_radiance_observer_agendaSet(self, spectral_radiance_observer_agenda: pyarts3.arts.Agenda | None = None, option: pyarts3.arts.String | None = None) None

Set spectral_radiance_observer_agenda to a specific predefined option

Author: Automatically Generated

Parameters:
  • spectral_radiance_observer_agenda (Agenda, optional) – Spectral radiance as seen from the input position and environment. See spectral_radiance_observer_agenda, defaults to self.spectral_radiance_observer_agenda [OUT]

  • option (String, optional) – Choice of generated agenda. Defaults to "Emission" [IN]

Valid options

These are the valid options for the spectral_radiance_observer_agendaSet method. The listed method calls describe the order of the agenda calls for each option.


spectral_radiance_observer_agendaSet(option="Emission")

spectral_radiance_observer_agendaSetOperator(self, spectral_radiance_observer_agenda: pyarts3.arts.Agenda | None = None, f: pyarts3.arts.spectral_radiance_observer_agendaOperator | None = None) None

Set spectral_radiance_observer_agenda to exclusively use provided external operator. See spectral_radiance_observer_agendaOperator for more details.

Author: Automatically Generated

Parameters:
spectral_radiance_operatorClearsky1D(self, spectral_radiance_operator: pyarts3.arts.SpectralRadianceOperator | None = None, atmospheric_field: pyarts3.arts.AtmField | None = None, surface_field: pyarts3.arts.SurfaceField | None = None, altitude_grid: pyarts3.arts.AscendingGrid | None = None, latitude: pyarts3.arts.Numeric | None = None, longitude: pyarts3.arts.Numeric | None = None, cia_extrapolation: pyarts3.arts.Numeric | None = None, cia_robust: pyarts3.arts.Index | None = None) None

Set up a 1D spectral radiance operator

The operator is set up to compute the spectral radiance at any point as seen from a 1D atmospheric profile.

This method will share line-by-line,cross-section, collision-induced absorption, and predefined model data with the workspace (if they exist already when this method is called).

Author: Richard Larsson

Parameters:
  • spectral_radiance_operator (SpectralRadianceOperator, optional) – The spectral radiance operator. See spectral_radiance_operator, defaults to self.spectral_radiance_operator [OUT]

  • atmospheric_field (AtmField, optional) – An atmospheric field in ARTS. See atmospheric_field, defaults to self.atmospheric_field [IN]

  • surface_field (SurfaceField, optional) – The surface field describes the surface properties. See surface_field, defaults to self.surface_field [IN]

  • altitude_grid (AscendingGrid, optional) – An ascending list of altitude. Often related to a field or a profile. See altitude_grid, defaults to self.altitude_grid [IN]

  • latitude (Numeric, optional) – A single latitude. See latitude, defaults to self.latitude [IN]

  • longitude (Numeric, optional) – A single longitude. See longitude, defaults to self.longitude [IN]

  • cia_extrapolation (Numeric, optional) – The extrapolation distance for cia. Defaults to 0 [IN]

  • cia_robust (Index, optional) – The robustness of the cia extrapolation. Defaults to 0 [IN]

spectral_radiance_space_agendaExecute(self, spectral_radiance: pyarts3.arts.StokvecVector | None = None, spectral_radiance_jacobian: pyarts3.arts.StokvecMatrix | None = None, frequency_grid: pyarts3.arts.AscendingGrid | None = None, jacobian_targets: pyarts3.arts.JacobianTargets | None = None, ray_path_point: pyarts3.arts.PropagationPathPoint | None = None, spectral_radiance_space_agenda: pyarts3.arts.Agenda | None = None) None

Executes spectral_radiance_space_agenda, see it for more details

Author: Automatically Generated

Parameters:
spectral_radiance_space_agendaExecuteOperator(self, spectral_radiance: pyarts3.arts.StokvecVector | None = None, spectral_radiance_jacobian: pyarts3.arts.StokvecMatrix | None = None, frequency_grid: pyarts3.arts.AscendingGrid | None = None, jacobian_targets: pyarts3.arts.JacobianTargets | None = None, ray_path_point: pyarts3.arts.PropagationPathPoint | None = None, spectral_radiance_space_agenda_operator: pyarts3.arts.spectral_radiance_space_agendaOperator | None = None) None

Executes an operator emulating spectral_radiance_space_agenda, see it, and also spectral_radiance_space_agendaOperator, for more details

Author: Automatically Generated

Parameters:
spectral_radiance_space_agendaSet(self, spectral_radiance_space_agenda: pyarts3.arts.Agenda | None = None, option: pyarts3.arts.String | None = None) None

Set spectral_radiance_space_agenda to a specific predefined option

Author: Automatically Generated

Parameters:
  • spectral_radiance_space_agenda (Agenda, optional) – Spectral radiance as seen of space. See spectral_radiance_space_agenda, defaults to self.spectral_radiance_space_agenda [OUT]

  • option (String, optional) – Choice of generated agenda. Defaults to "UniformCosmicBackground" [IN]

Valid options

These are the valid options for the spectral_radiance_space_agendaSet method. The listed method calls describe the order of the agenda calls for each option.


spectral_radiance_space_agendaSet(option="UniformCosmicBackground")


spectral_radiance_space_agendaSet(option="SunOrCosmicBackground")


spectral_radiance_space_agendaSet(option="Transmission")

spectral_radiance_space_agendaSetOperator(self, spectral_radiance_space_agenda: pyarts3.arts.Agenda | None = None, f: pyarts3.arts.spectral_radiance_space_agendaOperator | None = None) None

Set spectral_radiance_space_agenda to exclusively use provided external operator. See spectral_radiance_space_agendaOperator for more details.

Author: Automatically Generated

Parameters:
spectral_radiance_surface_agendaExecute(self, spectral_radiance: pyarts3.arts.StokvecVector | None = None, spectral_radiance_jacobian: pyarts3.arts.StokvecMatrix | None = None, frequency_grid: pyarts3.arts.AscendingGrid | None = None, jacobian_targets: pyarts3.arts.JacobianTargets | None = None, ray_path_point: pyarts3.arts.PropagationPathPoint | None = None, surface_field: pyarts3.arts.SurfaceField | None = None, subsurface_field: pyarts3.arts.SubsurfaceField | None = None, spectral_radiance_surface_agenda: pyarts3.arts.Agenda | None = None) None

Executes spectral_radiance_surface_agenda, see it for more details

Author: Automatically Generated

Parameters:
spectral_radiance_surface_agendaExecuteOperator(self, spectral_radiance: pyarts3.arts.StokvecVector | None = None, spectral_radiance_jacobian: pyarts3.arts.StokvecMatrix | None = None, frequency_grid: pyarts3.arts.AscendingGrid | None = None, jacobian_targets: pyarts3.arts.JacobianTargets | None = None, ray_path_point: pyarts3.arts.PropagationPathPoint | None = None, surface_field: pyarts3.arts.SurfaceField | None = None, subsurface_field: pyarts3.arts.SubsurfaceField | None = None, spectral_radiance_surface_agenda_operator: pyarts3.arts.spectral_radiance_surface_agendaOperator | None = None) None

Executes an operator emulating spectral_radiance_surface_agenda, see it, and also spectral_radiance_surface_agendaOperator, for more details

Author: Automatically Generated

Parameters:
spectral_radiance_surface_agendaSet(self, spectral_radiance_surface_agenda: pyarts3.arts.Agenda | None = None, option: pyarts3.arts.String | None = None) None

Set spectral_radiance_surface_agenda to a specific predefined option

Author: Automatically Generated

Parameters:
  • spectral_radiance_surface_agenda (Agenda, optional) – Spectral radiance as seen of the surface. See spectral_radiance_surface_agenda, defaults to self.spectral_radiance_surface_agenda [OUT]

  • option (String, optional) – Choice of generated agenda. Defaults to "Blackbody" [IN]

Valid options

These are the valid options for the spectral_radiance_surface_agendaSet method. The listed method calls describe the order of the agenda calls for each option.


spectral_radiance_surface_agendaSet(option="Blackbody")


spectral_radiance_surface_agendaSet(option="Transmission")


spectral_radiance_surface_agendaSet(option="FlatScalarReflectance")

spectral_radiance_surface_agendaSetOperator(self, spectral_radiance_surface_agenda: pyarts3.arts.Agenda | None = None, f: pyarts3.arts.spectral_radiance_surface_agendaOperator | None = None) None

Set spectral_radiance_surface_agenda to exclusively use provided external operator. See spectral_radiance_surface_agendaOperator for more details.

Author: Automatically Generated

Parameters:
spectral_radiance_transform_operatorSet(self, spectral_radiance_transform_operator: pyarts3.arts.SpectralRadianceTransformOperator | None = None, option: pyarts3.arts.SpectralRadianceUnitType | None = None) None

Creates a SpectralRadianceTransformOperator from a SpectralRadianceUnitType.

Author: Richard Larsson

Parameters:
subsurface_fieldFromModelState(self, subsurface_field: pyarts3.arts.SubsurfaceField | None = None, model_state_vector: pyarts3.arts.Vector | None = None, jacobian_targets: pyarts3.arts.JacobianTargets | None = None) None

Sets subsurface_field to the state of the model.

Author: Richard Larsson

Used by wrapper method

Parameters:
  • subsurface_field (SubsurfaceField, optional) – The sub0surface field describes the sub-surface properties. See subsurface_field, defaults to self.subsurface_field [INOUT]

  • model_state_vector (Vector, optional) – A state vector of the model. See model_state_vector, defaults to self.model_state_vector [IN]

  • jacobian_targets (JacobianTargets, optional) – A list of targets for the Jacobian Matrix calculations. See jacobian_targets, defaults to self.jacobian_targets [IN]

sunBlackbody(self, sun: pyarts3.arts.Sun | None = None, frequency_grid: pyarts3.arts.AscendingGrid | None = None, latitude: pyarts3.arts.Numeric | None = None, longitude: pyarts3.arts.Numeric | None = None, radius: pyarts3.arts.Numeric | None = None, distance: pyarts3.arts.Numeric | None = None, temperature: pyarts3.arts.Numeric | None = None) None

Set sun to blackbody.

Note

For a Sol-like sun there are huge differences in the UV-range between the actual sun spectrum and the blackbody spectrum with the effective temperature of the sun. The blackbody sun strongly overestimates the UV radiation.

Authors: Jon Petersen, Richard Larsson

Parameters:
  • sun (Sun, optional) – A sun. See sun, defaults to self.sun [OUT]

  • frequency_grid (AscendingGrid, optional) – A single frequency grid. See frequency_grid, defaults to self.frequency_grid [IN]

  • latitude (Numeric, optional) – A single latitude. See latitude, defaults to self.latitude [IN]

  • longitude (Numeric, optional) – A single longitude. See longitude, defaults to self.longitude [IN]

  • radius (Numeric, optional) – The radius of the sun in meter. Default is the radius of our sun. . Defaults to 696324200 [IN]

  • distance (Numeric, optional) – The average distance between the sun and the planet in meter. Default value is set to 1 a.u. . Defaults to 149597870700 [IN]

  • temperature (Numeric, optional) – The effective temperature of the suns photosphere in Kelvin. Default is the temperature of our sun - 5772 Kelvin . Defaults to 5772 [IN]

sunFromGrid(self, sun: pyarts3.arts.Sun | None = None, frequency_grid: pyarts3.arts.AscendingGrid | None = None, latitude: pyarts3.arts.Numeric | None = None, longitude: pyarts3.arts.Numeric | None = None, sun_spectrum_raw: pyarts3.arts.GriddedField2 | None = None, radius: pyarts3.arts.Numeric | None = None, distance: pyarts3.arts.Numeric | None = None, temperature: pyarts3.arts.Numeric | None = None, description: pyarts3.arts.String | None = None) None

Extracts a sun spectrum from a field of such data.

The method allows to obtain the sun spectrum by interpolation from a field of such data. The sun spectrum is expected to be stored as the irradiance at the suns photosphere.

Unit:

  • GriddedField2: [W m-2 Hz-1]

  • Vector frequency_grid [Hz]

  • Vector stokes_dim [1]

Dimensions: [frequency_grid, stokes_dim]

This method performs an interpolation onto the frequency_grid. The point of frequency_grid that are outside the data frequency grid are initialized according to planck’s law of the temperature variable. Hence, a temperature of 0 means 0s the edges of the frequency_grid.

Authors: Jon Petersen, Richard Larsson

Parameters:
  • sun (Sun, optional) – A sun. See sun, defaults to self.sun [OUT]

  • frequency_grid (AscendingGrid, optional) – A single frequency grid. See frequency_grid, defaults to self.frequency_grid [IN]

  • latitude (Numeric, optional) – A single latitude. See latitude, defaults to self.latitude [IN]

  • longitude (Numeric, optional) – A single longitude. See longitude, defaults to self.longitude [IN]

  • sun_spectrum_raw (GriddedField2) – A raw spectrum. [IN]

  • radius (Numeric, optional) – The radius of the sun in meter. Default is the radius of our sun. . Defaults to 696324200 [IN]

  • distance (Numeric, optional) – The average distance between the sun and the planet in meter. Default value is set to 1 a.u. . Defaults to 149597870700 [IN]

  • temperature (Numeric, optional) – The effective temperature of the suns photosphere in Kelvin. Default is the temperature of our sun - 5772 Kelvin . Defaults to 5772 [IN]

  • description (String, optional) – A description of the sun. Defaults to "A sun" [IN]

sun_pathFromObserverAgenda(self, sun_path: pyarts3.arts.ArrayOfPropagationPathPoint | None = None, surface_field: pyarts3.arts.SurfaceField | None = None, ray_path_observer_agenda: pyarts3.arts.Agenda | None = None, sun: pyarts3.arts.Sun | None = None, pos: pyarts3.arts.Vector3 | None = None, angle_cut: pyarts3.arts.Numeric | None = None, refinement: pyarts3.arts.Index | None = None, just_hit: pyarts3.arts.Index | None = None) None

Find a path that hits the sun if possible

The algorithm finds the pair of angles with the least error in regards to angular zenith and azimuth offset from the sun. It uses this pair of angles to compute said path. The algorithm is iterative. It first finds the geometric pair of angles pointing at the sun. It then computes the path, using the space-facing path point’s pointing offset relative to the sun to change the angles in the four directions (up, left, right, down) until it finds a better solution. If no better solution is found, the algorithm it refines the angular search to half for every level of refinement above 1, it then stops.

Note that special care is taken to eliminate surface intersections so that part of the sun may still be hit if it is above the horizon. If the sun is entirerly below the horizon, the path will point close to the horizon.

The two control parameters are the angle_cut and just_hit. The angle_cut is the limit in degrees to which the algorithm should search for a better solution. The just_hit is a flag that just returns the first time a path hits the sun.

Author: Richard Larsson

Parameters:
  • sun_path (ArrayOfPropagationPathPoint, optional) – A path to a sun if it is visible. See sun_path, defaults to self.sun_path [OUT]

  • surface_field (SurfaceField, optional) – The surface field describes the surface properties. See surface_field, defaults to self.surface_field [IN]

  • ray_path_observer_agenda (Agenda, optional) – Get the propagation path as it is obeserved. See ray_path_observer_agenda, defaults to self.ray_path_observer_agenda [IN]

  • sun (Sun, optional) – A sun. See sun, defaults to self.sun [IN]

  • pos (Vector3) – An observer position [alt, lat, lon]. [IN]

  • angle_cut (Numeric, optional) – The angle delta-cutoff in the iterative solver [0.0, …]. Defaults to 0 [IN]

  • refinement (Index, optional) – The refinement of the search algorithm (twice the power of this is the resultion). Defaults to 1 [IN]

  • just_hit (Index, optional) – Whether or not it is enough to just hit the sun or if better accuracy is needed. Defaults to 0 [IN]

sunsAddSun(self, suns: pyarts3.arts.ArrayOfSun | None = None, sun: pyarts3.arts.Sun | None = None) None

Add sun to suns, only exist for composability.

Author: Richard Larsson

Parameters:
  • suns (ArrayOfSun, optional) – A list of Sun. See suns, defaults to self.suns [INOUT]

  • sun (Sun, optional) – A sun. See sun, defaults to self.sun [IN]

surface_fieldEarth(self, surface_field: pyarts3.arts.SurfaceField | None = None, model: pyarts3.arts.String | None = None, surface_elevation: pyarts3.arts.Numeric | None = None) None

Earth reference ellipsoids.

The reference ellipsoid is set to model the Earth.

See EarthEllipsoid for valid model

Author: Patrick Eriksson

Parameters:
  • surface_field (SurfaceField, optional) – The surface field describes the surface properties. See surface_field, defaults to self.surface_field [OUT]

  • model (String, optional) – Model ellipsoid to use. Options listed above. Defaults to "Sphere" [IN]

  • surface_elevation (Numeric, optional) – Surface elevation over the full field. Defaults to 0 [IN]

surface_fieldEuropa(self, surface_field: pyarts3.arts.SurfaceField | None = None, model: pyarts3.arts.String | None = None, surface_elevation: pyarts3.arts.Numeric | None = None) None

Europa reference ellipsoids.

The reference ellipsoid is set to model the Europa.

See EuropaEllipsoid for valid model.

Author: Richard Larsson

Parameters:
  • surface_field (SurfaceField, optional) – The surface field describes the surface properties. See surface_field, defaults to self.surface_field [OUT]

  • model (String, optional) – Model ellipsoid to use. Options listed above. Defaults to "Sphere" [IN]

  • surface_elevation (Numeric, optional) – Surface elevation over the full field. Defaults to 0 [IN]

surface_fieldFromModelState(self, surface_field: pyarts3.arts.SurfaceField | None = None, model_state_vector: pyarts3.arts.Vector | None = None, jacobian_targets: pyarts3.arts.JacobianTargets | None = None) None

Sets surface_field to the state of the model.

Author: Richard Larsson

Used by wrapper method

Parameters:
  • surface_field (SurfaceField, optional) – The surface field describes the surface properties. See surface_field, defaults to self.surface_field [INOUT]

  • model_state_vector (Vector, optional) – A state vector of the model. See model_state_vector, defaults to self.model_state_vector [IN]

  • jacobian_targets (JacobianTargets, optional) – A list of targets for the Jacobian Matrix calculations. See jacobian_targets, defaults to self.jacobian_targets [IN]

surface_fieldGanymede(self, surface_field: pyarts3.arts.SurfaceField | None = None, model: pyarts3.arts.String | None = None, surface_elevation: pyarts3.arts.Numeric | None = None) None

Ganymede reference ellipsoids.

See GanymedeEllipsoid for valid model.

Author: Takayoshi Yamada

Parameters:
  • surface_field (SurfaceField, optional) – The surface field describes the surface properties. See surface_field, defaults to self.surface_field [OUT]

  • model (String, optional) – Model ellipsoid to use. Options listed above. Defaults to "Sphere" [IN]

  • surface_elevation (Numeric, optional) – Surface elevation over the full field. Defaults to 0 [IN]

surface_fieldInit(self, surface_field: pyarts3.arts.SurfaceField | None = None, a: pyarts3.arts.Numeric | None = None, b: pyarts3.arts.Numeric | None = None, surface_elevation: pyarts3.arts.Numeric | None = None) None

Manual setting of the reference ellipsoid.

The two values of the reference ellipsoid are set manually. The two arguments correspond directly to first and second element of reference ellipsoid.

Author: Patrick Eriksson

Parameters:
  • surface_field (SurfaceField, optional) – The surface field describes the surface properties. See surface_field, defaults to self.surface_field [OUT]

  • a (Numeric) – Average or equatorial radius. [IN]

  • b (Numeric) – Average or polar radius. [IN]

  • surface_elevation (Numeric, optional) – Surface elevation over the full field. Defaults to 0 [IN]

surface_fieldIo(self, surface_field: pyarts3.arts.SurfaceField | None = None, model: pyarts3.arts.String | None = None, surface_elevation: pyarts3.arts.Numeric | None = None) None

Io reference ellipsoids.

The reference ellipsoid is set to model the Io.

See IoEllipsoid for valid model.

Author: Richard Larsson

Parameters:
  • surface_field (SurfaceField, optional) – The surface field describes the surface properties. See surface_field, defaults to self.surface_field [OUT]

  • model (String, optional) – Model ellipsoid to use. Options listed above. Defaults to "Sphere" [IN]

  • surface_elevation (Numeric, optional) – Surface elevation over the full field. Defaults to 0 [IN]

surface_fieldJupiter(self, surface_field: pyarts3.arts.SurfaceField | None = None, model: pyarts3.arts.String | None = None, surface_elevation: pyarts3.arts.Numeric | None = None) None

Jupiter reference ellipsoids.

The reference ellipsoid is set to model the Jupiter.

See JupiterEllipsoid for valid model.

Author: Patrick Eriksson

Parameters:
  • surface_field (SurfaceField, optional) – The surface field describes the surface properties. See surface_field, defaults to self.surface_field [OUT]

  • model (String, optional) – Model ellipsoid to use. Options listed above. Defaults to "Sphere" [IN]

  • surface_elevation (Numeric, optional) – Surface elevation over the full field. Defaults to 0 [IN]

surface_fieldMars(self, surface_field: pyarts3.arts.SurfaceField | None = None, model: pyarts3.arts.String | None = None, surface_elevation: pyarts3.arts.Numeric | None = None) None

Mars reference ellipsoids.

The reference ellipsoid is set to model the Mars.

See MarsEllipsoid for valid model.

Author: Patrick Eriksson

Parameters:
  • surface_field (SurfaceField, optional) – The surface field describes the surface properties. See surface_field, defaults to self.surface_field [OUT]

  • model (String, optional) – Model ellipsoid to use. Options listed above. Defaults to "Sphere" [IN]

  • surface_elevation (Numeric, optional) – Surface elevation over the full field. Defaults to 0 [IN]

surface_fieldMoon(self, surface_field: pyarts3.arts.SurfaceField | None = None, model: pyarts3.arts.String | None = None, surface_elevation: pyarts3.arts.Numeric | None = None) None

Moon reference ellipsoids.

The reference ellipsoid is set to model the Moon.

See MoonEllipsoid for valid model.

Author: Patrick Eriksson

Parameters:
  • surface_field (SurfaceField, optional) – The surface field describes the surface properties. See surface_field, defaults to self.surface_field [OUT]

  • model (String, optional) – Model ellipsoid to use. Options listed above. Defaults to "Sphere" [IN]

  • surface_elevation (Numeric, optional) – Surface elevation over the full field. Defaults to 0 [IN]

surface_fieldPlanet(self, surface_field: pyarts3.arts.SurfaceField | None = None, option: pyarts3.arts.String | None = None, surface_elevation: pyarts3.arts.Numeric | None = None) None

Initialize the surface field with the ellipsoid of a planet.

See PlanetOrMoonType for valid option.

Author: Richard Larsson

Parameters:
  • surface_field (SurfaceField, optional) – The surface field describes the surface properties. See surface_field, defaults to self.surface_field [OUT]

  • option (String) – Choice of planet or moon. [IN]

  • surface_elevation (Numeric, optional) – Surface elevation over the full field. Defaults to 0 [IN]

surface_fieldVenus(self, surface_field: pyarts3.arts.SurfaceField | None = None, model: pyarts3.arts.String | None = None, surface_elevation: pyarts3.arts.Numeric | None = None) None

Venus reference ellipsoids.

The reference ellipsoid is set to model the Venus.

See VenusEllipsoid for valid model.

Author: Patrick Eriksson

Parameters:
  • surface_field (SurfaceField, optional) – The surface field describes the surface properties. See surface_field, defaults to self.surface_field [OUT]

  • model (String, optional) – Model ellipsoid to use. Options listed above. Defaults to "Sphere" [IN]

  • surface_elevation (Numeric, optional) – Surface elevation over the full field. Defaults to 0 [IN]

swap(self, other: pyarts3.arts.CxxWorkspace) None

Swap the workspace for andother.

transmission_matrix_backgroundFromPathPropagationBack(self, transmission_matrix_background: pyarts3.arts.MuelmatVector | None = None, ray_path_transmission_matrix_cumulative: pyarts3.arts.ArrayOfMuelmatVector | None = None) None

Sets transmission_matrix_background to back of ray_path_transmission_matrix_cumulative.

This is purely compositional and it is better to use pure python code if need this functionality in your own control-flow.

Author: Richard Larsson

Used by wrapper methods

Parameters:
transmission_matrix_backgroundFromPathPropagationFront(self, transmission_matrix_background: pyarts3.arts.MuelmatVector | None = None, ray_path_transmission_matrix_cumulative: pyarts3.arts.ArrayOfMuelmatVector | None = None) None

Sets transmission_matrix_background to front of ray_path_transmission_matrix_cumulative.

This is purely compositional and it is better to use pure python code if need this functionality in your own control-flow.

Author: Richard Larsson

Parameters:
water_equivalent_pressure_operatorMK05(self, water_equivalent_pressure_operator: pyarts3.arts.NumericUnaryOperator | None = None, only_liquid: pyarts3.arts.Index | None = None) None

Sets an operator to compute the water equivalent pressure according to Murphy and Koop, 2005.

Default is setting the saturation pressure to the one with respect to water at temperatures >= 0C, and to the one with respect to ice for <0C. The GIN only_liquid allows you to apply the liquid value at all temperatures.

The saturation pressure with respect to liquid and ice water is calculated according to Eq. 10 and 7, respectively, of: Murphy, D. M., & Koop, T. (2005). Review of the vapour pressures of ice and supercooled water for atmospheric applications. Quarterly Journal of the Royal Meteorological Society, 131(608), 1539-1565.

Author: Patrick Eriksson

Parameters:
zenith_gridProfilePseudo2D(self, zenith_grid: pyarts3.arts.ZenithGrid | None = None, surface_field: pyarts3.arts.SurfaceField | None = None, altitude_grid: pyarts3.arts.AscendingGrid | None = None, latitude: pyarts3.arts.Numeric | None = None, longitude: pyarts3.arts.Numeric | None = None, dza: pyarts3.arts.Numeric | None = None, azimuth: pyarts3.arts.Numeric | None = None, consider_limb: pyarts3.arts.Index | None = None) None

A custom zenith grid for spectral_radiance_fieldProfilePseudo2D()

Author: Richard Larsson

Used by wrapper method

Parameters:
  • zenith_grid (ZenithGrid, optional) – A single zenith angle grid. See zenith_grid, defaults to self.zenith_grid [OUT]

  • surface_field (SurfaceField, optional) – The surface field describes the surface properties. See surface_field, defaults to self.surface_field [IN]

  • altitude_grid (AscendingGrid, optional) – An ascending list of altitude. Often related to a field or a profile. See altitude_grid, defaults to self.altitude_grid [IN]

  • latitude (Numeric, optional) – A single latitude. See latitude, defaults to self.latitude [IN]

  • longitude (Numeric, optional) – A single longitude. See longitude, defaults to self.longitude [IN]

  • dza (Numeric, optional) – The zenith grid max step size. Defaults to 1 [IN]

  • azimuth (Numeric, optional) – The azimuth. Defaults to 0 [IN]

  • consider_limb (Index, optional) – Whether or not special care is given to the limb. Defaults to 1 [IN]

Static Methods

fromxml(file: str) pyarts3.arts.CxxWorkspace

Create variable from file

Parameters:

file (str) – A file that can be read

On Error:

Throws RuntimeError for any failure to read

Attributes

absorption_bands: AbsorptionBands

Bands of absorption lines for line-by-line (LBL) calculations.

See methods that consume this variable for more details on its content.

Input to workspace methods

Modified by workspace methods

Output from workspace methods

Modified by workspace agenda

Related workspace variables

absorption_cia_data: ArrayOfCIARecord

HITRAN Collision-Induced Absorption (CIA) Data.

This variable holds HITRAN CIA data (binary absorption cross-sections). The data itself is described in: Richard, C. et al. (2012), New section of the HITRAN database: Collision-induced absorption (CIA), J. Quant. Spectrosc. Radiat. Transfer, 113, 1276-1285, doi:10.1016/j.jqsrt.2011.11.004.

The binary absorption cross-sections have to be multiplied with the densities of both molecules to get a scalar absorption coefficient.

Dimensions:

The length of this array should be equal to the number of pairs of molecules that have CIA data available. Some methods that split the data might not work as intended otherwise.

Input to workspace methods

Modified by workspace method

Output from workspace methods

Related workspace variables

absorption_lookup_table: AbsorptionLookupTables

Absorption lookup table for scalar gas absorption coefficients.

Precomputing this table replaces the need for the calculation of scalar gas line-by-line absorption.

Input to workspace methods

Modified by workspace methods

Output from workspace methods

Related workspace variables

absorption_predefined_model_data: PredefinedModelData

This contains predefined model data.

Can currently only contain data for new MT CKD models of water.

Input to workspace methods

Modified by workspace method

Output from workspace methods

Related workspace variables

absorption_species: ArrayOfArrayOfSpeciesTag

Tag groups for gas absorption.

This allows the user to set up groups of species tags that are used to load the correct data.

It is only used to let data-reading methods know which species they should read from the available input files.

Input to workspace methods

Output from workspace methods

Related workspace variables

absorption_vector_scattering: StokvecVector

The absorption vector of totally random orientation particles at a single point along a path using spectral representation

Modified by workspace method

Output from workspace methods

Output from workspace agenda

Related workspace variables

absorption_xsec_fit_data: ArrayOfXsecRecord

Fitting model coefficients for cross section species.

Dimensions: [ n_species ]

XsecRecord:

  • species: Name of species

  • version: Fit model version

  • fitcoeffs:

    • GriddedField2: [ n_band_frequencies, n_coeffs ]

    • The fit model:

    • z = p00 + p10*x + p01*y + p20*x^2

    • z = Xsec [m^2]

    • x = T / T0

    • y = P / P0

    • T0 = 1 [K]

    • P0 = 1 [Pa]

    • fitcoeffs(:, 0) p00 [m^2]

    • fitcoeffs(:, 1) p10 [m^2]

    • fitcoeffs(:, 2) p01 [m^2]

    • fitcoeffs(:, 3) p20 [m^2]

  • fitminpressures:

    • Minimum pressure available in source xsec data to generate the fit coefficients.

    • Dimensions: [ n_bands ]

  • fitmaxpressures:

    • Maximum pressure available in source xsec data to generate the fit coefficients.

    • Dimensions: [ n_bands ]

  • fitmintemperatures:

    • Minimum temperature available in source xsec data to generate the fit coefficients.

    • Dimensions: [ n_bands ]

  • fitmintemperatures:

    • Maximum temperature available in source xsec data to generate the fit coefficients.

    • Dimensions: [ n_bands ]

fitminpressures, fitmaxpressures, fitmintemperatures and fitmaxtemperatures are not used to apply the model and solely serve for informational purposes.

Input to workspace methods

Output from workspace methods

Related workspace variables

altitude: Numeric

A single altitude in the atmosphere.

Unit: m

Default value

0

Related workspace variable

altitude_grid: AscendingGrid

An ascending list of altitude. Often related to a field or a profile.

Unit: m

Note

There is no global grid system in ARTS, so beware of the local nature of all grids.

Input to workspace methods

Output from workspace method

Related workspace variables

atmospheric_field: AtmField

An atmospheric field in ARTS.

The atmospheric field defines the altitude of the top-of-the-atmosphere, as well as the variables that are required for the radiative transfer calculations along a path through the atmosphere. The field can be accessed at any altitude, latitude, longitude path that is within the atmosphere to access the relevant atmospheric point data (atmospheric_point).

Note that constraints on the various field parameters may be imposed by extrapolation limitations on the field parameter itself, causing some or large swaths of the atmosphere to be inaccessible.

The atmospheric field may, but does not have to, consist of the following:

  • Temperature - Atmospheric temperatures in Kelvin

  • Pressure - Atmospheric pressure in Pascal

  • Wind - Atmospheric wind field in meters per second

  • Magnetic Field - Magnetic field in Tesla

  • Species content - Usually the volume-mixing ratio of various species, with some exceptions. See SpeciesEnum for more details.

  • Isotopologue ratios - The isotopologue ratios of various species. See SpeciesIsotope for more details.

  • Non-local thermodynamics ratios - Unitless [pure-style] OR Kelvin [vibrational-style] ratios replacing the Boltzman distribution used in the LTE calculations.

  • Scattering species content - See user guide for more information. This is custom data to aid scattering calculations.

Input to workspace methods

Modified by workspace methods

Output from workspace methods

Input to workspace agenda

Modified by workspace agenda

atmospheric_point: AtmPoint

An atmospheric point in ARTS.

The atmospheric point consists of all the relevant atmospheric field data at a discrete point in the atmosphere. It is often extracted from an AtmField at a single altitude-latitude-longitude but may of course be generated manually.

See atmospheric_field for the data that may be available in the atmospheric point.

Input to workspace methods

Output from workspace method

Input to workspace agendas

Related workspace variable

atmospheric_profile: ArrayOfAtmPoint

An atmospheric profile in ARTS.

The atmospheric profile consists of all the relevant atmospheric field data at a discrete profile in the atmosphere. It is often extracted from an AtmField at a single latitude-longitude coordinate but may of course be generated manually.

See atmospheric_field for the data that may be available in the atmospheric point.

The size of the profile is the same as altitude_grid.

Input to workspace methods

Modified by workspace methods

Output from workspace methods

covariance_matrix_diagonal_blocks: JacobianTargetsDiagonalCovarianceMatrixMap

A helper map for setting the covariance matrix.

Input to workspace method

Modified by workspace methods

Output from workspace method

disort_fourier_mode_dimension: Index

The number of Fourier modes for Disort.

Input to workspace methods

Input to workspace agenda

Related workspace variables

disort_legendre_polynomial_dimension: Index

The number of input Legendre polynimials for Disort.

Input to workspace methods

Input to workspace agenda

Related workspace variables

disort_quadrature: ZenithGriddedField1

The quadrature angles for Disort with accompying weights.

Size is disort_quadrature_dimension or zenith angle grid of disort_spectral_radiance_field.

Input to workspace method

Output from workspace methods

Related workspace variables

disort_quadrature_dimension: Index

The quadrature size for Disort.

Input to workspace methods

Input to workspace agenda

Related workspace variables

disort_settings: DisortSettings

Contains the full settings of spectral Disort calculations.

Input to workspace methods

Modified by workspace methods

Output from workspace methods

Output from workspace agenda

Related workspace variables

disort_settings_agenda: Agenda

An agenda for setting up Disort.

The only intent of this Agenda is to simplify the setup of Disort for different scenarios. The output of this Agenda is just that setting.

It is possible to execute disort_settings_agenda directly from the workspace by calling disort_settings_agendaExecute().

As all agendas in ARTS, disort_settings_agenda is also customizable via its operator helper class: disort_settings_agendaOperator. See it, disort_settings_agendaSetOperator(), and disort_settings_agendaExecuteOperator() for more details.

Parameters

disort_settings~pyarts3.arts.DisortSettings

Contains the full settings of spectral Disort calculations. See disort_settings [OUT]

frequency_grid~pyarts3.arts.AscendingGrid

A single frequency grid. See frequency_grid [IN]

ray_path~pyarts3.arts.ArrayOfPropagationPathPoint

A list path points making up a propagation path. See ray_path [IN]

disort_quadrature_dimension~pyarts3.arts.Index

The quadrature size for Disort. See disort_quadrature_dimension [IN]

disort_fourier_mode_dimension~pyarts3.arts.Index

The number of Fourier modes for Disort. See disort_fourier_mode_dimension [IN]

disort_legendre_polynomial_dimension~pyarts3.arts.Index

The number of input Legendre polynimials for Disort. See disort_legendre_polynomial_dimension [IN]

Input to workspace methods

Output from workspace methods

Related workspace variables

disort_spectral_flux_field: DisortFlux

The spectral flux field from Disort.

Input to workspace method

Output from workspace methods

Related workspace variables

disort_spectral_radiance_field: DisortRadiance

The spectral radiance field from Disort.

Input to workspace method

Output from workspace methods

Related workspace variables

do_jacobian: Index

A boolean calculations related to the measurement_jacobian should be ignored.

This variable is limited to very few methods related to the inversion process for OEM(). Note that deep code of ARTS will ignore this variable, so it is not a global switch. Instead, it is used as a switch to clear the jacobian_targets variable, which is used to determine the size of the measurement_jacobian. It is important to be careful with this, as it will mess with the size of the measurement_jacobian and could thus lead to runtime errors being thrown in places where unexpected sizes are encountered.

Default value

1

Input to workspace methods

Input to workspace agendas

Related workspace variables

ecs_data: LinemixingEcsData

Error corrected sudden data

Dimensions: [num Isotopologues] [num Species]

Used in line-by-line calculations requiring ECS data.

Default value

pyarts.arts.LinemixingEcsData()

Input to workspace methods

Modified by workspace methods

Output from workspace method

frequency_grid: AscendingGrid

A single frequency grid.

Units: Hz

Note

There is no global grid system in ARTS, so beware of the local nature of all grids.

Input to workspace methods

Modified by workspace method

Output from workspace method

Input to workspace agendas

Related workspace variables

frequency_grid_wind_shift_jacobian: Vector3

The frequency grid wind shift Jacobian.

Used because all methods inside propagation_matrix_agenda work on the frequency grid, not on the actual wind speed for the sake of wind shift Jacobian calculations.

The order is [df_du, df_dv, df_fw]

Default value

0 0 0

Input to workspace methods

Output from workspace method

Input to workspace agenda

Related workspace variables

gravity_operator: NumericTernaryOperator

The gravity operator.

Usage: gravity = gravity_operator(altitude, latitude, longitude).

Parameters

altitudeNumeric

Altitude in meters.

latitudeNumeric

Latitude in degrees.

longitudeNumeric

Longitude in degrees.

Returns

gravityNumeric

The gravity in m/s \(^2\).

Input to workspace method

Output from workspace method

inversion_iterate_agenda: Agenda

Work in progress …

See OEM().

Note

The output measurement_jacobian size may depend on the do_jacobian input.

It is possible to execute inversion_iterate_agenda directly from the workspace by calling inversion_iterate_agendaExecute().

As all agendas in ARTS, inversion_iterate_agenda is also customizable via its operator helper class: inversion_iterate_agendaOperator. See it, inversion_iterate_agendaSetOperator(), and inversion_iterate_agendaExecuteOperator() for more details.

inversion_iterate_agenda have these constraints ():

  1. On output, the measurement vector and Jacobian must match expected size.

  2. On output, the model state vector and Jacobian must match expected size.

Parameters

atmospheric_field~pyarts3.arts.AtmField

An atmospheric field in ARTS. See atmospheric_field [INOUT]

absorption_bands~pyarts3.arts.AbsorptionBands

Bands of absorption lines for line-by-line (LBL) calculations. See absorption_bands [INOUT]

measurement_sensor~pyarts3.arts.ArrayOfSensorObsel

A list of sensor elements. See measurement_sensor [INOUT]

surface_field~pyarts3.arts.SurfaceField

The surface field describes the surface properties. See surface_field [INOUT]

subsurface_field~pyarts3.arts.SubsurfaceField

The sub0surface field describes the sub-surface properties. See subsurface_field [INOUT]

measurement_vector_fitted~pyarts3.arts.Vector

As measurement_vector, but fitted to the model. See measurement_vector_fitted [OUT]

measurement_jacobian~pyarts3.arts.Matrix

The first order partial derivatives of the measurement_vector. See measurement_jacobian [OUT]

jacobian_targets~pyarts3.arts.JacobianTargets

A list of targets for the Jacobian Matrix calculations. See jacobian_targets [IN]

model_state_vector~pyarts3.arts.Vector

A state vector of the model. See model_state_vector [IN]

do_jacobian~pyarts3.arts.Index

A boolean calculations related to the measurement_jacobian should be ignored. See do_jacobian [IN]

inversion_iterate_agenda_counter~pyarts3.arts.Index

A counter for the inversion iterate agenda. See inversion_iterate_agenda_counter [IN]

Default value

  1. UpdateModelStates()

  2. measurement_inversion_agendaExecute()

  3. Ignore(), using: input = inversion_iterate_agenda_counter

  4. Touch(), using: input = atmospheric_field

  5. Touch(), using: input = absorption_bands

  6. Touch(), using: input = measurement_sensor

  7. Touch(), using: input = surface_field

  8. Touch(), using: input = subsurface_field

Input to workspace methods

Output from workspace methods

Related workspace variable

inversion_iterate_agenda_counter: Index

A counter for the inversion iterate agenda.

Default value

0

Input to workspace methods

Input to workspace agenda

jacobian_targets: JacobianTargets

A list of targets for the Jacobian Matrix calculations.

Default value

"atm": "surf": "line": "sensor": "error":

Input to workspace methods

Modified by workspace methods

Output from workspace methods

Input to workspace agendas

Related workspace variables

latitude: Numeric

A single latitude.

Units: degrees

Default value

0

Input to workspace methods

Output from workspace method

Related workspace variable

latitude_grid: LatGrid

An ascending list of latitude. Often related to a field or a profile.

Units: degrees

Note

There is no global grid system in ARTS, so beware of the local nature of all grids.

Input to workspace methods

Related workspace variables

legendre_degree: Index

The degree of a Legendre polynimial.

Input to workspace methods

Output from workspace method

Input to workspace agenda

longitude: Numeric

A single longitude.

Units: degrees

Default value

0

Input to workspace methods

Output from workspace method

Related workspace variable

longitude_grid: LonGrid

An ascending list of longitude. Often related to a field or a profile.

Units: degrees

Note

There is no global grid system in ARTS, so beware of the local nature of all grids.

Input to workspace methods

Related workspace variables

measurement_averaging_kernel: Matrix

Averaging kernel matrix.

This matrix is the partial derivative of the retrieved state vector with respect to the measurement_vector.

Usage: Used and set by inversion methods.

Input to workspace method

Output from workspace method

Related workspace variables

measurement_gain_matrix: Matrix

Contribution function (or gain) matrix.

This matrix is the partial derivative of the retrieved state vector with respect to the measurement_vector.

Usage: Used and set by inversion methods.

Input to workspace methods

Output from workspace method

Related workspace variables

measurement_inversion_agenda: Agenda

This is a helper Agenda intended for use within inversion_iterate_agenda.

It outputs the measurement_vector_fitted and measurement_jacobian for the current iteration of the inversion. The measurement_vector_fitted is the fitted measurement vector, i.e., the measurement vector that is expected to be observed given the current atmospheric_field, absorption_bands, measurement_sensor, and surface_field. It does not take these as explicit input but via the Workspace mechanism. Within the inversion_iterate_agenda, these will be the local variables.

What is special about this Agenda is that it enforces that the measurement_jacobian is empty on output if do_jacobian evaluates false. Do not use this Agenda if you do not mind having a non-empty measurement_jacobian on output even if do_jacobian evaluates false. Also do not use this Agenda if you wish to squeeze out performance, it does a lot of unnecessary checks and operations that are not always needed.

It is possible to execute measurement_inversion_agenda directly from the workspace by calling measurement_inversion_agendaExecute().

As all agendas in ARTS, measurement_inversion_agenda is also customizable via its operator helper class: measurement_inversion_agendaOperator. See it, measurement_inversion_agendaSetOperator(), and measurement_inversion_agendaExecuteOperator() for more details.

measurement_inversion_agenda have these constraints ():

  1. When do_jacobian evaluates as true, the measurement_jacobian must be non-empty.

Parameters

measurement_vector_fitted~pyarts3.arts.Vector

As measurement_vector, but fitted to the model. See measurement_vector_fitted [OUT]

measurement_jacobian~pyarts3.arts.Matrix

The first order partial derivatives of the measurement_vector. See measurement_jacobian [OUT]

jacobian_targets~pyarts3.arts.JacobianTargets

A list of targets for the Jacobian Matrix calculations. See jacobian_targets [IN]

do_jacobian~pyarts3.arts.Index

A boolean calculations related to the measurement_jacobian should be ignored. See do_jacobian [IN]

Default value

  1. measurement_vector_errorFromModelState()

  2. jacobian_targetsConditionalClear()

  3. measurement_vectorFromSensor()

  4. measurement_jacobianTransformations()

  5. measurement_vectorConditionalAddError()

  6. measurement_vector_fittedFromMeasurement()

Input to workspace method

Output from workspace methods

Related workspace variables

measurement_jacobian: Matrix

The first order partial derivatives of the measurement_vector.

This variable represents the matrix

\[\mathbf{J} = \frac{\partial \vec{y}} {\partial \vec{x}},\]

where \(\vec{y}\) is the measurement_vector and \(\vec{x}\) is the model_state_vector. The size of this variable should thus be the size of measurement_vector times the size of model_state_vector. Please refer to those variables for more information.

Input to workspace method

Modified by workspace methods

Output from workspace methods

Output from workspace agendas

Related workspace variables

measurement_jacobian_error: Matrix

The partial derivatives of the measurement_vector_error.

This is otherwise the same as measurement_jacobian. See it for more details.

Input to workspace method

Output from workspace method

Related workspace variables

measurement_sensor: ArrayOfSensorObsel

A list of sensor elements.

Size is number of elements of the sensor.

Input to workspace methods

Modified by workspace methods

Output from workspace methods

Modified by workspace agenda

Related workspace variables

measurement_vector: Vector

The measurment vector for, e.g., a sensor.

This must often be the same size as measurement_sensor.

The notation in ARTS, for the purpose of OEM(), is that

\[\vec{y} = \mathbf{F}\left(\vec{x}\right) + \vec{y}_\epsilon\left(\vec{x}\right) + \epsilon\]

where \(\mathbf{F}\) is the forward model function of the physics of the simulation space, \(\vec{x}\) is the model_state_vector, \(\vec{y}_\epsilon\) is the measurement_vector_error, and \(\epsilon\) are any additional errors, such as random noise.

Throughout ARTS, measurement_vector have different contextual meanings. These are:

  1. \(\vec{y}\) - i.e., measured data.

  2. \(\vec{y} - \epsilon\) - e.g., the best fit to measured data, measurement_vector_fitted.

  3. \(\mathbf{F}\left(\vec{x}\right)\) - i.e., the physical model of the measurement.

Input to workspace methods

Modified by workspace method

Output from workspace methods

Related workspace variables

measurement_vector_error: Vector

The model measurment vector error for, e.g., a sensor.

This must often be the same size as measurement_sensor.

See measurement_vector for more details. In that notation, this is \(\vec{y}_\epsilon\).

Input to workspace method

Output from workspace method

Related workspace variables

measurement_vector_error_covariance_matrix: CovarianceMatrix

Covariance matrix for observation uncertainties.

Input to workspace methods

Output from workspace method

Related workspace variables

measurement_vector_fitted: Vector

As measurement_vector, but fitted to the model.

This must often be the same size as measurement_sensor.

See measurement_vector for more details. In that notation, and in the notation of OEM(), \(\vec{y}_f \approx \vec{y} - \epsilon\). Or at least this should be the case depending on how good of a fit of \(\vec{x}\) has been produced and if the measurement can be understood properly.

Tip

It is often useful to present \(\vec{y} - \vec{y}_\epsilon\) and \(\vec{y}_f - \vec{y}_\epsilon\) instead of \(\vec{y}_f\) and \(\vec{y}\) directly. This removes the known measurement error from both the data and the fit, showing the physical signal from the target rather than known sensor noise.

Default value

[]

Modified by workspace method

Output from workspace methods

Output from workspace agendas

Related workspace variables

model_state_covariance_matrix: CovarianceMatrix

Covariance matrix of a priori distribution.

Input to workspace methods

Modified by workspace method

Output from workspace methods

Related workspace variables

model_state_vector: Vector

A state vector of the model.

This represents the chosen state of the model. In the notation of measurement_vector and OEM(), \(\vec{x}\) is the model_state_vector.

To choose the state of the model, you must setup jacobian_targets to include the state parameters you want to be able to change.

Default value

[]

Input to workspace methods

Modified by workspace methods

Output from workspace methods

Input to workspace agenda

Related workspace variables

model_state_vector_apriori: Vector

An apriori state vector of the model.

See model_state_vector for more details. This is the state vector that is assumed to be the a priori state of the model. In normal circumstances, this is the state vector that is used to start the inversion process. In OEM(), this is \(\vec{x}_a\).

Input to workspace method

Output from workspace methods

Related workspace variables

nlte_line_flux_profile: QuantumIdentifierVectorMap

A per-line flux profile.

Output from workspace method

Related workspace variables

phase_matrix_scattering_spectral: SpecmatMatrix

The spectral phase matrix of totally random orientation particles at a single point along a path using spectral representation

Modified by workspace method

Output from workspace methods

Output from workspace agenda

Related workspace variables

propagation_matrix: PropmatVector

This contains the fully polarized propagation matrix for the current path point.

The propagation matrix can be used to computed the transmission matrix as:

\[\mathbf{T} = \exp\left(-\mathbf{K} r\right),\]

where \(\mathbf{K}\) is the propagation matrix, and \(r\) is some distance over which it is considered constant.

The unit is [1 / m].

Dimension: frequency_grid.

Modified by workspace methods

Output from workspace methods

Output from workspace agenda

Related workspace variables

propagation_matrix_agenda: Agenda

Compute the propagation matrix, the non-LTE source vector, and their derivatives.

The intent of this agenda is to be the workhorse for the propagation matrix calculations that are happening deep in your ARTS method calls.

Tip

Use propagation_matrix_agendaAuto() after having defined your absorption data to create this agenda. It covers most use-cases.

It is possible to execute propagation_matrix_agenda directly from the workspace by calling propagation_matrix_agendaExecute().

As all agendas in ARTS, propagation_matrix_agenda is also customizable via its operator helper class: propagation_matrix_agendaOperator. See it, propagation_matrix_agendaSetOperator(), and propagation_matrix_agendaExecuteOperator() for more details.

propagation_matrix_agenda have these constraints ():

  1. On output, propagation_matrix has the size of frequency_grid.

  2. On output, propagation_matrix_source_vector_nonlte has the size of frequency_grid.

  3. On output, propagation_matrix_jacobian has the shape of the target-count of jacobian_targets times the size of frequency_grid.

  4. On output, propagation_matrix_source_vector_nonlte_jacobian has the shape of the target-count of jacobian_targets times the size of frequency_grid.

Parameters

propagation_matrix~pyarts3.arts.PropmatVector

This contains the fully polarized propagation matrix for the current path point. See propagation_matrix [OUT]

propagation_matrix_source_vector_nonlte~pyarts3.arts.StokvecVector

The part of the source vector that is due to non-LTE. See propagation_matrix_source_vector_nonlte [OUT]

propagation_matrix_jacobian~pyarts3.arts.PropmatMatrix

Partial derivative of the propagation_matrix with regards to jacobian_targets. See propagation_matrix_jacobian [OUT]

propagation_matrix_source_vector_nonlte_jacobian~pyarts3.arts.StokvecMatrix

Partial derivative of the propagation_matrix_source_vector_nonlte with regards to jacobian_targets. See propagation_matrix_source_vector_nonlte_jacobian [OUT]

frequency_grid~pyarts3.arts.AscendingGrid

A single frequency grid. See frequency_grid [IN]

frequency_grid_wind_shift_jacobian~pyarts3.arts.Vector3

The frequency grid wind shift Jacobian. See frequency_grid_wind_shift_jacobian [IN]

jacobian_targets~pyarts3.arts.JacobianTargets

A list of targets for the Jacobian Matrix calculations. See jacobian_targets [IN]

select_species~pyarts3.arts.SpeciesEnum

Species selection. See select_species [IN]

ray_path_point~pyarts3.arts.PropagationPathPoint

A single path point. See ray_path_point [IN]

atmospheric_point~pyarts3.arts.AtmPoint

An atmospheric point in ARTS. See atmospheric_point [IN]

Input to workspace methods

Output from workspace methods

Related workspace variables

propagation_matrix_jacobian: PropmatMatrix

Partial derivative of the propagation_matrix with regards to jacobian_targets.

The units depend on what is set in jacobian_targets [1 / m / jacobian target’s unit].

Modified by workspace methods

Output from workspace methods

Output from workspace agenda

Related workspace variables

propagation_matrix_scattering: PropmatVector

The propgation matrix of totally random orientation particles at a single point along a path using spectral representation

Modified by workspace methods

Output from workspace methods

Output from workspace agendas

Related workspace variables

propagation_matrix_scattering_agenda: Agenda

Compute the part of the propagation matrix that relates to scattering.

It is possible to execute propagation_matrix_scattering_agenda directly from the workspace by calling propagation_matrix_scattering_agendaExecute().

As all agendas in ARTS, propagation_matrix_scattering_agenda is also customizable via its operator helper class: propagation_matrix_scattering_agendaOperator. See it, propagation_matrix_scattering_agendaSetOperator(), and propagation_matrix_scattering_agendaExecuteOperator() for more details.

propagation_matrix_scattering_agenda have these constraints ():

  1. On output, propagation_matrix_scattering has the size of frequency_grid.

Parameters

propagation_matrix_scattering~pyarts3.arts.PropmatVector

The propgation matrix of totally random orientation particles at a single point along a path using spectral representation. See propagation_matrix_scattering [OUT]

frequency_grid~pyarts3.arts.AscendingGrid

A single frequency grid. See frequency_grid [IN]

atmospheric_point~pyarts3.arts.AtmPoint

An atmospheric point in ARTS. See atmospheric_point [IN]

Default value

  1. propagation_matrix_scatteringInit()

  2. propagation_matrix_scatteringAirSimple()

Input to workspace methods

Output from workspace methods

Related workspace variables

propagation_matrix_scattering_spectral_agenda: Agenda

Get the scattering propagation matrix, the scattering absorption vector, and the scattering spectral phase matrix.

It is possible to execute propagation_matrix_scattering_spectral_agenda directly from the workspace by calling propagation_matrix_scattering_spectral_agendaExecute().

As all agendas in ARTS, propagation_matrix_scattering_spectral_agenda is also customizable via its operator helper class: propagation_matrix_scattering_spectral_agendaOperator. See it, propagation_matrix_scattering_spectral_agendaSetOperator(), and propagation_matrix_scattering_spectral_agendaExecuteOperator() for more details.

propagation_matrix_scattering_spectral_agenda have these constraints ():

  1. On output, propagation_matrix_scattering has the size of frequency_grid.

  2. On output, absorption_vector_scattering has the size of frequency_grid.

  3. On output, phase_matrix_scattering_spectral has the shape of <legendre_degree + 1> times the size of frequency_grid.

Parameters

propagation_matrix_scattering~pyarts3.arts.PropmatVector

The propgation matrix of totally random orientation particles at a single point along a path using spectral representation. See propagation_matrix_scattering [OUT]

absorption_vector_scattering~pyarts3.arts.StokvecVector

The absorption vector of totally random orientation particles at a single point along a path using spectral representation. See absorption_vector_scattering [OUT]

phase_matrix_scattering_spectral~pyarts3.arts.SpecmatMatrix

The spectral phase matrix of totally random orientation particles at a single point along a path using spectral representation. See phase_matrix_scattering_spectral [OUT]

frequency_grid~pyarts3.arts.AscendingGrid

A single frequency grid. See frequency_grid [IN]

atmospheric_point~pyarts3.arts.AtmPoint

An atmospheric point in ARTS. See atmospheric_point [IN]

legendre_degree~pyarts3.arts.Index

The degree of a Legendre polynimial. See legendre_degree [IN]

Default value

  1. propagation_matrix_scatteringSpectralInit()

  2. propagation_matrix_scatteringAddSpectralScatteringSpeciesTRO()

Input to workspace methods

Output from workspace methods

Related workspace variables

propagation_matrix_source_vector_nonlte: StokvecVector

The part of the source vector that is due to non-LTE.

This is closely related to propagation_matrix.

Gven the level source term:

\[\vec{J} = \mathbf{K}^{-1} \left(\vec{\alpha}B + \vec{J}_n + \cdots\right),\]

this variable holds \(\vec{J}_n\). Here, \(\vec{\alpha}\) is the first column of \(\mathbf{K}\), which is from the propagation_matrix variable. \(B\) is the Planck function. The ellipsis denotes other terms that can come from more sources, such as scattering and/or transmitting equipment.

The unit is in spectral_radiance per meter.

Modified by workspace method

Output from workspace methods

Output from workspace agenda

Related workspace variables

propagation_matrix_source_vector_nonlte_jacobian: StokvecMatrix

Partial derivative of the propagation_matrix_source_vector_nonlte with regards to jacobian_targets.

The units are spectral_radiance_jacobian per meter.

Modified by workspace methods

Output from workspace methods

Output from workspace agenda

Related workspace variables

ray_path: ArrayOfPropagationPathPoint

A list path points making up a propagation path.

Input to workspace methods

Modified by workspace methods

Output from workspace methods

Input to workspace agenda

Output from workspace agendas

Related workspace variables

ray_path_absorption_vector_scattering: ArrayOfStokvecVector

The absorption vector of totally random orientation particles along the propagation path using spectral representation

Input to workspace method

Output from workspace method

Related workspace variables

ray_path_atmospheric_point: ArrayOfAtmPoint

Atmospheric points along the propagation path.

See atmospheric_point for information about atmospheric points

Dimension: [ ppath.np ]

Usage: Output of radiative transfer methods.

Input to workspace methods

Output from workspace methods

Related workspace variables

ray_path_field: ArrayOfArrayOfPropagationPathPoint

A list of ray_path intended to build up a field of observations.

Input to workspace method

Output from workspace methods

Related workspace variables

ray_path_frequency_grid: ArrayOfAscendingGrid

All frequency_grid along the propagation path.

Input to workspace methods

Output from workspace method

Related workspace variables

ray_path_frequency_grid_wind_shift_jacobian: ArrayOfVector3

A list of frequency_grid_wind_shift_jacobian for a ray path.

Input to workspace methods

Output from workspace method

Related workspace variables

ray_path_observer_agenda: Agenda

Get the propagation path as it is obeserved.

The intent of this agenda is to provide a propagation path as seen from the observer position and line of sight.

Tip

The perhaps easiest way to set this agenda up is to use the ray_path_observer_agendaSetGeometric() method.

It is possible to execute ray_path_observer_agenda directly from the workspace by calling ray_path_observer_agendaExecute().

As all agendas in ARTS, ray_path_observer_agenda is also customizable via its operator helper class: ray_path_observer_agendaOperator. See it, ray_path_observer_agendaSetOperator(), and ray_path_observer_agendaExecuteOperator() for more details.

Parameters

ray_path~pyarts3.arts.ArrayOfPropagationPathPoint

A list path points making up a propagation path. See ray_path [OUT]

spectral_radiance_observer_position~pyarts3.arts.Vector3

The position of an observer of spectral radiance. See spectral_radiance_observer_position [IN]

spectral_radiance_observer_line_of_sight~pyarts3.arts.Vector2

The line-of-sight of the observer of spectral radiance. See spectral_radiance_observer_line_of_sight [IN]

Input to workspace methods

Output from workspace methods

Related workspace variables

ray_path_observers: ArrayOfPropagationPathPoint

A list path points making up the observers of a propagation path.

These can be used directly for spectral_radiance_observer_position and spectral_radiance_observer_line_of_sight

Input to workspace method

Output from workspace methods

Related workspace variables

ray_path_phase_matrix_scattering_spectral: ArrayOfSpecmatMatrix

The spectral phase matrix of totally random orientation particles along the propagation path using spectral representation

Input to workspace method

Output from workspace method

Related workspace variables

ray_path_point: PropagationPathPoint

A single path point.

Input to workspace methods

Output from workspace methods

Input to workspace agendas

Related workspace variables

ray_path_propagation_matrix: ArrayOfPropmatVector

Propagation matrices along the propagation path

Input to workspace methods

Modified by workspace method

Output from workspace method

Related workspace variables

ray_path_propagation_matrix_jacobian: ArrayOfPropmatMatrix

Propagation derivative matrices along the propagation path

Input to workspace methods

Output from workspace method

Related workspace variables

ray_path_propagation_matrix_scattering: ArrayOfPropmatVector

Propagation matrices along the propagation path for scattering

Input to workspace methods

Output from workspace methods

Related workspace variables

ray_path_propagation_matrix_source_vector_nonlte: ArrayOfStokvecVector

Additional non-LTE along the propagation path

Input to workspace methods

Output from workspace method

Related workspace variables

ray_path_propagation_matrix_source_vector_nonlte_jacobian: ArrayOfStokvecMatrix

Additional non-LTE derivative along the propagation path

Input to workspace method

Output from workspace method

Related workspace variables

ray_path_spectral_radiance_jacobian: ArrayOfStokvecMatrix

Spectral radiance derivative along the propagation path

Input to workspace method

Output from workspace methods

Related workspace variables

ray_path_spectral_radiance_scattering: ArrayOfStokvecVector

Spectral radiance scattered into the propagation path

Input to workspace method

Output from workspace method

Related workspace variables

ray_path_spectral_radiance_source: ArrayOfStokvecVector

Source vectors along the propagation path

Input to workspace method

Modified by workspace method

Output from workspace method

Related workspace variables

ray_path_spectral_radiance_source_jacobian: ArrayOfStokvecMatrix

Source derivative vectors along the propagation path

Input to workspace method

Output from workspace method

Related workspace variables

ray_path_suns_path: ArrayOfArrayOfArrayOfPropagationPathPoint

A list of paths to the suns from the ray path.

Dimensions: ray_path x suns x sun_path

Input to workspace methods

Output from workspace method

Related workspace variables

ray_path_transmission_matrix: ArrayOfMuelmatVector

Transmission matrices along the propagation path.

The outer dimension is the number of layers.

The inner dimension is the number of frequency points.

The order of the elements is such that index zero is closest to the obeserver.

Input to workspace methods

Output from workspace method

Related workspace variables

ray_path_transmission_matrix_cumulative: ArrayOfMuelmatVector

Cumulative transmission matrices along the propagation path

Input to workspace methods

Output from workspace method

Related workspace variables

ray_path_transmission_matrix_jacobian: ArrayOfMuelmatTensor3

Transmission derivative matrices along the propagation path.

The outer dimension is the number of layers.

The inner dimensions are the number of level derivatives, the number of jacbian targets, and the number of frequency points. The required number of level derivatives is determined by the appropriate method (a common value is 2, for the 2 levels surrounding a layer).

The order of the elements is such that index zero is closest to the obeserver.

Input to workspace methods

Output from workspace method

Related workspace variables

scattering_species: ArrayOfScatteringSpecies

The scattering species

Input to workspace method

Output from workspace method

Related workspace variables

select_species: SpeciesEnum

Species selection.

When Bath is selected, all species are used. Otherwise, this variable should control so that only the selected species is used.

Default value

AIR

Input to workspace methods

Input to workspace agenda

Related workspace variable

select_species_list: ArrayOfSpeciesEnum

Species selection.

Input to workspace method

Output from workspace method

spectral_flux_profile: Matrix

An altitude profile of spectral flux.

Input to workspace methods

Output from workspace methods

Related workspace variables

spectral_radiance: StokvecVector

A spectral radiance vector.

This is the representation of the spectral radiances at discrete frequencies for a discrete viewing direction.

The unit of spectral radiance is [W / m \(^2\) sr Hz].

Note that there are conversion routines that changes this unit, e.g., spectral_radianceApplyUnit(). After conversion, the use of spectral_radiance in any method no marked as safe for different units, will lead to undefined behavior with possibly bad values being computed.

The size of this variable should be the size of the local frequency_grid.

Input to workspace method

Modified by workspace methods

Output from workspace methods

Output from workspace agendas

Related workspace variables

spectral_radiance_background: StokvecVector

Spectral radiance from the background

Shape: NFREQ

Input to workspace methods

Output from workspace method

Related workspace variables

spectral_radiance_background_jacobian: StokvecMatrix

Spectral radiance derivative from the background

Shape: NJAC x NFREQ

Input to workspace methods

Output from workspace method

Related workspace variables

spectral_radiance_field: GriddedSpectralField6

The spectral radiance field.

spectral_radiance but for a field.

Dimensions are altitude_grid times latitude_grid times longitude_grid times zenith_grid times azimuth_grid times frequency_grid.

Input to workspace method

Output from workspace methods

Related workspace variables

spectral_radiance_jacobian: StokvecMatrix

Jacobian of spectral_radiance with respect to jacobian_targets.

The size of this variable should be the local jacobian_targets as rows times the size of the local spectral_radiance as columns.

Modified by workspace methods

Output from workspace methods

Output from workspace agendas

Related workspace variables

spectral_radiance_observer_agenda: Agenda

Spectral radiance as seen from the input position and environment

The intent of this agenda is to provide the spectral radiance as seen from the observer position and line of sight.

It also outputs the ray_path as seen from the observer position and line of sight. This is useful in-case a call to the destructive spectral_radianceApplyUnitFromSpectralRadiance() is warranted

It is possible to execute spectral_radiance_observer_agenda directly from the workspace by calling spectral_radiance_observer_agendaExecute().

As all agendas in ARTS, spectral_radiance_observer_agenda is also customizable via its operator helper class: spectral_radiance_observer_agendaOperator. See it, spectral_radiance_observer_agendaSetOperator(), and spectral_radiance_observer_agendaExecuteOperator() for more details.

spectral_radiance_observer_agenda have these constraints ():

  1. On output, spectral_radiance has the size of frequency_grid.

  2. On output, spectral_radiance_jacobian has the shape of the expected model_state_vector (i.e., the x-size of jacobian_targets) times the size of frequency_grid.

Parameters

spectral_radiance~pyarts3.arts.StokvecVector

A spectral radiance vector. See spectral_radiance [OUT]

spectral_radiance_jacobian~pyarts3.arts.StokvecMatrix

Jacobian of spectral_radiance with respect to jacobian_targets. See spectral_radiance_jacobian [OUT]

ray_path~pyarts3.arts.ArrayOfPropagationPathPoint

A list path points making up a propagation path. See ray_path [OUT]

frequency_grid~pyarts3.arts.AscendingGrid

A single frequency grid. See frequency_grid [IN]

jacobian_targets~pyarts3.arts.JacobianTargets

A list of targets for the Jacobian Matrix calculations. See jacobian_targets [IN]

spectral_radiance_observer_position~pyarts3.arts.Vector3

The position of an observer of spectral radiance. See spectral_radiance_observer_position [IN]

spectral_radiance_observer_line_of_sight~pyarts3.arts.Vector2

The line-of-sight of the observer of spectral radiance. See spectral_radiance_observer_line_of_sight [IN]

atmospheric_field~pyarts3.arts.AtmField

An atmospheric field in ARTS. See atmospheric_field [IN]

surface_field~pyarts3.arts.SurfaceField

The surface field describes the surface properties. See surface_field [IN]

subsurface_field~pyarts3.arts.SubsurfaceField

The sub0surface field describes the sub-surface properties. See subsurface_field [IN]

Default value

  1. ray_path_observer_agendaExecute()

  2. hse_derivative = 0

  3. spectral_radianceClearskyEmission()

  4. spectral_radiance_jacobianAddSensorJacobianPerturbations()

Input to workspace methods

Output from workspace methods

Related workspace variables

spectral_radiance_observer_line_of_sight: Vector2

The line-of-sight of the observer of spectral radiance.

Most likely only makes sense in combination with spectral_radiance_observer_position.

Input to workspace methods

Input to workspace agendas

Related workspace variables

spectral_radiance_observer_position: Vector3

The position of an observer of spectral radiance.

Most likely only makes sense in combination with spectral_radiance_observer_line_of_sight.

Input to workspace methods

Input to workspace agendas

Related workspace variables

spectral_radiance_operator: SpectralRadianceOperator

The spectral radiance operator.

This is a class that can compute the spectral radiance along a path for a single viewing direction and frequency.

It provides several methods to get the path of the spectral radiance.

Input to workspace methods

Output from workspace method

Related workspace variables

spectral_radiance_space_agenda: Agenda

Spectral radiance as seen of space.

This agenda calculates the spectral radiance as seen of space. One common use-case is to provide a background spectral radiance.

The input path point should be as if it is looking at space.

It is possible to execute spectral_radiance_space_agenda directly from the workspace by calling spectral_radiance_space_agendaExecute().

As all agendas in ARTS, spectral_radiance_space_agenda is also customizable via its operator helper class: spectral_radiance_space_agendaOperator. See it, spectral_radiance_space_agendaSetOperator(), and spectral_radiance_space_agendaExecuteOperator() for more details.

spectral_radiance_space_agenda have these constraints ():

  1. On output, spectral_radiance has the size of frequency_grid.

  2. On output, spectral_radiance_jacobian has the shape of the expected model_state_vector (i.e., the x-size of jacobian_targets) times the size of frequency_grid.

Parameters

spectral_radiance~pyarts3.arts.StokvecVector

A spectral radiance vector. See spectral_radiance [OUT]

spectral_radiance_jacobian~pyarts3.arts.StokvecMatrix

Jacobian of spectral_radiance with respect to jacobian_targets. See spectral_radiance_jacobian [OUT]

frequency_grid~pyarts3.arts.AscendingGrid

A single frequency grid. See frequency_grid [IN]

jacobian_targets~pyarts3.arts.JacobianTargets

A list of targets for the Jacobian Matrix calculations. See jacobian_targets [IN]

ray_path_point~pyarts3.arts.PropagationPathPoint

A single path point. See ray_path_point [IN]

Default value

  1. spectral_radianceUniformCosmicBackground()

  2. spectral_radiance_jacobianEmpty()

  3. Ignore(), using: input = ray_path_point

Input to workspace methods

Output from workspace methods

Related workspace variables

spectral_radiance_surface_agenda: Agenda

Spectral radiance as seen of the surface.

This agenda calculates the spectral radiance as seen of the surface. One common use-case us to provide a background spectral radiance.

The input path point should be as if it is looking at the surface.

Subsurface calculations are also supported through this agenda.

It is possible to execute spectral_radiance_surface_agenda directly from the workspace by calling spectral_radiance_surface_agendaExecute().

As all agendas in ARTS, spectral_radiance_surface_agenda is also customizable via its operator helper class: spectral_radiance_surface_agendaOperator. See it, spectral_radiance_surface_agendaSetOperator(), and spectral_radiance_surface_agendaExecuteOperator() for more details.

spectral_radiance_surface_agenda have these constraints ():

  1. On output, spectral_radiance has the size of frequency_grid.

  2. On output, spectral_radiance_jacobian has the shape of the expected model_state_vector (i.e., the x-size of jacobian_targets) times the size of frequency_grid.

Parameters

spectral_radiance~pyarts3.arts.StokvecVector

A spectral radiance vector. See spectral_radiance [OUT]

spectral_radiance_jacobian~pyarts3.arts.StokvecMatrix

Jacobian of spectral_radiance with respect to jacobian_targets. See spectral_radiance_jacobian [OUT]

frequency_grid~pyarts3.arts.AscendingGrid

A single frequency grid. See frequency_grid [IN]

jacobian_targets~pyarts3.arts.JacobianTargets

A list of targets for the Jacobian Matrix calculations. See jacobian_targets [IN]

ray_path_point~pyarts3.arts.PropagationPathPoint

A single path point. See ray_path_point [IN]

surface_field~pyarts3.arts.SurfaceField

The surface field describes the surface properties. See surface_field [IN]

subsurface_field~pyarts3.arts.SubsurfaceField

The sub0surface field describes the sub-surface properties. See subsurface_field [IN]

Default value

  1. spectral_radianceSurfaceBlackbody()

  2. Ignore(), using: input = subsurface_field

Input to workspace methods

Output from workspace methods

Related workspace variables

spectral_radiance_transform_operator: SpectralRadianceTransformOperator

The spectral radiance transform operator

This is responsible for things like converting the spectral radiance into a different unit, e.g., from [W / m \(^2\) sr Hz] to Kelvin.

Default value

<SpectralRadianceTransformOperator::unit>

Input to workspace methods

Output from workspace method

Related workspace variables

subsurface_field: SubsurfaceField

The sub0surface field describes the sub-surface properties.

Default value

"bottom_depth": 1.7976931348623157e+308 "Other":

Input to workspace methods

Modified by workspace methods

Input to workspace agendas

Modified by workspace agenda

sun: Sun

A sun.

Input to workspace methods

Output from workspace methods

Related workspace variables

sun_path: ArrayOfPropagationPathPoint

A path to a sun if it is visible.

A related variable is ray_path

Size is number of path points for the sun.

Input to workspace method

Output from workspace method

suns: ArrayOfSun

A list of Sun.

Size is number of suns.

Input to workspace methods

Modified by workspace method

Related workspace variable

surface_field: SurfaceField

The surface field describes the surface properties.

This describes the global surface values, such as elevation and temperature but also entirerly abstract properties and types.

Default value

"Ellipsoid": 0 0 "SurfaceKey": "SurfacePropertyTag":

Input to workspace methods

Modified by workspace methods

Output from workspace methods

Input to workspace agendas

Modified by workspace agenda

Related workspace variable

transmission_matrix_background: MuelmatVector

Transmittance from the background

Input to workspace method

Output from workspace methods

water_equivalent_pressure_operator: NumericUnaryOperator

The water equivalent pressure operator.

Usage: psat = water_equivalent_pressure_operator(temperature).

Parameters

temperatureNumeric

Temperature in Kelvin.

Returns

psatNumeric

The water equivalent pressure in Pascal.

Input to workspace method

Output from workspace method

zenith_grid: ZenithGrid

A single zenith angle grid.

Units: degrees

Note

There is no global grid system in ARTS, so beware of the local nature of all grids.

Input to workspace methods

Output from workspace method

Related workspace variables

Operators

__eq__(value, /)

Return self==value.

__format__(self, arg: str, /) str
__ge__(value, /)

Return self>=value.

__getstate__()

Helper for pickle.

__gt__(value, /)

Return self>value.

__hash__()

Return hash(self).

__init__(self, with_defaults: bool = True) None
__iter__(self) collections.abc.Iterator[tuple[str, pyarts3.arts.Wsv]]

Allows iter(self)

__le__(value, /)

Return self<=value.

__lt__(value, /)

Return self<value.

__ne__(value, /)

Return self!=value.

__repr__(self) str
__str__(self) str