matlab数学建模实例Word下载.docx

上传人:b****3 文档编号:13846556 上传时间:2022-10-14 格式:DOCX 页数:16 大小:19.88KB
下载 相关 举报
matlab数学建模实例Word下载.docx_第1页
第1页 / 共16页
matlab数学建模实例Word下载.docx_第2页
第2页 / 共16页
matlab数学建模实例Word下载.docx_第3页
第3页 / 共16页
matlab数学建模实例Word下载.docx_第4页
第4页 / 共16页
matlab数学建模实例Word下载.docx_第5页
第5页 / 共16页
点击查看更多>>
下载资源
资源描述

matlab数学建模实例Word下载.docx

《matlab数学建模实例Word下载.docx》由会员分享,可在线阅读,更多相关《matlab数学建模实例Word下载.docx(16页珍藏版)》请在冰豆网上搜索。

matlab数学建模实例Word下载.docx

/10;

x2=<

20-2*x1^2-x1^3>

x3=x2-<

x2-x1>

^2/<

x2-2*x1+x0>

;

x3-x0>

x0=x3;

x2=<

x3=x2-<

x3

牛顿法:

functiony=newton<

x1=x0-fc<

/df<

x1=x0-fc<

functiony=fc<

x>

y=x^3+2*x^2+10*x-20;

functiony=df<

y=3*x^2+4*x+10;

第六周

1.解例6-4〔p77>

的方程组,分别采用消去法〔矩阵分解〕、Jacobi迭代法、Seidel迭代法、松弛法求解,并比较收敛速度.

消去法:

x=a\d

[L,U]=lu<

a>

x=inv<

U>

inv<

L>

d

Jacobi迭代法:

functions=jacobi<

a,d,x0>

D=diag<

diag<

U=-triu<

a,1>

L=-tril<

a,-1>

C=inv<

D>

B=C*<

L+U>

G=C*d;

s=B*x0+G;

n=1;

whilenorm<

s-x0>

=1.0e-8

x0=s;

s=B*x0+G;

n=n+1;

n

Seidel迭代法:

functions=seidel<

D-L>

B=C*U;

=1.0e-5

松弛法:

functions=loose<

a,d,x0,w>

D-w*L>

1-w>

*D+w*U>

G=w*C*d;

2.练习MATLAB的常用矩阵语句,就龙格现象函数〔p88〕练习插值语句interp,spline,并比较.

3.测得血液中某药物浓度随时间的变化值为:

t<

h>

0.25

0.5

1.0

1.5

2.0

3.0

4.0

6.0

8.0

10.0

C<

mg/L>

19.30

18.15

15.36

14.10

12.89

9.32

7.55

5.24

3.86

2.88

求t=0.45,1.75,5.0,6.0时的浓度C.

分别用n=4,5,9的拉格朗日插值计算;

并用样条函数插值计算,并比较结果.

拉格朗日插值:

functions=lagr<

n>

x=[0.250.51.01.52.03.04.06.08.010.0];

y=[19.3018.1515.3614.1012.899.327.555.243.862.88];

x0=[0.451.755.06.0];

m=length<

fori=1:

m

D=abs<

x-x0<

i>

I=1;

whileI<

=n+1

fora=1:

length<

ifD<

==min<

c<

I>

=a;

D<

=max<

+1;

break

I=I+1;

b=sort<

c>

z=x0<

t=0.0;

fork=1:

b>

u=1.0;

forj=1:

ifj~=k

u=u*<

z-x<

b<

j>

/<

x<

k>

-x<

t=t+u*y<

s<

=t;

样条函数差值:

Interp1<

x,y,x0,’spline’>

Spline<

x,y,x0>

第八周

1.给定某药物浓度随时间的变化值<

作业3>

1〕分别采用样条函数和三点公式〔设h=0.1>

求结点处的导数值,并比较结果.2〕求该时间段的平均浓度〔定步长S法〕

样条函数:

pp=csape<

x,y,'

not-a-knot'

df=fnder<

pp>

df1=ppval<

df,x>

三点公式:

functiondf=sandian<

t=[0.250.51.01.52.03.04.06.08.010.0];

c=[19.3018.1515.3614.1012.899.327.555.243.862.88];

h=0.1;

n=length<

t>

x0=t<

y0=c<

y1=spline<

t,c,x0+h>

y2=spline<

t,c,x0+2*h>

y3=spline<

t,c,x0-h>

y4=spline<

t,c,x0-2*h>

switchi

case1

df<

=<

-3*y0+4*y1-y2>

2*h>

casen

y4-4*y3+3*y0>

otherwise

y1-y3>

平均浓度:

functionaveragec=simpson<

m=<

t<

1>

+t<

10>

/2;

y=spline<

t,c,m>

averagec=<

c<

+4*y+c<

/6;

2.练习MATLAB常用的trapz,quad,quadl等语句.计算:

x=0:

8;

y=1./<

sqrt<

2.*pi>

.*exp<

-<

x-4>

.^2./2>

z=trapz<

x,y>

functiony=jifen<

q1=quad<

'

jifen'

0,8,1.0e-8>

q2=quadl<

3.采用变步长经典R-K法,ode23,ode45计算例9-5,并作比较.

变步长经典R-K法:

〔可能有问题〕

functionz=jdrk<

m>

x0=[252]'

a=0;

b=15;

z=zeros<

n,m>

k1=zeros<

n,1>

k2=zeros<

k3=zeros<

k4=zeros<

t=a;

x=x0;

x2=zeros<

x3=x2;

x4=x2;

h=choose<

m1=15/h+1;

m1

k1=prey<

t,x>

x2<

=x<

+1/2*h*k1<

k2=prey<

t+h/2,x2>

x3<

+1/2*h*k2<

k3=prey<

t+h/2,x3>

x4<

+h*k3<

k4=prey<

t+h,x4>

x<

+h/6*<

k1<

+2*k2<

+2*k3<

+k4<

z<

i,k>

t=t+h;

h1=length<

z>

t2=[a:

b-a>

h1-1>

:

b];

plot<

t2,z>

gtext<

x1<

x2<

functionh=choose<

h=15/<

n-1>

t0=0;

k11=prey<

t0,x0>

k21=prey<

t0+h/2,x0+h/2*k11>

k31=prey<

t0+h/2,x0+h/2*k21>

k41=prey<

t0+h,x0+h*k31>

x1=x0+h/6*<

k11+2*k21+2*k31+k41>

k12=prey<

k22=prey<

t0+h/4,x0+h/4*k12>

k32=prey<

t0+h/4,x0+h/4*k22>

k42=prey<

t0+h/2,x0+h/2*k32>

x2=x0+h/12*<

k12+2*k22+2*k32+k42>

ifabs<

1.0e-5

whileabs<

h=h*2;

k11=prey<

k21=prey<

k31=prey<

k41=prey<

x1=x0+h/6*<

k12=prey<

k22=prey<

k32=prey<

k42=prey<

x2=x0+h/12*<

h=h/2;

else

t0+h,x0+h*k31

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 医药卫生 > 临床医学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1