《数学软件》实验指导书.docx

上传人:b****4 文档编号:27002726 上传时间:2023-06-25 格式:DOCX 页数:19 大小:96.07KB
下载 相关 举报
《数学软件》实验指导书.docx_第1页
第1页 / 共19页
《数学软件》实验指导书.docx_第2页
第2页 / 共19页
《数学软件》实验指导书.docx_第3页
第3页 / 共19页
《数学软件》实验指导书.docx_第4页
第4页 / 共19页
《数学软件》实验指导书.docx_第5页
第5页 / 共19页
点击查看更多>>
下载资源
资源描述

《数学软件》实验指导书.docx

《《数学软件》实验指导书.docx》由会员分享,可在线阅读,更多相关《《数学软件》实验指导书.docx(19页珍藏版)》请在冰豆网上搜索。

《数学软件》实验指导书.docx

《数学软件》实验指导书

《数学建模与数学实验》实验指导书(3+1)

实验一:

matlab编程

学时:

2学时

实验目的:

熟悉matlab编程,掌握用matlab进行函数拟合的方法。

实验内容:

1.写一个函数rs=f(s),对传进去的字符串变量s,删除其中的小写字母,然后将原来的大写字母变为小写字母,得到rs返回。

例如s=”aBcdE,Fg?

”,则rs=”be,f?

”。

提示:

可利用find函数和空矩阵。

2.f(x)的定义如下:

写一个函数文件f(x)实现该函数,要求参数x可以是向量。

3.求[100,999]之间能被23整除的数的个数。

提示:

可利用find和length函数。

4.一个自然数是素数,且它的各位数字位置经过任意对换之后仍为素数,则成为绝对素数。

例如113是绝对素数。

试求所有三位的绝对素数。

5.根据美国人口从1790年到1990年间的人口数据(如下表),确定人口指数增长模型(Logistic模型)中的待定参数,估计出美国2010年的人口,同时画出拟合效果的图形。

美国人口统计数据

年份

1790

1800

1810

1820

1830

1840

1850

人口(×106)

3.9

5.3

7.2

9.6

12.9

17.1

23.2

年份

1860

1870

1880

1890

1900

1910

1920

人口(×106)

31.4

38.6

50.2

62.9

76.0

92.0

106.5

年份

1930

1940

1950

1960

1970

1980

人口(×106)

123.2

131.7

150.7

179.3

204.0

226.5

 

提示:

●选择的一般形式是:

ifexpression

{commands}

end

如果在表达式(expression)里的所有元素为真,就执行if和end语句之的命令串{commands}.

●允许一组命令以固定的和预定的次数重复的形式是:

forx=array

{commands}

end

在for和end语句之间的命令串{commands}按数组(array)中的每一列执行一次.在每一次迭代中,x被指定为数组的下一列,即在第n次循环中,x=array(:

,n)

●一些常用函数:

⏹sum(a):

对数组a求和;若a为一矩阵,对a的每一列求和(得到一行向量);sum(a,2)对每一行求和。

⏹max(a),min(a)的用法和sum一样。

⏹find(a):

找到a中不为0的元素的下标;find(a==2):

找到a中等于2的元素的下标

⏹length(a):

数组a的长度

⏹字符串连接:

s=[s1,s2,num2str(1234)]

●函数如下定义:

function返回值=函数名(自变量名)

文件名.m必须和函数名一样,如果不一样,函数以文件名为主。

●人口模型:

⏹指数增长模型:

⏹Logistic模型:

⏹可参考拟合函数:

a=lsqcurvefit('example_curvefit_fun',a0,x,y);

 

实验二:

Lingo求解线性规划问题

学时:

4学时

实验目的:

掌握用Lingo求解线性规划问题的方法,能够阅读Lingo结果报告。

实验内容:

(选做两题以上)

1、求解书本上P130的习题1:

某银行经理计划用一笔资金进行有价证券的投资,可供购进的证券以及其信用等级、到期年限、收益如下表1所示,按照规定,市政证券的收益可以免税,其他证券的收益需按50%的税率纳税,此外还有以下限制:

1)政府及代办机构的证券总共至少要购进400万元;

2)所购证券的平均信用等级不超过1.4(信用等级数字越小,信用程序越高);

3)所购证券的平均到期年限不超过5年。

表1

证券名称

证券种类

信用等级

到期年限

到期税前收益(%)

A

市政

2

9

4.3

B

代办机构

2

15

5.4

C

政府

1

4

5.0

D

政府

1

3

4.4

E

市政

5

2

4.5

(1)若该经理有1000万元资金,应如何投资?

(2)如果能够以2.75%的利率借到不超过100万元资金,该经理应如何操作?

(3)在1000万元资金情况下,若证券A的税前收益增加为4.5%,投资应否改变?

若证券C的税前收益减少为4.8%,投资应否改变?

列出线性规划模型,然后用Lindo求解,根据结果报告得出解决方案。

2、建立模型并求解P130页第3题。

(建立线性规划模型的技巧:

问什么假设什么,如何雇用即雇用多少全时服务员以12:

00-1:

00为午餐,雇用多少全时服务员以1:

00-2:

00为午餐,雇佣多少从9:

00、10:

00、11:

00、12:

00、1:

00开始工作的半时服务员)。

3、指派问题:

6个人计划做6项工作,其效益如下表(”-”表示某人无法完成某项工作),求一种指派方式,使得每个人完成一项工作,并使得总收益最大。

所建模型最好具有推广性。

工作1

工作2

工作3

工作4

工作5

工作6

1

20

15

16

5

4

7

2

17

15

33

12

8

6

3

9

12

18

16

30

13

4

12

8

11

27

19

14

5

-

7

10

21

10

32

6

-

-

-

6

11

13

4、有限制的运输问题:

6个发点6个收点,其供应量、接收量和运费如下表1(”-”表示某个发电无法向某个收点运输货物),如果某个发点向某个收点运输货物,则运输量不得低于15个单位。

求运输方案,使得总费用最小。

所建模型最好具有推广性。

收点1

收点2

收点3

收点4

收点5

收点6

供应量

发点1

20

15

16

5

4

7

20

发点2

17

15

33

12

8

6

30

发点3

9

12

18

16

30

13

50

发点4

12

8

11

27

19

14

40

发点5

-

7

10

21

10

32

30

发点6

-

-

-

6

11

13

30

接受量

30

50

40

30

30

20

提示:

●第1题可参考书上4.1节。

模型可以如下建立:

设投资证券A,B,C,D,E的金额分别为x1,x2,x3,x4,x5万元.

max0.043x1+0.027x2+0.025x3+0.022x4+0.045x5

x2+x3+x4>=400

x1+x2+x3+x4+x5<=1000

(2x1+2x2+x3+x4+5x5)/(x1+x2+x3+x4+x5)<=1.4

(9x1+15x2+4x3+3x4+2x5)/(x1+x2+x3+x4+x5)<=5

●使用Lingo的一些注意事项

1.“>”与“>=”功能相同。

2.变量与系数间相乘必须用”*”号,每行用”;”结束。

3.变量以字母开头,不能超过8个字符。

4.变量名不区分大小写(包括关键字)。

5.目标函数用min=3*x1+2*x2或max=3*x1+2*x2的格式表示。

6.“!

”后为注释。

7.变量界定函数实现对变量取值范围的附加限制,共4种:

@bin(x)限制x为0或1

@bnd(L,x,U)限制L≤x≤U

@free(x)取消对变量x的默认下界为0的限制,即x可以取任意实数

@gin(x)限制x为整数

其他可见“Lingo教程.doc”

●书上85页的Lindo代码可改为如下Lingo代码:

max=72*x1+64*x2;

x1+x2<50;

12*x1+8*x2<480;

3*x1<100;

●例:

如何在LINGO中求解如下的LP问题:

在模型窗口中输入如下代码:

min=2*x1+3*x2;

x1+x2>=350;

x1>=100;

2*x1+x2<=600;

然后点击工具条上的按钮即可。

 

●例:

使用LINGO软件计算6个发点8个收点的最小费用运输问题。

产销单位运价如下表。

位销地

产地

B1

B2

B3

B4

B5

B6

B7

B8

产量

A1

6

2

6

7

4

2

5

9

60

A2

4

9

5

3

8

5

8

2

55

A3

5

2

1

9

7

4

3

3

51

A4

7

6

7

3

9

2

7

1

43

A5

2

3

9

5

7

2

6

5

41

A6

5

5

2

2

8

1

4

3

52

销量

35

37

22

32

41

32

43

38

 

可建立如下模型:

使用LINGO软件,编制程序如下:

model:

!

6发点8收点运输问题;

sets:

warehouses/wh1..wh6/:

capacity;

vendors/v1..v8/:

demand;

links(warehouses,vendors):

cost,volume;

endsets

!

目标函数;

min=@sum(links:

cost*volume);

!

需求约束;

@for(vendors(J):

@sum(warehouses(I):

volume(I,J))=demand(J));

!

产量约束;

@for(warehouses(I):

@sum(vendors(J):

volume(I,J))<=capacity(I));

 

!

这里是数据;

data:

capacity=605551434152;

demand=3537223241324338;

cost=62674295

49538582

52197433

76739271

23957265

55228143;

enddata

end

 

实验三:

matlab数值计算

学时:

2学时

实验目的:

1.掌握用matlab进行插值、拟合、方程求解等数值计算的方法。

2.掌握用matlab求微分方程和微分方程组的数值解的方法。

实验内容:

(任选两题以上)

1.某气象观测站测得某日6:

00-18:

00之间每隔2小时的温度如下:

时间

6

8

10

12

14

16

18

温度

18

20

22

25

30

28

24

试用三次样条插值求出该日6:

30,8:

30,10:

30,12:

30,14:

30,16:

30的温度。

2.已知lg(x)在[1,101]区间11个整数采样点x=1:

10:

101的函数值lg(x),试求lg(x)的5次拟合多项式p(x),并分别绘制出lg(x)和p(x)在[1,101]区间的函数曲线。

3.求以下非线性方程组的解:

4.求以下有约束最值:

5.求解书上P138,P139页的微分方程和微分方程组,画出书中图7、8和图3、4、5、6。

提示:

●一维插值:

Y1=interp1(X,Y,X1,'method')

1.函数根据X、Y的值,计算函数在X1处的值。

X、Y是两个等长的已知向量,分别描述采样点和样本值,X1是一个向量或标量,描述欲插值的点,Y1是一个与X1等长的插值结果。

method是插值方法,允许的取值有'linear'(线性插值)、'nearest'(最近插值)、'spline'(三次样条插值)、'cubic'(三次多项式插值),缺省值是'linear'。

●多项式拟合:

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

2.函数根据采样点X和采样点函数值Y,产生一个m次多项式P及其在采样点的误差向量S。

3.其中X、Y是两个等长的向量,P是一个长度为m+1的向量。

●单变量非线性方程求解:

[x,fval]=fzero(f,x0,tol)

●[x,fval]=fmincon(fun,x0,A,b,Aeq,beq,lb,ub,nonlcon)

1.fun是一个函数文件functionf=fun(x)。

x0是初始值。

2.A,Aeq是一个矩阵;b,beq是一个列向量。

Ax<=b是不等式约束。

3.lb和ub是和x一样大小的列向量,规定每个分量的上下界。

4.nonlcon是函数文件,有特定格式function[c,ceq]=mycon(x),描述非线性约束c(x)和ceq(x)。

5.没有整数约束,0-1约束,敏感性分析。

●要求解微分方程(组)dy/dt=f(t,y),可如下调用:

[T,Y]=ode45(f,[t0,tn],y0)

函数在求解区间[t0,tn]内,自动设立采样点向量T,并求出解函数y在采样点T处的样本值Y。

f是一个函数,要有两个参数,第一个参数是自变量t,第二个参数是因变量y。

y0=y(t0)给定方程的初值。

例:

求微分方程初值问题dy/dx=-2y/x+4x,y

(1)=2在[1,3]区间内的数值解,并将结果与解析解进行比较。

先建立一个该函数的m文件fxy1.m:

functionf=f(x,y)

f=-2.*y./x+4*x%注意使用点运算符

再输入命令:

[X,Y]=ode45('fxy1',[1,3],2);

X'%显示自变量的一组采样点

Y'%显示求解函数与采样点对应的一组数值解

(X.^2+1./X.^2)'%显示求解函数与采样点对应的一组解析解

例:

求解常微分方程组初值问题在区间[0,2]中的解。

建立一个函数文件fxy2.m:

functionf=f(x,y)

f

(1)=y

(2);

f

(2)=-x.*y

(2)+x.^2-5;

f=f';

在MATLAB命令窗口,输入命令:

[X,Y]=ode45('fxy2',[0,2],[5,6])

 

实验四:

Lingo求解图论问题

学时:

2学时

实验目的:

把最短路径、最大流、最小生成树、旅行商、关键路径等图论问题转化为数学规划模型,并用Lingo进行求解。

实验内容:

把以下图从v0到v6最短路径问题转化为数学规划模型,并用Lingo进行求解。

提示:

最短路径问题的数学规划模型为:

 

实验五:

matlab统计工具箱

学时:

4学时

实验目的:

1.用matlab计算基本统计量,常见概率分布的函数,参数估计,假设检验。

2.掌握matlab进行回归分析的方法。

实验内容:

1、某校60名学生的一次考试成绩如下:

937583939185848277767795948991888683968179977875676968848381756685709484838280787473767086769089716686738094797877635355

1)计算均值、标准差、极差、偏度、峰度,画出直方图;

2)检验分布的正态性;

3)若检验符合正态分布,估计正态分布的参数并检验参数.

2、据说某地汽油的价格是每加仑115美分,为了验证这种说法,一位学者开车随机选择了一些加油站,得到某年一月和二月的数据如下:

一月:

119117115116112121115122116118109112119112117113114109109118

二月:

118119115122118121120122128116120123121119117119128126118125

1)分别用两个月的数据验证这种说法的可靠性;

2)分别给出1月和2月汽油价格的置信区间;

3)给出1月和2月汽油价格差的置信区间.

3、财政收入预测问题:

财政收入与国民收入、工业总产值、农业总产值、总人口、就业人口、固定资产投资等因素有关。

下表列出了1952-1981年的原始数据,试构造预测模型。

年份

国民收入(亿元)

工业总产值(亿元)

农业总产值(亿元)

总人口(万人)

就业人口(万人)

固定资产投资(亿元)

财政收入(亿元)

1952

598

349

461

57482

20729

44

184

1953

586

455

475

58796

21364

89

216

1954

707

520

491

60266

21832

97

248

1955

737

558

529

61465

22328

98

254

1956

825

715

556

62828

23018

150

268

1957

837

798

575

64653

23711

139

286

1958

1028

1235

598

65994

26600

256

357

1959

1114

1681

509

67207

26173

338

444

1960

1079

1870

444

66207

25880

380

506

1961

757

1156

434

65859

25590

138

271

1962

677

964

461

67295

25110

66

230

1963

779

1046

514

69172

26640

85

266

1964

943

1250

584

70499

27736

129

323

1965

1152

1581

632

72538

28670

175

393

1966

1322

1911

687

74542

29805

212

466

1967

1249

1647

697

76368

30814

156

352

1968

1187

1565

680

78534

31915

127

303

1969

1372

2101

688

80671

33225

207

447

1970

1638

2747

767

82992

34432

312

564

1971

1780

3156

790

85229

35620

355

638

1972

1833

3365

789

87177

35854

354

658

1973

1978

3684

855

89211

36652

374

691

1974

1993

3696

891

90859

37369

393

655

1975

2121

4254

932

92421

38168

462

692

1976

2052

4309

955

93717

38834

443

657

1977

2189

4925

971

94974

39377

454

723

1978

2475

5590

1058

96259

39856

550

922

1979

2702

6065

1150

97542

40581

564

890

1980

2791

6592

1194

98705

41896

568

826

1981

2927

6862

1273

100072

73280

496

810

 

提示:

●对随机变量x,计算其基本统计量的命令如下:

⏹均值:

mean(x)

⏹中位数:

median(x)

⏹标准差:

std(x)

⏹方差:

var(x)

⏹偏度:

skewness(x)

⏹峰度:

kurtosis(x)

●总体方差sigma2已知时,总体均值的检验使用z-检验

[h,sig,ci]=ztest(x,m,sigma,alpha,tail)

检验数据x的关于均值的某一假设是否成立,其中sigma为已知方差,alpha为显著性水平,究竟检验什么假设取决于tail的取值:

tail=0,检验假设“x的均值等于m”

tail=1,检验假设“x的均值大于m”

tail=-1,检验假设“x的均值小于m”

tail的缺省值为0,alpha的缺省值为0.05.

返回值h为一个布尔值,h=1表示可以拒绝假设,h=0表示不可以拒绝假设,sig为假设成立的概率,ci为均值的1-alpha置信区间.

●总体方差sigma2未知时,总体均值的检验使用t-检验[h,sig,ci]=ttest(x,m,alpha,tail)

●两总体均值的假设检验使用t-检验[h,sig,ci]=ttest2(x,y,alpha,tail)

●第3题可用逐步回归。

stepwise(x,y)。

⏹运行stepwise命令时产生三个图形窗口:

StepwisePlot,StepwiseTable,StepwiseHistory.

⏹在StepwisePlot窗口,显示出各项的回归系数及其置信区间.

⏹StepwiseTable窗口中列出了一个统计表,包括回归系数及其置信区间,以及模型的统计量剩余标准差(RMSE)、相关系数(R-square)、F值、与F对应的概率P.

●“有进有出”的逐步回归分析

⏹从一个自变量开始,视自变量Y作用的显著程度,从大到地依次逐个引入回归方程。

⏹当引入的自变量由于后面变量的引入而变得不显著时,要将其剔除掉。

⏹引入一个自变量或从回归方程中剔除一个自变量,为逐步回归的一步。

⏹对于每一步都要进行Y值检验,以确保每次引入新的显著性变量前回归方程中只包含对Y作用显著的变量。

⏹这个过程反复进行,直至既无不显著的变量从回归方程中剔除,又无显著变量可引入回归方程时为止。

 

实验六:

matlab随机模拟

学时:

2学时

实验目的:

掌握matlab进行随机模拟的方法。

实验内容:

(任选一题)

1、某设备上安装有四只型号规格完全相同的电子管,已知电子管寿命为均值为1500小时,标准差为500小时的正态分布。

当电子管损坏时有两种维修方案,一是每次更换损坏的那一只;二是当其中一只损坏时四只同时更换。

已知更换时间为换一只时需1小时,4只同时换为2小时。

更换时机器因停止运转每小时的损失为20元,又每只电子管价格10元,试用模拟方法编程决定哪一个方案经济合理?

已知matlab中normrnd(mu,sigma,m,n)可产生m*n大小的服从均值为mu,标准差为sigma的正态分布随机数。

 

可参考右边流程。

 

2.某报童以每份0.03元的价格买进报纸,以0.05元的价格出售.根据长期统计,报纸每天的销售量及百分率为

销售量

200

210

220

230

240

250

百分率

0.10

0.20

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

当前位置:首页 > 医药卫生 > 基础医学

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

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