DME Component Libraries for .NET 2023 r1

## Welcome |

DME Component Libraries for .NET is a family of powerful class libraries built on .NET Standard 2.0 and .NET Framework 4.6.2 or later. Whether you are building a small utility to process some proprietary data, a world-class desktop aerospace software application, a multi-user web application, or a piece of a service-oriented architecture (SOA), DME Component Libraries can help.

Capabilities

DME Component Libraries offers the following major capabilities:

**Time**A high-precision JulianDate type

Time standards, including UTC, UT1, TAI, TT, TDB, and GPS, and conversions between them

High-precision Duration, GregorianDate types

Time intervals and time interval collections, optionally associated with data values

**Position and Orientation**Time-varying position and orientation modeled in many different ways

Land, air, sea, space vehicles

Values computed through analytical calculation, propagation, interpolation, etc.

Analysis independent of the definition of an object

**Access (intervisibility)**Determine the times when one object can "see" another

Constrain access with a wide variety of composable constraints

Constraints can be geometric in nature or based on another metric (for example, signal strength)

Model complex intervisibility problems involving any number of objects by building access queries using boolean operators

Accounts for light-time delay and aberration, even over multiple "hops" in a chain

Multithreaded for scalability and to take full advantage of multicore systems

**Platforms**Extensible, high-level objects for modeling satellites, facilities, aircraft, etc.

Construct objects tailored to your problems by attaching individual capabilities and aspects

**3D Visualization**Insight3D

Embed visualization in your custom desktop application

High performance, technically accurate 3D globe

First-class support for time-dynamic visualization

Rich terrain and imagery

Render moving points, lines, polygons, meshes, markers and 3D models

Screen overlays for heads-up displays, logos, etc.

Display video on terrain, screen overlays, and 3D models

Rich image processing

Flexible camera control

Cesium

Web browser-based visualization

High-resolution terrain and imagery from online or network sources

Render moving points, polylines, polygons, billboards, 3D models

AGI proprietary features and techniques

Advanced sensor volumes, rectangular, conic, custom, domes, holes

Occlusion and intersection of sensors with terrain and models

3D time-varying vectors

Fan geometry for azimuth-elevation masks

First-class support for time-dynamic visualization

3D globe or 2D map

Client-server applications

Connect browser clients with server-side analysis using CZML

**Coordinates**Cartesian, Spherical, Cartographic (Longitude, Latitude, Altitude), and more

Orbital elements including Delaunay, Equinoctial, Keplerian, and Modified Keplerian

**Rotations**Matrix3By3, UnitQuaternion, EulerSequence, YawPitchRoll, and more

**Earth Modeling**Earth Orientation Parameters (Pole Wander and UTC/UT1 difference)

IAU 1976 precession model

IAU 1980 nutation model

IERS Technical Note 21

J2000, Mean Equator Mean Equinox, Mean Ecliptic Mean Equinox, Mean Ecliptic True Equinox, True Equator True Equinox, True Equator Mean Equinox, Fixed

Atmospheric modeling

**Modeling of Other Central Bodies**IAU 2000, 2006 and 2009 models of the orientation of the planets, Sun, and Earth's Moon

Simon1994 analytical model for the positions of the planets and Earth's Moon

**JPL Planetary and Lunar Ephemerides**Determine the positions and velocities of the planets and Earth's Moon

Nutation and libration

**Geometry Transformation Engine (like STK's Vector Geometry Tool)**Points, Axes, Vectors, Reference Frames, and Scalar

Observe a point in any reference frame

Observe a vector in any set of axes

Find a transformation between any two sets of axes or reference frames

**Terrain Analysis**Constrain access using terrain line of sight

Compute an azimuth-elevation mask from terrain

Read terrain data in a variety of formats:

STK Terrain Server

USGS Digital Elevation Model (DEM)

NGA Digital Terrain Elevation Data (DTED)

AGI World Terrain

GEODAS Gridded Data Format (GRD98)

GTOPO30

AGI Processed Data Terrain (PDTT)

Earth Gravity Model 1996 (EGM96) Mean Sea Level surface

Multithreaded caching mechanism delivers great performance even with huge data sets

**Sensor Modeling**Rectangular, Complex Conic, Synthetic Aperture Radar (SAR)

Compute access using a sensor

Find the projection of a sensor onto the Earth or other central body

**Spatial Analysis (Coverage)**Compute access to an entire region of interest over time

Use any access constraints and compose complex access queries

Parallelized calculation using multithreaded analysis

Geometry primitives representing lines and regions on the globe

Gridding Algorithms

Grid based on surface regions (e.g. area defined by the US border)

Global grid

Latitude and longitude lines

Latitude bounds

Constrain an existing grid using a surface region (area target)

Create your own by extending the provided types

Easily orient and configure constraints on the grid points for Access

Use terrain to determine grid point altitudes

Coverage Definitions

Coverage based on a grid on the surface of a central body

Coverage based on a time-dynamic object

Assets representing spacecraft, aircraft, constellations, chains, or any boolean combination thereof

Figures of Merit

Number of assets

Coverage time

Response time

Coverage gaps

Percentages and statistics over the grid

Instantaneous and/or accumulated values

Navigation Figures of Merit

Dilution of precision

Navigation accuracy predicted

Navigation accuracy assessed

**Communications Analysis**Model wireless links, antennas, transmitters, receivers

Digital and analog radio frequency (RF) transmitters and receivers

Optical transmitters and receivers

Antenna Gain Patterns

Isotropic gain pattern (omnidirectional)

Gaussian gain pattern

Helical gain pattern

Parabolic gain pattern

Square Horn gain pattern

Phased Array gain pattern

Wireless signal propagation

Signal modeling - power, frequency, noise, etc.

Signal interference

Connect links into a signal propagation graph

Light time delay and doppler shift taken into account for signal propagation

Free space path loss

Polarization efficiency loss

Atmospheric attenuation from ITU-R P.676 and ITU-R P.835

Cloud and fog attenuation from ITU-R P.840

Rain attenuation from ITU-R P.618 or ITU-R P.838

Tropospheric scintillation from ITU-R P.618 or ITU-R P.1814

Beer-Lambert Law atmospheric absorption model

Simple SATCOM attenuation model

Crane rain attenuation model

Signal processors modeling hardware behavior

Constant gain amplifier

Variable gain amplifier (IBO/OBO)

Constant frequency mixer

Variable frequency mixer

Digital modulator

Digital demodulator

Rectangular filter

Pulsed signal source

Photodiode photodetector (Avalanche and PIN)

Custom signal source (analog or digital)

Scalars Representing Link Budget Parameters

Effective Isotropic Radiated Power - EIRP

Received Isotropic Power - RIP

Carrier to Noise - C/N

Carrier to Noise Density - C/No

Carrier to Interference - C/I

Carrier to Noise + Interference - C/(N+I)

Energy per Bit to Noise Density - Eb/No

Bit Error Rate - BER

Antenna Gain in Link Direction

Power at Receiver Output

Received Power Flux Density

Propagation Loss

Link budget scalars can be used as access constraints and coverage figures of merit

Access constraints can be used to constrain communications links during signal propagation

**Orbit Propagation**Two Body, J2, and J4 propagators

Propagate from a Two-Line Element Set (TLE) using SGP4

Long-term propagation to determine expected orbit decay time using LifetimeOrbitPropagator

NavstarISGps200DPropagator for propagating GPS satellites according to IS-GPS-200D

Multithreaded for scalability and to take full advantage of multicore systems

Stop propagating after a fixed amount of time or on arbitrary events

Model a vertical launch segment from an initial location to specified burnout conditions

Model continuous thrusting of rocket engines.

**Numerical Propagation**Propagate a state from initial conditions using derivatives

Propagate state using SRP, drag, gravity and custom force models

**Ballistic Propagation**Ballistic propagation to and from fixed points on a central body

Calculate trajectories to satisfy:

Minimum energy

Minimum eccentricity

Specified delta-V

Specified flight duration

Specified apogee altitude

**Waypoint Propagation**Shortest path over an ellipsoid

Useful for modeling straight paths between waypoints on the surface of a central body

**Route Propagation**Provides a simple way to model aircraft, ground vehicle, and ship routes

Simple turn procedures at waypoints

Holding patterns and search procedures

Takeoff and landing

Simple orientation for modeling aircraft banking and vehicles driving along terrain

**Segment Propagation**Provides a simple way to model a trajectory where the means of propagation changes

Propagate any number and combination of state elements

Use a numerical or analytical propagator that stops at arbitrary events

Apply impulsive maneuvers with fuel usage

Group individual segments together in a list that is itself a segment

Solve for a particular trajectory by modifying the segments settings

Control the flow of propagation with stopping conditions, returning out of a list, or stopping propagation

Follow other propagation elements before starting another segment

Hold propagation elements constant until a condition is satisfied

Apply discrete updates to state elements

Model finite maneuvers and optionally configure them based upon a previously propagated impulsive maneuver.

Dynamically switch between one of two segments during propagation.

**Aircraft Propagation**Model motion of an aircraft through different maneuvers

Performance models correspond to different phases of flight

Sequence maneuvers using Segment Propagation

Aerodynamic and propulsion models define the flight characteristics of the aircraft

Determine orientation and fuel flow under flight conditions

Assess whether overall flight objectives are achieved

**Dynamic Data Analysis (Tracking Library)**Dynamic data acquisition and incorporation into an entity set

Provide situational awareness and live analysis

Software Transactional Memory System for performant, thread-safe operation

Evaluator parameterization for one-point analysis

Data filtering and event processing

Archiving and playback

**Navigation Accuracy Analysis (GPS)**Read Performance Assessment Files (PAF), Prediction Support Files (PSF), RINEX Navigation files, Satellite Outage Files (SOF), SEM and YUMA almanacs, and SP3a and SP3c ephemeris files

Propagate SVs according to IS-GPS-200D

Track satellites with All-in-view and Best-N algorithms

Compute Dilution of Precision (DOP)

Compute assessed and predicted navigation accuracy

Compute Receiver Autonomous Integrity Monitoring (RAIM) outages

Use navigation quantities to constrain access

**Navigation Communications Analysis**GPS signal transmitters for all current GPS satellite blocks

Multiple receiver channels, each capable of tracking multiple signals

Direct or handover acquisition models (C/A or C/A to P(Y) for example)

Constrain receiver channel tracking by C/N0 values

Supports addition of interference and jamming transmitters

GPS specific link budgets

Noise calculations for single or dual frequency GPS receivers

GPS signal power spectral density models

Modern signal architectures included (C code, M code)

Standard constellation and receiver models included

Configurable engineering parameters and antenna gain patterns

**Radar Analysis**Model radar transmitters and receivers

Monostatic and bistatic radar geometry

Define attitude-dependent radar cross sections

Electromagnetic interference (EMI)

Scalars representing radar metrics

Target scattered power

Target radar cross section

Mitchell-Walker probability of detection

Integrated pulse count

Dwell time

Link budget scalars can be used as access constraints and coverage figures of merit

**Numerical Methods**Numerical integration

Brent bracketing root and extremum finders

Find the places where an arbitrary function crosses a threshold value

Lagrange and Hermite interpolation/extrapolation

Translational and rotational motion interpolators

Polynomial modeling and root finding

Solve multivariable functions with a multithreaded Newton-Raphson method

The above list is only a sampling of the capabilities offered by DME Component Libraries.
For a complete listing, browse the table of contents of the
Library Reference.
If you are an experienced
.NET
developer, you can get started with DME Component Libraries right away simply by adding references to its
assemblies
to your project. They are found in the
*Assemblies*
subdirectory under the directory where you installed DME Component Libraries.

In addition to the Library Reference, the help system includes a Programmer's Guide, with high level descriptions and explanations of the class library, Example Applications illustrating the use of important DME Component Libraries types, a Tutorial, and other information.