#磁力 # #计算 #磁性 #json文件 #

app magnet_rs

基于Rust的用户友好型磁场计算

4个版本

0.2.3 2021年9月19日
0.2.2 2021年9月18日
0.2.1 2021年9月18日
0.1.0 2021年2月19日

#131 in 模拟

MPL-2.0 许可证

730KB
4.5K SLoC

Magnet_RS

License: MPL 2.0 License: CC BY-SA 4.0 build status crate documentation

Magnet_RS 是一个命令行程序,用于计算二维和三维中任意对象或多个对象的磁场,以及任何感应力和扭矩。它使用了 lodestone_core crate,这是对 Python 包 pymagnet 的重写。

GithubPyPi

描述

此二进制程序读取包含磁铁和要运行计算的点的 toml 文件。然后将其保存到具有以下键的 JSON 文件中

  • magnets:一个包含磁铁及其属性的数组
  • points:计算场的位置
  • field:计算出的磁场

目前,仅提供二维功能。

示例

运行示例计算

magnet_rs -d

它将计算出的场保存到 example_out.json

数据文件夹中的 Python 脚本 plot_example.py 将绘制结果 json 文件。

读取输入文件

将以下内容保存到 input.toml

[[magnet]]
kind = "rectangle"
size = [1.0, 1.0]
center = [-1.0, -0.5]
magnetisation = [1.0, 90.0]
magAngle = "degrees"
alpha = 0.0
alphaAngle = "degrees"

[[magnet]]
kind = "rectangle"
size = [1.0, 1.0]
center = [1.0, -2.0]
magnetisation = [-1.0, 0.5]
magAngle = "degrees"
alpha = 0.0
alphaAngle = "degrees"


# Then define the type of grid for calculating over
[grid]
kind = "grid"
start = [-2.0, -2.0]
stop = [2.0, 2.0]
numPoints = 101
units = "mm" # NOTE: Units are not yet implemented 

然后运行以下命令以将数据保存到 JSON 文件中

magnet_rs -i input.toml -o out.json

许可证

源代码根据 Mozilla 公共许可证版本 2.0 许可。

文档根据 Creative Commons 知识共享署名-相同方式共享 4.0 国际 (CC BY-SA 4.0) 许可证许可。

这是对许可证(而不是替代品)的易于理解摘要,改编自 CS50x。此许可证的其他语言官方翻译可用。

您可以

  • 分享 — 以任何媒体或格式复制和重新分发材料。
  • 改编 — 混合、转换和基于材料进行构建。

在以下条款下

  • 署名权 — 您必须给予适当的信用,提供许可证链接,并指出是否进行了修改。您可以用任何合理的方式进行,但不能以任何方式暗示许可方支持您或您的使用。
  • 相同方式共享 — 如果您混合、转换或基于材料进行构建,您必须以与原始材料相同的许可证分发您的贡献。
  • 无额外限制 — 您不得应用法律条款或技术措施,以法律手段限制他人执行许可证允许的行为。

贡献

除非您明确声明,否则您有意提交给工作以包含的任何贡献都应按照上述方式许可,不附加任何额外条款或条件。

依赖关系

~6–16MB
~191K SLoC