MATLAB 考试试题 (1)
产生一个1x10的随机矩阵,大小位于(-5 5),并且按照从大到小的顺序排列好!(注:要程序和运行结果的截屏)
答案:
a=10*rand(1,10)-5;
b=sort(a,'descend')
1.请产生一个100*5的矩阵,矩阵的每一行都是[1 2 3 4 5]
2. 已知变量:A=’ilovematlab’;B=’matlab’, 请找出:
(A) B在A中的位置。
(B) 把B放在A后面,形成C=‘ilovematlabmatlab’
3. 请修改下面的程序,让他们没有for循环语句!
A=[1 2 3; 4 5 6; 7 8 9];
[r c]=size(A);
for i=1:1:r
for j=1:1:c
if (A(i,j)>8 | A(i,j)<2)
A(i,j)=0;
end
end
end
4. 请把变量A=[1 2 3; 4 5 6; 7 8 9]写到文件里(output.xls),写完后文件看起来是这样的
1 2 3 4 5 6 7 8 9
5.试从Yahoo网站上获得微软公司股票的2008年9月的每日收盘价。
6.编写M文件,从Yahoo网站批量读取60000.SH至600005.SH在2008年9月份的每日收盘价(提示:使用字符串函数)。
7. 将金牛股份(000937)2005年12月14日至2006年1月10日的交易记录保存到Excel中,编写程序将数据读入MATLAB中,进一步将数据读入Access数据库文件。
8.已知资产每日回报率为0.0025,标准差为0.0208,资产现在价值为0.8亿,求5%水平下资产的10天在险价值(Var)。
9.a=[1 2 3 4 5],b=a(1)*a(5)+a(2)*a(4)+a(3)*a(3)+a(4)*a(2)+a(5)*a(1).试用MATLAB中最简单的方法计算b,注意最简单哦。
1、求下列联立方程的解
3x+4y-7z-12w=4
5x-7y+4z+ 2w=-3
x +8z- 5w=9
-6x+5y-2z+10w=-8
求系数矩阵的秩;
求出方程组的解。
解:(1)
>> a=[3 4 -7 -12];
5 -7 4 2 ;
1 0 8 -5;
-6 5 -2 10];
c=[4; -3; 9;-8];
b=rank(a)
b = 4
(2)>> d=a\c
d = -1.4841, -0.6816, 0.5337,-1.2429
即: x=-1.4841;y= -0.6816;z= 0.5337;w=-1.2429
2、设 y=cos[0.5+((3sinx)/(1+x^2))] 把x=0~2π间分为101点,画出以x为横坐标,y为纵坐标的曲线;
解:>> x=linspace(0,2*pi,101);
y=cos(0.5+3.*sin(x)./(1+x.*x));
plot(x,y)
3、设 f(x)=x^5-4x^4+3x^2-2x+6
(1)取x=[-2,8]之间函数的值(取100个点),画出曲线,看它有几个零点。
(提示:用polyval 函数)
解:>>p=[1 -4 3 -2 6];
x=linspace(-2,8,100);
y=polyval(p,x);
plot(x,y);
axis([-2,8, -200,2300]);
为了便于观察,在y=0处画直线,图如下所示:
与y=0直线交点有两个,有两个实根。
(2)用roots函数求此多项式的根
>> a=roots(p)
a = 3.0000 ,1.6956 , -0.3478 + 1.0289i , -0.3478 - 1.0289i
4、在[-10,10;-10,10]范围内画出函数 的三维图形。
解:>>[X,Y]=meshgrid(-10 : 0.5 :10);
a=sqrt(X.^2+Y.^2) +eps;
Z=sin(a)./a;
mesh(X,Y,Z);
matlab试卷,求答案
一、选择或填空(每空2分,共20分)
1、标点符号()可以使命令行不显示运算结果,()用来表示该行为注释行。
2、下列变量名中()是合法的。
(A) char_1 ; (B) x*y ; (C) x\y ; (D) end
3、为~,步长为的向量,使用命令()创建。
4、输入矩阵,使用全下标方式用()取出元素“ ”,使用单下标方式用()取出元素“ ”。
5、符号表达式中独立的符号变量为()。
6、M脚本文件和M函数文件的主要区别是()和(
)。
7、在循环结构中跳出循环,但继续下次循环的命令为()。
(A) return; (B) break ; (C) continue ; (D) keyboad
二、(本题12分)利用MATLAB数值运算,求解线性方程组(将程序保存为test02.m文件)
三、(本题20分)利用MATALAB符号运算完成(将程序保存为test03.m文件):
(1)创建符号函数
(2)求该符号函数对的微分;
(3)对趋向于求该符号函数的极限;
(4)求该符号函数在区间上对的定积分;
(5)求符号方程的解。
四、(本题20分)编写MATALAB程序,完成下列任务(将程序保存为test04.m文件):
(1)在区间上均匀地取20个点构成向量;
(2)分别计算函数与在向量处的函数值;
(3)在同一图形窗口绘制曲线与,要求曲线为黑色点画线,曲线为红色虚线圆圈;并在图中恰当位置标注两条曲线的图例;给图形加上标题“y1 and y2”。
五、(本题15分)编写M函数文件,利用for循环或while循环完成计算函数的任务,并利用该函数计算时的和(将总程序保存为test05.m文件)。
六、(本题13分)已知求解线性规划模型:
的MATLAB命令为
x=linprog(c,A,b,Aeq,beq,VLB,VUB)
试编写MATLAB程序,求解如下线性规划问题(将程序保存为test06.m文件):
问题补充:
卷子的地址
看不见符号,能做就做了一些.
1、标点符号( ; )可以使命令行不显示运算结果,( % )用来表示该行为注释行。
2、下列变量名中( A )是合法的。
(A) char_1 ; (B) x*y ; (C) x\y ; (D) end
3、为~,步长为的向量,使用命令(本题题意不清)创建。
4、输入矩阵,使用全下标方式用(本题题意不清)取出元素“ ”,使用单下标方式用(本题题意不清)取出元素“ ”。
5、符号表达式中独立的符号变量为()。
6、M脚本文件和M函数文件的主要区别是(变量生存期和可见性)和(函数返回值)。
7、在循环结构中跳出循环,但继续下次循环的命令为( C )。
(A) return; (B) break ; (C) continue ; (D) keyboad
二、(本题12分)利用MATLAB数值运算,求解线性方程组(将程序保存为test02.m文件)
三、(本题20分)利用MATALAB符号运算完成(将程序保存为test03.m文件):
(1)创建符号函数syms x
(2)求该符号函数对的微分;
(3)对趋向于求该符号函数的极限;
(4)求该符号函数在区间上对的定积分;
(5)求符号方程的解。
四、(本题20分)编写MATALAB程序,完成下列任务(将程序保存为test04.m文件):
(1)在区间上均匀地取20个点构成向量;
(2)分别计算函数与在向量处的函数值;
(3)在同一图形窗口绘制曲线与,要求曲线为黑色点画线,曲线为红色虚线圆圈;并在图中恰当位置标注两条曲线的图例;给图形加上标题“y1 and y2”。
五、(本题15分)编写M函数文件,利用for循环或while循环完成计算函数的任务,并利用该函数计算时的和(将总程序保存为test05.m文件)。
六、(本题13分)已知求解线性规划模型:
的MATLAB命令为
x=linprog(c,A,b,Aeq,beq,VLB,VUB)
试编写MATLAB程序,求解如下线性规划问题(将程序保存为test06.m文件):
[例2.1] 已知SISO系统的状态空间表达式为(2-3)式,求系统的传递函数。
A=[0 1 0;0 0 1;-4 -3 -2];B=[1;3;-6];C=[1 0 0];D=0;
[num,den]=ss2tf(a,b,c,d,u)
[num,den]=ss2tf(A,B,C,D,1)
[例2.2] 从系统的传递函数(2-4)式求状态空间表达式。
num =[1 5 3];
den =[1 2 3 4];
[A,B,C,D]=tf2ss(num,den)
[例2.3] 对上述结果进行验证编程。
%将[例2.2]上述结果赋值给A、B、C、D阵;
A =[-2 -3 -4;1 0 0; 0 1 0];B =[1;0;0];C =[1 5 3];D=0;
[num,den]=ss2tf(A,B,C,D,1)
[例2.4]给定系统,求系统的零极点增益模型和状态空间模型,并求其单位脉冲响应及单位阶跃响应。
解:
num=[1 2 1 3];den=[1 0.5 2 1];
sys=tf(num,den) %系统的传递函数模型
Transfer function:
s^3 + 2 s^2 + s + 3
-----------------------------
s^3 + 0.5 s^2 + 2 s + 1
sys1=tf2zp(num,den) %系统的零极点增益模型sys1 =
sys2=tf2ss(sys) %系统的状态空间模型模型;或用[a,b,c,d]=tf2ss(num,den)形式
impulse(sys2) %系统的单位脉冲响应
step(sys2) %系统的单位阶跃响应
[例3.1] 对下面系统进行可控性、可观性分析。
解:
a=[-1 -2 2;0 -1 1;1 0 -1];b=[2 0 1]';c=[1 2 0]
Qc=ctrb(a,b) %生成能控性判别矩阵
rank(Qc) %求矩阵Qc的秩
ans = 3 %满秩,故系统能控
Qo=obsv(a,c) %生成能观测性判别矩阵
rank(Qo) %求矩阵Qo的秩
ans = 3 %满秩,故系统能观测
[例3.2] 已知系统状态空间方程描述如下:
试判定其稳定性,并绘制出时间响应曲线来验证上述判断。
解:
A=[-10 -35 -50 -24;1 0 0 0;0 1 0 0;0 0 1 0];
B=[1;0;0;0];C=[1 7 24 24];D=[0];
[z,p,k]=ss2zp(A,B,C,D,1);
Flagz=0;
n=length(A);
for i=1:n
if real(p(i))>0
Flagz=1;
end
end
disp('系统的零极点模型为');z,p,k
系统的零极点模型为
ifFlagz==1
disp('系统不稳定');
else disp('系统是稳定的');
end
运行结果为:
系统是稳定的
step(A,B,C,D) %系统的阶跃响应
资源与环境工程学院2008级硕士研究生《MatLab及其应用》试题
注意,每题的格式均须包含3个部分
a. 程序(含程序名及完整程序):
b. 运行过程:
c. 运行结果:
(1)求解线性规划问题:
问各xi分别取何值时,Z有何极小值。(10分)
答:fprintf('线性规划问题求解 \n');
f = [-4;1;7];
A = [3,-1,1;1,1,-4;];
b = [4,-7]';
Aeq = [1,1,-1];
beq = [5]';
lb = [0,0,];
ub = [];
x = linprog(f,A,b,Aeq,beq,lb,ub);
x
z = f' * x;
fprintf('MIN z = %f \n' , z);
运行结果:线性规划问题求解
Optimization terminated successfully.
x =
2.2500
6.7500
4.0000
MIN z = 25.750000
(2)编写一个函数,使其能够产生如下的分段函数:,
并调用此函数,绘制。(10分)
答:function y=f(x)
if x<=2
y=0.5*x;
else if x>6
y=0.5;
else y =1.5-0.25*x;
end
end
运行结果 x=2
f(x)=1
x = 0:0.05:2;
y = diag(A2(x)'*A2(x+2));
plot(x,y);
xlabel('\bfx');
ylabel('\bfy');
(3) 将一个屏幕分4幅,选择合适的步长在右上幅与左下幅绘制出下列函数的图形。(10分)
①(曲线图);②(曲面图)。
答:>>subplot(2,2,2)
>>ezplot('(cos(x))^(1/2)',[-pi/2 pi/2])
>>ylabel('y')
>>subplot(2,2,3)
>> x=-2:0.5:2;
>> y=-4:1:4;
>>ezsurfc('x^2/2^2+y^2/4^2')
(4) A 是一个維度m×n的矩阵. 写一段程序, 算出A中有多少个零元素(10分)
答:>> A= input ('请输入一个矩阵')
[m,n]= size(A);
sig=0;
for i=1:m
for j=1:n
if A(i,j)==0
sig = sig+1;
end
end
end
请输入一个矩阵[0 1 2;1 0 2; 0 0 0]
A =
0 1 2
1 0 2
0 0 0
>>sig
sig =
5
(5) 向量. 写一段程序, 找出A中的最小元素(10分)
答:A= input ('请输入一个向量')
[m,n]=sizeA
min =A(1,n);
for i=1:n
if A(1,i)
min=A(1,i)
end
end
请输入一个向量[1 2 3 -5 2 0]
A =
1 2 3 -5 2 0
min =
-5
B.应用题(50分)
根据专业方向特色和相关科研工作需求,经过与导师商量后,结合一个课题具体任务,编写一份Matlab应用工作报告。报告由:a课题任务要求,b技术路线,c程序,d运行结果,e总结、等部分构成,完成的报告经导师给出简单评语并签字后缴来。
a,课题任务:研究了一种生物质,油菜秸秆对水溶液中金属离子铜的吸附行为,分别从pH,用量,温度几个方面考察秸秆的吸附性,并对分析的最佳条件进行了探讨。同时从吸附热力学和吸附动力学角度探讨吸附机理。结果表明,100ml溶液pH=5.30,秸秆用量0.75g时,秸秆对铜的吸附量可达到6mg/g左右。
b,技术路线:通过实验,获得一系列的数据,然后通过Matlab来做各种关系图。从图中找到g各种关系式。
c,程序:x=[2.20 2.72 3.44 4.13 5.38]
y=[2.39 3.83 6.07 6.39 6.84]
plot(x,y);
xlabel('pH');
ylabel('吸附量')
图1
x=[0.5 0.75 1.0 1.25 1.5 ]
y=[6.05 6.19 5.33 4.69 4.02]
plot(x,y);
xlabel('秸秆用量g');
ylabel('吸附量')
图2
通过数据图,得到比较理想的实验条件pH和秸秆用量,接下来做动力学和等温线。
> x=[0.167 0.5 1 2 3 4 5 8 ]
y=[0.033201 0.086059 0.169779 0.322061 0.480769 0.644122 0.809061 1.269841]
plot(x,y);
xlabel('时间t');
ylabel('时间/吸附量')
图3
x=[0.2363 0.15496 0.13619 0.12906 0.13373 0.13315]
y=[0.25218 0.04707 0.02014 0.01267 0.00881 0.00706]
plot(x,y);
xlabel('1/吸附量');
ylabel('1/平衡浓度')
图4
x=[0.62654 0.80977 0.86585 0.8892 0.87377 0.87564]
y=[0.59829 1.3273 1.69589 1.89737 2.05503 2.15149]
plot(x,y);
xlabel('Lg吸附量');
ylabel('Lg平衡浓度')
图5
d,总结:从图1和图2,分析看可以得到比较理想的对于本次实验的pH和秸秆用量。后面实验是在前面的基础上得到的。图3是吸附动力学反应速率图,从图中可以看到线性拟合程度很好,符合二级反应速率方程。图4和图5是吸附等温线作图,看以看出图4的线性拟合较图5的好,说明符合Langmuir吸附等温模型。
[例2.1] 已知SISO系统的状态空间表达式为(2-3)式,求系统的传递函数。
A=[0 1 0;0 0 1;-4 -3 -2];B=[1;3;-6];C=[1 0 0];D=0;
[num,den]=ss2tf(a,b,c,d,u)
[num,den]=ss2tf(A,B,C,D,1)
[例2.2] 从系统的传递函数(2-4)式求状态空间表达式。
num =[1 5 3];
den =[1 2 3 4];
[A,B,C,D]=tf2ss(num,den)
[例2.3] 对上述结果进行验证编程。
%将[例2.2]上述结果赋值给A、B、C、D阵;
A =[-2 -3 -4;1 0 0; 0 1 0];B =[1;0;0];C =[1 5 3];D=0;
[num,den]=ss2tf(A,B,C,D,1)
[例2.4]给定系统,求系统的零极点增益模型和状态空间模型,并求其单位脉冲响应及单位阶跃响应。
解:
num=[1 2 1 3];den=[1 0.5 2 1];
sys=tf(num,den) %系统的传递函数模型
Transfer function:
s^3 + 2 s^2 + s + 3
-----------------------------
s^3 + 0.5 s^2 + 2 s + 1
sys1=tf2zp(num,den) %系统的零极点增益模型sys1 =
sys2=tf2ss(sys) %系统的状态空间模型模型;或用[a,b,c,d]=tf2ss(num,den)形式
impulse(sys2) %系统的单位脉冲响应
step(sys2) %系统的单位阶跃响应
[例3.1] 对下面系统进行可控性、可观性分析。
解:
a=[-1 -2 2;0 -1 1;1 0 -1];b=[2 0 1]';c=[1 2 0]
Qc=ctrb(a,b) %生成能控性判别矩阵
rank(Qc) %求矩阵Qc的秩
ans = 3 %满秩,故系统能控
Qo=obsv(a,c) %生成能观测性判别矩阵
rank(Qo) %求矩阵Qo的秩
ans = 3 %满秩,故系统能观测
[例3.2] 已知系统状态空间方程描述如下:
试判定其稳定性,并绘制出时间响应曲线来验证上述判断。
解:
A=[-10 -35 -50 -24;1 0 0 0;0 1 0 0;0 0 1 0];
B=[1;0;0;0];C=[1 7 24 24];D=[0];
[z,p,k]=ss2zp(A,B,C,D,1);
Flagz=0;
n=length(A);
for i=1:n
if real(p(i))>0
Flagz=1;
end
end
disp('系统的零极点模型为');z,p,k
系统的零极点模型为
ifFlagz==1
disp('系统不稳定');
else disp('系统是稳定的');
end
运行结果为:
系统是稳定的
step(A,B,C,D) %系统的阶跃响应。
本文来源:https://www.2haoxitong.net/k/doc/3e2373e79b89680203d825bf.html
文档为doc格式