Skip to main content

No project description provided

Project description

KessPy

kesspy is a Python library for simulating explosion and collision events in orbit using the NASA Standard Breakup Model. The breakup model was implemented based on the following works: NASA’s new breakup model of evolve 4.0 (Johnson et al.), and Proper Implementation of the 1998 NASA Breakup Model (Krisko et al.).

Installation

kesspy runs on Python 3.6 or higher (Python 3.8 is recommended): Currently the package is available using pip:

pip install nasa_sbm

A conda distribution will be made available when the project is stable

Getting Started

To use kesspy, you must first create a .yaml file to configure the simulation. This file has three required fields, the minimum characteristic length, the simulation type, and the satellite type involved in the fragmentation event.

Secondly, you must provide an implementation of Satellite.

Once, you have those two criterion met you can perform the simulation as follows:

from nasa_sbm.configuration import SimulationConfiguration
from nasa_sbm.model import BreakupModel

config = SimulationConfiguration('data/simulation_config.yaml')
event  = BreakupModel(config, np.array([sat]))
debris = event.run()

An example configuration.yaml and Satellite implementation has been provided in examples

Result Data Format

index data type
0 SatType (for internal use) enum
1 position np.array (, 3), containing floats
2 characteristic length float
3 area to mass ratio float
4 area float
5 mass float
6 velocity np.array (, 3), containing floats

The returned debris is an (n, 7, 3) numpy array. However, only the position and velocity use the third axis as those quanities are vectors. >All other fields have 3 copies of their respective data. This was done as a performance optimization for numpy

Documentation

Testing

pytest --cov=nasa_sbm tests/
coverage report -m

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

kesspy-0.1.0.tar.gz (18.0 kB view hashes)

Uploaded Source

Built Distribution

kesspy-0.1.0-cp311-cp311-macosx_10_7_x86_64.whl (292.1 kB view hashes)

Uploaded CPython 3.11 macOS 10.7+ x86-64

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page