中南大学matlab题目

合集下载

大学matlab考试题及答案

大学matlab考试题及答案

大学matlab考试题及答案大学MATLAB考试题及答案一、选择题1. MATLAB的全称是什么?A. Matrix LaboratoryB. Microprocessor Application Tool SetC. Microsoft Advanced Tool SetD. Microprocessor Application Test System答案:A2. 在MATLAB中,以下哪个命令用于绘制三维图形?A. plotB. scatterC. surfD. bar答案:C3. MATLAB中用于求解线性方程组的函数是?A. solveB. linsolveC. linprogD. fsolve答案:A二、简答题1. 简述MATLAB的基本数据类型有哪些,并给出至少两个每种类型的示例。

答案:MATLAB的基本数据类型包括数值数组、字符数组和单元数组。

数值数组可以是向量、矩阵或多维数组。

例如,向量 `v = [1 2 3]`,矩阵 `M = [1 2; 3 4]`。

字符数组是由单引号或双引号括起来的字符序列,如 `C = 'Hello'`。

单元数组可以包含不同类型的数据,如`{1, 'text', [1; 2; 3]}`。

2. 描述如何在MATLAB中实现矩阵的转置和翻转。

答案:矩阵的转置可以通过 `'T'` 来实现,例如 `A'` 表示矩阵A 的转置。

矩阵的翻转可以通过 `flip` 函数实现,例如 `flip(A)` 可以翻转矩阵A的所有行和列,`flipud(A)` 仅翻转矩阵A的行,而`fliplr(A)` 仅翻转矩阵A的列。

三、编程题1. 编写一个MATLAB函数,该函数接受一个向量作为输入,并返回向量中所有元素的和以及平均值。

```matlabfunction [sumVal, avgVal] = calculateSumAndAverage(V)sumVal = sum(V);avgVal = mean(V);end```2. 设计一个MATLAB脚本来解决以下问题:给定一个3x3的矩阵,找出其中最大的元素,并显示其位置。

中南大学材料院matlab操作题集答案

中南大学材料院matlab操作题集答案

的491操作题集操作题1 《Matlab与科学计算》P28 例2.1要求计算水在温度为0℃,20℃,40℃,60℃,80℃时的黏度,已知水的黏度随/(1+at+bt2)温度的变化公式为μ=μ为0℃水的黏度,值为1.758*10-3。

其中μ要求分别以长短格式显示计算结果。

操作题2 《Matlab与科学计算》P31 例2.2数值数组【1:5】和字符串转换示例。

操作题3《Matlab与科学计算》P44 例2.9比较用左除和右除法分别求解恰定方程的解。

操作题4 《Matlab与科学计算》 P48 例2.14计算矩阵magic(3)的指数,并比较不同函数的结果。

指数运算expm(a)操作题5 《Matlab与科学计算》 P50 例2.18计算下面矩阵[-149 -50 -154;537 180 546;-27 -9 -25]的特征值条件数。

特征值函数condeig(A)操作题6《Matlab与科学计算》P62 例2.29对矩阵a = 1 1 1 11 2 3 41 3 6 101 4 10 20 进行三角抽取使之分别变成0 0 0 0 1 1 1 01 0 0 0 及 123 41 3 0 0 1 3 6 101 4 10 0 1 4 10 20操作题7《Matlab与科学计算》P62 例2.30用3种方法建立向量v 为[1 2 6 20]多项式的伴随矩阵。

操作题8《Matlab与科学计算》P64 例2.31已知a=[2 1 -3 -1;3 1 0 7;-1 2 4 -2;1 0 -1 5];求该矩阵的3次方及数组的3次方。

操作题9《Matlab与科学计算》P66 例2.32 数组逻辑运算演示。

已知a=[1:3;4:6;7:9],b=[0 1 0;1 0 1;0 0 1], x=5, y=ones (3)*5,求x<=a,ab=a&b,~b操作题10《Matlab与科学计算》P71 例2.41对多项式p =[2 -5 6 -1 9]求根,计算其在x=3的值,进行微分计算并写出其表达式。

大学mooc科学计算与MATLAB语言(中南大学)期末考试答案

大学mooc科学计算与MATLAB语言(中南大学)期末考试答案
©解忧书店,严禁转载,违者必究!
5 / 12
D 正确答案: 你没选择任何选项
青春须早为,岂能长少年。
18
单选 (2 分)
对于线性方程组 Ax=b,设 A=LU 是 A 的一个 LU 分解,则线性方程组的解为()。 A.x=U\(L\b) B.x=U\L\b C.x=(U\L)\b D.x=U/L/b
A 正确答案: 你没选择任何选项
19
单选 (2 分)
函数 factor(sym(20))的值是()。 A.[1, 20] B.[1, 4, 5] C.[4, 5] D.[2, 2, 5]
D 正确答案: 你没选择任何选项
20
单选 (2 分)
下列语句执行后,I 的值是()。 I=int(sym('x'),1,2);
正确答案:A、B、D 你没选择任何选项
©解忧书店,严禁转载,违者必究!
8 / 12
青春须早为,岂能长少年。
29
多选 (3 分)
在 0≤x≤2π 区间内,绘制红色正弦曲线,可以使用命令()。 A.x=linspace(0,2*pi,100); y=sin(x); line(x,y,'Color','r'); B.x=linspace(0,2*pi,100); y=sin(x); line(x,y,'r'); C.x=linspace(0,2*pi,100); y=sin(x); plot(x,y,'Color','r'); D.x=linspace(0,2*pi,100); y=sin(x); plot(x,y,'r');
A.6 6 B.2 1 C.2 2 D.1 2

matlab试题及答案

matlab试题及答案

matlab试题及答案# MATLAB试题及答案一、选择题1. MATLAB的基本数据单位是:A. 矩阵B. 向量C. 标量D. 数组答案:A2. 下列哪个命令可以用来绘制函数图形?A. `plot`B. `graph`C. `draw`D. `chart`答案:A3. MATLAB中,以下哪个是正确的矩阵转置操作?A. `transpose(A)`B. `A'`C. `A^T`D. `flip(A)`答案:B二、简答题1. 简述MATLAB中矩阵的基本操作。

答案:在MATLAB中,矩阵是最基本的数据结构,可以进行加、减、乘、除等基本运算。

矩阵的创建可以使用方括号`[]`,例如`A = [1 2;3 4]`。

矩阵的转置使用单引号`'`,例如`A'`。

矩阵的求逆使用`inv`函数,例如`inv(A)`。

2. MATLAB中如何实现循环结构?答案:MATLAB中实现循环结构主要有两种方式:`for`循环和`while`循环。

`for`循环用于已知迭代次数的情况,例如:```matlabfor i = 1:5disp(i);end````while`循环用于迭代次数未知的情况,例如:```matlabi = 1;while i <= 5disp(i);i = i + 1;end```三、计算题1. 给定矩阵A和B,请计算它们的乘积C,并求C的行列式。

A = [1 2; 3 4]B = [5 6; 7 8]答案:首先计算矩阵乘积C:```matlabC = A * B;```然后计算C的行列式:```matlabdetC = det(C);```结果为:```matlabC = [19 22; 43 50]detC = -16```2. 编写一个MATLAB函数,计算并返回一个向量的范数。

答案:```matlabfunction norm_value = vector_norm(v)norm_value = norm(v);end```四、编程题1. 编写一个MATLAB脚本,实现以下功能:- 随机生成一个3x3的矩阵。

中南大学matlab课后习题(10)

中南大学matlab课后习题(10)

中南大学matlab课后习题(10)Unit 1实验内容1.答:用help命令可以查询到自己的工作目录。

输入help命令:help <函数名>2.答:MATLAB的主要优点:通过例1-1至例1-4的验证,MATLAB的优点是MATLAB以矩阵作为数据操作的基本单位,使得矩阵运算变得非常简捷,方便,高效。

还提供了丰富的数值计算函数。

MATLAB绘图十分方便,只需输入绘图命令,MATLAB便可自动绘出图形。

3.答:INV(X) is the inverse of the square matrix X。

A warning message is printed if X is badly scaled or nearly singular. PLOT(X,Y) plots vector Y versus vector X. If X or Y is a matrix, then the vector is plotted versus the rows or columns of the matrix, whichever line up. If X is a scalar and Y is a vector, length(Y) disconnected points are plotted. PLOT(Y) plots the columns of Y versus their index. If Y is complex, PLOT(Y) is equivalent to PLOT(real(Y),imag(Y)).In all other uses of PLOT, the imaginary part is ignored. For vectors, MAX(X) is the largest element in X. For matrices,MAX(X) is a row vector containing the maximum element from each column. For N-D arrays, MAX(X) operates along the first non-singleton dimension. [Y,I] = MAX(X) returns the indices of the maximum values in vector I. If the values along the first non-singleton dimension contain more than one maximal element, the index of the first one is returned. ROUND(X) rounds the elements of X to the nearest integers. MAX(X,Y) returns an array the same size as X and Y with the largest elements taken from X or Y. Either one can be a scalar。

中南大学matlab课后答案-第十一章

中南大学matlab课后答案-第十一章

第十一章实验指导1,(1)(2)2,M文件的函数为:function x=f(t)x=(8*1/(pi^2))*(cos(2*pi*t)+(1/9)*cos(3*2*pi*t)+(1/25)*cos(5*2*pi*t))3,4,5,5,限幅:function [sys,x0,str,ts]=xianSfun(t,x,u,flag,max,min) switch flag,case 0sizes= simsizes;sizes.NumContStates = 0;sizes.NumDiscStates = 0;sizes.NumOutputs = 1;sizes.NumInputs = 1;sizes.DirFeedthrough = 1;sizes.NumSampleTimes = 1;sys= simsizes(sizes);str =[];x0 =[];ts =[-1 0];case 3if u>maxsys=max;elseif u<minsys=min;elsesys=u;endcase{1,2,4,9}sys=[];otherwiseerror(['Unhandled flag=',num2str(flag)]); end绝对值:function [sys,x0,str,ts]=abs(t,x,u,flag)switch flagcase 0sizes= simsizes;sizes.NumContStates = 0;sizes.NumDiscStates = 0;sizes.NumOutputs = 1;sizes.NumInputs = 1;sizes.DirFeedthrough = 1;sizes.NumSampleTimes = 1;sys= simsizes(sizes);str = [];x0 =[];ts =[0 0];case 3if u>0sys=u;else u<0sys=-u;endcase {1,2,4,9}sys=[];otherwiseerror(['Unhandled flag=',num2str(flag)]);end思考练习:1,两个主要功能Simu仿真和Link连接即该软件;天价模块——模块编辑——模块的连接——模块的参数和属性设置——设置仿真参数——启动系统仿真与仿真结果分析2,适用sinks模块库中的Scope模型或其他显示模块来观察有关信号的变化曲线,也可以将结果存放在MATLAB中的工作空间,工艺后处理和使用。

中南大学matlab题目

中南大学matlab题目

1求函数在指定点的导数值()232123,1,2,3 026x x xf x x x xx==>> syms x>> a=[x x^2 x^3;1 2*x 3*x^2;0 2 6*x]; >> f=det(a);>> diff(f,1)ans =6*x^2>> diff(f,2)ans =12*x>> diff(f,3)ans =122 符号法求下列函数的导数或积分1)y=x10+10x+logx10,求y’f=('x^10+10^x+log(10)/log(x)')f =x^10+10^x+log(10)/log(x)>> diff(f)ans =10*x^9+10^x*log(10)-log(10)/log(x)^2/x2)y=ln(1+x), 求y’’∣x=1f=('log(1+x)/log(e)')f =log(1+x)/log(e)>> diff(f,1,2)ans =-1/(1+x)^2/log(e)3) y=e x/cosx,求y’f=('exp(x)/cos(x)')f =exp(x)/cos(x)>> diff(f)ans =exp(x)/cos(x)+exp(x)/cos(x)^2*sin(x)4)functionf=fun0(t)f=t*sin(t)int('fun0','0','pi')ans =1/2*pi^25) 已知函数z=sin(xy), 计算syms x y>>z=('sin(x*y)')z =sin(x*y)>> diff(diff(z,y,2),x)ans =-cos(x*y)*y*x^2-2*sin(x*y)*x3 用数值方法求定积分1)functionf=fun(x)f=x.^2.*sqrt(2.*x.^2+3)quad('fun',1,5)ans =232.80572)function f=fun(x)f=x./sin(x).^2quad('fun',pi/4,pi/3)ans =0.38354 已知数据[x,y]如下表,试求2次拟合多项式f(x),然后求x=0.05,0.25,0.45,0.65,0.85,1.05各点的函数近似值,并绘出拟合曲线及求得的函数点。

大学专业试题-Matlab期末考试及答案(2021版)

大学专业试题-Matlab期末考试及答案(2021版)

大学专业试题-Matlab期末考试及答案一、选择题(每小题2分,共22分)1. 在matlab中____C____用于括住字符串。

A.,B.;C.‘’D.“”2. 在matlab的命令窗口中执行__A_______命令,可将命令窗口中所有变量清空。

A. clearB. clcC. echo offD. cd3.下列___D____是合法变量。

A. 1_1B. a/bC.变量1D. eps4产生所有元素均为1的2行3列矩阵的命令是_A______。

A. ones(2,3)B.ones(3,2)C.eye(2,3)D.eye(3,2)5.已知a=0:4,b=1:5,下面的运算表达式出错的是_D_______。

A. a+bB. a./bC. a.*bD. a*b6. subplot(2,1,2)是指__B_______的子图。

A.两行一列的上图B.两行一列的下图C.两列一行的左图D.两列一行的右图7.在多个句柄对象中,句柄是1的应该是_C_____对象。

A.根对象B.坐标轴C.窗口D.屏幕8.使用from:step:to方式生成向量,“-3:1:3”,其中-3,1,3分别是:(B)A、步长值,结束值,开始值B、开始值,步长值,结束值C、结束值,步长值,开始值D、开始值,结束值,步长值9.i=2; a=2i; b=2*i; c=2*sqrt(-1); 程序执行后a, b, c的值分别是多少?(C )A.a=4, b=4, c=2.0000iB.a=4, b=2.0000i, c=2.0000iC.a=2.0000i, b=4, c=2.0000iD.a=2.0000i, b=2.0000i, c=2.0000i10. 下列关于脚本文件和函数文件的描述中不正确的是(B )A. 去掉函数文件第一行的定义行可转变成脚本文件;B. 函数文件可以在命令窗口直接运行;C. 脚本文件可以调用函数文件;D. 函数文件中的第一行必须以function开始;11.下列对条件语句、分支语句、固定循环次数语句、不定循环次数语句关键字排序正确的是( B)A. if else end; for end; switch case end; while end;B. if else end; switch case end; for end; while end;C. for end; if else end; while end; switch case end;D. while end; for end; switch case end; if else end;二、填空题(20分,1空2分)1. 求可逆矩阵A的逆矩阵的指令是__inv(A) __.2. A=[0 2 3 0],B=[4 5 0 0],则X=A&B的显示结果为__ 0 1 0 0___.3. Matlab中用来表示不确定值的变量是_NaN_。

大学专业试题-Matlab期末考试及答案

大学专业试题-Matlab期末考试及答案

大学专业试题-Matlab期末考试及答案一、填空题(一题3分,共15分)1、标点符号可以使命令行不显示运算结果。

答案:%2、x为0〜4,步长为0.1pi的向量,使用命令创建。

答案:x=0:0.1*pi:4。

3、输入矩阵A=[1 2 3;7 -5 8;9-1-7],使用全下标方式用A(2,2)取出元素“-5 ”,使用单下标方式用取出元素“-5 ”。

答案:A (5)。

4、在while表达式,语句体,End循环语句中,表达式的值__时表示循环条件为真,体语句将被执行,否则跳出该循环语句。

答案:非零。

5、要从键盘读入一个字符串并赋值给变量x,且给出提示“Hello",应使用命令—答案:x=input(‘Hello,;s')b二、选择题(一题3分,共15分)1、下列表示可以作为MATLAB的变量的是(D )A. abcd-2B. xyz_2#C. @hD. X_1_a2、如果x=1: 2 : 8,则U x(1)和x(4)分别是(B )A. 1, 8B. 1,7C. 2,8D. 2,73、指出下列错误的指令(B)。

A.symsa b;B. symsa, b;C.syms('a',’b');D. syms('a','b','positive');4、下列哪条指令是求矩阵的行列式的值(C)。

A .inv B. diag C. det D.eig5、清空Matlab工作空间内所有变量的指令是(C)。

A. clcB.clsC.clearD. clf三、程序分析题(一题10分,共20分)1、分析下面程序运行后s1,n1,s2,n2,m的值。

s1=0;s2=0;n1=0;n2=0;x=[1,-4,-8,3,10,-9,7,-3,10, 8,-5,-2,2,0 ]; m=length(x); fori=1:mif x(i)<0s1=s1+x(i); n1=n1+1; elses2=s2+x(i); n2=n2+1;end ends1,n1,s2,n2,m请回答s1,n1,s2,n2,m的结果。

中南大学matlab课后习题(7)

中南大学matlab课后习题(7)

第一章思考练习1.与一般的Windows程序一样,启动MATLAB系统有3种常见方法:(1)使用Windows“开始”菜单。

(2)运行MATLAB系统启动程序matlab.exe。

(3) 利用快捷方式。

要退出MATLAB系统,也有3种常见方法:(2) 在MATLAB命令窗口输入Exit或Quit命令。

(3) 单击MATLAB主窗口的“关闭”按钮。

2.matlab用于算法开发、数据可视化、数据分析以及数值计算的高级技术计算语言和交互式环境,主要包括MATLAB和Simulink两大部分。

它将数值分析、矩阵计算、科学数据可视化以及非线性动态系统的建模和仿真等诸多强大功能集成在一个易于使用的视窗环境中,为科学研究、工程设计以及必须进行有效数值计算的众多科学领域提供了一种全面的解决方案3.可以在第一个物理行之后加上三个小黑点并按回车键,然后再下一个物理行输入其他部分。

4.help命令会显示当前帮助系统中的所有项目,即搜索路径中所有的目录名称,只显示那些与关键字中完全匹配的结果。

Lookfor命令对搜索范围内的M文件经行搜索,条件比较宽泛。

第二章(1) w=sqrt(2)*(1+0.34245*10^(-6)(2)a=3.5b=5c=9.8x=(2*pi*a+(b+c)/(pi+a*b*c)-exp(2))/(tan(b+c)+a)(3)a=3.32b=7.9y=2*pi*a^2*((1-pi/4)*b-(0.8333-pi/4)*a)(4) t=[2,1-3i;5,-0.65]Z=0.5*exp(2*t)*log(t+sqrt(1+t.*t))2. A=[-1,5,-4;0,7,8;3,61,7];B=[8,3,-1;2,5,3;-3,2,0];(1)A+6*B A^2-B+eye(2)A*B A.*B B.*A(3)A/B B\A(4)[A,B] [A([1,3],:);B^2]3.(1)A=[23,10,-0.778,0;41,-45,65,5;32,5,0,32;6,-9.54,54,3.14]; K=find(A>10&A<25);A(K)(2)A=[23,10,-0.778,0;41,-45,65,5;32,5,0,32;6,-9.54,54,3.14]; B=A(1:3,:) C=A(:,1:2) D=A(2:4,3:4) E=B*C(3)E<D E&D E|D ~E|~D5. A=[-29,6,18;20,5,12;-8,8,5];[V,D]=eig(A)A*V=V*D第三章1.f=input('输入一个数:','s');f(end :-1:1)2.(1)if语句score=input('请输入成绩:');if score>=90&&score<=100disp('A');elseif score>=80&&score<=89disp('B');elseif score>=70&&score<=79disp('C');elseif score>=60&&score<=69;disp('D');elseif score<60&&score>=0;disp('E');elsedisp('出错');End(2)用switch语句score=input('请输入成绩:');switch fix(score/10)case {9,10}disp('A');case {8}disp('B');case {7}disp('C');case {6}disp('D');case {0,1,2,3,4,5}disp('E');otherwisedisp('出错');End3.b=max(a)c=min(a)b=0c=0for i=1:20if a(i)>bb=a(i);endif a(i)<cc=a(i);End4.a=[-3:0.1:3];b=((exp(0.3.*a)-exp(-0.3.*a))./2)c=sin(a+0.3)for i=1:61y=(exp(0.3*a(i))-exp(-0.3*a(i)))/2*sin(a(i)+0.3)+log((0.3+a(i))/2) End5.(1)A=0;n=100for i=1:nA=1/n/n+A;End(2)A=1;n=10000;for i=1:nA=(2*n*n*2)/((2*n-1)*(2*n+1))*A;end6. A=rand(5,6)n=input('ÇëÊäÈëÒ»¸ön');if n>5n=5A(n,n)elseA(n)7.f1.m 代码:function m=f1(n)m=n+10*log(n^2+5);f2.m 代码:function m=f2(n)m=0;for i=1:nm=m+i*(i+1);end在命令文件p3_11.m 中调用f1.m 和f2.mp3_11.m 代码如下:y1=f1(40)/(f1(30)+f1(20));y2=f2(40)/(f2(30)+f2(20));y1y28.∑=1001k k 函数文件factor1.m 代码如下:function f=factor1(k)if k==1f=1;elsef=factor1(k-1)+k;end∑=5012^k k 函数文件factor2.m 代码:function f=factor2(k)if k==1f=1;elsef=factor2(k-1)+^2;end∑=101/1k k 函数文件factor3.m 代码:function f=factor3(k)if k==1f=1;elsef=factor3(k-1)+1/k;end思考练习2.N=[1,2,3,4,5]A=N.*2B=N./4C=1./ND=1./(N./2)./(N./2)/43.B=0for i=1:20A(i)=fix((99-10+1)*rand(1)+10);B=A(i)+B;endB=B/20for i=1:20if A(i)<B&rem(A(i),2)==0A(i)end第四章.1.(1).x=-12:0.001:12;y=x-x.^3/6;plot(x,y);xlabel('x 轴');ylabel('y 轴');title('Y=X-X^3/3!');(2)t=0:0.01:2*pi;x=8.*cos(t);y=4*sqrt(2).*sin(t);plot(x,y)2.t=-pi:pi/10:pi;y=1./(1+exp(-t));subplot(2,2,1);bar(t,y,'b');title('bar(t,y,''b'')');axis([-5,5,-3,3]); subplot(2,2,2);stairs(t,y,'k');title('stairs (t,y,''k'')');axis([-5,5,-3,3]); subplot(2,2,3);stem(t,y,'m');title('stem (t,y,''m'')');axis([-5,5,-3,3]); subplot(2,2,4);loglog(t,y,'g');title('loglog(t,y,''g'')');axis([-5,5,-3,3]);3.(1) t=0:pi/100:2*pi;y=5*cos(t)+4;polar(t,y,'-*')(2)t=-pi/3:pi/100:pi/3;r=5*sin(t).^2./cos(t);polar(t,r,'-*')4.(1)t=0:pi/100:2*pi;x=exp(-t/20).*cos(t);y=exp(-t/20).*sin(t);z=t;plot3(x,y,z)(2) [x,y]=meshgrid(-5:5);z=ones(11);surf(x,y,z);shading interp;5.[x,y,z]=sphere(50);m=moviein(100);for i=1:100surf(i*x,i*y,i*z);shading interpcolormap(hot);axis equalaxis([-100,100,-100,100,-100,100]) axis offm(:,i)=getframe;End思考练习2.(1)x=1:0.1:10a=exp((x.^2)/2)y=a.*1/2/piplot(x,y)(2)t=-pi:0.1:2*piX=t.*sin(t)Y=t.*cos(t)plot(X,Y)3.t=0:0.00005:pi;x=sin(3*t).*cos(t);y1=2*x-0.5;y2=sin(3*t).*sin(t);plot(x,y2,x,y1);hold onk=find(abs(y2-y1)<1e-4);x1=x(k);y3=2*x1-0.5;plot(x1,y3,'rp')4.x=-pi*6:0.1:pi*6y=sin(1./x)plot(x,y)fplot('sin(1./x)',[-pi*6,pi*6],1e-4)5.(1)x=1:0.1:10y=12./xpolar(x,y)(2)x=-pi/6:0.1:pi/6y=3*sin(x).*cos(x)./(sin(x).^3+cos(x).^3) polar(x,y)6.(1)[u,v]=meshgrid(-pi:pi/100:pi);x=3*u.*sin(v);y=2*u.*cos(v);z=4*u.*u;mesh(x,y,z);(2)[x,y]=meshgrid(-3:6/100:3);z=-5./(1+x.*x+y.*y);mesh(x,y,z)第五章1.A=randn(10,5)(1) X=mean(A)Y=std(A,0,1)(2) max(max(A))min(min(A))(3) B=sum(A,2)sum(B)(4) sort(A);sort(A,2,'descend')2.(1)t=0:15:90;x1=[0,0.2588,0.5000,0.7071,0.8660,0.9659,1.0000];a1=0:1:90;y1=interp1(t,x1,a1,'spline')x2=[0,0.2679,0.5774,1.0000,1.7320,3.7320,NaN]; a2=0:1:75;y2= interp1(t,x2,a2,'spline')p1=polyfit(t,x1,5);Z1=polyval(p1,a1)p2=polyfit(t,x2,5);z2=polyval(p2,a2)(2)X=[1 4 9 16 25 36 49 64 81 100];Y=1:10;X1=1:100;Y1=interp1(X,Y,X1,'cubic')3.4.P=[2,-3,5,13];Q=[1,5,8];p=polyder(P)p1=polyder(P,Q)[p,q]= polyder(P,Q)5.P1=[1,2,4,0,5];P2=[1,0];P3=[1,2,3];1) P4=conv(P2,P3)P4=[0,1,2,3,0];P=P1+P42) x=roots(P)3) A=[-1,1.2,-1.4;0.75,2,3.5;0,5,2.5];Y=polyval(P,A)4)Z=polyvalm(P,A)第六章1.(1)>> 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]';x=A\B (2)>> 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.53]';x=A\B (3)>> cond(A)2.(1)建立函数文件funx.m,命令如下;Function fx=funx(x)fx=x^41+x^3+1;调用fzero函数求根,命令如下;>> z=fzero(@funx,-1)(2) 建立函数文件sin.m,命令如下;Function fx=sin(x)fx=x-(sin(x))/x;调用fzero函数求根,命令如下;>> z=fzero(@sin,0.5)(3) 建立函数文件myfun.m,命令如下;function q=myfun(p)x=p(1);y=p(2);z=p(3);q(1)=sin(x)+y^2+log(z)-7;q(2)=3*x+2^y-z^3+1;q(3)=x+y+z-5;调用fsolve函数求根,命令如下;>> options=optimset('Display','off');x=fsolve(@myfun,[1,1,1]',options)3.(1) 建立函数文件funt.m,命令如下;function yp=funt(t,y)yp=-y*(1.2+sin(10*t));求微分方程,程序如下:>> t0=0;tf=5;y0=1;[t,y]=ode23(@funt,[t0,tf],y0)(2) 建立函数文件funr.m,命令如下;function yp=funr(t,y)yp=cos(t)-(y)/(1+t^2);求微分方程,程序如下:>> t0=0;tf=5;y0=1;[t,y]=ode23(@funr,[t0,tf],y0)4.建立函数文件mymax.m命令如下:function fx=mymax(x)fx=-1*(1+x^2)/(1+x^4);求最大值,程序如下:>> [x,y]=fminbnd(@mymax,0,2)5.编写目标函数M文件fop.m,命令如下:function f=fop(x)f=-1*(x(1)^(1/2)+x(2)^(1/2)+x(3)^(1/2)+x(4)^(1/2)); 设定约束条件,并调用fmincon函数求解此约束最优化问题,程序如下:>>x0=[200,200,200,200];A=[1,0,0,0;1.21,1,0,0;1.331,1.21,1,0;1.4641,1.331,1.21,1];b=[400,440,484,532.4];Ib=[0,0,0,0];options=optimset('Display','off');[x,y]=fmincon(@fop,x0,A,b,[],[],Ib,[],[],options)思考练习1,(1)矩阵求逆:>> A=[2,3,5;3,7,4;1,-7,1];b=[10,3,5]';x=inv(A)*b矩阵除法:>> A=[2,3,5;3,7,4;1,-7,1];b=[10,3,5]';x=A\b矩阵分解:>> A=[2,3,5;3,7,4;1,-7,1];b=[10,3,5]';[L,U]=lu(A);x=U\(L\b)(2)矩阵求逆:>> A=[6,5,-2,5;9,-1,4,-1;3,4,2,-2;3,-9,0,2];b=[-4,13,1,11]';x=inv(A)*b矩阵除法:>> A=[6,5,-2,5;9,-1,4,-1;3,4,2,-2;3,-9,0,2];b=[-4,13,1,11]';x=A\b矩阵分解:>> A=[6,5,-2,5;9,-1,4,-1;3,4,2,-2;3,-9,0,2];b=[-4,13,1,11]'; [L,U]=lu(A);x=U\(L\b)2.(1)建立函数文件fun1.m,命令如下:function fx=fun1(x)fx=3*x+sin(x)-exp(x);调用fzero函数求根,命令如下;>> y=fzero(@fun1,1.5)(2) 建立函数文件fun2.m,命令如下:function fx=fun2(x)fx=1-(1/x)+5;调用fzero函数求根,命令如下;>> y=fzero(@fun2,1)(3) 建立函数文件myfun3.m,命令如下;function q=fun3(p)x=p(1);y=p(2);q(1)=x^2+y^2-9;q(2)=x+y-1;调用fsolve函数求根,命令如下;>> options=optimset('Display','off');x=fsolve(@fun3,[1,1]',options)3.(1)建立函数文件fun5.m,命令如下:function ydot=fun5(t,y)ydot(1)=(2-3*y(2)-2*t*y(1))/(1+t^2);ydot(2)=y(1);ydot=ydot';求解微分方程,命令如下:>> t0=0;tf=5;x0=[0,1];[t,y]=ode45(@fun5,[t0,tf],x0);[t,y](2) (1)建立函数文件fun5.m,命令如下:function ydot=fun6(t,y)ydot(1)=cos(t)+(5*y(1)*cos(2*t))/(t+1)^2-y(2)-y(3)/(3+sin(t)); ydot(2)=y(1);ydot(3)=y(2);ydot=ydot';求解微分方程,命令如下:>> t0=0;tf=5;x0=[0,1];[t,y]=ode45(@fun5,[t0,tf],x0);[t,y]4.建立函数文件max.m命令如下:function fx=max(x)fx=-1*(sin(x)+cos(x^2));求最大值,程序如下:>> [x,y]=fminbnd(@mymax,0,pi)5.编写目标函数M文件fop.m,命令如下:function f=topm(x)f=-1*x*(3-2*x)^2;设定约束条件,并调用fmincon函数求解此约束最优化问题,程序如下:>>x0=[0];A=[1];b=[1.5];Ib=[0];options=optimset('Display','off');[x,y]=fmincon(@top,x0,A,b, [],[],Ib,[],[],options)第七章1.function f=f1(x)f=sin(x)./x;function f=f2(x)f=[1./((x-0.3).^2+0.01)-1./((x-0.9).^2+0.04)-6];[I,n]=quad(@f1,0,2)[S,n]=quad(@f2,0,1)2.f=inline('exp(-x.^2-y.^2)','x','y');I1=dblquad(f,0,1,0,1)f=inline('abs(cos(x+y))','x','y');I2=dblquad(f,0,pi,0,pi)3. X=0.3:0.2:1.5;Y=[0.3895,0.6598,0.9147,1.1611,1.3971,1.6212,1.8325];trapz(X,Y)4. x=0:pi/5:2*pi;for n=1:3nDX=diff(sin(x),n)end5. f=inline('sin(x)./(x+cos(2.*x))');g=inline('[cos(x).*(x+cos(2.*x))-sin(x).*(1-2.*sin(2.*x))]./(x+cos(2.*x)).^2');x=0:0.01:2*pi;p=polyfit(x,f(x),5);dp=polyder(p);dpx=polyval(dp,x);dx=diff(f([x,2*pi+0.01]))/0.01;gx=g(x);plot(x,dpx,x,dx,'-',x,gx,':')思考练习1.求解定积分的数值方法有梯形法、辛普森法、高斯法等,基本思想是将整个积分区间分成n个子区间,而每个小的子区间上的定积分的值可近似求得。

中南大学材料学院MATLAB题库答案3.0版

中南大学材料学院MATLAB题库答案3.0版

P.28 ex 2.1 数值变量的运算>> format short e>> clear>> muw0=1.785e-3;>> a=0.03368;>> b=0.000221;>> t=0:20:80;>> muw=muw0./(1+a*t+b*t.^2)muw =1.7850e-003 1.0131e-003 6.6092e-004 4.6772e-004 3.4940e-004p.31 ex 2.2 数值驻足和字符串转换>> a=[1:5];>> b=num2str(a);>> aa =1 2 3 4 5>> bb =1 2 3 4 5>> b*2ans =98 64 64 100 64 64 102 64 64 104 64 64 106P.44 ex 2.9 比较用左除和右除分别求解恰定方程(线性方程组如果方程数等于未知数个数,叫做恰定方程组,如果方程多于未知数,叫做超定方程组,反之称为欠定。

换个角度说,系数矩阵如果是方阵,就是恰定方程组)的解见课本P.48 ex 2.14 计算矩阵的指数并比较不同函数的结果>> b=magic(3);>> expm(b)ans =1.0e+006 *1.0898 1.0896 1.08971.0896 1.0897 1.08971.0896 1.0897 1.0897 >> expmdemo2(b)ans =1.0e+006 *1.0898 1.0896 1.08971.0896 1.0897 1.08971.0896 1.0897 1.0897>> expm1(b)ans =1.0e+003 *2.9800 0.0017 0.40240.0191 0.1474 1.09560.0536 8.1021 0.0064>> expmdemo3(b)ans =1.0e+006 *1.0898 1.0896 1.08971.0896 1.0897 1.08971.0896 1.0897 1.0897P50 ex 2.18 计算矩阵的特征值条件数>> a=rand(3)a =0.9649 0.9572 0.14190.1576 0.4854 0.42180.9706 0.8003 0.9157>> [V,D,s]=condeig(a)V =0.4913 0.6696 0.66960.3158 -0.4476 + 0.2831i -0.4476 - 0.2831i0.8117 -0.2332 - 0.4655i -0.2332 + 0.4655iD =1.8146 0 00 0.2757 + 0.3061i 00 0 0.2757 - 0.3061is =1.17921.23661.2366P62 ex 2.29矩阵的抽取、三角抽取>> a=pascal(4)a =1 1 1 11 2 3 41 3 6 101 4 10 20>> diag(a,-2)ans =14>> v=diag(diag(a))v =1 0 0 00 2 0 00 0 6 00 0 0 20%diag简单来说就是抽取矩阵各对角线上的元素,如上是抽取主对角线以下第二条对角线之元素,其另一功能是建立对角矩阵>> tril(a)ans =1 0 0 01 2 0 01 3 6 01 4 10 20>> triu(a)ans =1 1 1 10 2 3 40 0 6 100 0 0 20%triu&tril用法与diag非常类似,用途是提取下、上三角矩阵P62 ex2.30 建立多项式之伴随矩阵这道题有点凌乱了…….求解释P64 ex 2.31 数组的幂运算>> a=[2 1 -3 -1;3 1 0 7;-1 2 4 -2;1 0 -1 5];>> a^3ans =32 -28 -101 3499 -12 -151 239-1 49 93 851 -17 -98 139>> a.^3ans =8 1 -27 -127 1 0 343-1 8 64 -81 0 -1 125P66 ex 2.32 数组之逻辑运算>> a=[1:3;4:6;7:9];>> b=[0 1 0;1 0 1;0 0 1];>> x=5;y=ones(3)*5;>> x<=aans =0 0 00 1 11 1 1%此处小于等于,对a中元素和x注意比较,大者为假为0,不大者为1>> ab=a&bab =0 1 01 0 10 0 1%此处为与运算,就是同真才为真(同为非零数)>> ~bans =1 0 10 1 01 1 0%逻辑非运算,即全都非,真变假假变真;还有逻辑或运算,看下面即懂:>> a|bans =1 1 11 1 11 1 1%总结多项式运算的函数:poly:Polynomial with specified roots特征多项式的生成p=poly(a)a 为n阶特征矩阵,所得一般为n阶特征多项式;poly2sym数值2符号;polyval 求多项式的值;roots 求多项式的根;conv 多项式的乘法(向量之卷积)conv(p,d);polyder 多项式微分;polyfit 多项式拟合。

中南大学材料学院MATLAB考试重点题目(老师在最后几节课勾的题目汇总)

中南大学材料学院MATLAB考试重点题目(老师在最后几节课勾的题目汇总)

P28num0=1.785e-3;>>a=0.03368;>>b=0.000221;>>t=0:20:80;>>a=num0./(1+a*t+b*t.^2)a=0.00180.00100.00070.00050.0003 P88[x,y]=meshgrid(-2:0.2:2,-2:0.2:2);>>z=x.*exp(-x.^2-y.^2);>>[px,py]=gradient(z,0.2,0.2);>>contour(z);>>hold on>>quiver(px,py)P101>>x=1:0.01*pi:2*pi;>>y=cos(x);>>z=sin(x);>>plot(x,y,'-.rd',x,z,'--k')P104>>x=1:10;>>y=rand(10,1); >>bar(x,y);>>x=0:0.1*pi:2*pi; >>y=x.*sin(x); >>feather(x,y)P105>>x=[2,4,6,8];>>pie(x,{'math','english','chinese','music'});P107>>[x,y]=meshgrid(-2:0.1:2,-2:0.1:2);>>z=x.*exp(-x.^2-y.^2); >>plot3(x,y,z)P109x=-8:0.5:8;y=x';a=ones(size(y))*x;b=y*ones(size(x));c=sqrt(a.^2+b.^2)+eps;z=sin(c)./c;mesh(z)P110[X,Y]=meshgrid([-4:0.5:4]);%也可以是meshgrid(-4:0.5:4,-4:0.5:4) Z=sqrt(X.^2+Y.^2);meshc(X,Y,Z)p113x=0:pi/20:pi*3;r=5+cos(x);[a,b,c]=cylinder(r,30); mesh(a,b,c)P113[a,b,c]=sphere(40);t=abs(c);surf(a,b,c,t);axis('equal')axis('square') colormap('hot')P118x=1:0.1*pi:2*pi;y=sin(x);plot(x,y);xlabel('x(0-2\pi)','FontWeight','bold') ylabel('y=sin(x)','FontWeight','bold') title('正弦函数')P123x=0:0.01*pi:2*pi;y=cos(x);z=sin(x);plot(x,y,'-*')hold onplot(x,z,'-o')plot(x,y+z,'-h')legend('sin(x)','cos(x)','sin(x)+cos(x)',0)hold off%这里的hold off主要是等下次调用时,以上的两个图形将不再保留P124x=0:0.1*pi:2*pi;subplot(2,2,1);plot(x,sin(x),'-*');title('sin(x)');subplot(2,2,2);plot(x,cos(x),'-o');title('cos(x)');subplot(2,2,3);title('sin(x).*cos(x)');plot(x,sin(x).*cos(x));%注意x是数组,故用sin(x)与其他表达式相乘的时候也要表达成sin(x).*cos(x)subplot(2,2,4);plot(x,sin(x)+cos(x),'-k');title('sin(x)+cos(x)');P222x=0:0.1:10;y=sin(x);xi=0:.25:10;yi=interp1(x,y,xi);%注意是插值法函数interp1 plot(x,y,'o',xi,yi)P227x=[0.5,1.0,1.5,2.0,2.5,3.0];y=[1.75,2.45,3.81,4.80,8.00,8.60];a=polyfit(x,y,2)x1=[0.5:0.05:3.0];y1=a(3)+a(2)*x1+a(1)*x1.^2;plot(x,y,'*')hold onplot(x1,y1,'-r')P228x=[1925313844];y=[19.032.349.073.398.8];x1=x.^2x1=[ones(5,1),x1']ab=x1\y'x0=[19:0.2:44];y0=ab(1)+ab(2)*x0.^2;clf%这里的clf是清除以前的图片plot(x,y,'o')hold onplot(x0,y0,'-r')P233function y=fun(t)y=exp(-0.5*t).*sin(t+pi/6);%注意这边有点,当数组与数组相乘时,其中一个数组应表达成有.的形式d=pi/1000;>>t=0:d:3*pi;>>nt=length(t);>>y=fun(t);>>sc=cumsum(y)*d;>>scf=sc(nt)scf=0.9016z=trapz(y)*dz=0.9008P237function f=fun(x)f=exp(-x/2);%编写函数时让系统自动形成m文件quadl('fun',1,3,1e-10)ans=0.7668P244x=sym('x');>>diff(sin(x^2))ans=2*cos(x^2)*xP274function f=f(x,y)f=[-21;998-999]*y+[2*sin(x);999*(cos(x)-sin(x))]; >>ode23('f',[010],[2,3]);刚性比>>a=[-21;998-999];>>b1=max(abs(real(eig(a))));>>b2=min(abs(real(eig(a))));>>s=b1/b2s=1000P275>>dsolve('Df=f+sin(t)','f(pi/2)=0')ans=-1/2*cos(t)-1/2*sin(t)+1/2*exp(t)/(cosh(pi)+sinh(pi))^(1/2) >>dsolve('D2y=-a^2*y','y(0)=1,Dy(pi/a)=0')ans=cos(a*t)S=dsolve('Dx=y','Dy=-x','x(0)=0','y(0)=1')S=x:[1x1sym]y:[1x1sym]>>S.xans=sin(t)>>S.yans=cos(t)几点对dsolve的解释dsolve('Dy=x+1','y(0)=0')ans=x*t+t%此时matlab软件自动将t看为默认变量,而将x看成一个常数P246a=[0.40960.12340.36780.29430.22460.38720.40150.11290.36450.19200.37810.06430.17840.40020.27860.3927];>>b=[0.40430.15500.4240-0.2557];>>a\bans=-0.1819-1.66302.2172-0.4467P265function y=fc(x)y(1)=x(1)-0.7*sin(x(1))-0.2*cos(x(2));y(2)=x(2)-0.7*cos(x(1))+0.2*sin(x(2));x0=[0.50.5];>>fsolve('fc',x0)%这里的x0为初始值ans=0.52650.5079比较fzero函数例如求x^2+x-1=0的解fzero('x^2+x-1',0.5)%这里的0.5是初始值,初始值只是影响运行时间,对算出的结果影响不大ans=0.6180P307x=[0.2360.2380.2480.2450.2430.2570.2530.2550.2540.2610.2580.2640.2590.2670.262];anova1(x')%anova1是一个对单因素试验的方差分析,它返回的是原假设均值相等的几率值ans=1.3431e-005P308x=[58.200056.200065.300052.600041.200060.800049.100054.100051.600042.800050.500048.400060.100070.900039.200058.300073.200040.700075.800058.200048.700071.500051.000041.4000];anova2(x,2)ans=0.00350.02600.0001P309x=[100:10:190];>>y=[45515461667074788589];>>[a,b]=polyfit(x,y,1)a=0.4830-2.7394b=R:[2x2double]df:8normr:2.6878>>plot(x,y,'*')>>hold on>>y=a(1)*x+a(2);>>plot(x,y)P265Fsolve的功能function y=fc(x)y(1)=x(1)-0.7*sin(x(1))-0.2*cos(x(2));y(2)=x(2)-0.7*cos(x(1))+0.2*sin(x(2));y=[y(1)y(2)];x0=[0.50.5];>>fsolve('fc',x0)ans=0.52650.5079P310>>x=normrnd(0,1,100000,1);>>normplot(x)练习题1.求函数在指定点的数值导数x=sym('x');>>y=[x x.^2x.^3;12*x3*x.^2;026*x];>>x=1;>>eval(diff(y))ans=123026006>>x=2;>>eval(diff(y))ans=14120212006>>x=3;>>eval(diff(y))ans=162702180062.求下列函数导数(1)x=sym('x');>>y=x^10+10^x+(log(10))/log(x);>>diff(y)ans=10*x^9+10^x*log(10)-2592480341699211/1125899906842624/log(x)^2/x(2)x=sym('x');>>y=log(1+x);>>x=1;>>eval(diff(y,2))%在x=1的条件下对y表达式求两次导数后导函数的值ans=-0.25003.用数值方法求下列积分首先先讲一下trapz的用法,如下题t=0:0.001:1;>>y=t;>>trapz(t,y)ans=0.5000(1)>>x=1:0.01:5;>>y=(x.^2).*sqrt(2*x.^2+3);>>trapz(x,y)ans=232.8066(2)x=pi/4:0.01:pi/3;>>y=x./(sin(x).^2);>>trapz(x,y)ans=0.3810第三题拟合曲线题x=[0:0.1:1];>>y=[-0.4471.9783.286.167.087.347.669.569.489.3011.2];>>a=polyfit(x,y,2);>>x=[0.05:0.2:1.05];>>y=a(3)+a(2)*x+a(1)*x.^2%注意x要在y前先赋值,不然y不会运行为最新的x对呀的y 值y=0.9503 4.38757.03988.90739.989910.2876。

Matlab考试题库及答案(教师出卷参考专用)

Matlab考试题库及答案(教师出卷参考专用)

Matlab考试题库及答案(教师出卷参考专用)一、选择题1.以下哪个函数用于在Matlab中创建一个图形窗口?A. figureB. plotC. graphD. window答案:A2.在Matlab中,以下哪个选项可以用来定义一个矩阵?A. A = [1 2 3; 4 5 6]B. A = (1, 2, 3, 4, 5, 6)C. A = {1, 2, 3, 4, 5, 6}D. A = 1 2 3; 4 5 6答案:A3.以下哪个函数用于求解线性方程组Ax=b?A. solveB. linsolveC. solve(A, b)D. linsolve(A, b)答案:D4.在Matlab中,如何计算矩阵A和矩阵B的乘积?A. A BB. A \ BC. A . BD. A .\ B答案:A5.以下哪个函数用于在Matlab中绘制三维散点图?A. scatterB. scatter3C. plot3D. bar3答案:B二、填空题1.在Matlab中,要创建一个名为"myfig"的图形窗口,可以使用______函数。

答案:figure('Name', 'myfig')2.在Matlab中,要计算矩阵A的行列式,可以使用______函数。

答案:det(A)3.在Matlab中,若要计算变量x的平方,可以使用______运算符。

答案:.^24.在Matlab中,若要计算矩阵A的逆矩阵,可以使用______函数。

答案:inv(A)5.在Matlab中,要绘制一个正弦波形,可以使用______函数。

答案:plot(sin(x))三、判断题1.在Matlab中,矩阵的索引从1开始计数。

()答案:正确2.在Matlab中,可以使用逻辑运算符"&&"和"||"。

()答案:错误3.在Matlab中,矩阵乘法满足交换律。

中南大学matlab课后习题

中南大学matlab课后习题

中南大学matlab课后习题1·求下列表达式的值。

(1)w=sqrt(2)*(1+0.34245*10^-6)w =1.4142(2)a=3.5;b=5;c=-9.8;x=(2*pi*a+(c+b)/(pi+a*b*c)-exp(2))/(tan(b+c)+a); xx =0.9829(3)a=3.32;b=-7.9;y=2*pi*a^2*[(1-pi/4)*b-(0.8333-pi/4)*a];yy =-128.4271(4)t=[2,1-3i;5,-0.65];z=1/2*exp(2*t)*log(t+sqrt(1+t^2));zz =1.0e+004 *0.0057 - 0.0007i 0.0049 - 0.0027i1.9884 - 0.3696i 1.7706 - 1.0539i2,已知a,b,求下列表达式的值。

a=[-1,5,-4;0,7,8;3,61,7];b=[8,3,-1;2,5,3;-3,2,0]; (1)a+6*b ans =47 23 -1012 37 26-15 73 7a^2-b+eye(3)ans =22 533 10921 867 526(2)a*bans =14 14 16-10 51 21125 328 180a.*b-8 15 40 35 24-9 122 0b*aans =-11 0 -157 228 533 -1 28(3)a/bans =1.2234 -0.92552.9787-0.9468 2.3511 -0.9574 4.6170 3.8723 13.8936 b\aans =-0.5106 -8.6170 -1.1277 0.7340 17.5745 1.8085 -0.8830 -21.2128 0.4043 (4)[a,b]ans =0 7 8 2 5 33 61 7 -3 2 0[a([1,3],:);b^2]ans =-1 5 -43 61 773 37 117 37 13-20 1 93.已知a,完成下列操作。

MATLAB考试试题及答案

MATLAB考试试题及答案

MATLAB考试试题及答案一、选择题(每题5分,共25分)1. 在MATLAB中,下列哪个命令用于创建一个行向量?A. v = [1; 2; 3]B. v = [1 2 3]C. v = [1, 2, 3]D. v = (1, 2, 3)答案:B2. 在MATLAB中,下列哪个命令用于计算矩阵A的行列式?A. det(A)B. det(A')C. det(inv(A))D. det(A^2)答案:A3. 在MATLAB中,下列哪个命令用于计算矩阵A的逆?A. inv(A)B. A^(-1)C. pinv(A)D. A\B答案:A4. 在MATLAB中,下列哪个命令用于求解线性方程组Ax= b?A. A\bB. A/BC. B/AD. A^-1b答案:A5. 在MATLAB中,下列哪个命令用于绘制二维图形?A. plot(x, y)B. scatter(x, y)C. bar(x, y)D. pie(x, y)答案:A二、填空题(每题5分,共25分)6. 在MATLAB中,可以使用______命令创建一个等差数列。

答案:linspace7. 在MATLAB中,可以使用______命令创建一个等比数列。

答案:logspace8. 在MATLAB中,可以使用______命令计算矩阵A的特征值。

答案:eig(A)9. 在MATLAB中,可以使用______命令计算矩阵A的特征向量。

答案:eigenvector(A)10. 在MATLAB中,可以使用______命令计算矩阵A的奇异值。

答案:svd(A)三、解答题(每题25分,共75分)11. 编写MATLAB程序,求解以下线性方程组:2x + 3y - z = 1x - y + 2z = 03x + 2y - 4z = -3答案:```A = [2 3 -1; 1 -1 2; 3 2 -4];b = [1; 0; -3];x = A\b;disp('解为:');disp(x);```12. 编写MATLAB程序,绘制以下函数的图形:y = sin(x) + cos(x),x ∈ [0, 2π]答案:```x = linspace(0, 2pi, 100);y = sin(x) + cos(x);plot(x, y);title('y = sin(x) + cos(x)');xlabel('x');ylabel('y');grid on;```13. 编写MATLAB程序,计算以下矩阵的特征值和特征向量:A = [1 2 3; 4 5 6; 7 8 9]答案:```A = [1 2 3; 4 5 6; 7 8 9];[V, D] = eig(A);disp('特征值:');disp(diag(D));disp('特征向量:');disp(V);```14. 编写MATLAB程序,使用牛顿迭代法求解方程f(x) = x^3 - 4x + 2 = 0在x = 1附近的根。

中南大学matlab实践16题01

中南大学matlab实践16题01

分析四杆连杆机构的运动方向由X和Y方向的长度关系确定为:从上述两种方程中消除错误!未找到引用源。

,便可化成一个只包括错误!未找到引用源。

和错误!未找到引用源。

的方程,给定错误!未找到引用源。

,可求出满足此方程的错误!未找到引用源。

由(2)得将(1)式中的错误!未找到引用源。

得出在错误!未找到引用源。

给定时,求能使f(错误!未找到引用源。

)=0的错误!未找到引用源。

值,然后,错误!未找到引用源。

就可以由(3)式求得,为了求能使f=0的错误!未找到引用源。

的值,可调用Matlab中的fzero函数。

为此,要把f=f(错误!未找到引用源。

)单独定义为一个Matlab函数ex417f.m,在主程序中要调用它。

为了把长度参数传给子程序,在主程序和子程序中都加了全局变量语句(gl obal),全局变量容易造成程序的混乱,要特别小心,在复杂的程序中应尽量避免。

求得错误!未找到引用源。

,错误!未找到引用源。

和错误!未找到引用源。

后,就不难根据杆1的角速度求初杆3的角速度,其方法有以下两种:(1)求瞬时速度,这是通常理论力学的解法,其依据就是杆2两端点a和b的速度沿杆方向的分量相等,通过三角关系,有(2)求运动全过程的角位置、角速度和角函数式,加速度曲线,这只有借助于计算工具才能做到,因为用手工算一个点就不胜其烦,算几十个点是很难想象的,而由Matlab编程调用fzero要求给出一个近似猜测值,若连续算几十个点,前一个解就可作为后一个解的猜测值,从而带来方便。

下面分别提供ex714a.m和ex714b.m两个程序来表述这两种方法,他们所要调用的函数程序命名为ex714f.m。

流程图开始输入基线及三根杆的长度建立m文件ex714f.m输入杆1角速度i=2:181;th1=theta(i);theta3(i)=fzero(‘ex714.m,the ta3(i-1));对应于theta1最小值处的theta3的近似值fzero函数求theta3的初始输出值再次调用fzero函数计算每个i对应的theta3.画图结束Matlab程序1.主程序ex714a.mglobal L0 L1 L2 L3 th1L0=20,L1=8,L2=25,L3=20;%输入基线及3根杆的长度L1、L2、L3theta1=input(‘当前角theta1=’);theta3=input(‘对应于theta1的theta3近似值=’);th1=theta1;theta3=fzero(‘ex714f’,theta3);%求当前角输出角theta3theta2=asin((L3*sin(theta3)-L1*sin(theta1))/L2);w1=input(‘w1=’);w3=L1*w1*cos(pi/2-theta1+theta2)/(L3*cos(theta3-pi/2-theta2))2.主程序ex714b.mglobal L0 L1 L2 L3 th1L0=20,L1=8,L2=25,L3=20;%输入基线及3根杆的长度L1、L2、L3w1=input(‘杆1角速度w1=’);theta1=linspace(0,2*pi,181);%把杆一圈分为180份,间隔2度。

中南大学matlab试卷

中南大学matlab试卷

电子信息科学与技术09级Matlab 期末考试试卷(2012年5月)院系: 物理与电子 年级: 电信09级 班级: 3班 学号: 1404090311 姓名: 徐云霄说明:请保留题目,在每个题目解答部分的空白处依次作答,并写清楚每个小题的题号。

作答要给出程序代码、仿真结果。

1、(30分) 如下图所示的弹簧振子系统在光滑的水平面运动,已知弹簧振子的质量kg m 2.0=,弹簧的倔强系数m N K /2.0=。

在0=t 时弹簧振子位于m x 1)0(=,速度为s m v /2)0(-=。

假设该系统在0≥t 时受到沿正方向的策动力t e F 2.01.0-=的作用,并且弹簧所受空气等阻力为cv f -=阻,其中m Ns c /1.0=,v 为弹簧振子的运动速度。

因此,该运动方程可以表示为:t e kx x c x m 2.01.0-+--=。

(1) 利用Dsolve 函数,编写程序代码求解弹簧振子运动方程的通解,并仿真s t ]20,0[∈弹簧振子的位置图像。

(5分)(2) 利用常微分方程的数值解法编写程序代码,利用子图绘制函数subplot(3,2,n)在同一窗口分别绘制s t ]20,0[∈弹簧振子:(10分)(a) 位置图像(要求标注:线的颜色(红色)、线型(-.点划线)、线宽(2)、数据点标注形状(* ));(b) 速度图像;(c) 加速度图像;(d) 弹簧振子动能221mv E k =图像;(e) 弹簧振子势能221kx E p =图像;(f) 弹簧振子能量图像。

以上绘图分别要求标注对应的标题(如:位置图像、速度图像……)。

(3) 构建simulink 仿真模块,在同一个窗口利用三个坐标系按顺序分别仿真s t ]20,0[∈弹簧振子的加速度图像、速度图像、位置图像。

(5分)(4) 利用s-function ,构建simulink 仿真模块,在同一个窗口利用三个坐标系按顺序分别仿真s t ]20,0[∈弹簧振子的位置图像、速度图像、加速度图像。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

1 求函数在指定点的导数值()232123,1,2,3 026x x xf x x x xx==>> syms x>> a=[x x^2 x^3;1 2*x 3*x^2;0 2 6*x]; >> f=det(a);>> diff(f,1)ans =6*x^2>> diff(f,2)ans =12*x>> diff(f,3)ans =122 符号法求下列函数的导数或积分1)y=x10+10x+logx10,求y’f=('x^10+10^x+log(10)/log(x)')f =x^10+10^x+log(10)/log(x)>> diff(f)ans =10*x^9+10^x*log(10)-log(10)/log(x)^2/x2)y=ln(1+x), 求y’’∣x=1f=('log(1+x)/log(e)')f =log(1+x)/log(e)>> diff(f,1,2)ans =-1/(1+x)^2/log(e)3) y=e x/cosx,求y’f=('exp(x)/cos(x)')f =exp(x)/cos(x)>> diff(f)ans =exp(x)/cos(x)+exp(x)/cos(x)^2*sin(x)4)function f=fun0(t)f=t*sin(t)int('fun0','0','pi')ans =1/2*pi^25) 已知函数z=sin(xy), 计算syms x y>> z=('sin(x*y)')z =sin(x*y)>> diff(diff(z,y,2),x)ans =-cos(x*y)*y*x^2-2*sin(x*y)*x3 用数值方法求定积分1)function f=fun(x)f=x.^2.*sqrt(2.*x.^2+3)quad('fun',1,5)ans =232.80572)function f=fun(x)f=x./sin(x).^2quad('fun',pi/4,pi/3)ans =0.38354 已知数据[x,y]如下表,试求2次拟合多项式f(x),然后求x=0.05,0.25,0.45,0.65,0.85,1.05各点的函数近似值,并绘出拟合曲线及求得的函数点。

>> x=[0.0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1.0];>> y=[-0.447 1.978 3.28 6.16 7.08 7.34 7.66 9.56 9.48 9.3 11.2]; >> a=polyfit(x,y,2)a =-9.8108 20.1293 -0.0317>> x0=[0.0:0.1:1.0];>> y0=a(3)+a(2).*x0+a(1).*x0.^2;>> plot(x,y,'*')>> hold on>> plot(x0,y0,'-r')>> x1=[0.05 0.25 0.45 0.65 0.85 1.05];>> y1=interp1(x0,y0,x1)y1 =Columns 1 through 50.9257 4.3629 7.0153 8.8828 9.9654Column 6NaN5 求方程e x sinx=0在区间[-4,-3]上的一个根。

x=fzero('exp(x).*sin(x)',[-4,-3])x =-3.14166 已知某函数的离散点列如下分别使用hermite插值、三次样条插值、三次方插值估算在x在2.5,1.5,0.5,-0.5,-1.5,-2.5的函数值,并在同一张图上绘制出三条曲线。

>> x0=[-4 -3 -2 -1 0 1 2 3 4];>> y0=[0.97279 3.4234 3.8186 1.8415 0 -0.15853 -0.18141 -2.5766 -7.0272]; >> x=[-4:1:4];>> y=pchip(x0,y0,x);>> plot(x,y,'-r')>> hold on>> y=spline(x0,y0,x);>> plot(x,y,'-b')>> hold on>> a=polyfit(x0,y0,3)a =0.0000 -0.2395 -1.0000 1.6092>> y=a(4)+a(3).*x+a(2).*x.^2+a(1).*x.^3;>> plot(x,y,'-k')>> t=[2.5 1.5 0.5 -0.5 -1.5 -2.5];>> g=interp1(x0,y0,t,'pchip')g =Columns 1 through 5-0.9954 -0.1693 -0.1108 0.7189 3.0684 Column 63.7061>> f=interp1(x0,y0,t,'spline')f =Columns 1 through 5-1.0538 0.0011 -0.2499 0.7501 3.0011 Column 63.9462>> h=interp1(x0,y0,t)h =Columns 1 through 5-1.3790 -0.1700 -0.0793 0.9207 2.8301 Column 63.62107 用经典的RK方法计算常微分方程:y’=e-2t-2y 初值条件y(0)=0.1function f=fun(x,y)f=exp(-2.*x)-2.*y>> [x,y]=ode23('fun',[0,1],1);f =-1f =-0.9969f =-0.9935f =-0.9885f =-0.9707f =-0.9616f =-0.9488f =-0.9203f =-0.9080f =-0.8911f =-0.8563f =-0.8422f =-0.8231f =-0.7853f =-0.7704f =-0.7504f =-0.7118f =-0.6970f =-0.6771f =-0.6392f =-0.6249f =-0.6056f =-0.5695f =-0.5560f =-0.5379f =-0.5041f =-0.4915f =-0.4748f =-0.4437f =-0.4322f =-0.4168f =-0.4113f =-0.4087f =-0.40598 求二阶微分方程初值条件为x(0)=1, x’(0)=0 建立m文件function dy=fun(x,y)dy=zeros(2,1);dy(1)=y(2);dy(2)=(1-x^2)*y(2)-x;ode45('fun',[0,10],[1,0]);9 用三点公式和五点公式求F(x)=1/(1+x)2在x=1.1处的导数值。

>> x=[1:0.1:1.4];>> fun=1./(1+x).^2;>> y=subs(fun,x)y =0.2500 0.2268 0.2066 0.1890 0.1736>> h=0.1;>> a=1/(2*h)*(y(3)-y(1))a =-0.2169>> b=1/(12*h)*(-3*y(1)-10*y(2)+18*y(3)-6*y(4)+y(5))b =-0.216010求>> syms x>> f=(x^3+x^2+x+1)^(1/3)-sqrt(x^2+x+1)*log(exp(x)+x)/xf =(x^3+x^2+x+1)^(1/3)-(x^2+x+1)^(1/2)*log(exp(x)+x)/x>> limit(f,x,inf)ans =-1/6。

相关文档
最新文档