% least_ft.m % Min int_a^b |f(x)-p(x)|^2 dx % input funtion form : f = @(x) exp(x); function main(n,a,b,f) % p(x) = a1 + a2*x + a3*x2 : degree (n-1) polynomial if nargin==0 n=3;a=-1;b=1;f = @(x) exp(x); elseif nargin==1 a=-1;b=1;f = @(x) exp(x); elseif nargin==3 f = @(x) exp(x); end A = zeros(n,n); F = zeros(n,1); for i=1:n for j=1:n Q = @(x) x.^(i+j-2); A(i,j) = quad(Q,a,b); end Q = @(x) f(x).*(x.^(i-1)); F(i) = quad(Q,a,b); end u = A\F; xv = linspace(a,b,201); fx = f(xv); px = zeros(size(xv)); for i=1:n px = px + u(i)*xv.^(i-1); end plot(xv,fx,'b-',xv,px,'r-')
|
|