實驗報告一
題目: (緒論) 非線性方程求解及誤差估計
摘要:非線性方程的解析解通常很難給出,因此線性方程的數值解法就尤為重要。本實驗采用兩種常見的求解方法二分法、Newton法和改進的Newton法。可以節省計算機的計算時間,還能減小不必要的誤差。
前言:(目的和意義)
掌握二分法與Newton法的基本原理、應用以及熟練掌握用MATLAB求函數積分
數學原理:
函數的調用格式:quadl(filename,a,b,tol,trace)
其中filename是調用函數名,a和b分別為定積分的下限和上限。用來控制積分精度。
(2)秦九韶算法:
Sn=an
Sk=xSk+1+ak (k=n-1,n-2,...,0),
Pn(x)=S0
程序設計:
計算積分
利用MATLAB,下面給出主程序
>>g=inline('x.^10.*exp(x-1)'); %定義一個語句函數g(x)=exp(x^10*exp(x-1))
I=quadl(g,0,1)
I =
0.0098
例1.9 秦九韶算法
a0=3,
ak=2ak-1+3,
Pn(x)=anx^n+an-1x^(n-1)+...+a1x+a0
求I1=P100(0.5),I2=P150(13)
>>x=input('x=');
n=input('n=');
a=3;
for i=1:n
a=2*a+3;
end
s=z;
b=(a-3)/2;
for m=1:100
s=x*s+b;
b=(b-3)/2;
end
disp(s);
>>x=0.5
n=100
600.0000
>>x=3
n=100
4.7039e+078
結果分析和討論:
結論:
對于二分法,只要能夠保證在給定的區間內有根,使能夠收斂的,當時收斂的速度和給定的區間有關,二且總體上來說速度比較慢。Newton法,收斂速度要比二分法快,但是最終其收斂的結果與初值的選取有關,初值不同,收斂的結果也可能不一樣,也就是結果可能不時預期需要得結果。改進的Newton法求解重根問題時,如果初值不當,可能會不收斂,這一點非常重要,當然初值合適,相同情況下其速度要比Newton法快得多。
實驗報告二
題目: (插值法)用各類插值方法法求解相關數值分析問題
摘要: 非線性方程的解析解通常很難給出,因此線性方程的數值解法就尤為重要。本實驗采用兩種常見的求解方法二分法和Newton法及改進的Newton法。
前言:(目的和意義)
掌握插值法的基本原理及用插值法求解相關數值分析問題的方法以及熟練掌握用MATLAB求函數積分。
數學原理: MATLAB提供了一、三、N維數據插值函數以及三次樣條插值函數等。數據插值問題為一維插值,其采用的方法有線性方法、最近方法、三次樣條和三次插值,在MATLAB中,實現這些插值的函數為interp1,其調用格式為inpert1(a,b,c,method);函數根據a、b的值,計算函數在c處的值,method為插值方法,'linear' 為線性插值,'cubic'為三次多項式插值,'spline' 為三次樣條插值。
程序設計:
3.給出f(x)=lnx,用一、二、三次線形插值計算`ln0.54的近似值
x0.40.50.60.70.8-0.916291-0.693147-0.510826-0.357765-0.223144
>>x=0.4:0.1:0.8;
f=[-0.916291,-0.693147,-0.510826,-0.357765,-0.223144];
I1=interpl(x,f,0.54) %用一次線形插值計算f(x)
I1 =
-0.620218600000000
I3=interp1(x,f,0.54,'spline') %用3次樣條插值計算f(x)
I3 =
-0.615977770000000
21.設f(x)=1/(1+x^2),在[-5,5]上取n=10,安等距節點求分段線性插值函數Ib(x),計算節點間中點處的 與f(x)的值,并估計誤差。
>> x=linspace(-5,5,10);
>> y=1\(1+(x.^2));
>> p=polyfit(x,y,1)
p =
0.0000 11.1852
4.給定數據如下表,試求三次樣條插值及Hermite插值S(x),并滿足條