MATLAB与仿真上机练习题目

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

MATLAB 与仿真练习

实验1:

橡皮球从一个高度为0h 的高处,以初速度0v 下落到地面,其高度h 、速度v 与时间t 的关系由下式给出:

2

001()2

h t gt v t h =

++ (1) 0()v t gt v =+ (2)

其中g 为重力加速度(-9.81m/s 2)。用matlab 程序编写,t 从0到500,以1为间隔,并绘出图像。0v 、0h 应由键盘输入。

一个RLC 振荡电路的负载公式是

0R V =

其中,2f ωπ=,f 为频率,单位是hz 。假设0.1L mH =,0.25C nF =,

50R =Ω,010V mV =。

1. 绘制R V 与f 相关的图形,并根据图形给出f 为何值时,R V 取最大值,并计算最大值是多少?此时的f 成为谐振频率0f

2. 若接收频率f 大于0f 的10%,R V 为多少?

3. 若R V 为R V 最大值的一半,则此时接收频率f 为多少?

1.请实现以下分段函数

22

220,00,0(,)0,00,0

x y x y x y x y f x y x y x y x y x y +≥≥⎧⎪+≥<⎪

=⎨+<≥⎪⎪+<<⎩ 要求(1). 用if 实现

(2). 用逻辑关系式实现

绘制(,)f x y 与,x y 的图像,,x y 从-4到4,步长为0.1。

2. 求以下一元二次方程的解:20ax bx c ++= 要求(1)a 、b 、c 由键盘输入

(2)输出的时候区分相同的根、实数根和复数根,即先输出“该二元一次方程具有相同的实数根/复数根/两个不同/实数根/复数根”,再输出具体的值。

实验4:

自定义一个函数mymax ,实现matlab 函数max 的功能,要求输出一个参数时,则输出最大值;若要求输出两个参数,输出最大值和最大值的位置;若要求输出其他参数,则报错。 1. 若输入向量为一个常数,则输出该数本身;

2. 若输入向量为一维(行向量或者列向量),则输出最大值;

3. 若输入向量为二维,则输出每一列的最大值

4. 若输入向量为三维以上,则输出每一按照列取出的维度的最大值(课后思考)

实验5:

对一组测量数据t=[0,0.2,0.4,1.3,5.6]',y=[0.8,0.7,0.6,0.5,0.2]',用以下函数来拟合这组数据:123()cos t y t c c e c t -=++,画出拟合结果,并给出

1c 2c 3c 的值。

实验6:

对正弦波)**2sin(t π,完成如下任务:

1.对该正弦波一个周期采样1024点,画出波形;

2.对每个采样点量化成10位,并按照二进制补码进行编码;

3.将编码后的1024个样点保存在sample1024.txt文件中;

提示:

正弦波的处理过程如下:

采样:将正弦波一个周期[0,2*pi],采样1024点,采样后的数据是浮点数,数据范围是[-1,1];

量化:将采样后的数据从浮点型转换成定点型,即转换成10bit整型数,数据范围将变成[-512,511];

编码:将量化后的10bit整型数按照二进制补码规则进行编码;

实验结果

实验1:

\work\xiangpiqiu.m

clc

clear all;

%%%%%%%%%%%%%%%%%

%v0=input('请输入初始速度v0');

%h0=input('请输入初始高度h0');

%以正上方为正速度,以下方为负速度

v0=10;

h0=50;

g=-9.81;

t=0:0.01:50; %以0.01为间隔,共500s

% h=0.5.*g.*t.^2+v0*t+h0;%离地面距离h

t1=roots([0.5.*g,v0,h0]);%当地面距离为0,即第一次落地时所需时间t1

t11=min(t1(t1>0));%对求解的根t做如下处理:小于等于0的t舍弃,大于0的t取最小值,即第一次落地时真正的时间t11

v1=g.*t11+v0;%即第一次落地时的速度v1

%%%%%%%%%%假设无能量损耗,完全刚性,即以同样速度v1反弹回空中

v2=-v1;

% h2=0.5.*g.*t.^2+v2*t;%离地面距离h

% t2=roots([0.5.*g,v2,0]);%当地面距离为0,即第二次落地时所需时间t2

t2=-v2./(0.5.*g);%当地面距离为0,即第二次落地时所需时间t2。与上式等价

%%%%%%%%%%求解h和v%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

% %实际为一分段函数,当t

% 当t11

v=g.*(t-t11)+v2;h=0.5.*g.*(t-t11).^2+v2*(t-t11);

% 当t11+N*t2

v=g.*(t-N*t2-t11)+v2;h=0.5.*g.*(t-N*t2-t11).^2+v2*(t-N*t2-t11);

% x=(tt11).*mod(t-t11,t2);将当t

v11=g.*x1+v0;

h11=0.5.*g.*x1.^2+v0*x1+h0;

%%%%%%%%%%%%第一次落地之前的h和v

x2=(t>t11).*mod(t-t11,t2);

v22=g.*x2+v2;

h22=0.5.*g.*x2.^2+v2*x2;

%%%%%%%%%%%%第一次落地之后的h和v

v=v11.*(t<=t11)+v22.*(t>t11);

h=h11.*(t<=t11)+h22.*(t>t11);

subplot(2,1,1)

plot(t,v)

xlabel('时间');

ylabel('皮球速度,上为正,下为负');

subplot(2,1,2)

plot(t,h)

xlabel('时间');

ylabel('皮球离地面的高度');

相关文档
最新文档