Click or drag to resize

Welcome

DME Component Libraries for Java is a family of powerful class libraries built on version 8 or later of the Java SE Runtime Environment (JRE). 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 Java developer, you can get started with DME Component Libraries right away simply by adding references to its JAR files to your project. They are found in the Jars 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.