Asked by S
on 6 Apr 2013

parabola going from three point (7.8 0.96), (8.25 0.99), (8.55 0.94), how can I compute area under the parabola?

x=[7.8 8.25 8.55]; y=[0.96 0.99 0.94]; p=polyfit(x,y,2); f=polyval(x,p); plot('x','y','o','x','f','-');

*No products are associated with this question.*

Answer by bym
on 6 Apr 2013

Accepted answer

x=[7.8 8.25 8.55]; y=[0.96 0.99 0.94]; p=polyfit(x,y,2); %f=polyval(x,p); x & p should be reversed %plot('x','y','o','x','f','-'); read plot documentation

% method 1

t = linspace(x(1),x(3)); yhat = polyval(p,t); a1 = trapz(t,yhat);

% method 2

f = @(v) p(1)*v.^2+p(2)*v+p(3); a2 = quadgk(f,x(1),x(3));

a1,a2

a1 =

0.7344

a2 =

0.7344

S
on 6 Apr 2013

Thank you!! I have another problem

x1=7.8; x2=8.5; y1=0.96; y2=0.94; p1 = polyfit([x1 x2], [y1 y2], 2); b1= polyval(p1,1); m1=polyval(p1,2)-b1; x3=8.25; x4=8.25; y3=0; y4=.99; p2 = polyfit([x3 x4], [y3 y4], 2); b2 = polyval(p2, 1); m2 = polyval(p2, 2) - b2; I got x value = -1.2867; from which co-ordinate this value corresponds to? Actually I want to compute intersection of two line with respect to x=[7.8 8.25 8.5]; y=[0.96 0.99 0.94]; over which those two lines are plotted?

x=[7.8 8.25 8.5]; y=[0.96 0.99 0.94]; p=polyfit(x,y,2); f=polyval(p,x); plot(x,y,'o',x,f,'-'); hold on; line([7.8 8.5],[0.96 0.94]); hold on; line([8.25 8.25],[0 0.99]);

Related Content

MATLAB and Simulink resources for Arduino, LEGO, and Raspberry Pi

Learn moreOpportunities for recent engineering grads.

Apply Today
## 0 Comments