Quantity
AbsGValue
dataclass
Absolute gravity value
Examples:
>>> AbsGValue(9.81e9, 30, height=1.25, vgg=Gradient(-3000))
AbsGValue(value=9810000000.0, error=30, height=1.25,
vgg=Gradient(value=-3000, error=0))
>>> str(AbsGValue(9.81e9))
'9,810,000,000.0 nm/s²'
>>> str(AbsGValue(9.81e9, 30))
'9,810,000,000.0 ± 30.0 nm/s²'
>>> str(AbsGValue(9.81e9, 30, 1.25))
'9,810,000,000.0 ± 30.0 nm/s² (1.25 m)'
error = 0
class-attribute
instance-attribute
Standard error, in nm/s²
height = None
class-attribute
instance-attribute
Measurement height, in m
value
instance-attribute
Absolute gravity value, in nm/s²
vgg = None
class-attribute
instance-attribute
Vertical gravity gradient used for height transfer
as_gvalue()
Convert to a relative gravity value
Examples:
>>> AbsGValue(9.81e9, 30).as_gvalue()
GValue(value=9810000000.0, error=30)
transfer(height)
Transfer gravity value to a different height
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
height
|
float
|
New height, in meters. |
required |
Returns:
| Type | Description |
|---|---|
AbsGValue
|
Absolute gravity value at new height |
Examples:
>>> AbsGValue(9.8e9, 30, height=1.25, vgg=Gradient(-3200, 20)).transfer(0)
AbsGValue(value=9800004000.0, error=39.05124837953327, height=0,
vgg=Gradient(value=-3200, error=20))
GValue
dataclass
A relative gravity value
Provides arithmetic, string formatting and error propagation (sum of squares).
Examples:
>>> GValue(100, 10) + GValue(200, 10)
GValue(value=300, error=14.142135623730951)
>>> 10 * GValue(100, 10)
GValue(value=1000, error=100)
>>> str(GValue(123.456))
'123.5 nm/s²'
>>> str(GValue(123.456, 12.34))
'123.5 ± 12.3 nm/s²'
error = 0
class-attribute
instance-attribute
Standard error, in nm/s²
value
instance-attribute
Gravity value, in nm/s²
as_tuple()
Convert to a tuple of value and error
from_str(text)
classmethod
Parse a gravity value string
Examples:
>>> GValue.from_str("123.4 nm/s²")
GValue(value=123.4, error=0)
>>> GValue.from_str("12.34 µGal")
GValue(value=123.4, error=0)
>>> GValue.from_str("123.4 ± 1.2 nm/s²")
GValue(value=123.4, error=1.2)
Gradient
dataclass
Vertical gravity gradient
Examples:
>>> str(Gradient(-3000))
'-3000.0 nm/s²/m'
>>> str(Gradient(-3000, 10))
'-3000.0 ± 10.0 nm/s²/m'
error = 0
class-attribute
instance-attribute
Standard error, in nm s-2 m-1
value
instance-attribute
Vertical gravity gradient, in nm s-2 m-1
as_tuple()
Convert to a tuple of value and error
dg_height(height_difference)
from_str(text)
classmethod
Convert string to Gradient
Examples:
>>> Gradient.from_str("-300 µGal/m")
Gradient(value=-3000.0, error=0)
>>> Gradient.from_str("-3000 nm/s²/m")
Gradient(value=-3000.0, error=0)
>>> Gradient.from_str("-300 µGal/m")
Gradient(value=-3000.0, error=0)
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
text
|
str
|
Input string. |
required |
clean_coord_angle(text)
Parse a coordinate angle and format in standard form
Examples:
>>> clean_coord_angle('12.34°')
'12.340000°'
clean_gradient(text)
Bring gravity gradient string to standard form
Examples:
>>> clean_gradient('-300 µGal/m')
'-3000.0 nm/s²/m'
clean_gravity(value)
Bring gravity value string to standard form
Examples:
>>> clean_gravity('12.34 µGal')
'123.4 nm/s²'
>>> clean_gravity(123.4)
'123.4 nm/s²'
clean_height(text)
Parse a height value string and format in standard form
Examples:
>>> clean_height('1.25')
'1.2500 m'
clean_pressure_admittance(text)
Parse a pressure admittance string and format in standard form
Examples:
>>> clean_pressure_admittance('-0.3 µGal/hPa')
'-3.00 nm/s²/hPa'
format_coord_angle(value)
Format a coordinate angle value
format_height(value)
Format a height value
format_pressure_admittance(value)
Format a pressure admittance value
parse_coord_angle(text)
Parse a latitude or longitude angle string
Examples:
>>> parse_coord_angle("12.4567 °")
12.4567
>>> parse_coord_angle("12.4567°")
12.4567
parse_gradient(value)
Parse a gravity gradient value
parse_gravity(value)
Parse a gravity float value or string
parse_height(text)
Parse a height string
If no units are specified, value is interpreted as meters. This is for compatibility with very early AQG metadata files.
Examples:
>>> parse_height("123.45 m")
123.45
>>> parse_height("123.45")
123.45
parse_pressure_admittance(text)
Parse a pressure admittance string
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
text
|
str | float
|
If the input is a number, it is assumed to be in units of nm/s²/hPa. |
required |
Returns:
| Type | Description |
|---|---|
float
|
Pressure admittance value. |
Examples:
>>> parse_pressure_admittance("-3 nm/s²/hPa")
-3.0
>>> parse_pressure_admittance("-0.3 µGal/hPa")
-3.0
>>> parse_pressure_admittance(-3)
-3.0
parse_quantity(text)
Parse a quantity string into value, uncertainty and units
Also accepts float values. These are simply passed through.
Examples:
>>> parse_quantity("12.34 ± 0.01 nm/s²")
(12.34, 0.01, 'nm/s²')
>>> parse_quantity(12.34)
(12.34, None, None)
parse_tilt_angle(text)
Parse an instrument tilt angle
Examples:
>>> parse_tilt_angle("1e-6 rad")
1e-06
>>> parse_tilt_angle("0.001 mrad")
1e-06
>>> parse_tilt_angle("1 µrad")
1e-06
>>> parse_tilt_angle(1e-6)
1e-06