怎么用matlab求解带参数的方程,并且画图

2025-05-09 00:41:52
推荐回答(1个)
回答1:

你好!给你变了一段代码:

主程序

clc;clear all
global t
A=1:1:50;
x=zeros(size(A));
y=x;
for i=1:length(A)
    x0=1;
    t=A(i);
    y(i)=fsolve(@(x)f(x),x0);
    x(i)=216.77-(0.4*(428.15-y(i)))/(0.9*(exp(-t*51.84/904.5)-1));
end
figure(1)
plot(A,x,'r--','linewidth',2)
xlabel('A')
ylabel('x')
title('x-A 曲线')
figure(2)
plot(A,y,'b-.','linewidth',2)
xlabel('A')
ylabel('y')
title('y-A 曲线')

子函数程序:

function d=f(y)
global t
d=y-(428.15-(216.77-(0.4*(428.15-y))/(0.9*(exp(-t*51.84/904.5)-1))))*...
    exp(-t*27.84/402)+216.77+(0.4*(428.15-y))/(0.9*(exp(-t*51.84/904.5)-1));
end

结果:

希望帮到你!