MATLAB练习(23章,附simulink例题)
第2章 MATLAB矩阵运算基础
2.1 在MATLAB中如何建立矩阵,并将其赋予变量a?
2.2 有几种建立矩阵的方法?各有什么优点?
2.3 在进行算术运算时,数组运算和矩阵运算各有什么要求?
2.4 数组运算和矩阵运算的运算符有什么区别?
2.5 计算矩阵与之和。
2.6 求的共轭转置。
2.7 计算与的数组乘积。
2.8 “左除”与“右除”有什么区别?
2.9 对于,如果,,求解X。
2.10 已知:,分别计算a的数组平方和矩阵平方,并观察其结果。
2.11 ,,观察a与b之间的六种关系运算的结果。
2.12 ,在进行逻辑运算时,a相当于什么样的逻辑量。
相当于a=[1 1 0 1 1]。
2.13 在sin(x)运算中,x是角度还是弧度?
2.14 角度,求x的正弦、余弦、正切和余切。
2.15 用四舍五入的方法将数组[2.4568 6.3982 3.9375 8.5042]取整。
2.16 矩阵,分别对a进行特征值分解、奇异值分解、LU分解、QR分解及Chollesky分解。
2.17 将矩阵、和组合成两个新矩阵:
(1)组合成一个4?3的矩阵,第一列为按列顺序排列的a矩阵元素,第二列为按列顺序排列的b矩阵元素,第三列为按列顺序排列的c矩阵元素,即
(2)按照a、b、c的列顺序组合成一个行矢量,即
多项式练习
3.1 将(x-6)(x-3)(x-8)展开为系数多项式的形式。
3.2 求解多项式x3-7x2+2x+40的根。
3.3 求解在x=8时多项式(x-1)(x-2) (x-3)(x-4)的值。
3.4 计算多项式乘法(x2+2x+2)(x2+5x+4)。
3.5 计算多项式除法(3x3+13x2+6x+8)/(x+4)。
3.6 对下式进行部分分式展开:
3.7 计算多项式的微分和积分。
数值计算
1 创建符号变量有几种方法?
2 下面三种表示方法有什么不同的含义?
(1)f=3*x^2+5*x+2
(2)f='3*x^2+5*x+2'
(3)x=sym('x')
f=3*x^2+5*x+2
3 用符号函数法求解方程at2+b*t+c=0。
4 用符号计算验证三角等式:
sin(?1)cos(?2)-cos(?1)sin(?2) =sin(?1-?2)
5 求矩阵的行列式值、逆和特征根。
6 因式分解:
7 ,用符号微分求df/dx。
8 求代数方程组关于x,y的解。
9 符号函数绘图法绘制函数x=sin(3t)cos(t),y=sin(3t)sin(t)的图形,t的变化范围为[0,2?]。
10 绘制极坐标下sin(3*t)*cos(t)的图形。
Simulink
【例8.2.2.2-2】演示“求和”模块的向量处理能力:输入扩展。
图 8.2.2.2-2-1
【例8.2.2.2-3】演示“增益”模块的向量处理能力:参数扩展。
图 8.2.2.2-3-1
【例8.3.1.2-1】假设从实际自然界(力学、电学、生态等)或社会中,抽象出有初始状态为0的二阶微分方程,是单位阶跃函数。本例演示如何用积分器直接构搭求解该微分方程的模型。
(1)
(2)
图8.3.1.2-1-1
(3)仿真操作
(4)保存在MATLAB工作空间中的数据
clf
tt=ScopeData.time;
xx=ScopeData.signals.values;
[xm,km]=max(xx);
plot(tt,xx,'r','LineWidth',4),hold on
plot(tt(km),xm,'b.','MarkerSize',36),hold off
strmax=char('最大值',['t = ',num2str(tt(km))],['x = ',num2str(xm)]);
text(6.5,xm,strmax),xlabel('t'),ylabel('x')
练习:
9.3 有传递函数如下的控制系统,用Simulink建立系统模型,并对系统的阶跃响应进行仿真。
9.4 建立一个简单模型,用信号发生器产生一个幅度为2V、频率为0.5Hz的正弦波,并叠加一个0.1V的噪声信号,将叠加后的信号显示在示波器上并传送到工作空间。
9.5 建立一个简单模型,产生一组常数(1×5),再将该常数与其5倍的结果合成一个二维数组,用数字显示器显示出来。
9.6 建立一个模拟系统,将摄氏温度转换为华氏温度(Tf = 9/5Tc+32)。
9.7 建立二阶系统的脉冲响应模型,设ωn=10Hz,观察当01时系统的响应。
9.8 皮球以15米/秒的速度从10米高的地方落下