我很难在Matlab中使用fsolve函数来求解一组5个方程。在Matlab中求解5个非线性方程的系统
这里是5个方程:
Y = A + d + E
Y + X = C + d + 2e中
2X = 4A + 2B + 2C
K1 =(d * b^3 /(A * C))*((P /县)/(A + b + C + d + E))^ 2
K2 = b E /(dç )
y,x,k1,k2,P,Pref是我设置的所有参数,但希望将它们留在函数中,以便我可以在代码中快速更改它们以找到新答案。 a,b,c,d,e是我想要解决的变量(它们是反应平衡方程式的组成)
我试图硬编码函数中的参数,但没有工作。我只是不知道该怎么做。我改变的每件事都会产生一个新的错误。最常见的是数据类型必须是“双”。
编辑:添加代码
第一功能:
function F = myfun(Q,I)
a = Q(1);
b = Q(2);
c = Q(3);
d = Q(4);
e = Q(5);
x = I(1);
y = I(2);
k1 = I(3);
k2 = I(4);
P = I(5);
Pref = I(6);
F(1) = a + d + e - y;
F