Matlab程序设计实验

更新时间:2024-03-14 19:26:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

MATLAB程序设计实验

解方程和最优化问题求解

姓名:龙刚 学号:1404110427 班级:电信1104班 一.实验目的

1. 掌握线性方程组的数值求解方法。 2. 掌握常微分方程的数值求解方法。

3. 掌握非线性方程以及最优化问题的求解方法。

二.实验内容

1. 对下列线性病态方程组:

?1/21/31/4??x1??0.95??1/31/41/5??x???0.67? ???2?????1/41/51/6????x3????0.52??a) 求方程组的解。

b) 将方程组右边的向量元素b3(0.52)修改为0.53,再次求方程组的解。比较b3的

变化和解的相对变化。

c) 求系数矩阵的条件数,并分析条件数对线性方程组求解的影响。

%1.a

A=[1/2 1/3 1/4;1/3 1/4 1/5;1/4 1/5 1/6]; B=[0.95 0.67 0.52]'; disp('1.a方程组的解为:') xa=A\\B %1.b

C=[0.95 0.67 0.53]'; disp('1.b方程组的解为:') xb=A\\C chazhi=xa-xb %1.c t1=cond(A) t2=cond(B) t3=cond(C)

2. 求方程的解。

a)

x41?x3?1?0,x0??1

funx.m文件

function fx=funx(x) fx=x.^41+x.^3+1;

调用z=fzero(@funx,-1)得

b)

x?sinx?0,x0?0.5 x

fun1.m文件如下:

function m=fun1(x) m=x-sin(x)./x;

?sinx?y2?lnz?7?0?x0?1??y3c) ?3x?2?z?1?0,?y0?1

?z?1?x?y?z?5?0?0?fun2.m文件如下:

function f=fun2(p) x=p(1); y=p(2); z=p(3);

f(1)=sin(x)+y.^2+log(z)-7; f(2)=3.*x+2.^y-z.^3+1; f(3)=x+y+z-5;

3. 求常微分方程的数值解。

a)

y'??1.2?sin10t?y?0,t0?0,tf?5,y?t0??1

fun3.m

function yp=fun3(t,y) yp=-(1.2+sin(10*t)*y);

调用代码:

结果:

b)

y'?y/?1?t2??cost,t0?0,tf?5,y?t0??1

fun4.m

function yp=fun4(t,y) yp=-y/(1+t^2)+cos(t);

调用函数如下:

结果:

4. 求函数在指定区间的最大值。

1?x2f?x??,x??0,2?

1?x4function f=fmin(x) f=(1+x.^4)./(1+x.^2);

则他的最大值为:

5. 有400万资金,要求在4年内使用完,若在一年内使用资金x万元,则可得效益x万元(效益不能再次使用),当年不用的资金可以存入银行,年利率为10%。制订资金的使用方案,使4年效益之和最大。 效益y

四年的使用金额分别为x1,x2,x3,?1.1?1.1?1.1?400?x1??x2??x3??

y?x1?x2?x3??1.1?1.1?1.1?400?x1??x2??x3??

=x1?x2?x3??532.4?1.331x1?1.21x2?1.1x3?

0?x1?400,0?2.1x1?x2?440,0?2.21x1?2.1x2?x3?484 x2?0,x3?0

程序代码:

x0=[200;200;200];

A=[1,0,0;2.1,1,0;2.21,2.1,1]; b=[400;440;484]; lb=[0;0;0];

[x,f]=fmincon(@fun5,x0,A,b,[],[],lb)

本文来源:https://www.bwwdw.com/article/4ue8.html

微信扫码分享

《Matlab程序设计实验.doc》
将本文的Word文档下载到电脑,方便收藏和打印
推荐度:
点击下载文档
下载全文
范文搜索
下载文档
Top