第10 讲 MATLAB CUMCM 真题求解实例一:数据型
用matlab解析实际案例
Matlab大作业专业:东凌经济管理学院班级:小组成员:2012年5月1成员分工:**(组长):第一题模型一建立,文档编写***:第一题模型二建立,文档编写***:第二题模型建立2第一题某小型超市出售某一品牌八宝粥,其需求量与消费者平均收入和商品价格密切相关,根据近期几个月每一个月的消费记录以及消费者收入市场调查,统计如下表。
现在在一个地区新建一所同样的超市,出售同样一款八宝粥,该超市附近消费者平均收入为4000元,超市经理想知道八宝粥定价6元时,进多少货才会比较合适。
需求量100 75 80 70 50 65 90 100 110 60 收入4000 2400 4800 2000 1200 1600 5200 4400 5200 1200 价格 5 7 6 6 8 7 5 4 3 92.1 基本假设1)假设该品牌八宝粥的超市库存量与需求量一致,不存在多余库存。
2)假设超市每个月就进一次货。
3)假设超市之前调查的数据充分准确。
4)假设在新超市,人群收入以及商品价格对需求量的影响与之前规律类似。
5)假设该品牌八宝粥的需求量除了与消费者收入和商品价格有关,其他因素影响很小,可以忽略不计。
2.2 符号设定I(income):消费者收入向量。
P(price):商品价格向量。
Rrequiremen):商品需求向量。
(t2.3 模型建立2.3.1 模型分析:因为有商品价格P 和消费者收入I 两个参数对商品需求量R 产生影响,所以我们选择采用回归模型解决这个问题。
模型一:多元二项式回归模型222211210P I P I R βββββ++++=Matlab 程序:I=[4000 2400 4800 2000 1200 1600 5200 4400 5200 1200]; P=[5 7 6 6 8 7 5 4 3 9];R=[100 75 80 70 50 65 90 100 110 60]; f=[I' P'];rstool(f,R','purequadratic')程序运行结果以及图像:预测结果beta =110.53130.0366-26.5709-4.7229*10^(-6)1.8475rmse =4.5362residuals =5.2724-0.7162-4.5158-1.9390-3.33153.45663.4843-3.4452-0.09761.8320结果分析:由实验可得回归模型为:228475.1)6(^10*7229.4-5709.260366.05313.110P I P I R +--+=,因为剩余标准差为4.5362,说明此回归模型的显著性较好。
matlab程序设计例题及答案
matlab程序设计例题及答案1.编写程序:计算1/3+2/5+3/7+……+10/21法一: s=0;for i=1:10s=s+i/(2*i+1); end ss =法二:sum((1:10)./(3:2:21)) ans =2.编写程序:计算1~100中即能被3整除,又能被7整除的所有数之和。
s=0;for i=1:100if mod(i,3)==0&&mod(i,7)==0 s=s+i; end,end ss =2103.画出y=n!的图,阶乘的函数自己编写,禁用MATLAB 自带的阶乘函数。
x=1:10; for i=1:10try y(i)=y(i-1)*i; catch y(i)=1; end,end plot(x,y)106123456789104.一个数恰好等于它的因子之和,这个数就称为完数。
例如,6的因子为1,2,3,而6=1+2+3,因此6就是一个完数。
编程找出20XX以内的所有完数。
g=;for n=2:20XX s=0;for r=1:n-1if mod(n,r)==0 s=s+r; end endif s==ng=[g n]; end end gg =6 28 4965.编写一个函数,模拟numel函数的功能,函数中调用size函数。
function y=numelnumel(x) m=size(x); y=m(1)*m(2);numelnumel([1 2 3;4 5 6])ans =66. 编写一个函数,模拟length函数的功能,函数中调用size函数。
function y=lengthlength(x) m=size(x);y=max(m(1),m(2));lengthlength([1 2 3;4 5 6])ans =37.求矩阵rand的所有元素和及各行平均值,各列平均值。
s=rand(5);sum=sum(sum(s)) mean2=mean(s,2) mean1=mean(s)sum =mean2 =mean1 =8.编程判断1001,1003,1007,1009,1011为素数,若不是,输出其约数。
(完整word版)含答案《MATLAB实用教程》
第二章 MATLAB 语言及应用实验项目实验一 MATLAB 数值计算三、实验内容与步骤1.创建矩阵⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡=987654321a(1(2)用(3)用(42.矩阵的运算(1)利用矩阵除法解线性方程组。
⎪⎪⎩⎪⎪⎨⎧=+++=-+-=+++=+-12224732258232432143214321421x x x x x x x x x x x x x x x 将方程表示为AX=B ,计算X=A\B 。
(2)利用矩阵的基本运算求解矩阵方程。
已知矩阵A 和B 满足关系式A -1BA=6A+BA ,计算矩阵B 。
其中⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡=7/10004/10003/1A ,Ps: format rata=[1/3 0 0;0 1/4 0;0 0 1/7];b=inv(a)*inv(inv(a)-eye(3))*6*a(3)计算矩阵的特征值和特征向量。
已知矩阵⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡--=1104152021X ,计算其特征值和特征向量。
(4)Page:322利用数学函数进行矩阵运算。
已知传递函数G(s)=1/(2s+1),计算幅频特性Lw=-20lg(1)2(2w )和相频特性Fw=-arctan(2w),w 的范围为[0.01,10],按对数均匀分布。
3.多项式的运算(1)多项式的运算。
已知表达式G(x)=(x-4)(x+5)(x 2-6x+9),展开多项式形式,并计算当x 在[0,20]内变化时G(x)的值,计算出G(x)=0的根。
Page 324(2)多项式的拟合与插值。
将多项式G(x)=x 4-5x 3-17x 2+129x-180,当x 在[0,20]多项式的值上下加上随机数的偏差构成y1,对y1进行拟合。
对G(x)和y1分别进行插值,计算在5.5处的值。
Page 325 四、思考练习题1.使用logspace 函数创建0~4π的行向量,有20个元素,查看其元素分布情况。
Ps: logspace(log10(0),log10(4*pi),20) (2) sort(c,2) %顺序排列 3.1多项式1)f(x)=2x 2+3x+5x+8用向量表示该多项式,并计算f(10)值. 2)根据多项式的根[-0.5 -3+4i -3-4i]创建多项式。
高等应用数学问题的MATLAB求解_习题参考解答
【求解】 假设正三角形逆时针旋转 θ 度,则可以得出如图 2-2a 所示的示意图,三角形的三个 顶点为 (cos θ, sin θ), (cos(θ + 120◦ ), sin(θ + 120◦ )), (cos(θ + 240◦ ), sin(θ + 240◦ )),可以绘制出 其曲线,如图 2-2b 所示,试减小步距,如选择 ∆θ = 2, 1, 0.1,观察效果。 >> t=[0,120,240,0]*pi/180; xxx=[]; yyy=[]; for i=0:5:360 tt=i*pi/180; xxx=[xxx; cos(tt+t)]; yyy=[yyy; sin(tt+t)]; end
−1 −1
= A−1 − A−1 B C −1 + B T A−1 B
B T A−1
试根据上面的算法用 MATLAB 语句编写一个函数对矩阵 M 进行求逆,并通过一个小例子来 检验该程序,并和直接求逆方法进行精度上的比较。 【求解】 编写这个函数 function Minv=part_inv(A,B,C) Minv=inv(A)-inv(A)*B*inv(inv(C)+B’*inv(A)*B)*B’*inv(A);
>> M1=sym(M); iM0=inv(M1) >> norm(double(iM0)-iM) % 直接求解的误差范数 >> norm(double(iM0)-iM1) % 间接求解的误差范数 可见,用间接方法得出的逆矩阵误差更大,因为在这里新编写的函数中 inv() 函数使用 了多次,由此产生很大的传递误差。由此可以得出结论:如果某问题存在直接解,则尽量别 使用间接方法,以加大传递误差。 11 下面给出了一个迭代模型 xk+1 = 1 + yk − 1.4x2 k yk+1 = 0.3xk 写出求解该模型的 M-函数,如果取迭代初值为 x0 = 0,y0 = 0,那么请进行 30000 次迭代求出 一组 x 和 y 向量,然后在所有的 xk 和 yk 坐标处点亮一个点 (注意不要连线),最后绘制出所 需的图形。提示 这样绘制出的图形又称为 Henon 引力线图,它将迭代出来的随机点吸引到一 起,最后得出貌似连贯的引力线图。 【求解】 用循环形式解决此问题,可以得出如图 2-1 所示的 Henon 引力线图。 >> x=0; y=0; for i=1:29999 x(i+1)=1+y(i)-1.4*x(i)^2; y(i+1)=0.3*x(i); end plot(x,y,’.’) 上述的算法由于动态定义 x 和 y ,所以每循环一步需要重新定维,这样做是很消耗时间 的,所以为加快速度,可以考虑预先定义这两个变量,如给出 x=zeros(1,30000)。 12 用 MATLAB 语言的基本语句显然可以立即绘制一个正三角形,试结合循环结构,编写一个 小程序,在同一个坐标系下绘制出该正三角形绕其中心旋转后得出的一系列三角形,还可以 调整旋转步距观察效果。
MATLAB数值分析实例解析
2016-2017 第一学期数值分析上机实验报告姓名: xxx学号: 20162…….学院:土木工程学院导师:………..联系电话:…………..指导老师:………..目录第一题 (1)1.1题目要求 (1)1.2程序编写 (1)1.3计算结果及分析 (2)第二题 (4)2.1题目要求 (4)2.2程序编写 (4)2.3计算结果及分析 (6)第三题 (7)3.1题目要求 (7)3.2程序编写 (7)3.3计算结果及分析 (8)第四题 (9)4.1题目要求 (9)4.2程序编写 (9)4.3计算结果及分析 (10)第五题 (11)5.1题目要求 (11)5.2程序编写 (12)5.3计算结果及分析 (13)第六题 (17)6.1题目要求 (17)6.2程序编写 (17)6.3计算结果及分析 (18)6.4程序改进 (18)第一题选做的是第(1)小问。
1.1题目要求编出不动点迭代法求根的程序;把x3+4x2−10=0写成至少四种x=g(x)的形式,取初值x0=1.5,进行不动点迭代求根,并比较收敛性及收敛速度。
1.2程序编写1.3计算结果及分析① 第一种迭代公式:x =x 3+4x 2+x −10; matlab 计算结果如下: (以下为命令行窗口的内容)② 第二种迭代公式:x =√(10−x 3)/42; matlab 计算结果如下: (以下为命令窗口内容)③ 第三种迭代公式:x =√10(x +4)⁄2; matlab 计算结果如下:(以下为命令窗口内容)⁄;matlab计算结果如下:④第四种迭代公式:x=10(x2+4x)(以下为命令窗口内容)上述4种迭代公式,1、4两种由于在x真实值附近|g`(x)|>1,不满足迭代局部收敛条件,所以迭代序列不收敛。
对于2、3两种式子,由于在x真实值附近|g`(x)|<=L<1,满足迭代局部收敛条件,所以迭代序列收敛。
对于2、3两迭代公式,由于L3<L2,所以第3个迭代公式比第2个迭代公式收敛更快。
MATLAB考试复习题及例题
例、用一个简单命令求解线性系统3x1+ x2 - x3 = 3.6x1+2x2+4x3 = 2.1-x1+4x2+5x3 = -1.4对于线性系统有Ax=bA=[3 1 -1;1 2 4;-1 4 5];b=[3.6;2.1;-1.4];x=A\bx =1.4818-0.46060.3848例、用简短命令计算并绘制在0≤x≤6范围内的sin(2x)、sinx2、sin2x。
x=linspace(0,6)y1=sin(2*x),y2=sin(x.^2),y3=(sin(x)).^2;plot(x,y1,x, y2,x, y3)例1-1 绘制函数y=2sin(1+x)的图像,并计算当x=0.5 时的函数值。
x=(1:0.1:10); %给出自变量x 的定义域y=2*sin(1+x); %写出函数形式plot(x,y) %绘出函数图形y=2*sin(1+0.5) %求当x=0.5 时的y 值,其后不加分号,直接在窗口中给出结果y =1.9950 %输出y 的计算结果例1-2 绘制函数y=3x3-10x2+5x-8的图像for i=1:100x(i)=0.1*i;y(i)=3*x(i)^3-10*x(i)^2+5*x(i)-8;endplot(x,y)上机练习(1)(1)以两种方式打开MATLAB 工作窗口,进入MATLAB 6.0 的工作环境,并尝试用不同的方式退出。
(2)尝试、熟悉MATLAB 6.0 的各栏菜单以及各个工具栏的功能。
(3)重新启动MATLAB 6.0,进入MATLAB 工作窗口,用who 命令查看当前工作空间内有无变量及其值。
(4)绘制函数y=cos(5x+2)/sin(3x+1) 的图像,并求解当x=2 时的函数值。
(5)此时再次用who 命令查看工作空间内的变量名及其值,与(3)比较,同时用whos 命令查看变量,比较与who 命令的不同。
(6)熟练掌握MA TLAB 的通用命令。
Matlab考试试题库答案解析(2021年整理精品文档)
Matlab考试试题库答案解析编辑整理:尊敬的读者朋友们:这里是精品文档编辑中心,本文档内容是由我和我的同事精心编辑整理后发布的,发布之前我们对文中内容进行仔细校对,但是难免会有疏漏的地方,但是任然希望(Matlab考试试题库答案解析)的内容能够给您的工作和学习带来便利。
同时也真诚的希望收到您的建议和反馈,这将是我们进步的源泉,前进的动力。
本文可编辑可修改,如果觉得对您有帮助请收藏以便随时查阅,最后祝您生活愉快业绩进步,以下为Matlab考试试题库答案解析的全部内容。
填空题1、标点符号;%—用来表示该行为注释行。
可以使命令行不显示运算结果,2、x为0~4pi,步长为0。
1pi的向量,使用命令 x=0:0.1*pi:4*pi创建。
3、输入矩阵A=,使用全下标方式用A(2,2)取出元素“-5”,使用单下标方式用A(5)取出元素“-5"。
4、符号表达式sin(2*a+t)+m中独立的符号变量为t。
5、M脚本文件和M函数文件的主要区别是M脚本文件没有函数定义和M函数文件有函数定义_______。
6。
设x是一维数组,x的倒数第3个元素表示为x(_end-2_)设y为二维数组,要删除y的第34行和48列,可使用命令y(34,:)=[];y(:,48)=[];7. 将变量x以Ascii文本格式存储到文件fname。
txt,应使用命令 save _x ;8。
在while 表达式, 语句体, End 循环语句中,表达式的值非零时表示循环条件为真,语句体将被执行,否则跳出该循环语句;9。
要从键盘读入一个字符串并赋值给变量x,且给出提示“Who is she?”,应使用命令x=input(‘Who is she?',’s’) ;10.设A=和B=和C=均为m*n矩阵,且存在于WorkSpace中,要产生矩阵D=,可用命令D=(A-C)/B.^C,计算可用命令det(inv(A’*B)11. 在MATLAB命令窗口中的“>>”标志为MATLAB的命令行提示符,“│”标志为输入提示符。
matLAB经典例题及答案
一.对以下数据分别作二次,三次多项式拟合,并画出图形.x=1:16;y=[4,6.4,8,8.4,9.28,9.5,9.7,9.86,10,10.2,10.32,10.42,10.5, 10.55,10.58,10.6];答:程序如下(1)x=(1:16);y=erf(x);p=polyfit(x,y,2);f=polyval(p,x);plot(x,y,x,f);结果p=-0.00100.02020.9096(2)y=[4,6.4,8,8.4,9.28,9.5,9.7,9.86,10,10.2,10.32,10.42,10.5, 10.55,10.58,10.6];y=erf(x);p=polyfit(x,y,3)f=polyval(p,x);plot(x,y,x,f)结果P=0.0002-0.00710.06280.8404二.在[0,4pi]画sin(x),cos(x)(在同一个图象中);其中cos(x)图象用红色小圆圈画.并在函数图上标注“y=sin(x)”,“y=cos(x)”,x轴,y轴,标题为“正弦余弦函数图象”.答:程序如下x=[0:720]*pi/180;plot(x,sin(x),x,cos(x),'ro');x=[2.5;7];y=[0;0];s=['y=sin(x)';'y=cos(x)'];text(x,y,s);xlabel('正弦余弦函数图象'),ylabel('正弦余弦函数图象')图形如下三.选择一个单自由度线性振动系统模型,自定质量、弹簧刚度、阻尼、激振力等一组参数,分别编程(m 文件)计算自由和强迫振动时的响应,并画出振动曲线图。
(要求画出该单自由度线性振动系统模型图)其中质量为m=1000kg,弹性刚度k=48020N/m,阻尼c=1960N.s/m,激振力f(t)=0.阻尼比ζ的程序p=1960/(2*sqrt(48020*1000))求得p=0.1414而p为阻尼比ζ强迫振动时的响应程序g =tf([-101],[48020048020*1.9848020]);bode(g)图形g =tf([001],[0001]);bode(g)振动曲线图程序:函数文件function dx =rigid(t,x)dx =zeros(2,1);dx(1)=x(2);dx(2)=(-48020*x(1)-1960*x(2))/1000;命令文件options =odeset('RelTol',1e-4,'AbsTol',[1e-41e-4]);[T,X]=ode45(@rigid,[012],[11],options);plot(T,X(:,1),'-')其图形如下024681012-6-5-4-3-2-11234单自由度线性强迫振动系统模型图其中质量为m=1000kg,弹性刚度k=48020N/m,阻尼c=1960N.s/m,f(t)=cos(3*pi*t)振动曲线图程序:函数文件function dx=rigid(t,x)dx=zeros(2,1);dx(1)=x(2);dx(2)=(-48020*x(1)-1960*x(2))/1000+cos(3*pi*t);命令文件options=odeset('RelTol',1e-4,'AbsTol',[1e-41e-4]);[T,X]=ode45(@rigid,[020],[11],options);plot(T,X(:,1),'-')力等一组参数,建立Simulink仿真模型框图进行仿真分析。
Matlab试题及答案讲课稿
Matlab试题及答案讲课稿《Matlab 软件实训》⼀、训练⽬的1、熟悉Matlab ⼯具软件的开发环境2、掌握Matlab 的⼀些常⽤命令3、掌握Matlab/Simulink 建模仿真的⽅法⼆、训练内容1、利⽤命令进⾏各种相关数学计算;2、编写M ⽂件实现各种相关数学计算;3、利⽤Simulink 建模并仿真;三、训练任务1、解⽅程:Ax=B ,其中,A=------5407395012818053,B=-6120 本题解决思路:这是⼀个简单的数组运算,核⼼点在于数组的输⼊⽅法和⼀些基本的数组运算基础,本题中需要注意的是左除与右除的区别。
命令如下>> A=[-3 5 0 8;1 -8 2 -1;0 -5 9 3;-7 0 -4 5] A =-3 5 0 8 1 -8 2 -1 0 -5 9 3 -7 0 -4 5>> B=[0;2;-1;6] B =0 2 -1 6>> X=A\BX =-0.6386-0.4210-0.35290.02372、数值运算已知某班的5名学⽣的三门成绩如下:序号 1 2 3 4 5⾼数78 89 64 73 68外语83 77 80 78 70电路82 91 78 82 68试写出有关命令,先分别找出三门课的最⾼分及其学⽣序号,然后找出三门课总分的最⾼分及其学⽣序号。
本题解决思路:详细的分析题⽬,可以发现本题就是⼀个多组求最⼤值并输出的问题。
有三个核⼼点,第⼀点是求最⼤值问题。
第⼆点是如何将多组最⼤值问题合并在⼀个程序中解出,第三点是输⼊和输出的⽅法。
最⼤值我采⽤了MA TLAB中的max命令,其实也可以采⽤⾃⼰编写M⽂件的⽅法,但是程序越精简运⾏越快,我选择了⾃带命令。
第⼆个问题我采⽤了⼀个for和if配合的循环判断的语句。
第三个问题我采⽤disp输出,并⽤num2str将字符串转换输出。
程序如下a=input('⾼数成绩');b=input('英语成绩');c=input('电⼯成绩');for i=1:3if i==1[y1,t1]=max(a,[],2);else if i==2[y2,t2]=max(b,[],2);else[y3,t3]=max(c,[],2);endendends=a+b+c;[y4,t4]=max(s,[],2);disp(['⾼数最⾼分是',num2str(t1),'号',num2str(y1),'分'])disp(['英语最⾼分是',num2str(t2),'号',num2str(y2),'分'])disp(['电⼯最⾼分是',num2str(t3),'号',num2str(y3),'分'])disp(['总分最⾼分是',num2str(t4),'号',num2str(y4),'分'])⾼数成绩[78 89 64 73 68]英语成绩[83 77 80 78 70]电⼯成绩[82 91 78 82 68]⾼数最⾼分是2号89分英语最⾼分是1号83分电⼯最⾼分是2号91分总分最⾼分是2号257分 >>3、建⽴M ⽂件,计算积分y=20sin πxdx ;M ⽂件如下function [ y ] = J( a,b ) syms xy=int(sin(x),x,a,b) end在命令⾏中输⼊J(0,pi/2) 运算得出结果 >> J(0,pi/2) y = 1ans = 14、建⽴M ⽂件,在[0 2π]范围内绘制⼆维曲线图y=)5cos(*)sin(x x本题解决思路:在M ⽂件中要有输⼊变量和输出量,分析本题得知,本题的x 并不是输⼊⽂件,他是⼀个中间变量,真正的输⼊变量其实是x 的输⼊范围,定义变量为(a,b),确定这个以后直接调⽤MATLAB 中的内置命令求解。
MATLAB数学实验100例题解(修订版)
一元函数微分学实验1 一元函数的图形(基础实验)实验目的 通过图形加深对函数及其性质的认识与理解, 掌握运用函数的图形来观察和分析 函数的有关特性与变化趋势的方法,建立数形结合的思想; 掌握用Matlab 作平面曲线图性的方法与技巧.初等函数的图形2 作出函数x y tan =和x y cot =的图形观察其周期性和变化趋势. 解:程序代码:>> x=linspace(0,2*pi,600); t=sin(x)./(cos(x)+eps);plot(x,t);title('tan(x)');axis ([0,2*pi,-50,50]); 图象:程序代码:>> x=linspace(0,2*pi,100); ct=cos(x)./(sin(x)+eps);plot(x,ct);title('cot(x)');axis ([0,2*pi,-50,50]); 图象:4在区间]1,1[-画出函数xy 1sin =的图形. 解:程序代码:>> x=linspace(-1,1,10000);y=sin(1./x); plot(x,y);axis([-1,1,-2,2]) 图象:二维参数方程作图6画出参数方程⎩⎨⎧==t t t y tt t x 3cos sin )(5cos cos )(的图形:解:程序代码:>> t=linspace(0,2*pi,100);plot(cos(t).*cos(5*t),sin(t).*cos(3*t)); 图象:极坐标方程作图8 作出极坐标方程为10/t e r =的对数螺线的图形. 解:程序代码:>> t=0:0.01:2*pi; r=exp(t/10);polar(log(t+eps),log(r+eps)); 图象:90270分段函数作图10 作出符号函数x y sgn =的图形. 解:程序代码:>> x=linspace(-100,100,10000); y=sign(x); plot(x,y);axis([-100 100 -2 2]);函数性质的研究12研究函数)3(log 3)(35x e x x f x -++=在区间]2,2[-上图形的特征. 解:程序代码:>> x=linspace(-2,2,10000);y=x.^5+3*exp(x)+log(3-x)/log(3); plot(x,y); 图象:实验2 极限与连续(基础实验)实验目的 通过计算与作图, 从直观上揭示极限的本质,加深对极限概念的理解. 掌握用 Matlab 画散点图, 以及计算极限的方法. 深入理解函数连续的概念,熟悉几种间断点的图形 特征,理解闭区间上连续函数的几个重要性质.作散点图14分别画出坐标为)10,,2,1(),4,(),,(3222 =+i i i i i i 的散点图, 并画出折线图. 解:散点图程序代码: >> i=1:10; plot(i,i.^2,'.')或:>> x=1:10;y=x.^2;for i=1:10;plot(x(i),y(i),'r')hold onend折线图程序代码:>> i=1:10;plot(i,i.^2,'-x')程序代码:>> i=1:10;plot(i.^2,4*(i.^2)+i.^3,'.')>> i=1:10;plot(i.^2,4*(i.^2)+i.^3,'-x')数列极限的概念16通过动画观察当∞→n 时数列21n a n =的变化趋势.解:程序代码: >> n=1:100; an=(n.^2); n=1:100; an=1./(n.^2); n=1:100; an=1./(n.^2); for i=1:100plot(n(1:i),an(1:i)),axis([0,100,0,1])pause(0.1) %在这个for 循环内每画一个点就暂停0.1s 因此有动画效果 end 图象:函数的极限18在区间]4,4[-上作出函数xx xx x f --=339)(的图形, 并研究 )(lim x f x ∞→ 和 ).(lim 1x f x →解:作出函数x x x x x f --=339)(在区间]4,4[-上的图形 >> x=-4:0.01:4;y=(x.^3-9*x)./(x.^3-x+eps); plot(x,y)从图上看,()f x 在x →1与x →∞时极限为0两个重要极限 20计算极限⎪⎭⎫⎝⎛+→x x x x x sin 11sin lim )1(0 x x e x 2lim )2(+∞→30sin tan lim )3(xx x x -→ x x x 0lim )4(+→ x xx ln cot ln lim )5(0+→ x x x ln lim )6(20+→ xx x x x x sin cos sin lim)7(20-→ 125523lim)8(323+++-∞→x x x x x x x x e e x x x sin 2lim )9(0----→ xx x x cos 110sin lim )10(-→⎪⎭⎫ ⎝⎛ 解:(1)>> limit(x*sin(1/x)+1/x*sin(x))ans =1(2) >> limit(x^2/exp(x),inf) ans = 0(3) >> limit((tan(x)-sin(8))/x^3) ans =NaN(4) >> limit(x^x,x,0,'right') ans =1(5) >> limit(log(cot(x))/log(x),x,0,'right') ans =-1(6) >> limit(x^2*log(x),x,0,'right') ans =016(7) >> limit((sin(x)-x.*cos(x))./(x.^2.*sin(x)),x,0) ans =1/3(8) >> limit((3*x.^3-2*x.^2+5)/(5*x.^3+2*+1),x,inf) ans =3/5(9) >> limit((exp(x)-exp(-x)-2*x)./(x-sin(x))) ans =2(10) >> limit((sin(x)/x).^(1/(1-cos(x)))) ans =exp(-1/3)实验3 导数(基础实验)实验目的 深入理解导数与微分的概念, 导数的几何意义. 掌握用Matlab 求导数与高 阶导数的方法. 深入理解和掌握求隐函数的导数, 以及求由参数方程定义的函数的导数的方法. 导数概念与导数的几何意义22作函数71232)(23+-+=x x x x f 的图形和在1-=x 处的切线. 解:作函数71232)(23+-+=x x x x f 的图形程序代码: >> syms x;>> y=2*x^3+3*x^2-12*x+7; >> diff(y) ans =6*x^2+6*x-12 >> syms x;y=2*x^3+3*x^2-12*x+7; >> f=diff(y) f =6*x^2+6*x-12 >> x=-1;f1=6*x^2+6*x-12 f1 = -12>> f2=2*x^3+3*x^2-12*x+7 f2 = 20>> x=linspace(-10,10,1000);y1=2*x.^3+3*x.^2-12*x+7; y2=-12*(x+1)+20; plot(x,y1,'r',x,y2,'g')求函数的导数与微分24求函数bx ax x f cos sin )(=的一阶导数. 并求.1⎪⎭⎫⎝⎛+'b a f解:求函数bx ax x f cos sin )(=的一阶导数程序代码: >> syms a b x y;y= sin(a*x)*cos(b*x); D1=diff(y,x,1) 答案:D1 =cos(a*x)*a*cos(b*x)-sin(a*x)*sin(b*x)*b求.1⎪⎭⎫ ⎝⎛+'b a f程序代码:>> x=1/(a+b); %直接输入表达式直接带入 >> cos(a*x)*a*cos(b*x)-sin(a*x)*sin(b*x)*b 答案:ans =cos(a/(a+b))*a*cos(b/(a+b))-sin(a/(a+b))*sin(b/(a+b))*b 拉格朗日中值定理26对函数),2)(1()(--=x x x x f 观察罗尔定理的几何意义. (1) 画出)(x f y =与)(x f '的图形, 并求出1x 与.2x 解:程序代码:>> syms x;f=x*(x-1)*(x-2); f1=diff(f) f1 =(x-1)*(x-2)+x*(x-2)+x*(x-1) >> solve(f1) ans =1+1/3*3^(1/2) 1-1/3*3^(1/2)>> x=linspace(-10,10,1000); y1=x.*(x-1).*(x-2);y2 =(x-1).*(x-2)+x.*(x-2)+x.*(x-1); plot(x,y1,x,y2)(2)画出)(x f y =及其在点))(,(11x f x 与))(,(22x f x 处的切线.程序代码:>> syms x; >> f=x*(x-1)*(x-2); >> f1=diff(f) f1 =(x-1)*(x-2)+x*(x-2)+x*(x-1) %本题意在讨论罗尔定理首先回忆一下罗尔定理 >> solve(f1) %(a,b )连续;[a,b]可导;f(a)=f(b)=0;存在ƞ ans = %使得f ’(ƞ)=01+1/3*3^(1/2) %程序就要先求出f (x )的零点 1-1/3*3^(1/2) %再画出f ’(a)f ’(b)的切线 >> x=linspace(-3,3,1000); >> y1=x.*(x-1).*(x-2);>> y2 =(x-1).*(x-2)+x.*(x-2)+x.*(x-1); >> plot(x,y1,x,y2) >> hold on>> x=1+1/3*3^(1/2); >> yx1=x*(x-1)*(x-2) yx1 =-0.3849>> x=1-1/3*3^(1/2);>> yx2=x*(x-1)*(x-2) yx2 =0.3849x=linspace(-3,3,1000); yx1 =-0.3849*x.^0; yx2 =0.3849*x.^0; plot(x,yx1,x,yx2)28求下列函数的导数: (1) 31+=x e y ; 解:程序代码:>> syms x y; y=exp((x+1)^3); D1=diff(y,1) 答案:D1 =3*(x+1)^2*exp((x+1)^3)(2) )]42ln[tan(π+=x y ;解:程序代码:>> syms x;y=log(tan(x/2+pi/4)); D1=diff(y,1) 答案:D1 =(1/2+1/2*tan(1/2*x+1/4*pi)^2)/tan(1/2*x+1/4*pi)(3) x x y sin ln cot 212+=;解:程序代码:>> syms x;y=1/2*(cot(x))^2+log(sin(x)); D1=diff(y,1) 答案:D1 =cot(x)*(-1-cot(x)^2)+cos(x)/sin(x) (4) xy 2arctan21=. 解:程序代码:>> syms x;>> y=sqrt(2)*atan(sqrt(2)/x); >> D1=diff(y,1) 答案:D1 =-2/x^2/(1+2/x^2)一元函数积分学与空间图形的画法实验4 一元函数积分学(基础实验)实验目的 掌握用Matlab 计算不定积分与定积分的方法. 通过作图和观察, 深入理解定积分的概念和思想方法. 初步了解定积分的近似计算方法. 理解变上限积分的概念. 提高应用 定积分解决各种问题的能力.不定积分计算30求.)1(532⎰-dx x x解:程序代码:>> syms x y;>> y=x^2*(1-x^3)^5; >> R=int(y,x) 答案:R =-1/18*x^18+1/3*x^15-5/6*x^12+10/9*x^9-5/6*x^6+1/3*x^332求.arctan 2⎰xdx x 解:程序代码:>> syms x y;>> y=x^2*atan(x); >> R=int(y,x) 答案:R =1/3*x^3*atan(x)-1/6*x^2+1/6*log(x^2+1)定积分计算34 求.)(102⎰-dx x x解:程序代码:>> syms x y; >> y=x-x^2;>> R=int(y,x,0,1) 答案: R =1/6变上限积分 36 画出变上限函数⎰x dt t t 02sin 及其导函数的图形.解:程序代码:>> syms x y t; >> y=t*sin(t^2); >> R=int(y,x,0,x) 答案:R =t*sin(t^2)*x 再求导函数 程序代码:>> DR=diff(R,x,1) 答案:DR =t*sin(t^2)实验5 空间图形的画法(基础实验)实验目的 掌握用Matlab 绘制空间曲面和曲线的方法. 熟悉常用空间曲线和空间曲面 的图形特征,通过作图和观察, 提高空间想像能力. 深入理解二次曲面方程及其图形.一般二元函数作图38作出函数2214y x z ++=的图形.解:程序代码:>> x=linspace(-5,5,500);[x,y]=meshgrid( %mesh 和meshgrid 是生成网格的命令 z=4./(1+x.^2+y.^2); %先命令出一个x 向量组,再生二位网格 mesh(x,y,z); %用meshgrid 再用mesh 命令出各个点的高 xlabel('x-axis'),ylabel('y-axis'),zlabel('z-axis');title('function')40作出函数)94cos(22y x z +=的图形. 解:程序代码:>> x=-10:0.1:10;[x,y]=meshgrid(x);z=cos(4*x.^2+9*y.^2); mesh(x,y,z);xlabel('x-axis'),ylabel('y-axis'),zlabel('z-axis');title('function')讨论:坐标轴选取范围不同时,图形差异很大,对本题尤为明显,如右图为坐标轴[-1,1]二次曲面42作出单叶双曲面1941222=-+z y x 的图形.(曲面的参数方程为 ,tan 3,cos sec 2,sin sec u z v u y v u x === (.20,2/2/πππ≤≤<<-v u ))解:程序代码:>> v=0:pi/100:2*pi; >> u=-pi/2:pi/100:pi/2; >> [U,V]=meshgrid(u,v); >> x=sec(U).*sin(V); >> y=2*sec(U).*cos(V); >> z=3*tan(U); >> surf(x,y,z)44 可以证明: 函数xy z =的图形是双曲抛物面. 在区域22,22≤≤-≤≤-y x 上作出它的图形.解:程序代码:>> x=-2:0.01:2;[x,y]=meshgrid(x); >> z=x.*y;>> mesh(x,y,z);46 画出参数曲面]2,001.0[],4,0[)5/2/ln(tan cos sin sin sin cos ∈∈⎪⎩⎪⎨⎧++===v u u v v z vu y v u x π 的图形.解:程序代码:>> v=0.001:0.001:2;>> u=0:pi/100:4*pi;>> [U,V]=meshgrid(u,v); >> x=cos(U).*sin(V); >> y=sin(U).*sin(V);>> z=cos(V)+log(tan(V/2)+U/5); >> mesh(x,y,z);空间曲线48 作出空间曲线)60(2,sin ,cos π≤≤===t t z t t y t t x 的图形. 解:程序代码:>> syms t;ezplot3(t*cos(t),t*sin(t),2*t,[0,6*pi])-1010-100100xx = t cos(t), y = t sin(t), z = 2 tz50绘制参数曲线 ⎪⎪⎩⎪⎪⎨⎧=+==t z t y t x arctan 211cos 2的图形.解:程序代码:>> t=-2*pi:pi/100:2*pi;x=cos(t).*cos(t);y=1./(1+2*t);z=atan(t); plot3(x,y,z);grid;xlabel('x'),ylabel('y'),zlabel('z')xyz多元函数微积分实验6 多元函数微分学(基础实验)实验目的 掌握利用Matlab 计算多元函数偏导数和全微分的方法, 掌握计算二元函数极值和条件极值的方法. 理解和掌握曲面的切平面的作法. 通过作图和观察, 理解二元 函数的性质、方向导数、梯度和等高线的概念.求多元函数的偏导数与全微分52设),(cos )sin(2xy xy z +=求.,,,222yx z x z y z x z ∂∂∂∂∂∂∂∂∂ 解:程序代码:>> syms x y;S=sin(x*y)+(cos(x*y))^2; D1=diff(S,'x',1); D2=diff(S,'y',1); D3=diff(S,'x',2);D4=diff(S,'y',2); %这是错误的! D1,D2,D3,D4答案: D1 = cos(x*y)*y-2*cos(x*y)*sin(x*y)*yD2 = cos(x*y)*x-2*cos(x*y)*sin(x*y)*xD3 =-sin(x*y)*y^2+2*sin(x*y)^2*y^2-2*cos(x*y)^2*y^2 D4 = -sin(x*y)*x^2+2*sin(x*y)^2*x^2-2*cos(x*y)^2*x^2实验7 多元函数积分学(基础实验)实验目的掌握用Matlab 计算二重积分与三重积分的方法; 深入理解曲线积分、曲面积分的 概念和计算方法. 提高应用重积分和曲线、曲面积分解决各种问题的能力.计算重积分54计算,2dxdy xy D⎰⎰ 其中D 为由,,2y x y x ==+ 2=y 所围成的有界区域.解:程序代码:>> syms x y;int(int(x*y^2,x,2-y,sqrt(y)),y,1,2) 答案:ans =193/120 重积分的应用56求旋转抛物面224y x z --=在Oxy 平面上部的面积.S 解:程序代码:>> int(2*pi*r,r,0,2) 答案: ans =4*pi无穷级数与微分方程实验8 无穷级数(基础实验) 实验目的观察无穷级数部分和的变化趋势,进一步理解级数的审敛法以及幂级数部分和对函数的 逼近. 掌握用Matlab 求无穷级数的和, 求幂级数的收敛域, 展开函数为幂级数以及展 开周期函数为傅里叶级数的方法.数项级数58(1) 观察级数∑∞=121n n的部分和序列的变化趋势.解:程序代码:for i=1:100 s=0; for n=1:i s=s+1/n^2; endplot(i,s,'.');hold on; end(2) 观察级数∑∞=11n n 的部分和序列的变化趋势.>> for i=1:100 s=0; for n=1:i s=s+1/n; endplot(i,s,'.'); hold on; end60 求∑∞=++123841n n n 的值. 解:程序代码:>> syms n;score=symsum(1/(4*n^2+8*n+3),1,inf) %这个用法我比较不熟悉,记一下 答案: score =1/6函数的幂级数展开62求x arctan 的5阶泰勒展开式. >> syms x;>> T5=taylor(atan(x),6) 答案:T5 =x-1/3*x^3+1/5*x^5实验9 微分方程(基础实验)实验目的 理解常微分方程解的概念以及积分曲线和方向场的概念,掌握利用 Matlab 求微分方程及方程组解的常用命令和方法.求解微分方程64求微分方程 22x xe xy y -=+'的通解. 解:程序代码:>> y=dsolve('Dy+2*x*y=x*exp(-x^2)','x') %还记得solve 命令吗?格式solve (‘’) 答案:y = %将可以解一元多次方程而且不用写出等号(1/2*x^2+C1)*exp(-x^2) %本例用于解微分方程,需要声明什么是变量66求微分方程x e y y y x 2cos 52=+'-''的通解. 解:程序代码:>> y=dsolve('D2y-2*Dy+5*y=exp(x)*cos(2*x)','x') %二次倒数‘D2y ’ 答案: y =exp(x)*sin(2*x)*C2+exp(x)*cos(2*x)*C1+1/4*exp(x)*sin(2*x)*x68求微分方程组⎪⎪⎩⎪⎨⎧=--=++02y x dtdy ey x dt dx t 在初始条件0,100====t t y x 下的特解.解:程序代码: %你还别说我真不会接微分方程组>> [x,y]=dsolve('Dx+x+2*y-exp(t)','Dy-x-y','x(0)=1','y(0)=0','t') 答案: x = cos(t)y = 1/2*sin(t)-1/2*cos(t)+1/2*exp(t)70求解微分方程,)1(122/5+=+-x x y dx dy 并作出积分曲线. 解:程序代码:>> syms x yy=dsolve('Dy-2*y/(x+1)-(x+1)^(5/2)','x') 答案:y =(2/3*(x+1)^(3/2)+C1)*(x+1)^2 做积分曲线 由>> syms x yx=linspace(-5,5,100); C=input('请输入C 的值:'); y=(2/3*(x+1).^(3/2)+C).*(x+1).^2; plot(x,y)例如对应有: 请输入C 的值:2 请输入C 的值:20矩阵运算与方程组求解实验10 行列式与矩阵实验目的掌握矩阵的输入方法. 掌握利用Matlab 对矩阵进行转置、加、减、数乘、相乘、乘方等运算, 并能求矩阵的逆矩阵和计算方阵的行列式.矩阵A 的转置函数Transpose[A]72 求矩阵⎪⎪⎪⎪⎪⎭⎫⎝⎛411365243271的转置. 解:程序代码:>> A=[1,7,2;3,4,2;5,6,3;1,1,4]; >> Sove=A' 答案:Sove =1 3 5 1 7 4 6 12 234 矩阵线性运算 73设,291724,624543⎪⎪⎭⎫⎝⎛=⎪⎪⎭⎫⎝⎛=B A 求.24,A B B A -+ 解:程序代码:>> A=[3,4,5;4,2,6]; B=[4,2,7;1,9,2]; S1=A+B S2=4*B-2*A 答案:S1 =7 6 12 5 11 8 S2 =10 0 18 -4 32 -474设,148530291724,36242543⎪⎪⎪⎪⎪⎭⎫ ⎝⎛=⎪⎪⎭⎫ ⎝⎛=mb ma 求矩阵ma 与mb 的乘积. 解:程序代码:>> ma=[3,4,5,2;4,2,6,3];>> mb=[4,2,7;1,9,2;0,3,5;8,4,1];>> Sove=ma*mb答案:Sove =32 65 5642 56 65矩阵的乘法运算 75设,101,530291724⎪⎪⎪⎭⎫ ⎝⎛=⎪⎪⎪⎭⎫ ⎝⎛=B A 求AB 与,A B T 并求.3A解:程序代码:>> A=[4 2 7;1 9 2;0 3 5];B=[1;0;1];>> AB=A*BAB =1135>> BTA=B'*ABTA =4 5 12>> A3=A^3A3 =119 660 555141 932 44454 477 260求方阵的逆76 设,5123641033252312⎪⎪⎪⎪⎪⎭⎫⎝⎛=A 求.1-A解:程序代码:>> A=[2,1,3,2;5,2,3,3;0,1,4,6;3,2,1,5];Y=inv(A)答案:Y =-1.7500 1.3125 0.5000 -0.68755.5000 -3.6250 -2.0000 2.37500.5000 -0.1250 0.0000 -0.1250-1.2500 0.6875 0.5000 -0.312577 设,221331317230,5121435133124403⎪⎪⎪⎪⎪⎭⎫⎝⎛=⎪⎪⎪⎪⎪⎭⎫ ⎝⎛=B A 求.1B A -解:程序代码:>> A=[3 0 4 4 ;2 1 3 3 ;1 5 3 4;1 2 1 5]; B=[0 3 2 ;7 1 3;1 3 3 ;1 2 2];Solve=A'*B %这一步和题目要求不符,应是Solve=inv(A)*B答案:Solve =16 16 1714 20 2225 26 2830 37 3978 解方程组⎪⎩⎪⎨⎧-=-+=+-=++.2442,63,723z y x z y x z y x解:程序代码:>> A=[3 2 1;1 -1 3;2 4 -4]; b=[7 6 -2];>> A\b' %也可以用inv (A )*b ’表达答案:ans =1.00001.00002.0000求方阵的行列式79 求行列式 .3351110243152113------=D 解:程序代码:>> A=[3,1,-1,2;-5,1,3,-4;2,0,1,-1;1,-5,3,-3];D=det(A)答案:D =4080求.11111111111122222222d d d d c cc c b bb b a a a a D ++++= 解:程序代码:>> syms a b c d;D=[a^2+1/a^2 a 1/a 1;b^2+1/b^2 b 1/b 1;c^2+1/c^2 c 1/c 1;d^2+1/d^2 d 1/d 1];det(D)答案:ans =-(-c*d^2*b^3+c^2*d*b^3-c^3*d^2*a+c^3*d*a^2*b^4+c*d^2*a^3-c^3*d^2*a*b^4-c^2*d*a^3-c*d^2*b^3*a^4+c^2*d*b^3*a^4+c^3*d^2*b*a^4-c^3*d*b^2*a^4-c^2*d^3*b*a^4+c*d^3*b^2*a^4+c*d ^2*a^3*b^4-c^2*d*a^3*b^4+c^3*d^2*b-c^3*d*b^2-c^2*d^3*b+c*d^3*b^2+c^3*d*a^2+c^2*d^3*a-c *d^3*a^2-b*d^2*a^3+b^2*d*a^3+b^3*d^2*a-b^3*d*a^2-b^2*d^3*a+b*d^3*a^2+b*c^2*a^3-b^2*c*a ^3-b^3*c^2*a+b^3*c*a^2+b^2*c^3*a-b*c^3*a^2+c^2*d^3*a*b^4-c*d^3*a^2*b^4-b*d^2*a^3*c^4+b ^2*d*a^3*c^4+b^3*d^2*a*c^4-b^3*d*a^2*c^4-b^2*d^3*a*c^4+b*d^3*a^2*c^4+b*c^2*a^3*d^4-b^2*c*a^3*d^4-b^3*c^2*a*d^4+b^3*c*a^2*d^4+b^2*c^3*a*d^4-b*c^3*a^2*d^4)/a^2/c^2/d^2/b^281 计算范德蒙行列式.1111145444342413534333231252423222154321x x x x x x x x x x x x x x x x x x x x解:程序代码:>> syms x1 x2 x3 x4 x5;>> A=[1,1,1,1,1;x1,x2,x3,x4,x5;x1^2,x2^2,x3^2,x4^2,x5^2;x1^3,x2^3,x3^3,x4^3,x5^3;x1^4,x2^4,x3^4,x4^4,x5^4];>> DC=det(A);>> DS=simple(DC)答案:DS =(-x5+x4)*(x3-x5)*(x3-x4)*(-x5+x2)*(x2-x4)*(x2-x3)*(-x5+x1)*(x1-x4)*(x1-x3)*(x1-x2)82 设矩阵 ,60975738723965110249746273⎪⎪⎪⎪⎪⎪⎭⎫⎝⎛----=A 求.),(|,|3A A tr A解:程序代码:>> A=[3,7,2,6,-4;7,9,4,2,0;11,5,-6,9,3;2,7,-8,3,7;5,7,9,0,-6];>> D=det(A),T=trace(A),A3=A^3答案:D =11592T =3A3=726 2062 944 294 -3581848 3150 26 1516 2281713 2218 31 1006 4041743 984 -451 1222 384801 2666 477 745 -125向量的内积83 求向量}3,2,1{=u 与}0,1,1{-=v 的内积.解:程序代码:>> u=[1 2 3];v=[1 -1 0];solve=dot(u,v)答案:solve =-184设,001001⎪⎪⎪⎭⎫ ⎝⎛=λλλA 求.10A 一般地?=k A (k 是正整数).解:程序代码:>> syms r;>> A=[r,1,0;0,r,1;0,0,r];>> A^10答案:ans =[ r^10, 10*r^9, 45*r^8][ 0, r^10, 10*r^9][ 0, 0, r^10]85.求⎪⎪⎪⎪⎪⎪⎭⎫ ⎝⎛+++++a a a aa 1111111111111111111111111的逆. 解:程序代码:>> syms aA=[1+a,1,1,1,1;1,1+a,1,1,1;1,1,1+a,1,1;1,1,1,1+a,1;1,1,1,1,1+a];solve=inv(A)答案:solve =[ 1/a*(a+4)/(a+5), -1/a/(a+5), -1/a/(a+5), -1/a/(a+5), -1/a/(a+5)][ -1/a/(a+5), 1/a*(a+4)/(a+5), -1/a/(a+5), -1/a/(a+5), -1/a/(a+5)][ -1/a/(a+5), -1/a/(a+5), 1/a*(a+4)/(a+5), -1/a/(a+5), -1/a/(a+5)][ -1/a/(a+5), -1/a/(a+5), -1/a/(a+5), 1/a*(a+4)/(a+5), -1/a/(a+5)][ -1/a/(a+5), -1/a/(a+5), -1/a/(a+5), -1/a/(a+5), 1/a*(a+4)/(a+5)] 实验11 矩阵的秩与向量组的极大无关组实验目的 学习利用Matlab 求矩阵的秩,作矩阵的初等行变换; 求向量组的秩与极大无关组. 求矩阵的秩86 设,815073*********⎪⎪⎪⎭⎫⎝⎛-------=M 求矩阵M 的秩.解:程序代码:>> M=[3,2,-1,-3,-2;2,-1,3,1,-3;7,0,5,-1,-8];R=rank(M)答案:R=2向量组的秩87求向量组)0,3,0,2(),2,5,4,0(),1,1,2,1(231=--=-=ααα的秩.解:程序代码:>> A=[1,2,-1,1;0,-4,5,-2;2,0,3,0];R=rank(A)答案:R =288向量组)7,5,1,3(),5,4,3,1(),1,1,1,1(),3,2,1,1(4321==-==αααα是否线性相关?解:由>> A=[1 1 2 3;1 -1 1 1;1 3 4 5;3 1 5 7];rank(A)ans = 3即rank(A)=3 小于阶数489向量组)3,1,1(),2,1,3(),7,2,2(321=-==ααα是否线性相关?解:由>> A3=[2,2,7;3,-1,2;1,1,3];R=rank(A3)得 R = 3即rank(A3)=3 等于阶数3故向量组线性无关。
MATLAB例题考试及答案
例1.1 分别绘制函数和的曲线。
x=-2*pi:pi/180:2*pi;plot(x,2.^(-abs(x)),':',x,sin(x));例1.2 求方程2x5-3x3 +71x2-9x+13=0的全部根。
p=[2,0,-3,71,-9,13];x=roots(p)例1.3 求解线性方程组。
a=[2,3,-1;8,2,3;45,3,9];b=[2;4;23];x=inv(a)*b例1.4 求积分quad('x.*log(1+x)',0,1)例2.2 利用M文件建立MYMAT矩阵。
(1)启动有关编辑程序或MATLAB文本编辑器(见第4章),并输入待建矩阵:MYMAT=[101,102,103,104,105,106,107,108,109;201,202,203,204,205,206,207,208,209;301,302,303,304,305,306,307,308,309]例2.3 建立5阶方阵A,判断A的元素是否能被3整除。
A =[24,35,13,22,63;23,39,47,80,80; ...90,41,80,29,10;45,57,85,62,21;37,19,31,88,76]P=rem(A,3)==0例2.5 建立矩阵A,然后找出在[10,20]区间的元素的位置。
(1) 建立矩阵A。
A=[4,15,-45,10,6;56,0,17,-45,0](2) 找出大于4的元素的位置。
find(A>=10 & A<=20)ans =367例2.6 建立一个字符串向量,然后对该向量做如下处理:(1)取第1~5个字符组成的子字符串。
(2)将字符串倒过来重新排列。
(3)将字符串中的小写字母变成相应的大写字母,其余字符不变。
(4)统计字符串中小写字母的个数。
命令如下:ch='ABc123d4e56Fg9';subch=ch(1:5)subch =ABc12revch=ch(end:-1:1)revch =9gF65e4d321cBAk=find(ch>='a'&ch<='z');ch(k)=ch(k)-('a'-'A');char(ch)ans =ABC123D4E56FG9length(k)ans =4例3.2 建立随机矩阵:(1) 在区间[20,50]内均匀分布的5阶随机矩阵。
matlab考试题及答案百度网盘
matlab考试题及答案百度网盘MATLAB考试题及答案百度网盘1. MATLAB的基本数据类型有哪些?- 答案:MATLAB的基本数据类型包括数值型(如整数、浮点数)、字符型、逻辑型、结构体、单元数组和对象。
2. 如何在MATLAB中创建一个3x3的单位矩阵?- 答案:可以使用`eye(3)`命令来创建一个3x3的单位矩阵。
3. MATLAB中如何实现矩阵的转置?- 答案:可以使用`.'`操作符或者`transpose()`函数来实现矩阵的转置。
4. 在MATLAB中,如何计算两个矩阵的点积?- 答案:可以使用`dot()`函数或者`*`操作符(当两个矩阵都是向量时)来计算两个矩阵的点积。
5. MATLAB中如何绘制函数f(x)=x^2的图像?- 答案:可以使用`plot()`函数结合`fplot()`函数或者直接使用`plot()`函数配合`linspace()`函数来绘制函数f(x)=x^2的图像。
6. MATLAB中如何求解线性方程组Ax=b?- 答案:可以使用`\`操作符或者`linsolve()`函数来求解线性方程组Ax=b。
7. MATLAB中如何实现循环结构?- 答案:可以使用`for`循环或者`while`循环来实现循环结构。
8. MATLAB中如何定义一个函数?- 答案:可以使用`function`关键字来定义一个函数,例如:`function y = myFunction(x) y = x^2; end`。
9. MATLAB中如何使用条件语句?- 答案:可以使用`if`、`elseif`和`else`关键字来实现条件语句。
10. MATLAB中如何实现文件的读写操作?- 答案:可以使用`fopen()`、`fread()`、`fwrite()`和`fclose()`等函数来实现文件的读写操作。
以上为MATLAB考试题及答案的示例,具体内容可根据实际考试要求进行调整。
MatLab考试题题库(带答案)
MatLab 考试题题库(必做题)(带答案)一,1.请登陆美国MathWorks公司的网站,查看看现在大概有多少本MATLAB-based books (以MATLAB为基本软件,来说明各个专业领域的教科书或工具书)。
哪一个领域的MATLAB-based books最多中文书共有几本答: 1612 本,数学方面的最多,中文书共有37 本。
2.请在 MATLAB 中直接输入下列常数,看它们的值是多少:a.ib.jc.epsd.infe.nanf.pig.realmaxh.realmin依次解为: ans = 0 +ans = 0 +ans =ans =Inf ans = NaN ans =ans = +308ans =3.试写一函数regPolygon(n) ,其功能为画出一个圆心在(0, 0)、半径为 1 的圆,并在圆内画出一个内接正n 边形,其中一顶点位于(0, 1)。
例如regPolygon(8)可以画出如下之正八边型:解:新建文件如下:function y=regPolyfon(n)n=8;%要画的 n 边形R=1; %圆的半径t=0::2*pi;x=R*cos(t);y=R*sin(t);m=linspace(pi/ 2,5/2*pi,n+1);xz=R*cos(m);yz=R*sin(m);hold onplot(x,y,xz,yz);axis 'equal';4.一条参数式的曲线可由下列方程式表示:x= sin(t), y = 1 - cos(t) + t/10当 t 由 0 变化到4*pi时,请写一个MATLAB 的脚本,画出此曲线在XY 平面的轨迹。
解:新建:t = linspace(0, 4*pi);x = sin(t);y = 1-cos(t)+t/10;plot(x, y, '-o');32.521.510.5-1-0.8-0.6-0.4-0.200.20.40.60.815.当一个小圆轮沿着一条曲线行进时,轮缘任一点的轨迹就会产生变化丰富的摆线。
第11讲MATLABCUMCM真题求解实例二-MathWorks
1 问题的提出
钢铁工业是国家工业的基础之一, 铁矿是钢铁工业的主要原料基地。 许多现代化铁矿是 露天开采的,它的生产主要是由电动铲车(以下简称电铲)装车、电动轮自卸卡车(以下简 称卡车)运输来完成。提高这些大型设备的利用率是增加露天矿经济效益的首要任务。 露天矿里有若干个爆破生成的石料堆, 每堆称为一个铲位, 每个铲位已预先根据铁含量 将石料分成矿石和岩石。一般来说,平均铁含量不低于 25%的为矿石,否则为岩石。每个铲 位的矿石、岩石数量,以及矿石的平均铁含量(称为品位)都是已知的。每个铲位至多能安 置一台电铲,电铲的平均装车时间为 5 分钟。 卸货地点(以下简称卸点)有卸矿石的矿石漏、2 个铁路倒装场(以下简称倒装场)和 卸岩石的岩石漏、岩场等,每个卸点都有各自的产量要求。从保护国家资源的角度及矿山的 经济效益考虑,应该尽量把矿石按矿石卸点需要的铁含量(假设要求都为 29.5% ± 1%,称为 品位限制)搭配起来送到卸点,搭配的量在一个班次(8 小时)内满足品位限制即可。从长 远看,卸点可以移动,但一个班次内不变。卡车的平均卸车时间为 3 分钟。 所用卡车载重量为 154 吨,平均时速 28 km h 。卡车的耗油量很大,每个班次每台车消 耗近 1 吨柴油。 发动机点火时需要消耗相当多的电瓶能量, 故一个班次中只在开始工作时点 火一次。 卡车在等待时所耗费的能量也是相当可观的, 原则上在安排时不应发生卡车等待的 情况。电铲和卸点都不能同时为两辆及两辆以上卡车服务。卡车每次都是满载运输。
m
n
S.T:
∑ ag
j =1 n j =1
n
ij
≥ Ki
n
(1)
∑ b j g ij a / ∑ g ij a ∈ [29.5% ± 1%]
j =1
高数之MATLAB例题解析【全】
a=a2 elseif a1<a2
a=a1 elseif a>a3
a=a else
a=a3 end ②在保存文件为lx5,并且命名。 ③命令窗口得到结果: >> a=lx5(1,2,3) a=
1
2021/10/10
2021/10/10
8
工作空间浏览器简介
2021/10/10
9
Command History Command History历史指令窗简介
2021/10/10
10
历史指令行的再运行
• 【例4】再运行图1.5-2所示历史指令窗中的三行指 令。
2021/10/10
11
2021/10/10
12
2021/10/10
x= 13579
2021/10/10
23
一维数组的访问
格式:x(n ) 功能:访问数组x的第n个元素
【例6】访问向量x=(1 3 5 7 9)的第3,5个元素。 >> x=1:2:9 x=
13579 >> x(3) ans =
5 >> x(5) ans =
9
2021/10/10
24
练习作业
1.编写一个函数文件,求任意给定的3个数的最小值。
返回2021返/10回/10 目录
5
通用操作界面 Command Window运行入门 Command Window指令窗简介
2021/10/10
6
最简单的计算器使用法
【例1】求的算术运算结果。
(1)用键盘在MATLAB指令窗中输入以下内容
(完整word版)matlab数值分析例题
1、 在MATLAB 中用Jacobi 迭代法讨论线性方程组,1231231234748212515x x x x x x x x x -+=⎧⎪-+=-⎨⎪-++=⎩(1)给出Jacobi 迭代法的迭代方程,并判定Jacobi 迭代法求解此方程组是否收敛。
(2)若收敛,编程求解该线性方程组.解(1):A=[4 -1 1;4 —8 1;-2 1 5] %线性方程组系数矩阵A =4 -1 1 4 -8 1 —2 1 5>> D=diag(diag(A))D =4 0 0 0 —8 0 0 0 5〉〉 L=—tril (A,-1) % A 的下三角矩阵L =0 0 0 —4 0 0 2 —1 0〉〉U=-triu(A,1)% A的上三角矩阵U =0 1 —10 0 —10 0 0B=inv(D)*(L+U)% B为雅可比迭代矩阵B =0 0.2500 —0。
25000.5000 0 0.12500。
4000 —0.2000 0〉〉r=eigs(B,1)%B的谱半径r =0。
3347 〈1Jacobi迭代法收敛。
(2)在matlab上编写程序如下:A=[4 —1 1;4 -8 1;—2 1 5];〉〉b=[7 —21 15]';>〉x0=[0 0 0]’;〉〉[x,k]=jacobi(A,b,x0,1e—7)x =2。
00004.00003。
0000k =17附jacobi迭代法的matlab程序如下:function [x,k]=jacobi(A,b,x0,eps)% 采用Jacobi迭代法求Ax=b的解%A为系数矩阵%b为常数向量%x0为迭代初始向量%eps为解的精度控制max1= 300; %默认最多迭代300,超过300次给出警告D=diag(diag(A));%求A的对角矩阵L=-tril(A,—1); %求A的下三角阵U=—triu(A,1); %求A的上三角阵B=D\(L+U);f=D\b;x=B*x0+f;k=1;%迭代次数while norm(x-x0)>=epsx0=x;x=B*x0+f;k=k+1;if(k〉=max1)disp(’迭代超过300次,方程组可能不收敛’);return;endend2、设有某实验数据如下:(1)在MATLAB中作图观察离散点的结构,用多项式拟合的方法拟合一个合适的多项式函数;(2)在MATLAB中作出离散点和拟合曲线图。
Matlab考试卷试题库题集答案.doc
一、选择题共 10 小题二、填空题共 10 空三、看程序填空四、编程题 3 题填空题(计算部分)1、标点符号 ; _______可以使命令行不显示运算结果,%——用来表示该行为注释行。
2、x 为 0 ~4pi,步长为0.1pi的向量,使用命令_______创建。
x=0:0.1*pi:4*pi3、输入矩阵A= ,使用全下标方式用A(2,2) 取出元素“-5 ”,使用单下标方式用_______取出元素“-5 ”。
A(5)4、符号表达式sin(2*a+t)+m 中独立的符号变量为_______。
t5、M脚本文件和 M函数文件的主要区别是M脚本文件没有函数定义和件有函数定义 _______。
M函数文6.设 x 是一维数组, x 的倒数第 3 个元素表示为 _______;设 y 为二维数组,要删除 y 的第 34 行和 48 列,可使用命令; _______;x(_end-2_)y(34,:)=[]y(:,48)=[]7.将变量 x 以 Ascii 文本格式存储到文件 fname.txt,应使用命令 _________ _;save _x8.在 while 表达式 , 语句体 , End 循环语句中,表达式的值 __ __时表示循环条件为真,语句体将被执行,否则跳出该循环语句;非零9.要从键盘读入一个字符串并赋值给变量x,且给出提示“ Who is she?”,应使用命令 _________;x=input( ‘ Who is she? ’ , ’ s’ )_.设和B= 和 C= 均为 m*n 矩阵,且存在于 WorkSpace10A=中,要产生矩阵 D= ,可用命令 ________ _,计算可用命令 ________;D=(A-C)/B.^Cdet(inv(A ’ *B) 11.在 MATLAB 命令窗口中的“>>”标志为 MATLAB 的_______ 提示符,“│”标志为 _______提示符。
MATLAB考试题目及解答
1.圆盘上有如图所示的二十个数,请找出哪4个相邻数之和最大,并指出它们的位置和数值。
(10分)2011841361015217319716811149125解答:%1.圆盘上有如图所示的二十个数,请找出哪4个相邻数之和最大,并指出它们的位置和数值。
(10分)A=[1 18 4 13 6 10 15 2 17 3 19 7 16 8 11 14 9 12 5 20];% 程序位置规定:从1开始顺时针方向计数;NumA=size(A); Num=NumA(1,2); sum(1)=A(1); for i=1:(Num-3)sum(i)=A(i)+A(i+1)+A(i+2)+A(i+3); endmaxresult=max(sum(:));%找出4个相邻数之和最大值 maxresult %4个相邻数之和最大值 Position=i %四个数起始位置 FourNumber=A(1,i:(i+3)) %四个数的值及顺序 运行结果:maxresult =50Position =17FourNumber =9 12 5 202.甲、乙、丙三人上街买糖果。
三人都买好后,甲对乙、丙说,我可以按你们现有的糖果数再送你们每人一份。
甲送给乙、丙后,乙也按甲、丙现有的糖果数,送给甲、丙每人各一份糖果。
丙也如此送了甲、乙各一份。
互相赠送后,每人恰好各有64颗糖果。
问甲、乙、丙原来各买了多少糖果?(10分)解答:%由代数关系构造矩阵 a=[1 -1 -1;0 2 0;0 0 2]; b=a([2 1 3],:); b=b(:,[2 1 3]); c=a([2 3 1],:); c=c(:,[2 3 1]); d=64*ones(3,1); result=a\(b\(c\d))运行结果:result=104 56 323.求n S a aa aaa aaa a =++++ 的值。
a 的值为1~9之间的一个整数,n S 中每一项aaa a 共有n 位。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
红酒显著性检验结果
T检 验 值
6
T(0.05)值
T(0.01)值
4
2
T检 验 值
0
0
5
10
15
20
25
30
样品号
白酒显著性检验结果
T检 验 值 T(0.05)值
3
T(0.01)值
2
1
T检 验 值
0
0
5
10
15
20
25
30
样品号
图 1 每个样品的 T 检验值与参考值的比较
运行程序,得到每个样品的 T 检验结果(如图 1 所示)和平均 T 检验值:
t 检验分为单总体检验和双总体检验。单总体 t 检验时检验一个样本平均数与一个已知 的总体平均数的差异是否显著;双总体 t 检验是检验两个样本平均数与其各自所代表的 总体的差异是否显著。对于该问题,由于有两个样本,因此可以采用双总体 t 检验。
2.2 模型的建立和求解
2.2.1 差异显著性评判
由于 t 检验是比较成熟的方法,所以这里将不再对 t 检验的理论进行探讨,而是 直接应用该方法。
i=N
∑ T ∗ = Ti i=1
其中,T ∗ 为平均 T 检验值,i 为样品号, N 为样品总数,Ti 为两组品酒师对样品 i 的
T 检验值。 由于红酒和白酒品质差异比较大,所以我们将分别对红酒和白酒的评价结果进行显著性
分析,及对于红酒来说,N=27,对白酒来说,N=8。 至此就可以用 MATLAB 编写程序来求解该问题了,具体程序如下:
本讲针对的题型是数据型的建模问题, 2012 年的 A 题就是一道典型这类问题,接下 来将介绍这道题的 MATLAB 求解过程。
1 问题的提出
确定葡萄酒质量时一般是通过聘请一批有资质的评酒员进行品评。每个评酒员在对葡萄 酒进行品尝后对其分类指标打分,然后求和得到其总分,从而确定葡萄酒的质量。酿酒葡萄 的好坏与所酿葡萄酒的质量有直接的关系,葡萄酒和酿酒葡萄检测的理化指标会在一定程度 上反映葡萄酒和葡萄的质量。附件 1 给出了某一年份一些葡萄酒的评价结果,附件 2 和附 件 3 分别给出了该年份这些葡萄酒的和酿酒葡萄的成分数据。请尝试建立数学模型讨论下 列问题:
i=N
∑ V = (Si − u0 )2 i=1
其中,V 为样本对总体样本的方差,Si 为第 i 品酒师的给酒样的总分,u0 为总体样本
均值。 由于在计算 T 检验的过程中,已得到该表达式中的所有参数的值,所以可以很快得到每
组品酒师对每个样品的方差了。在上面程序的基础上,稍作修改,就可以编写出计算该方差 的程序如下:
第 10 讲 MATLAB CUMCM 真题求解实例一:数据型
作者:卓金武, MathWorks 中国
要想在建模比赛中取得好成绩, 光学不练是不行的, 真题的实训有助于积累实战经验, 对建模、编程、写论文技能的大幅提升非常有帮助。 从本讲开始, 将以历年国赛真题为实 例,介绍 MATLAB 在实际比赛中的具体应用过程。
%% 2012A_question1_T evaluation %------------------------------------------------------------------------%% 数据准备 % 清空环境变量 clear all clc
%导入数据 X1=xlsread('2012A_T1_processed.xls', 'T1_red_grape', 'D3:M272'); X2=xlsread('2012A_T1_processed.xls', 'T2_red_grape', 'D3:M272');
值与其比较,作出统计推断,推断依据如下所示。 表 1 T 检验推断依据表
T
P值
差异显著程度
T ≥ T(df)0.01
P ≤ 0.01
差异非常显著
T ≥ T(df)0.05
P ≤ 0.05
差异显著
T < T(df)0.05
P > 0.05
差异不显著
方法确定后,我们再来确定研究对象,即对哪个主体利用该方法,因为这个问题里面, 对于每个样品既有单项评分,又有总分,而从品酒员角度,每个品酒员又有评分。为此,我 们针对问题的目标,即评判两组评酒员的评价结果有无显著性差异,来确定最合适的研究对 象。
for j=1:n2 SX3(i,j)=sum(X3(10*i-9:10*i,j)); SX4(i,j)=sum(X4(10*i-9:10*i,j)); end end % 计算每组样品得分的均值 for i=1:K2 Mean3(i)=mean(SX3(i,:)); Mean4(i)=mean(SX4(i,:)); end % 计算检验值 for i=1:K2 S2(1,i)=(sum((SX3(i,:)-Mean3(i)).^2)+sum((SX4(i,:)Mean4(i)).^2))/(n2*(n2-1)); T2(1,i)=(Mean3(i)-Mean4(i))/(sqrt(S2(1,i))); end AT_W=abs(T2); M_AT_W=mean(AT_W); %% 结果显示与比较 a=2.102; % T(0.05,2,18)=2.101 b=2.878; % T(0.01,2,18)=2.878 set(gca,'linewidth',2) % 红酒结果 for i=1:K1 Ta1(i)=a; Tb1(i)=b; end t1=1:K1; subplot(2,1,1);
(1) 两组品酒师对红酒和白酒的评价结果差异都不显著; (2) 对白酒评价结果的差异小于对红酒的差异。
2.2.2 评价结果稳定性
基于上面的分析,我们可知,两组品酒师对酒样的评判结果差异不显著,即可以认为来 自于同个样本的数据。这样我们就可以用每组品酒师的得分对总体样本的方差来表示各组品 酒师评价结果的稳定性了,即:
% 白酒结果 for i=1:K2
Ta2(i)=a; Tb2(i)=b; end t2=1:K2; subplot(2,1,2); plot(t2,AT_W,'*k-',t2,Ta2,'r-',t2,Tb2,'-.b', 'LineWidth', 2) title('白酒显著性检验结果','fontsize',14) legend('T 检验值', 'T(0.05)值', 'T(0.01)值') xlabel('样品号'), ylabel('T 检验值') % 显示平均检验结果 disp(['两组品酒师对红酒的平均显著性 T 检验值:' num2str(M_AT_R)]); disp(['两组品酒师对白酒的平均显著性 T 检验值:' num2str(M_AT_W)]); %% end
Mean2(i)=mean(SX2(i,:)); end % 计算检验值 for i=1:K1
S1(1,i)=(sum((SX1(i,:)-Mean1(i)).^2)+sum((SX2(i,:)Mean2(i)).^2))/(n1*(n1-1));
T1(1,i)=(Mean1(i)-Mean2(i))/(sqrt(S1(1,i))); end AT_R=abs(T1); M_AT_R=mean(AT_R); %% 白葡萄酒 T 检验计算过程 [m2,n2]=size(X3); K2=28; % 计算每个样品的总得分 for i=1:K2
%% 红葡萄酒 T 检验计算过程 [m1,n1]=size(X1); K1=27; % 计算每个样品的总得分 for i=1:K1
for j=1:n1 SX1(i,j)=sum(X1(10*i-9:10*i,j)); SX2(i,j)=sum(X2(10*i-9:10*i,j)); end end % 计算每组样品得分的均值 for i=1:K1 Mean1(i)=mean(SX1(i,:));
(n1 − 1) + (n2 − 1)
n1
n 2
当 n1 = n2 = n 时,
Hale Waihona Puke ∑ ∑ S x1−x2 =(x1 − x1 )2 + (x2 − x2 )2 n(n − 1)
S x1−x2 为均数差异标准误, n1 、 n2 , x1 、 x2 分别为两样本含量、平均数。
(3)根据 df=(n1-1)+(n2-1),查临界 t 值: t0.05 、 t0.01 ,将计算所得 t 值的绝对
2 问题 1 模型的建立和求解
2.1 问题 1 的分析
问题 1 要求我们首先首先要确定两组评酒员的评价结果有无显著性差异,再评判哪组 结果更可信。既然是显著性差异,我们很容易就想到可以用统计学中的显著性检验方法来确 定该问题。
显著性检验(test of significance)又叫假设检验,是统计学中一个很重要的内容。显著 性检验的方法很多,常用的有 t 检验、F 检验和χ2 检验等。尽管这些检验方法的用途及使用 条件不同,但其检验的基本原理是相同的。根据本问题的场景,结合以上三个检验方法的特 点,该问题比较适合用 t 检验方法。
在该问题中,每个样品的品质可以认为是固定的,所以对每个样品,不同组品酒员的总 分应用 T 检验最合适,也最能反应两组品酒员的评价结果。
为此,在利用 T 检验之前,需要对原始数据进行一些预处理,主要处理内容包括: (1) 数据质量检查与清洗,即查看数据是否有缺失,如果有缺失,则需要进行填充。通 过检查数据质量发现,的确存在数据缺失现象,为此对于缺失的值,用同组的平均值来进行 填充。 (2) 对各个 sheet 中的数据按照样品编号进行重新排列,以便利用程序进行比较。 经过这样的处理,就可以用程序来计算这些样品的 T 检验值了, 这样就可以用每组检 验值的平均值来表示每组品酒师对红酒和白酒的显著性差异,即: