哦哦哦,我懂了!maxwell里的给的是B-H曲线, 所以这条曲线后面线性增长完全是因为H在线性增长!! 而我错误的以为这条是M*μ0-H 曲线。 非常感谢您的帮助,我去修改下程序。
最近看到一本神书《你好,电磁炮》。书中推导出了计算磁阻炮的弹丸受力公式。即F = M · ΔΦ 。(图1)
图1:节选自013页
数据准备:
从公式中可以知道我们需要获取两个数据,一是磁化强度M。二是圆柱两端面的磁通量之差ΔΦ
1:获取磁化强度M
这部分比较容易,首先需要在maxwell里查询1010钢的磁化曲线。(图2)
图2:1010钢的磁化曲线
使用M=B/μ0-H,和这个B-H曲线就可以算出M的值
2.获取 圆柱两端面的磁通量之差ΔΦ
ΔΦ = ΦR - ΦL,ΔΦ是圆柱两端面的磁通量之差。 磁通量这个数据较难直接获取,但是根据Φ=BS,只需在磁感应强度B上乘上S(这里指子弹的端面面积)。 所以现在我们需要知道 磁感应强度B的曲线。这里我们请出maxwell。
在mawell里solutiontype选择eddy current,画出线圈,参数为线圈长度8,内径8.5,外径18,匝数100,激励电流200A。再画出一条lines放置在线圈的中轴线上。(图3)。 然后点analyzeAll计算,结果选择create fields report,geometry选择我们画的那条直线Polyline1,计算结果选Mag_B。 即可计算出 线圈中轴线上的磁感应强度B曲线(图4)
图3:线圈参数
图4:磁感应强度B曲线
有了这条曲线,就很容易求出 ΔB即 圆柱两端面的磁感应强度之差,乘以S,即可求出ΔΦ。
编写程序与验证:
好了,有了以上的数据就可以写个python程序来验证下了。程序放在文末附件。
这次使用的弹丸的参数为:直径8,长度10。使用给定的线圈和弹丸参数,通过程序计算的受力曲线(即Force curve A)如图5所示。 同时,我们可以用maxwell直接计算出受力曲线(即Force curve B),如图6所示。
图5:根据磁感应强度曲线 计算出的受力曲线A
图6:maxwell直接计算出的受力曲线B
我们悲伤的发现,这俩曲线并不完全吻合,(不过抛开其他不谈,至少形状是对的 )
这里非常感谢三水大佬的指导,修正我关于M计算的错误后,新的计算结果和仿真结果仍有差距,似乎偏小。。。
结语:
F = M · ΔΦ ,这个公式计算出的弹丸受力大体上是正确的,但是想要用于磁阻炮的仿真计算上 还有待更进一步的研究。目前来说,用maxwell直接计算受力曲线 精度更高。
附件:
1:python代码 -修改了关于M的错误
2:计算磁感应强度B曲线的maxwell文件,和给出的result文件
3:直接计算受力曲线的maxwell文件,和给出的result文件
参考文献:
1:你好,电磁炮 ----潘永生,陶乐,刘虎编著
[修改于 5个月5天前 - 2024/06/18 23:49:08]
时段 | 个数 |
---|---|
{{f.startingTime}}点 - {{f.endTime}}点 | {{f.fileCount}} |
200字以内,仅用于支线交流,主线讨论请采用回复功能。