pub struct Satellite {Show 105 fields
pub init: bool,
pub name: String,
pub number: f64,
pub class: Classification,
pub id: String,
pub date: Date,
pub epochyr: f64,
pub epochdays: f64,
pub jdsatepoch: f64,
pub fdmm: f64,
pub sdmm: f64,
pub drag: f64,
pub ephemeris: f64,
pub esn: f64,
pub inclination: f64,
pub ascension: f64,
pub eccentricity: f64,
pub perigee: f64,
pub anomaly: f64,
pub motion: f64,
pub revolution: f64,
pub opsmode: OperationMode,
pub rms: Option<f64>,
pub isimp: f64,
pub method: Method,
pub aycof: f64,
pub con41: f64,
pub cc1: f64,
pub cc4: f64,
pub cc5: f64,
pub d2: f64,
pub d3: f64,
pub d4: f64,
pub delmo: f64,
pub eta: f64,
pub argpdot: f64,
pub omgcof: f64,
pub sinmao: f64,
pub t2cof: f64,
pub t3cof: f64,
pub t4cof: f64,
pub t5cof: f64,
pub x1mth2: f64,
pub x7thm1: f64,
pub mdot: f64,
pub nodedot: f64,
pub xlcof: f64,
pub xmcof: f64,
pub nodecf: f64,
pub irez: f64,
pub d2201: f64,
pub d2211: f64,
pub d3210: f64,
pub d3222: f64,
pub d4410: f64,
pub d4422: f64,
pub d5220: f64,
pub d5232: f64,
pub d5421: f64,
pub d5433: f64,
pub dedt: f64,
pub del1: f64,
pub del2: f64,
pub del3: f64,
pub didt: f64,
pub dmdt: f64,
pub dnodt: f64,
pub domdt: f64,
pub e3: f64,
pub ee2: f64,
pub peo: f64,
pub pgho: f64,
pub pho: f64,
pub pinco: f64,
pub plo: f64,
pub se2: f64,
pub se3: f64,
pub sgh2: f64,
pub sgh3: f64,
pub sgh4: f64,
pub sh2: f64,
pub sh3: f64,
pub si2: f64,
pub si3: f64,
pub sl2: f64,
pub sl3: f64,
pub sl4: f64,
pub gsto: f64,
pub xfact: f64,
pub xgh2: f64,
pub xgh3: f64,
pub xgh4: f64,
pub xh2: f64,
pub xh3: f64,
pub xi2: f64,
pub xi3: f64,
pub xl2: f64,
pub xl3: f64,
pub xl4: f64,
pub xlamo: f64,
pub zmol: f64,
pub zmos: f64,
pub atime: f64,
pub xli: f64,
pub xni: f64,
}Expand description
§Satellite Orbit Class
§Description
A class representing a satellite orbit.
§Examples
§Input TLE example
STARLINK-1007
1 44713C 19074A 23048.53451389 -.00009219 00000+0 -61811-3 0 482
2 44713 53.0512 157.2379 0001140 81.3827 74.7980 15.06382459 15§Run example
import { Satellite } from 'gis-tools-ts';
const sat = new Satellite(tleString);
// get propagation at time
const { position, velocity } = sat.propagate(new Date());§Links
- https://en.wikipedia.org/wiki/Two-line_element_set
- https://celestrak.org/NORAD/documentation/tle-fmt.php
- https://www.space-track.org/documentation#tle-basic
Fields§
§init: boolIf the satellite is initialized
name: StringName of the satellite
number: f64(satnum) Satellite catalog number or NORAD (North American Aerospace Defense) Catalog Number
class: ClassificationClassification (U: unclassified, C: classified, S: secret)
id: StringInternational Designator
date: Date(epochyr + epochdays)
epochyr: f64Epoch year
epochdays: f64Epoch days
jdsatepoch: f64full Sat epoch
fdmm: f64(ndot) First derivative of mean motion; the ballistic coefficient
sdmm: f64(nddot) Second derivative of mean motion (decimal point assumed)
drag: f64(bstar) B*, the drag term, or radiation pressure coefficient (decimal point assumed)
ephemeris: f64Ephemeris type (always zero; only used in undistributed TLE data)
esn: f64Element set number. Incremented when a new TLE is generated for this object.
inclination: f64Inclination (degrees)
ascension: f64Right ascension of the ascending node (degrees)
eccentricity: f64Eccentricity (decimal point assumed)
perigee: f64Argument of perigee (degrees)
anomaly: f64Mean anomaly (degrees)
motion: f64Mean motion (revolutions per day)
revolution: f64Revolution number at epoch (revolutions)
opsmode: OperationModeOperation Mode
rms: Option<f64>RMS
isimp: f64Is IMP
method: Methodmethod
aycof: f64ay coefficient
con41: f64con 41
cc1: f64cc1
cc4: f64cc4
cc5: f64cc5
d2: f64d2
d3: f64d3
d4: f64d4
delmo: f64delmo
eta: f64eta
argpdot: f64argpdot
omgcof: f64omgcof
sinmao: f64sinmao
t2cof: f64t2cof
t3cof: f64t3cof
t4cof: f64t4cof
t5cof: f64t5cof
x1mth2: f64x1mth2
x7thm1: f64x7thm1
mdot: f64mdot
nodedot: f64nodedot
xlcof: f64xlcof
xmcof: f64xmcof
nodecf: f64nodecf
irez: f64irez
d2201: f64d2201
d2211: f64d2211
d3210: f64d3210
d3222: f64d3222
d4410: f64d4410
d4422: f64d4422
d5220: f64d5220
d5232: f64d5232
d5421: f64d5421
d5433: f64d5433
dedt: f64dedt
del1: f64del1
del2: f64del2
del3: f64del3
didt: f64didt
dmdt: f64dmdt
dnodt: f64dnodt
domdt: f64domdt
e3: f64e3
ee2: f64ee2
peo: f64peo
pgho: f64pgho
pho: f64pho
pinco: f64pinco
plo: f64plo
se2: f64se2
se3: f64se3
sgh2: f64sgh2
sgh3: f64sgh3
sgh4: f64sgh4
sh2: f64sh2
sh3: f64sh3
si2: f64si2
si3: f64si3
sl2: f64sl2
sl3: f64sl3
sl4: f64sl4
gsto: f64gsto
xfact: f64xfact
xgh2: f64xgh2
xgh3: f64xgh3
xgh4: f64xgh4
xh2: f64xh2
xh3: f64xh3
xi2: f64xi2
xi3: f64xi3
xl2: f64xl2
xl3: f64xl3
xl4: f64xl4
xlamo: f64xlamo
zmol: f64zmol
zmos: f64zmos
atime: f64atime
xli: f64xli
xni: f64xni
Implementations§
Source§impl Satellite
impl Satellite
Sourcepub fn new(data: &TLEData, initialize: Option<bool>) -> Self
pub fn new(data: &TLEData, initialize: Option<bool>) -> Self
Constructor @param data - TLE data or TLE string @param initialize - initialize the object on creation
Sourcepub fn gpu(&self) -> Vec<f64>
pub fn gpu(&self) -> Vec<f64>
Converts satellite state to an array that is readable by the GPU
§Returns
Satellite state in an array
Sourcepub fn propagate(&self, time: &Date) -> Result<SGP4Output, SGP4ErrorOutput>
pub fn propagate(&self, time: &Date) -> Result<SGP4Output, SGP4ErrorOutput>
Sourcepub fn sgp4(&self, time: f64) -> Result<SGP4Output, SGP4ErrorOutput>
pub fn sgp4(&self, time: f64) -> Result<SGP4Output, SGP4ErrorOutput>
Trait Implementations§
Source§impl<'de> Deserialize<'de> for Satellite
impl<'de> Deserialize<'de> for Satellite
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
impl StructuralPartialEq for Satellite
Auto Trait Implementations§
impl Freeze for Satellite
impl RefUnwindSafe for Satellite
impl Send for Satellite
impl Sync for Satellite
impl Unpin for Satellite
impl UnwindSafe for Satellite
Blanket Implementations§
§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§unsafe fn clone_to_uninit(&self, dest: *mut u8)
unsafe fn clone_to_uninit(&self, dest: *mut u8)
clone_to_uninit)Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§impl<T> Pointable for T
impl<T> Pointable for T
Source§impl<R, P> ReadPrimitive<R> for P
impl<R, P> ReadPrimitive<R> for P
Source§fn read_from_little_endian(read: &mut R) -> Result<Self, Error>
fn read_from_little_endian(read: &mut R) -> Result<Self, Error>
ReadEndian::read_from_little_endian().