The "plot" and "polyfit".
조회 수: 1 (최근 30일)
이전 댓글 표시
I want to plot a graph of a function fitted by two list of t and fp. A dependent variable fp is gotten by a independent variable t with a fitting function using "ployfit". I don't know how to plot a graph of the function ,even if I got "fp"s from "t" given arbitrarily.The code is shown below.
function y=fp(t)
t_1=[0 0.15 0.49 2.1126];
t_2=[2.27 3.53 8.78 25.45 42.80 43.68 44.08];
p_1=9.80665*[331.2 614.3 505.4 607.8];
p_2=9.80665*[48.65 43.97 42.01 41 40.8 40.79 2.22];
y=polyfit(t_2,p_2,2)*[t.*t;t;1]*(t>=2.1126)+polyfit(t_1,p_1,2)*[t.*t;t;1]*(t>=0&&t<2.1126);
end
Actually,the "plot" seems workable, but I need help to plot;
댓글 수: 1
John D'Errico
2015년 5월 25일
Please learn to format your code so it will be readable. I've done that for you this time.
You do realize that this is not actually a spline that you are building? It is not even a continuous function across the breakpoint.
채택된 답변
John D'Errico
2015년 5월 25일
It looks like you are trying to build a VERY simple spline, but not doing a very credible job of it. (Sorry.) This is a piecewise quadratic function, but it is one that will not even be continuous across the breakpoint.
t_1=[0 0.15 0.49 2.1126];
t_2=[2.27 3.53 8.78 25.45 42.80 43.68 44.08];
p_1=9.80665*[331.2 614.3 505.4 607.8];
p_2=9.80665*[48.65 43.97 42.01 41 40.8 40.79 2.22];
poly1 = polyfit(t_1,p_1,2);
poly2 = polyfit(t_2,p_2,2);
plot(t_1,p_1,'bo',t_2,p_2,'ro')
hold on
t = linspace(0,2.1126,100);
plot(t,polyval(poly1,t),'b-')
t = linspace(2.1126,44.08,100);
plot(t,polyval(poly2,t),'r-')
plot([2.1126 2.1126],[0 607.8],'g-')
grid on

In fact, the entire modeling effort is (again, sorry) rather insane. That first piece with only 4 wildly scattered points does not even justify a quadratic polynomial for that fit.
I don't know what you are trying to do here, nor why you are trying to force a quadratic polynomial through that mess. But I'm not sure that you know why either.
추가 답변 (0개)
참고 항목
카테고리
Help Center 및 File Exchange에서 Spline Postprocessing에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!