请帮助。我想我错过了一些东西,因为fsolve太耗时间了。我想解决非线性系统,我有以下形式的系统:使用fsolve解决非线性系统
A = [x+y*3+10;
x-z*6-15;
x^2+y+z-16]
要使用fsolve我需要创建和替换功能与V(I)的每个变量,像:
function z=evaltub(v)
z(1) = v(1)+v(2)*3+10;
z(2) = v(1)-v(3)+6-15;
z(3) = v(1)^2+v(2)+v(3)-16;
,然后使用
x = fsolve(@evaltub,[1 1 1])
的问题是,对于大型系统替换用v(i)每可变需要花费大量的时间。 还有另一种使用fsolve的方法吗?
fsolve找到了答案,我的问题是,我需要修改公式与fsolve使用它们,它需要太多的时间,当系统大
我尝试使用命令解决,但是当有有10多个方程式,它没有得到答案。我得到的消息:
Warning: Explicit solution could not be found
这个问题似乎是两个独立的问题。你应该选择一个。 “我尝试使用命令solve,但是当有10多个方程式时,它无法得到答案” - 这对我们没有帮助,因为你没有提供这种情况下的代码。返回的是什么?错误消息?什么是exitflag输出(参见文档)等于?你确定这个系统真的有根吗?你有没有调整fsolve的许多选项?怎么样? – horchler
对不起。当我使用解决方案时,我得到'警告:明确的解决方案无法找到'的消息我猜是因为系统太大而无法在没有初步猜测的情况下解决?我没有调整fsolve上的任何选项,它的工作原理是正确的,但修改方程式以使用fsolve需要很长时间 – user3199900