我必须将给定方程的数据拟合到附图所示的蓝线中的其他数据。
r和c的初始值分别为0.004和40。 r和c的结果值分别为0.0068和54.23。公式如下:
我没有得到合适的图表。我不知道我在哪里弄错了。红色圆圈是我认为我的拟合结果。这是我在Matlab上的工作。
功能文件:
function y = FOM2(t,r,c)
t=(0:0.01:2);
q=zeros(1,length(t));
for i=1:length(t)
if (t(i) < 1)
q(i) = 600;
else
q(i) = 0;
end
y= q*(r+(1/c));
end
错误值功能:
function error=RCvalues(x,time,data)
r = x(1); c = x(2);
test = FOM2(time,r,c);
d= data - test;
error = sum(d.^2);
拟合文件:
Data = load ('Paw.txt'); %Load measurement data
Time = load ('time.txt');
Data=data';
Time=ime';
opt = optimset('MaxFunEvals',10000,'TolFun',1e-6);
x = fminsearch(@(x) RCvalues(x,Time,Data),[0.004 40],opt);
r = x(1);
c = x(2);
yy= FOM2(Time,r,c);
fprintf('Final values:\n');
fprintf('r %7.3f\n',x(1));
fprintf('c %7.3f\n',x(2));
plot(Time,Data)
hold on
plot(Time,yy,'o');
这是方程式,
totaltime is 2 sec
dPalv/dt=q/c
Paw= r*q+palv
我必须使用Paw方程但不知道如何。