1 个不稳定版本
0.1.0 | 2019年11月10日 |
---|
#804 in 科学
52KB
1K SLoC
超级流畅简单替换求解器(S5)
S5是一个简单的方程求解器,使用Rust编写,用于解决轨道力学中的一些作业式问题。尽管如此,它可以用于任何方程组(不一定用于轨道力学建模)。
工作原理
它通过获取所有已知变量,找到一个恰好有一个未知变量的方程,以已知变量的形式求解它,最后计算解决方案(因此名称中的“替换”一词)。
组织结构
这个仓库是一个Rust工作空间,包含两个crate
s5
- 求解器库problems
- 使用s5
作为依赖项的crate,用于解决《天体动力学基础》文本中的问题。
s3
crate是您项目将使用的;problems
只是一个示例crate,使用S5并不需要。
安装
求解器以Rust库的形式分发,可以通过将以下内容添加到Cargo.toml
来将其添加到任何Rust项目中
s5 = "0.1.0"
使用方法
请参阅[此处](https://docs.rs/s5/0.1.0/s5/)的文档
贡献
有三种方式可以为S5做出贡献
- 改进求解器本身(查找TODOs)
- 改进文档
- 完成
problems
crate(旨在使用S5解决《天体动力学基础》中的所有问题)
许可协议
MIT。请参阅LICENSE.txt
。
lib.rs
:
用于物理问题的非常基础的s5方程
此crate实现了一个s5,它消耗一组方程来模拟某个系统以及已知变量的值,并尽可能地推断出尽可能多的其他系统变量的值。请参阅solver_state
了解API用法和problems
crate的示例用法,该crate用于解决来自《天体动力学基础》教材的问题。
组织结构
模块constants
、variables
和formulas
包含用于构建模拟你物理系统的方程的类型,以及为你的问题变量提供已知值。请参阅formulas
以获取构建公式的示例。
solver_state
模块实现了s5本身。