#碎片化 #空间

凯斯勒

凯斯勒是一个用于模拟低地球轨道碎片事件的库

5个版本

0.1.4 2023年10月21日
0.1.3 2023年10月5日
0.1.2 2023年3月29日
0.1.1 2023年3月25日
0.1.0 2023年3月25日

#95 in 模拟

MIT 许可证

22KB
380

Kessler.rs

凯斯勒是一个Rust包,允许用户根据NASA标准断裂模型模拟低地球轨道的碎片事件。

重要:在此包达到版本1.0之前,API可能会更改,且无法保证结果的准确性。

安装

要使用凯斯勒,您需要在您的系统上安装Rust和Cargo。您可以按照官方Rust网站上的说明安装Rust和Cargo

http://www.rust-lang.net.cn/tools/install

安装Rust和Cargo后,您可以通过将以下行添加到您的Cargo.toml文件中来将凯斯勒添加到您的项目中

[dependencies]
kessler = "0.1.0"

使用

要使用凯斯勒,首先在您的Rust代码中导入该库

use kessler::{run, ExplosionEvent, SatKind, Satellite};

fn main() {

    // Define the initial position, velocity, mass, characteristic length, and kind of a satellite.
    let position = [6.702e6, 0.0, 0.0]; // position vector [m] relative to Earth's center
    let velocity = [0.0, 7.666e3, 0.0]; // velocity vector [m/s]
    let mass = 4.98e3; // kg
    let characteristic_length = 0.1; // m
    let sat_kind = SatKind::Rb; // kind of satellite (Rb, Debris, or Satellite)

    // Create a new satellite with the given parameters
    let satellite = Satellite::new(position, velocity, mass, characteristic_length, sat_kind);

    // Create a new explosion event with the satellite
    let event = ExplosionEvent::new(satellite);

    // Run the simulation with the explosion event
    let result = run(&event);

    // Print the final state of the satellite after the simulation has completed
    println!("{:#?}", result.dim());
}

贡献

如果您发现错误或有功能请求,请在该凯斯勒GitHub仓库上创建一个问题

https://github.com/reeceHumphreys/kessler/issues

如果您想为此项目做出贡献,请随意分叉仓库并提交一个拉取请求。

许可证

凯斯勒根据MIT许可证的条款分发。有关详细信息,请参阅LICENSE文件。

待办事项

  • 添加测试
  • 添加文档
  • 验证结果

依赖关系

~67MB
~1M SLoC