【发布时间】:2023-03-16 14:48:01
【问题描述】:
我想使用solve() 来求解大型线性方程组。 solve() 函数需要方程和变量。我使用循环来生成方程,我的变量包含在一个大数组中。这是我正在尝试做的简单代码:
x = sym('x',[1 3])
eqn = sym('eqn', [1,3])
eqn1 = 2*x1 + x2 + x3 - 2 == 0
eqn2 = 2*x2 -x2 -x1- x3 == 3
eqn3 = 2*x2+ x1 + 3*x3 == -10
Y = solve(eqn, x)
MATLAB 无法识别我的变量 x1。我已经使用以下代码解决了相同的系统:
syms x1 x2 x3
eqn1 = 2*x1 + x2 + x3 == 2
eqn2 = 2*x2 -x2 -x1 - x3 == 3
eqn3 = 2*x2+ x1 + 3*x3 == -10
X = solve([eqn1, eqn2, eqn3, eqn4], [x1 x2 x3])
structfun(@subs,X)
但这对于大量方程是没有用的。我做错了什么?
【问题讨论】:
标签: matlab linear-algebra