pint.models.troposphere_delay.TroposphereDelay

class pint.models.troposphere_delay.TroposphereDelay[source]

Bases: DelayComponent

Model for accounting for the troposphere delay for topocentric TOAs.

Based on Davis zenith hydrostatic delay (Davis et al., 1985, Appendix A) Niell Mapping Functions (Niell, 1996, Eq 4) additional altitude correction to atmospheric pressure from CRC Handbook Chapter 14 page 19 “US Standard Atmosphere”

The Zenith delay is the actual time delay for radio waves arriving directly overhead the observatory. The mapping function is a dimensionless number that scales the zenith delay to recover the correct delay for sources anywhere else in the sky (closer to the horizon).

The hydrostatic delay is best described as the relatively non-changing component to the delay, depending primarily on atmospheric pressure. The wet delay represents changes due to dynamical variation in the atmosphere (ie changing water vapor) and is usually around 10% of the hydrostatic delay

Parameters supported:

Name / Aliases

Description

Kind

CORRECT_TROPOSPHERE

Enable Troposphere Delay Model

boolean

Methods

add_param(param[, deriv_func, setup])

Add a parameter to the Component.

delay_model(alt, lat, H, mjd)

validate the observed altitudes, then combine dry and wet delays

get_params_of_type(param_type)

Get all the parameters in timing model for one specific type.

get_prefix_mapping_component(prefix)

Get the index mapping for the prefix parameters.

is_in_parfile(para_dict)

Check if this subclass included in parfile.

mapping_function(alt, lat, H, mjd)

this implements the Niell mapping function for hydrostatic delays

match_param_aliases(alias)

Return the parameter corresponding to this alias.

param_help()

Print help lines for all available parameters in model.

pressure_from_altitude(H)

From CRC Handbook Chapter 14 page 19 US Standard Atmosphere

print_par([format])

param format:

Parfile output format. PINT outputs the 'tempo', 'tempo2' and 'pint'

register_deriv_funcs(func, param)

Register the derivative function in to the deriv_func dictionaries.

remove_param(param)

Remove a parameter from the Component.

set_special_params(spcl_params)

setup()

Finalize construction loaded values.

troposphere_delay(toas[, acc_delay])

This is the main function for the troposphere delay.

validate()

Validate loaded values.

validate_toas(toas)

Check that this model component has TOAs where needed.

wet_map(alt, lat)

This is very similar to the normal mapping function except it uses different coefficients.

wet_zenith_delay()

calculate the wet delay at zenith

zenith_delay(lat, H)

Calculate the hydrostatic zenith delay

Attributes

AW

A_AMP

A_AVG

A_HT

BW

B_AMP

B_AVG

B_HT

CW

C_AMP

C_AVG

C_HT

DOY_OFFSET

EARTH_R

LAT

aliases_map

Return all the aliases and map to the PINT parameter name.

category

component_types

free_params_component

Return the free parameters in the component.

param_prefixs

register

troposphere_delay(toas, acc_delay=None)[source]

This is the main function for the troposphere delay. Pass in the TOAs and it will calculate the delay for each TOA, accounting for the observatory location, target coordinates, and time of observation

delay_model(alt, lat, H, mjd)[source]

validate the observed altitudes, then combine dry and wet delays

pressure_from_altitude(H)[source]

From CRC Handbook Chapter 14 page 19 US Standard Atmosphere

zenith_delay(lat, H)[source]

Calculate the hydrostatic zenith delay

wet_zenith_delay()[source]

calculate the wet delay at zenith

mapping_function(alt, lat, H, mjd)[source]

this implements the Niell mapping function for hydrostatic delays

wet_map(alt, lat)[source]

This is very similar to the normal mapping function except it uses different coefficients. In addition, there is no height correction. From Niell (1996):

“This does not apply to the wet mapping function since the water vapor is not in hydrostatic equilibrium, and the height distribution of the water vapor is not expected to be predictable from the station height”

add_param(param, deriv_func=None, setup=False)

Add a parameter to the Component.

The parameter is stored in an attribute on the Component object. Its name is also recorded in a list, self.params.

Parameters:
  • param (pint.models.Parameter) – The parameter to be added.

  • deriv_func (function) – Derivative function for parameter.

property aliases_map

Return all the aliases and map to the PINT parameter name.

This property returns a dictionary from the current in timing model parameters’ aliase to the pint defined parameter names. For the aliases of a prefixed parameter, the aliase with an existing prefix index maps to the PINT defined parameter name with the same index. Behind the scenes, the indexed parameter adds the indexed aliase to its aliase list.

property free_params_component

Return the free parameters in the component.

This function collects the non-frozen parameters.

Return type:

A list of free parameters.

get_params_of_type(param_type)

Get all the parameters in timing model for one specific type.

get_prefix_mapping_component(prefix)

Get the index mapping for the prefix parameters.

Parameters:

prefix (str) – Name of prefix.

Returns:

A dictionary with prefix parameter real index as key and parameter name as value.

Return type:

dict

is_in_parfile(para_dict)

Check if this subclass included in parfile.

Parameters:

para_dict (dictionary) – A dictionary contain all the parameters with values in string from one parfile

Returns:

Whether the subclass is included in the parfile.

Return type:

bool

match_param_aliases(alias)

Return the parameter corresponding to this alias.

Parameters:

alias (str) – Alias name.

Note

This function only searches the parameter aliases within the current component. If one wants to search the aliases in the scope of TimingModel, please use TimingModel.match_param_aliase().

param_help()

Print help lines for all available parameters in model.

print_par(format='pint')
Parameters:

format (str, optional) – Parfile output format. PINT outputs the ‘tempo’, ‘tempo2’ and ‘pint’ format. The defaul format is pint. Actual formatting done elsewhere.

Returns:

str

Return type:

formatted line for par file

register_deriv_funcs(func, param)

Register the derivative function in to the deriv_func dictionaries.

Parameters:
  • func (callable) – Calculates the derivative

  • param (str) – Name of parameter the derivative is with respect to

remove_param(param)

Remove a parameter from the Component.

Parameters:

param (str or pint.models.Parameter) – The parameter to remove.

setup()

Finalize construction loaded values.

validate()

Validate loaded values.

validate_toas(toas)

Check that this model component has TOAs where needed.