Skip to content
Colby Newman edited this page May 23, 2018 · 7 revisions

Contents #

SGP.NET # =

Coordinate # =

Namespace

SGPdotNET

Summary

Stores a generic location

DistanceTo(to) method # =

Summary

Calculates the Great Circle distance (km) to another coordinate

Returns

The distance between the coordinates, in kilometers

Parameters
Name Type Description
to SGPdotNET.Coordinate The coordinate to measure against

DistanceToRadians(to) method # =

Summary

Calculates the Great Circle distance (radians) to another geodetic coordinate

Returns

The distance between the coordinates, in radians

Parameters
Name Type Description
to SGPdotNET.Coordinate The coordinate to measure against

GetFootprint() method # =

Summary

Calculates the visibility radius (km) of the satellite by which any distances from this position less than the radius are able to see this position

Returns

The visibility radius, in kilometers

Parameters

This method has no parameters.

GetFootprintRadians() method # =

Summary

Calculates the visibility radius (radians) of the satellite by which any distances from this position less than the radius are able to see this position

Returns

The visibility radius, in radians

Parameters

This method has no parameters.

LookAt(time,to) method # =

Summary

Calculates the look angles between this coordinate and target

Returns

The topocentric angles between this coordinate and another

Parameters
Name Type Description
time SGPdotNET.Coordinate The time of observation
to System.Nullable{System.DateTime} The coordinate to observe

ToEci(dt) method # =

Summary

Converts this position to an ECI one

Returns

The position in an ECI reference frame with the supplied time

Parameters
Name Type Description
dt System.DateTime The time for the ECI frame

ToGeodetic() method # =

Summary

Converts this ECI position to a geodetic one

Returns

The position in a geodetic reference frame

Parameters

This method has no parameters.

ToSphericalEcef() method # =

Summary

Converts this position to an ECEF one, assuming a spherical earth

Returns

A spherical ECEF coordinate vector

Parameters

This method has no parameters.

DecayedException # =

Namespace

SGPdotNET

Summary

Exception thrown by the propagator when a satellite decays

#ctor(time,position,velocity) constructor # =

Summary

Constructor

Parameters
Name Type Description
time System.DateTime Time of the event
position SGPdotNET.Vector3 Position of the satellite at time
velocity SGPdotNET.Vector3 Velocity of the satellite at time

Position property # =

Summary

Position of the satellite at time

Time property # =

Summary

Time of the event

Velocity property # =

Summary

Velocity of the satellite at time

EciCoordinate # =

Namespace

SGPdotNET

Summary

Stores an Earth-centered inertial position for a particular time

#ctor() constructor # =

Summary

Creates a new ECI coordinate at the origin

Parameters

This constructor has no parameters.

#ctor(dt,latitude,longitude,altitude) constructor # =

Summary

Creates a new ECI coordinate with the specified values

Parameters
Name Type Description
dt System.DateTime The date to be used for this position
latitude System.Double The latitude in degrees
longitude System.Double The longitude in degrees
altitude System.Double The altitude in kilometers

#ctor(dt,coord) constructor # =

Summary

Creates a new ECI coordinate with the specified values

Parameters
Name Type Description
dt System.DateTime The date to be used for this position
coord SGPdotNET.Coordinate The position top copy

#ctor(dt,position) constructor # =

Summary

Creates a new ECI coordinate with the specified values

Parameters
Name Type Description
dt System.DateTime The date to be used for this position
position SGPdotNET.Vector3 The ECI vector position

#ctor(dt,position,velocity) constructor # =

Summary

Creates a new ECI coordinate with the specified values

Parameters
Name Type Description
dt System.DateTime The date to be used for this position
position SGPdotNET.Vector3 The ECI position vector
velocity SGPdotNET.Vector3 The ECI velocity vector

Position property # =

Summary

The position component of the coordinate

Time property # =

Summary

The time component of the coordinate

Velocity property # =

Summary

THe velocity component of the coordinate

Equals() method # =

Summary

Inherit from parent.

Parameters

This method has no parameters.

GetHashCode() method # =

Summary

Inherit from parent.

Parameters

This method has no parameters.

ToEci() method # =

Summary

Inherit from parent.

Parameters

This method has no parameters.

ToGeodetic() method # =

Summary

Converts this ECI position to a geodetic one

Returns

The position in a geodetic reference frame

Parameters

This method has no parameters.

ToString() method # =

Summary

Inherit from parent.

Parameters

This method has no parameters.

GeodeticCoordinate # =

Namespace

SGPdotNET

Summary

Stores a geodetic location

#ctor() constructor # =

Summary

Creates a new geodetic coordinate at the origin

Parameters

This constructor has no parameters.

#ctor(lat,lon,alt,isRadians) constructor # =

Summary

Creates a new geodetic coordinate with the specified values

Parameters
Name Type Description
lat System.Double The latitude (degrees by default)
lon System.Double The longitude (degrees by default)
alt System.Double The altitude in kilometers
isRadians System.Boolean True if the provided latitude and longitude are in radians

#ctor(coord) constructor # =

Summary

Creates a new geodetic coordinate as a copy of the specified one

Parameters
Name Type Description
coord SGPdotNET.Coordinate Object to copy from

Altitude property # =

Summary

Altitude in kilometers

Latitude property # =

Summary

Latitude in radians, where -PI <= latitude < PI

Longitude property # =

Summary

Longitude in radians, where -PI/2 <= latitude < PI/2

Equals() method # =

Summary

Inherit from parent.

Parameters

This method has no parameters.

Equals(other) method # =

Summary

Checks equality between this object and another

Returns

True if the two objects are equal

Parameters
Name Type Description
other SGPdotNET.GeodeticCoordinate The other object of comparison

GetHashCode() method # =

Summary

Inherit from parent.

Parameters

This method has no parameters.

ToEci(dt) method # =

Summary

Converts this geodetic position to an ECI one

Returns

The position in an ECI reference frame with the supplied time

Parameters
Name Type Description
dt System.DateTime The time for the ECI frame

ToGeodetic() method # =

Summary

Inherit from parent.

Parameters

This method has no parameters.

ToString() method # =

Summary

Inherit from parent.

Parameters

This method has no parameters.

GroundStation # =

Namespace

SGPdotNET

Summary

A representation of a ground station that can observe satellites

#ctor(location) constructor # =

Summary

Creates a new ground station at the specified location

Parameters
Name Type Description
location SGPdotNET.Coordinate The location of the ground station

Location property # =

Summary

The location of the ground station

IsVisible(pos,minElevation) method # =

Summary

Tests whether or not a satellite is above a specified elevation, defaulting to 0 degrees

Returns

True if the satellite is above the specified elevation, false otherwise

Parameters
Name Type Description
pos SGPdotNET.EciCoordinate The position to check
minElevation System.Double The minimum elevation required to be "visible"

Observe(satellite,start,end,deltaTime) method # =

Summary

Creates a list of all of the predicted observations within the specified time period, such that an AOS for the satellite from this ground station is seen at or after the start parameter

Returns

A list of observations where an AOS is seen at or after the start parameter

Parameters
Name Type Description
satellite SGPdotNET.Satellite The satellite to observe
start System.DateTime The time to start observing
end System.DateTime The time to end observing
deltaTime System.TimeSpan The time step for the prediction simulation

ITleProvider # =

Namespace

SGPdotNET

Summary

Provides a class to retrieve TLEs from a resource

GetTle(satelliteId) method # =

Summary

Queries the source and retrieves a two-line set for the specified satellite

Returns

The remote TLE for the specified satellite

Parameters
Name Type Description
satelliteId System.Int32 The satellite to retrieve

OrbitalElements # =

Namespace

SGPdotNET

Summary

Container for the extracted orbital elements used by the SGP4 propagator.

#ctor(tle) constructor # =

Summary

Creates a new numerical orbital element descriptor set for the provided two-line element set

Parameters
Name Type Description
tle SGPdotNET.Tle The set to extract numerical values from

ArgumentPerigee property # =

Summary

The OMEGAO argument of perigree, in degrees

AscendingNode property # =

Summary

The XNODEO right ascension of the ascending node, in degrees

BStar property # =

Summary

BSTAR drag term

Eccentricity property # =

Summary

Eccentricity

Epoch property # =

Summary

The epoch of the element

Inclination property # =

Summary

Inclination, in degrees

MeanAnomoly property # =

Summary

The XMO mean anomoly, in dgerees

MeanMotion property # =

Summary

The XNO mean motion, in revolutions per day

Perigee property # =

Summary

The perigree, in kilometers

Period property # =

Summary

Time, in days, of revolution (recovered from 1 / MeanMotion)

RecoveredMeanMotion property # =

Summary

The XNODP recovered mean motion

RecoveredSemiMajorAxis property # =

Summary

The AODP recovered semi-major axis

Equals() method # =

Summary

Inherit from parent.

Parameters

This method has no parameters.

GetHashCode() method # =

Summary

Inherit from parent.

Parameters

This method has no parameters.

RemoteTleProvider # =

Namespace

SGPdotNET

Summary

Inherit from parent.

Summary

Provides a class to retrieve TLEs from a remote network resource

#ctor(sources,threeLine) constructor # =

Summary

Constructor

Parameters
Name Type Description
sources System.Collections.Generic.IEnumerable{System.Security.Policy.Url} The sources that should be queried
threeLine System.Boolean True if the TLEs contain a third, preceding name line (3le format)

Dispose() method # =

Summary

Inherit from parent.

Parameters

This method has no parameters.

GetTle(satelliteId) method # =

Summary

Inherit from parent.

Summary

Queries the source and retrieves a two-line set for the specified satellite

Returns

The remote TLE for the specified satellite

Parameters
Name Type Description
satelliteId System.Int32 The satellite to retrieve

Satellite # =

Namespace

SGPdotNET

Summary

A representation of a satellite in orbit

#ctor(tle1,tle2) constructor # =

Summary

Inherit from parent.

Summary

Constructor

Parameters
Name Type Description
tle1 System.String The first line of the set
tle2 System.String The second line of the set

#ctor(name,tle1,tle2) constructor # =

Summary

Constructor

Parameters
Name Type Description
name System.String The name of the satellite
tle1 System.String The first line of the set
tle2 System.String The second line of the set

#ctor(tle) constructor # =

Summary

Constructor

Parameters
Name Type Description
tle SGPdotNET.Tle The two-line representation of the satellite

Name property # =

Summary

The name of this satellite

GetFootprintBoundary() method # =

Summary

Gets a list of geodetic coordinates which define the bounds of the visibility footprint

Returns

A list of geodetic coordinates

Parameters

This method has no parameters.

GetFootprintBoundary(time,numPoints) method # =

Summary

Gets a list of geodetic coordinates which define the bounds of the visibility footprint at a specific time

Returns

A list of geodetic coordinates for the specified time

Parameters
Name Type Description
time System.DateTime The time to predict the footprint
numPoints System.Int32 The number of points in the resulting circle

GetFootprintSize() method # =

Summary

Gets the surface distance (km) from the satellite's location which defines the bounds of the visibility footprint

Returns

The foorptint circle radius, in kilometers

Parameters

This method has no parameters.

GetFootprintSize(time) method # =

Summary

Gets the surface distance (km) from the satellite's location which defines the bounds of the visibility footprint at a specific time

Returns

The foorptint circle radius, in kilometers

Parameters
Name Type Description
time System.DateTime The time to predict the footprint

GetFootprintSizeRadians() method # =

Summary

Gets the surface distance (radians) from the satellite's location which defines the bounds of the visibility footprint

Returns

The foorptint circle radius, in kilometers

Parameters

This method has no parameters.

GetFootprintSizeRadians(time) method # =

Summary

Gets the surface distance (radians) from the satellite's location which defines the bounds of the visibility footprint at a specific time

Returns

The foorptint circle radius, in kilometers

Parameters
Name Type Description
time System.DateTime The time to predict the footprint

Predict() method # =

Summary

Predicts the satellite's real-time location

Returns

An ECI coordinate set representing the satellite

Parameters

This method has no parameters.

Predict(time) method # =

Summary

Predicts the satellite's location at a specific time

Returns

An ECI coordinate set representing the satellite at the given time

Parameters
Name Type Description
time System.DateTime The time of observation

SatelliteException # =

Namespace

SGPdotNET

Summary

Exception thrown by the propagator during initialization when a satellite has erroneous values

#ctor(e) constructor # =

Summary

Constructor

Parameters
Name Type Description
e System.String Message for the exception

SatelliteObservation # =

Namespace

SGPdotNET

Summary

Stores a satellite observation

#ctor(satellite,start,end,maxElevation,startAzimuth,endAzimuth) constructor # =

Summary

Constructor

Parameters
Name Type Description
satellite SGPdotNET.Satellite The satellite that is being observed
start System.DateTime The start time of the observation
end System.DateTime The end time of the observation
maxElevation System.Double The max elevation reached during observation
startAzimuth System.Double The azimuth at the start of the observation
endAzimuth System.Double The azimuth at the end of the observation

End property # =

Summary

The end time of the observation

EndAzimuth property # =

Summary

The azimuth at the end of the observation

MaxElevation property # =

Summary

The max elevation reached during observation

Satellite property # =

Summary

The satellite that is being observed

Start property # =

Summary

The start time of the observation

StartAzimuth property # =

Summary

The azimuth at the start of the observation

Sgp4 # =

Namespace

SGPdotNET

Summary

The Simplified General Perturbations (Model 4) propagater

#ctor(tle) constructor # =

Summary

Constructor

Parameters
Name Type Description
tle SGPdotNET.Tle The two-line element set to propogate

FindPosition(tsince) method # =

Summary

Predicts the ECI position of a satellite at a time relative to the satellite's epoch

Returns

The predicted position of the satellite at a time relative to the satellite's epoch

Parameters
Name Type Description
tsince System.Double Time since the satellite's epoch

FindPosition(date) method # =

Summary

Predicts the ECI position of a satellite at a specific date and time

Returns

The predicted position of the satellite at a specific date and time

Parameters
Name Type Description
date System.DateTime the date and time to predict

SgpConstants # =

Namespace

SGPdotNET

Summary

Stores various numerical constants used in propogation

Ck2 constants # =

Summary

CK2 propogation constant

Ck4 constants # =

Summary

CK4 propogation constant

DistanceUnitsPerEarthRadii constants # =

Summary

Also called Ae

EarthFlatteningConstant constants # =

Summary

Also called kF

EarthGravitation constants # =

Summary

Also called mu

EarthRadiusKm constants # =

Summary

Also called KmPer

EarthRotationPerMinRad constants # =

Summary

Also called THDT or rptim

EarthRotationPerSiderealDay constants # =

Summary

Also called OmegaE

EpochJan100H1900 constants # =

Summary

Jan 1.0 1900 = Jan 1 1900 00h UTC

EpochJan112H1900 constants # =

Summary

Jan 1.5 1900 = Jan 1 1900 12h UTC

EpochJan112H2000 constants # =

Summary

Jan 1.5 2000 = Jan 1 2000 12h UTC

HoursPerDay constants # =

Summary

The number of hours per day

KmPerAu constants # =

Summary

Also called Au

MinutesPerDay constants # =

Summary

The number of minutes per day

Q0 constants # =

Summary

Q-zero propogation constant

Qoms2T constants # =

Summary

QOMS2T propogation constant

ReciprocalOfMinutesPerTimeUnit constants # =

Summary

Also called XKE

S constants # =

Summary

S propogation constant

S0 constants # =

Summary

S-zero propogation constant

SecondsPerDay constants # =

Summary

The number of seconds per day

TwoPi constants # =

Summary

Twice the value of Pi

TwoThirds constants # =

Summary

Two divided by three (2/3)

ZonalHarmonicJ2 constants # =

Summary

Also called XJ2

ZonalHarmonicJ3 constants # =

Summary

Also called XJ3

ZonalHarmonicJ4 constants # =

Summary

Also called XJ4

TimeExtensions # =

Namespace

SGPdotNET

Summary

Adds extension methods to the DateTime class that are useful for astronomical calculations

ToGreenwichSiderealTime(dt) method # =

Summary

Converts a DateTime to Greenwich Sidereal Time

Returns

The Greenwich Sidereal Time representation the DateTime

Parameters
Name Type Description
dt System.DateTime The time to convert

ToJulian(dt) method # =

Summary

Converts a DateTime to a Julian date

Returns

The Julian representation the DateTime

Parameters
Name Type Description
dt System.DateTime The time to convert

ToLocalMeanSiderealTime(dt,longitude) method # =

Summary

Converts a DateTime to Local Mean Sidereal Time

Returns

The Local Mean Sidereal Time representation the DateTime

Parameters
Name Type Description
dt System.DateTime The time to convert
longitude System.Double The longitude of observation

Tle # =

Namespace

SGPdotNET

Summary

Extracts OrbitalElements from a two-line or three-line element set

#ctor(lineOne,lineTwo) constructor # =

Summary

Initialise TLE with two lines

Parameters
Name Type Description
lineOne System.String The first line of the set
lineTwo System.String The second line of the set

#ctor(name,lineOne,lineTwo) constructor # =

Summary

Initialise 3LE with a name and two lines

Parameters
Name Type Description
name System.String The 0th line (name) of the set
lineOne System.String The first line of the set
lineTwo System.String The second line of the set

#ctor(tle) constructor # =

Summary

Create a new Tle as a copy of the specified one

Parameters
Name Type Description
tle SGPdotNET.Tle Object to copy from

BStarDragTerm property # =

Summary

The BSTAR drag term of the satellite

Eccentricity property # =

Summary

The eccentricity of the satellite

Epoch property # =

Summary

The epoch of the satellite

IntDesignator property # =

Summary

The international designator of the satellite

Line1 property # =

Summary

The first line of the TLE set

Line2 property # =

Summary

The second line of the TLE set

MeanMotionDdtOver6 property # =

Summary

The second time derivative of mean motion

MeanMotionDtOver2 property # =

Summary

The first time derivative of mean motion

MeanMotionRevPerDay property # =

Summary

The mean motion, in revolutions per day

Name property # =

Summary

The name of the satellite

NoradNumber property # =

Summary

The identification number assigned to the satellite by NORAD

OrbitNumber property # =

Summary

The number of orbits at the epoch

GetArgumentPerigee(inDegrees) method # =

Summary

Gets the argument of perigee

Returns
Parameters
Name Type Description
inDegrees System.Boolean True to return value in degrees

GetInclination(inDegrees) method # =

Summary

Gets the inclination

Returns
Parameters
Name Type Description
inDegrees System.Boolean True to return value in degrees

GetMeanAnomaly(inDegrees) method # =

Summary

Gets the mean anomaly

Returns
Parameters
Name Type Description
inDegrees System.Boolean True to return value in degrees

GetRightAscendingNode(inDegrees) method # =

Summary

Gets the right ascension of the ascending node

Returns
Parameters
Name Type Description
inDegrees System.Boolean True to return value in degrees

ToString() method # =

Summary

Inherit from parent.

Parameters

This method has no parameters.

TleException # =

Namespace

SGPdotNET

Summary

Exception thrown by the TLE parser when a TLE has invalid values

#ctor(e) constructor # =

Summary

Constructor

Parameters
Name Type Description
e System.String Message for the exception

TopocentricCoordinate # =

Namespace

SGPdotNET

Summary

Stores a topocentric location (azimuth, elevation, range and range rate).

#ctor() constructor # =

Summary

Creates a new topocentirc coordinate at the origin

Parameters

This constructor has no parameters.

#ctor(azimuth,elevation,range,rangeRate) constructor # =

Summary

Creates a new topocentirc coordinate with the specified values

Parameters
Name Type Description
azimuth System.Double Azimuth in radians
elevation System.Double Elevation in radians
range System.Double Range in kilometers
rangeRate System.Double Range rate in kilometers/second

#ctor(topo) constructor # =

Summary

Creates a new topocentirc coordinate as a copy of the specified one

Parameters
Name Type Description
topo SGPdotNET.TopocentricCoordinate Object to copy from

Azimuth property # =

Summary

Azimuth in radians

Elevation property # =

Summary

Elevation in radians

Range property # =

Summary

Range in kilometers

RangeRate property # =

Summary

Range rate in kilometers/second

Equals() method # =

Summary

Inherit from parent.

Parameters

This method has no parameters.

Equals(other) method # =

Summary

Checks equality between this object and another

Returns

True if the two objects are equal

Parameters
Name Type Description
other SGPdotNET.TopocentricCoordinate The other object of comparison

GetHashCode() method # =

Summary

Inherit from parent.

Parameters

This method has no parameters.

ToString() method # =

Summary

Inherit from parent.

Parameters

This method has no parameters.

Vector3 # =

Namespace

SGPdotNET

Summary

Generic 3-dimensional vector

#ctor() constructor # =

Summary

Create a new Vector3 at the origin

Parameters

This constructor has no parameters.

#ctor(x,y,z) constructor # =

Summary

Create a new Vector3 at the specified position

Parameters
Name Type Description
x System.Double The X component of the new vector
y System.Double The Y component of the new vector
z System.Double The Z component of the new vector

#ctor(v) constructor # =

Summary

Create a new Vector3 as a copy of the specified one

Parameters
Name Type Description
v SGPdotNET.Vector3 Object to copy from

Length property # =

Summary

The length of this vector

X property # =

Summary

The X component of this vector

Y property # =

Summary

The Y component of this vector

Z property # =

Summary

The Z component of this vector

Dot(vec) method # =

Summary

Calculates the dot product of this vector and another

Returns

The double representing the dot product of the two vectors

Parameters
Name Type Description
vec SGPdotNET.Vector3 The vector to calculate the dot with

Equals() method # =

Summary

Inherit from parent.

Parameters

This method has no parameters.

GetHashCode() method # =

Summary

Inherit from parent.

Parameters

This method has no parameters.

op_Addition(v,v2) method # =

Summary

Adds one vector to another

Returns

The first vector plus the second

Parameters
Name Type Description
v SGPdotNET.Vector3 The left-hand vector
v2 SGPdotNET.Vector3 The right-hand vector

op_Division(v,v2) method # =

Summary

Scales one vector by another

Returns

The first vector divided by the second

Parameters
Name Type Description
v SGPdotNET.Vector3 The left-hand vector
v2 SGPdotNET.Vector3 The right-hand vector

op_Division(v,v2) method # =

Summary

Scales one vector by a scalar

Returns

The first vector divided by the scalar

Parameters
Name Type Description
v SGPdotNET.Vector3 The left-hand vector
v2 System.Double The right-hand scalar

op_Multiply(v,v2) method # =

Summary

Scales one vector by another

Returns

The first vector multiplied by the second

Parameters
Name Type Description
v SGPdotNET.Vector3 The left-hand vector
v2 SGPdotNET.Vector3 The right-hand vector

op_Multiply(v,v2) method # =

Summary

Scales one vector by a scalar

Returns

The first vector multiplied by the scalar

Parameters
Name Type Description
v SGPdotNET.Vector3 The left-hand vector
v2 System.Double The right-hand scalar

op_Subtraction(v,v2) method # =

Summary

Subtracts one vector from another

Returns

The first vector minus the second

Parameters
Name Type Description
v SGPdotNET.Vector3 The left-hand vector
v2 SGPdotNET.Vector3 The right-hand vector

ToString() method # =

Summary

Inherit from parent.

Parameters

This method has no parameters.

Clone this wiki locally