Phys¶
- class sbpy.data.Phys[source]¶
Bases:
DataClass
Class for storing and querying physical properties
Methods Summary
from_jplspec
(temp_estimate, transition_freq, ...)Constants from JPLSpec catalog and energy calculations
from_sbdb
(targetids[, references, notes])Load physical properties from JPL Small-Body Database (SBDB) using
jplsbdb
for one or more targets.Methods Documentation
- classmethod from_jplspec(temp_estimate, transition_freq, mol_tag)[source]¶
Constants from JPLSpec catalog and energy calculations
- Parameters:
- temp_estimate
Quantity
Estimated temperature in Kelvins
- transition_freq
Quantity
Transition frequency in MHz
- mol_tagint or str
Molecule identifier. Make sure it is an exclusive identifier, although this function can take a regex as your molecule tag, it will return an error if there is ambiguity on what the molecule of interest is. The function
query_lines_async
with the optionparse_name_locally=True
can be used to parse for the exclusive identifier of a molecule you might be interested in. For more information, visitastroquery.jplspec
documentation.
- temp_estimate
- Returns:
- data
Phys
Quantities in the following order from JPL Spectral Molecular Catalog:
Transition frequency
Temperature
Integrated line intensity at 300 K
Partition function at 300 K
Partition function at designated temperature
Upper state degeneracy
Upper level energy in Joules
Lower level energy in Joules
Degrees of freedom
- data
- classmethod from_sbdb(targetids, references=False, notes=False)[source]¶
Load physical properties from JPL Small-Body Database (SBDB) using
jplsbdb
for one or more targets. Builds aPhys
object from the output of'phys_par'
from SBDB. Units are applied, where available. Missing data are filled up as nan values. Note that SBDB only serves physical properties data for a limited number of objects.- Parameters:
- targetidsstr, int or iterable thereof
Target identifier(s) to be queried; use object numbers, names, or designations as unambiguous as possible.
- Returns:
Phys
object
Examples
>>> from sbpy.data import Phys >>> phys = Phys.from_sbdb( ... ['Ceres', '12893', '3552'] ... ) >>> print(phys['targetname', 'H', 'diameter']) targetname H diameter mag km -------------------------- ------------------ -------- 1 Ceres 3.34 939.4 12893 Mommert (1998 QS55) 13.9 5.214 3552 Don Quixote (1983 SA) 12.800000000000002 19.0