秦九韶算法matlab程序,数值分析matlab程序实例.doc

数值分析matlab程序实例

1,秦九韶算法,求出P(x=3)=2+4x+5x^2+2x^3的值

clear?all;

x=3;

n=3;

a(1)=2;a(2)=4;a(3)=5;a(4)=2

v(1)=a(n+1);

for k=2:(n+1);

v(k)=x*v(k-1)+a(n-k+2);

end?p=v(n+1)

p =,

113

2,一次线型插值程序:利用100.121.求115的开方。

clear all;

?x1=100;x2=121;y1=10;y2=11;

?x=115;

l1=(x-x2)/(x1-x2);l2=(x-x1)/(x2-x1);

p1=l1*y1+l2*y2p1 =

? ?10.7143

3,分段插值程序,已知0,0),(1,1),(2,5)(3, 8)上的分段一次插值,求S1(1.5).

clear all

x=[0 1 2 3];

y=[0 1 5 8];

n=length(x);a=1.5;

for i=2:n

if(x(i-1)<=a

end

H1=y(i-1)+(y(i)-y(i-1))/(x(i)-x(i-1))*(a-x(i-1))

H1 =

3.5000

4)曲线拟合:用一个5次多项式在区间[0,2π]内逼近函数sin(x)。

clear all

X=linspace(0,2*pi,50);Y=sin(X);

[P,S]=polyfit(X,Y,5)

plot(X,Y,'k*',X,polyval(P,X),'k-')

P =

-0.0056 0.0874 -0.3946 0.2685 0.8797 0.0102

S =

R: [6x6 double]

df: 44

normr: 0.0337

5)求有理分式的导数

clear all

P=[3,5,0,-8,1,-5];

Q=[10,5,0,0,6,0,0,7,-1,0,-100];

[p,q]=polyder(P,Q)

6)将以下数据按从小到大排序:4.3 5.7 5.2 1.8 9.4

a=[4.3 5.7 5.2 1.8 9.4];b(1:100)=0;n=1;

b(a*10)=1;

for k=1:100

a(n)=k/10;

if b(k)>0

a(n)=k/10;

n=n+1;

end

end

a

a =

1.8000 4.3000 5.2000 5.7000 9.4000 10.0000

7) 用二分法求方程x3-x-1=0在[1,2]内的近似根,要求误差不超过10-3。

clear all

n=ceil(3*log2(10)-1);a=1;b=2;

for k=0:n

x=(a+b)/2;

if(a^3-a-1)*(x^3-x-1)>0

a=x;

end

if(a^3-a-1)*(x^3-x-1)<0

b=x;

end

end

x

x =

1.3252

求 的估值

8)梯形公式:

clear all

a=1;b=2;n=3;

h=(b-a)/2;T=1;

for i=1:n;

u=(a+(i-1)*h)^4+(a+i*h)^4;

T=T+h/2*u;

end

T

T =

21.5469

9)辛卜生公式:

clear all

a=1;b=2;n=3;

h=(b-a)/2;T=1;

for i=1:n;

T=T+h/6*((a+(i-1)*h)^4+4*((a+(i-1)*h+h/2)^4)+(a+i*h)^4);

end

T

T =

20.3320

10)复化二点高斯f(x)= 2-x^2在区间[a,b]=[ ? 5],n=10

clear all;

f='2-x^2';

f=inline(f);

a=3;

b=5;

n=10;

h=(b-a)/n;t=2*3^0.5;

x(1)=a;s=0;

for i=2:n+1

x(i)=x(i-1)+h;

c=(x(i)+x(i-1))/2;

s=s+f(c-h/t)+f(c+h/t);

end

s=s*h/2;

disp(s);

-28.6667

11)牛顿插值

clear all

x0=0;x1=1;x2=2;

y0=0;y1=1;y2=4;x=2;

f11=(y1-y0)/(x1-x0);

f12=(y2-y0)/(x2-x0);

f22=(f12-f11)/(x2-x1);

N2=y0+f11*(x-x0)+f22*(x-x1)*(x-x0)

N2 =

4

12)复化矩形公式

clear all;

f='x^3';

f=inline(f);

a=2;

b=5;

n=1

  • 2
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值