2015-02-08 153 views
1

是否有可能在matlab中求解以下方程?在matlab中求解非线性矩阵方程

A*X+B*exp(X)=C 

A,B是正方形和常数矩阵。 C是一个常数和列矩阵。 X是一个应该找到的列矩阵。(exp()在X上逐个元素)。

+0

有符号工具箱吗?然后尝试http://www.mathworks.com/help/symbolic/solve.html。你需要用正确的大小初始化sym X,否则会失败:'X = sym('X',size(C))' – Daniel 2015-02-08 15:12:52

+0

yes。它是可用的。我通过fsolve解决了它。 – 2015-02-08 15:46:26

回答

2

如果你正在寻找一个数值方法,你可能会想尝试fsolve

X = fsolve(@(x) A*x + B*exp(x) - C, x0); 

由于问题的非线性性质,你需要提供一个初始猜测x0 - 其质量可以的影响解算器的性能。

+1

thanks.it工作。 – 2015-02-08 15:45:08

+1

@iliailiaey然后请将答案标记为已接受(答案顶部的绿色复选标记)。谢谢! – 2015-02-08 22:20:42