如何绘制a(以0.01的增量从0-1变化)vs x(2)(使用for循环和fsolve来找到基于a的包含x(s) sol的非线性方程的解

4次浏览(最近30天)
维克多·希门尼斯·卡里略
V = 1000;Q = 50;Ca0 = 1;k = 1;
一个= 0:1:0.1
f = @ (x) [Q * Ca0-Q * x (1) - k * x (1) ^ 2 * (* V);Q * x (1) x (2) - k - Q * * x (2) ^ 2 * (1 a) * V];
fsolve (f [0.5, 0.5])
结束
情节(a, x (2))

答案(1)

艾伦·史蒂文斯
艾伦·史蒂文斯 2021年9月16日
第一个方程是x(1)的简单二次方程;第二个方程是x(2)的二次方程,它依赖于x(1),所以,假设你只对正根感兴趣,它们可以按以下方式求解:
V = 1000;Q = 50;Ca0 = 1;k = 1;
A = 0:0.01:1;
X1 = 0(1,数字(a));
X2 = 0(1,数字(a));
i = 1:元素个数(a)
假设x1和x2都是正值
如果A (i) == 0
A = k*V;
x1(i) = Ca0;
x2(i) = (-Q +√(Q^2 + 4*A*Q*x1(i)))/(2*A);
elseifA (i) == 1
A = k*V;
x1(i) = (-Q +√(Q^2 + 4*A*Q*Ca0))/(2*A);
X2 (i) = x1(i);
其他的
A1 = k*a(i)*V;
A2 = k*(1-a(i))*V;
x1(i) = (-Q +√(Q^2 + 4*A1*Q*Ca0))/(2*A1);
x2(i) = (-Q +√(Q^2 + 4*A2*Q*x1(i)))/(2*A2);
结束
结束
次要情节(2,1,1)
情节(x1)、网格
包含(“一个”), ylabel (x1的
次要情节(2,1,2)
情节(x2)、网格
包含(“一个”), ylabel (“x2”
这两个方程可以表示为:
% k*a*V*x1^2 + Q*x1 - Q*Ca0 = 0
% k*(1-a)*V*x2^2 + Q*x2 - Q*x1 = 0
2的评论

登录评论。

下载188bet金宝搏


释放

R2020b

社区寻宝

在MATLAB Central中找到宝藏,并发现社区如何帮助您!

开始狩猎!