You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

wxMaxima使用solve求解后如何获取F_Br表达式的数值结果

问题原因

solve()函数返回的是包含等式的结果列表,并不会直接为F_By、F_Bz变量赋值,你后续计算时这两个变量仍处于未赋值的符号状态,所以只能输出符号表达式。

解决方法

方法1:使用ev函数代入解计算

如果不想改动原有的solve调用逻辑,可以直接把solve结果作为参数传入ev完成值代入:

/* 代入两个解计算F_Br */
F_Br: ev(sqrt(F_By^2 + F_Bz^2), solve(M_A[2]), solve(M_A[3]));
/* 转换为浮点数值 */
float(%);

方法2:提前为变量赋值

如果后续还要多次用到这两个变量的值,可以先把解赋值给对应变量,后续所有调用都会自动用数值计算:

/* first()取列表首个解,rhs()取等式右侧的数值,完成变量赋值 */
F_Bz: rhs(first(solve(M_A[2])));
F_By: rhs(first(solve(M_A[3])));

/* 直接计算即可得到数值结果 */
F_Br: sqrt(F_By^2 + F_Bz^2);
float(F_Br);

执行完上述代码后即可得到F_Br的浮点数值,约为3442.22。

内容的提问来源于stack exchange,提问作者mily

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.28 06:27:02