实验5(答案)
大学数学实验5参考答案
实验5 线性方程组的解法
I.实验内容及要点
一.注意以下函数的用法
1.break:可以导致包含该命令的while、for循环终止。也可以在if-end、switch-case、
try-catch中导致中断
2.continue:跳过位于其后的循环中的其他命令,执行循环的下一次迭代。
3.return:结束该命令所在函数的执行,把控制交给主调函数或命令窗口。
4.error(’message’):显示出错信息message,终止程序。
5.warning(‘message’):显示警告信息message,程序继续运行。
二.注意直接法中误差的判断(条件数的应用)和迭代法中收敛性的判断(见函数isshoulian)
三.LU消元法的程序
function x=xiaoyuan(a,b)
[m n]=size(a); %可以讨论m n 的大小关系
[l u]=lu(a);
s=inv(l)*[a,b];
x=ones(m,1);
for i=m:-1:1
h=s(i,m+1);
for j=m:-1:1 %
if j~=i% h=s(i,m+1)-
h=h-x(j)*s(i,j);% (s(i,1:m) *x
end % -s(i,i))
end
x(i)=h/s(i,i);
end
四.function y=isshoulian(a)
s=size(a);if s(1)~=s(2),error('请输入方阵'),end
n=s(1);
for i=1:n
m=0;
for j=1:n
if j~=i
m=m+abs(a(i,j));
end
end
数据库实验5答案
实验五:数据库综合查询
一、实验目的
1.掌握SELECT语句的基本语法和查询条件表示方法;
2.掌握查询条件种类和表示方法;
3.掌握连接查询的表示及使用;
4.掌握嵌套查询的表示及使用;
5.了解集合查询的表示及使用。
二、实验环境
已安装SQL Server企业版的计算机(120台);
具有局域网环境,有固定IP;
三、实验学时
2学时
四、实验要求
1.了解SELECT语句的基本语法格式和执行方法;
2.了解连接查询的表示及使用;
3.了解嵌套查询的表示及使用;
4.了解集合查询的表示及使用;
5.完成实验报告;
五、实验内容及步骤
1.利用Transact-SQL嵌套语句实现下列数据查询操作。
1) 查询选修了计算机体系结构的学生的基本信息。
select*from student
where Sno in(select Sno from course
where Cno in(select Cno from sc where Cname='计算机体系结构'))
2) 查询年龄比李勇小的学生的学号和成绩。
select a.sno,grade from student a,course
where a.sno=course.sno and sage<(select sage from student where sname='李勇')
3) 查询其他系中比系编号为‘D1’的学生中年龄最小者要大的学生的信息。
select*from student where dnum<>'D1'AND SAGE>(select min(sage)from student where dnum='D1')
实验活动5 不同价态含硫物质的转化(人教版2019化学必修第二册)
(3)将SO2通入以下溶液,均会发生颜色变化,其中体现SO2还原 性的是__A___(填序号)。 A.使溴水褪色 B.使品红溶液褪 色有机硫 C.使滴有酚酞的氢氧化钠溶液褪色 D.使氢硫 酸溶液中出现淡黄色浑浊
(4)硫元素的部分转化如图所示。过程①可利用克劳斯法实现,该 法先将部分H2S通过燃烧转化为SO2,再将SO2与剩余的H2S混合。为实 现硫的最大回收,燃烧的H2S和剩余的H2S物质的量之比应为_1_:__2_。过 程②宜在土壤的_富__氧__区实现(填“富氧”或“缺氧”)。
(2)实验现象 A试管中有_气__泡__生成,溶液变_蓝__色__,铜片_溶__解__,B试管中品红溶液 _褪__色__。 (3)浓硫酸和铜反应的化学方程式: _____C__u_+_2_H__2_S_O_4_(浓__)_=_=∆_=_=_C_u_S_O__4_+_S_O__2_↑_+_2_H__2O___。
2.硫及其化合物的“价—类”二维图体现了化学变化之美。下列有关说 法正确的是( B )
A.硫在氧气中燃烧直接生成Y B.Z与Cu反应,体现了Z的酸性和强氧化性 C.硫化氢与X反应的氧化产物和还原产物的物质的量之比为1:2 D.N可由其相应单质直接化合生成
3.我国科学家被遴选为“全球青年化学家元素周期表硫元素代言人”。
第五章 化工生产中的重要非金属元素
【实验目的】
1.通过实验加深对硫及其化合物性质的认识。 2.应用氧化还原反应的原理实现不同价态含硫物质的转化。
数据库实验五题目答案
数据库实验五题目答案
实验五
实验数据查询
1)要求
以School数据库为例,在该数据库中存在四张表格,分别为:表STUDENTS(sid, sname, email, grade);
表TEACHERS(tid, tname, email, salary);
表COURSES(cid, cname, hour);
表CHOICES(no, sid, tid, cid, score)
在数据库中,存在这样的关系:学生可以选择课程,一个课程对应一个教师。在表CHOICES 中保存学生的选课记录。
按以下要求对数据库进行查询操作:
(1)查询年级为2001的所有学生的名称并按编号升序排列。
程序:Select sname
from students
where grade='2001'
order by sid asc;
(2)查询学生的选课成绩合格的课程成绩。
程序:Select score
from choices
where score>'59';
(3)查询课时是48或60的课程的名称。
程序:select cname
from courses
where hour='48'or hour='60';
(4)查询所有课程名称中含有data的课程编号。
程序:select cid
from courses
where cname like'%data%';
(5)查询所有选课记录的课程号(不重复显示)。
程序:select distinct cid
from choices;
(6)统计所有教师的平均工资。
程序:select avg(salary)
C语言程序设计实验五答案
int m=0,i;
for (i=1;i<=n;i++)
{
if(i%2==1)
m+=i;
else
m-=i;
}
return m;
}
void main()
{
printf("m=%d\n",fun(10));
}
(2)程序改错题
下列程序的功能是利用自定义函数计算一无符号的整数各位数字的乘积。
#include<stdio.h>
答:
#include <stdio.h>
#include <math.h>
int f(int m,int n)
{
int i;
for(i=1;;i++)
{
if(m==n)break;
if(m>n)
m=m-n;
else
n=n-m;
}
return n;
}
int g(int x,int y,int z)
{
int i;
{
int a,b=0;
char c;
while((c=getchar())!='\n')
{
a=f(c);
b=b*10+a;
}
printf("%d\n",b);
实验5天然水的净化
■实验5天然水的净化★预备知识
1、答:①一杯浑浊的河水放置一段时间后,底部有沉淀,上面的水变得相对澄清,但是仍有一些悬浮物。②烧水用的水壶使用较长时间后内壁会有一层土黄色的物质。③这层物质是在加热水后产生的,应当是水中的可溶性钙镁化合物分解产生的,既然原来有可溶性钙镁化合物,那么原来就不是纯净物,原来的水就是硬水。
2、答:使一杯浑浊的河水变澄清,可以使用以下方法:
①加入明矾,利用吸附作用变成沉淀;②活性炭吸附杂质;
③蒸馏法;④过滤。但最好的方法是:先加明矾吸附不溶性颗粒,静置,然后过滤,再加入活性炭吸附颜色和气味,然后过滤。(这样就澄清了)
3、答:①过滤目的是把不溶于液体的固体物质跟液体分离开来的一种混合物分离,常用来分离不溶于液体的固体物质跟液体。②实验室进行过滤操作需要用到的仪器有烧杯、分液漏斗、玻璃棒、铁架台和滤纸。③操作时要注意事项:一贴:滤纸紧贴漏斗内壁;二低:滤纸边沿低于漏斗边沿;过滤液边沿低于滤纸边沿;三靠:玻璃棒尖端紧靠滤纸三层处;烧杯嘴部紧靠玻璃棒;漏斗颈部紧靠烧杯内壁。
4、答:(1)自来水厂净化水的处理过程可表示为:取水→沉降→过滤→吸附→消毒→送水。
(2)因为加入絮凝剂(明矾)的作用是吸附水中的杂质,使其沉降。
【注:理解,下图是自来水厂净水过程示意图,试回答下列问题:
(1)自来水厂采用了哪些净水方法?
(2)加絮凝剂(明矾)的作用是什么?
(3)活性炭吸附池的作用是什么?
A分析:(1)根据图示,自来水厂生产自来水时,使用的净水方法有沉淀、过滤、吸附等方法.
(2)加入絮凝剂(明矾)的作用是吸附水中的杂质,使其沉降.
实验5:电流表和电压表的改装(答案)
2018届高考物理一轮复习第九章恒定电流第7讲:实验5:电流表和电压表的改装(参考答案)
一、知识清单
1.【答案】
2.【答案】
3.【答案】
4.【答案】
5.【答案】
6.【答案】
二、例题精讲
7.【答案】A
8.【答案】C
的电流为流过电流表电流【解析】当接线柱1、2接入电路时,R1与电流表并联,由于R1=R A
2,可知流过R1
的2倍,所以1、2接线柱间的电流为通过电流表电流的3倍,所以每一小格是原来的3倍,即为0.06 A,所以A、B错误;当接线柱1、3接入电路时,电流表与R1并联,然后再与R2串联,串联电阻对电流无影响,与1、2接入电路的效果一样,所以每一小格表示0.06 A,C正确,D错误.
9.【答案】D
【解析】电压表由表头G和电阻R串联而成,发现此电压表的读数比准确值稍微小一些,说明加上相同电压时,要使电流适当大些,故需要略微减少电阻R的值,可以与电阻R并联电阻实现,但电压表的读数比准确值稍微小一些,故并联电阻要比R大得多,故ABC错误,D正确;故选:D.
10.【答案】C
11.【答案】BC
【解析】A1、A2并联,表头的电压相等,电流相等,指针偏转的角度相同,所以A1、A2的指针偏转角度之比为1∶1,量程不同的电流表读数不同,电流表A1的量程为3 A,A2的量程为0.6 A,当偏转角度相同时,A1、A2的读数之比为5∶1,故B、C正确。
三、例题精讲
12.【答案】(20),(180)
13.【答案】(2900),(14900)
四、例题精讲
14.【答案】(1)100 910 2 000(3分。每空1分)(2)50 (2分)(3)M(2分)(4)大于(2分)
实验5数组--习题及答案
实验5 数组
班级:学号:
姓名:日期:
一、实验目的
(1)掌握一维数组和二维数组的定义、赋值和输入输出方法;
(2)掌握字符数组和字符串函数的使用;
(3)掌握与数组有关的算法(特别是排序算法)。
二、实验内容
1.阅读下面程序,写出程序运行结果,并且上机进行验证。
(1) #include "stdio.h"
void main()
{
int i,n[4]={0,0,0,0};
for(i=1;i<4;i++)
{
if (i==3) break;
n[i]=n[i-1]+1;
}
printf("n[i-1]=%d n[i]=%d\n",n[i-1],n[i]);
}
(2)#include "stdio.h"
void main()
{
char ch[]={'0','1','2','3','4','5','6','7','8','9'};
int i=0,m=2,r,x=42; char b[80];
while(x)
{
r=x%m; x/=m;
b[i++]=ch[r];
}
for(--i;i>=0;i--)
printf("%c",b[i]);
printf("\n");
}
(3)#include "stdio.h"
void main()
{
int a[][3]={9,7,5,3,1,2,4,6,8};
int i,j,s1=0,s2=0;
for(i=0;i<3;i++)
for(j=0;j<3;j++)
{
if(i==j) s1=s1+a[i][j];
if(i+j==2) s2=s2+a[i][j];
}
printf("s1=%d s2=%d",s1,s2);
高中化学人教版(2019)选择性必修一实验活动5 制作简单的燃料电池(学案)(含答案)
人教版(2019)选择性必修1
第四章化学反应与电能
实验活动5 制作简单的燃料电池
学习目标
1.理解燃料电池的工作原理。
2.设计和制作一个氢氧燃料电池。
自主预习
【实验用品】
U形管、石墨棒(石墨棒使用前应该经过烘干活化处理)、3~6 V的直流电源、鳄鱼夹、导线和开关、电流表(或发光二极管、音乐盒等)。
1 mol·L-1 Na2SO4溶液、酚酞溶液。
【实验过程和结论】
1.电解水。
在U形管中注入1 mol·L-1 Na2SO4溶液,然后向其中滴加1~2滴酚酞溶液。在U形管的两边分别插入一根石墨棒,并用鳄鱼夹、导线连接电源。闭合K1,接通直流电源开始电解,观察现象。
实验现象:
实验分析:
【微思考1】用惰性电极电解硫酸钠溶液时,为何实质上是电解水?
【微思考2】电解水时,为什么选用硫酸钠溶液而不用蒸馏水?
2.制作一个氢氧燃料电池。
当上述电解过程进行1~2 min后,打开K1,断开直流电源。将两根石墨
棒用导线分别与电流表(或发光二极管、音乐盒等)相连,闭合K2,观察现象。实验现象:
实验分析:
课堂练习
1.一种以甲醇为燃料、强碱溶液作电解质溶液的新型手机电池,充满电后可连续使用一个月,其电池反应为2CH3OH+3O2+4OH-===2CO32-+6H2O,则下
列有关说法正确的是()
A.放电时,CH3OH参与反应的电极为正极
B.放电时,负极的电极反应为CH3OH+8OH--6e-===CO32-+6H2O
C.标准状况下,通入5.6 L O2并完全反应后,转移了0.5 mol电子
D.放电一段时间后,通入氧气的电极附近溶液的pH降低
实验5 循环结构程序设计(参考答案)
实验五循环结构程序设计(参考答案)[实验任务一]:
程序跟踪调试实例5-1:error5_1.c参考答案
程序跟踪调试实例5-2:error5_2.c参考答案
程序跟踪调试实例5-3:factor.c参考答案
[实验任务二]:
程序填空实例5-1:for_c.c参考答案
程序填空实例5-1:while_c.c参考答案
程序填空实例5-1:do_while.c 参考答案
程序填空实例5-2:aliqout1.c 参考答案
程序填空实例5-2:aliqout2.c 参考答案
程序填空实例5-3:diamond.c 参考答案
程序填空实例5-5:aliquot3.c 参考答案
[实验任务三]:
编程实例5-1:while2.c参考答案
编程实例5-1:until.c参考答案
编程实例5-2:picture1.c参考答案
编程实例5-2:picture2.c参考答案
[实验任务四]:
设计程序实例5-1:zuhe.c参考答案(第一种方法)
设计程序实例5-1:zuhe.c参考答案(第二种方法)
设计程序实例5-2:comma.c参考答案
设计程序实例5-3:traffic.c参考答案
设计程序实例5-4:magic.c参考答案
设计程序实例5-5:guess1.c参考答案
#include <stdio.h>
#include <stdlib.h>
#include <time.h> /*将函数time所需要的头文件time.h包含到程序中*/
main()
{
int magic; /*计算机“想”的数*/
int guess; /*人猜的数*/
实验5 查询的创建(答案)
实验5 查询的创建
实验时间:_________________ 实验地点:_________________ 【实验目的】
1. 掌握使用简单查询向导和设计视图创建查询。
2. 掌握条件查询的创建、运行和修改查询的方法。
3. 掌握排序查询的结果方法。
【实验内容】
1.使用查询向导创建查询实现单表查询:查询学生信息表,显示学生的学号、姓名和班级编号。
1、打开“教务管理”数据库,并在数据库窗口中选择“创建”选项卡中的“查询”选项组。
2、单击“查询向导”---“新建查询”------“简单查询向导”----“确定”,打开“简单查询向导”。
3、“表/查询”----“表:学生信息”------分别选择学号、姓名、班级编号-----单击“>”按钮,将其添加入“选定的字段”。
4、单价“下一步”-----在文本框中输入“学生基本信息查询”-----选中“打开查询查看信息”----单击完成。
2. 利用查询设计视图创建单表查询:查询学生信息表,并显示学号、姓名和班级编号。
1、选择创建选项组中的“创建”----选定查询设计器。
2、在查询设计器中添加学生信息表,选择学号、姓名、班级编号三个字段。
3、点击运行,查看查询结果。
4、点击保存按钮,在弹出对话框中输入查询的名称。
3. 使用查询设计视图创建单表条件查询
查询总成绩大于或等于80的学号、课程代码和总成绩。步骤如下:
1、选择创建选项组中的“创建”----选定查询设计器。
2、在查询设计器中添加学生成绩表,选择学号、课程代码、总成绩三个字段。
3、在总成绩字段下的条件选项中设定“>=80”.
实验五 参考答案 计算机C语言
实验四参考答案(参考答案)
(1) 设计程序sy5-1.c,从键盘上输入一个3行3列矩阵各个元素的值,输出其主对角线元素和反向对角线元素之和。
算法分析:
对角线上的元素,1维和2维下标相同,反对角线元素,如果行下标为i,列下标就为2-i;
参考答案:
#include<stdio.h>
int main()
{
int a[3][3]={{1,2,3},{4,5,6},{7,8,9}};
int i,j,sum=0;
for(i=0;i<3;i++)
sum=sum+a[i][i]+a[i][2-i]; //a[i][i]当前行的主对角线元素
//a[i][2-i]当前行的反对角线元素printf("矩阵的正、反对角线元素之和为:%d\n",sum);
return 0;
}
运行结果:
(2) 设计程序sy5-2.c,找出一个3×4的矩阵中的最小值及其位置。
算法分析:
首先把二维数组中的第一个数即a[0][0]看成最小值,然后逐行逐列的去遍历每个元素,逐一判断每一个元素是否比最小值还好小,如果是,就改写最小值,并记录他的下标。
参考答案:
#include<stdio.h>
#include<math.h>
int main()
{
int a[3][4]={{10,21,41,5},{12,15,46,35},{40,21,26,30}};
int i,j,row,colum,min;
printf("数组a:\n");
for(i=0;i<3;i++)
{ for(j=0;j<4;j++)
实验活动5:一定溶质质量分数的氯化钠溶液的配制(含答案)
实验活动5:一定溶质质量分数的氯化钠
溶液的配制(含答案)
顺平县腰山镇中学学生化学实验报告单
实验题目:实验活动5:一定溶质质量分数的氯化钠溶液的配制
班级:日期:指导教师:
第组姓名:同组人:
【实验目的】
1、练习配制一定溶质质量分数的溶液。
2、加深对溶质的质量分数概念的理解。
【实验用品】
托盘天平、烧杯、玻璃棒、药匙、量筒、胶头滴管。
氯化钠、蒸馏水。
【实验步骤】
1、配制质量分数为6%的氯化钠溶液。
(1)计算:配制50g质量分数为6%的氯化钠溶液所需氯化钠和水的质量分别为:氯化钠3g;水47g。
(2)称量:用托盘天平称量所需的氯化钠,放入烧杯中。
(3)量取:用量筒量取所需的水(水的密度可近似看做1g/cm3),倒入盛有氯化钠的烧杯中。
(4)溶解:用玻璃棒搅拌,使氯化钠溶解。
整个配制过程以下图所示。
图9-21配制肯定溶质质量分数的溶液
2、配制质量分数为3%的氯化钠溶液。
用已配好的质量分数为6%的氯化钠溶液(密度约为1.04g/cm3),配制50g质量分数为3%的氯化钠溶液。
(想一想:由浓溶液配制稀溶液时,计算的依据是什么?)溶液稀释前后,溶质的质量稳定
(1)计算:配制50g质量分数为3%的氯化钠溶液所需质量分数为6%的氯化钠溶液和水的质量分别
1为:6%的氯化钠溶液25g(体积24mL);水25g。
(2)量取:用量筒量取所需的氯化钠溶液和水,倒入烧杯中。
(3)混匀:用玻璃棒搅拌,使溶液混合均匀。
3、把配制好的上述两种氯化钠溶液划分装入试剂瓶中,盖好瓶塞并贴上标签(标签中应包括药品名称和溶液中溶质的质量分数),放到试剂柜中。
实验(5)-循环结构-参考答案
C语言程序设计实验教学(5)
【实验目的】通过程序设计实现,掌握while结构、do-while结构和for结构各种类型的循环结构,完成各种循环程序的设计和实现。
【实验要求】同一个题目尝试使用多种循环控制结构来实现,并分析其设计和实现的差别和难易程度。
【实验课时】6.0
【实验内容】
一、以下程序使用while结构实现。
1、完成课堂实例的实现。
(1)计算s=1+2+…+100。(累加型)
main()
{int i=1,sum=0;
while(i<=100)
{sum+=i; i++;}
printf("1+2+3+...+100=%d\n",sum);
}
main()
{int i,sum=0;
for(i=1;i<=100;i++)
sum+=i;
printf("1+2+3+...+100=%d\n",sum);
}
(2)请输入数n,计算n!。(连乘型)
main()
{int i=1,n; long fac=1;
scanf("%d",&n);
while(i<=n)
{fac*=i; i++;}
printf("%d!=%ld\n",n,fac);
}
main()
{int i,n; long fac=1;
scanf("%d",&n);
for(i=1;i<=n;i++)
fac*=i;
printf("%d!=%ld\n",n,fac);
}
(3)输出所有的水仙花数。(范围型)
main()
{int n=100,a,b,c;
while(n<=999)
{a=n/100;
b=n/10%10;
c=n%10;
C语言实验报告实验五参考答案
C语言实验报告实验五参考答案实验五一维数值数组(参考答案)
1、设计程序sy5-1.c,计算n门课程的平均分。例如:若有5门课程的成绩是:90.5.72.80.61.5.55,则平均分是:71.80.
算法分析:
先求n门课的成绩总和,(累加求和),再用累和除以课程数。
参考答案:
include
void main()
double score[30]。sum=0,aver;
int n,i;
printf("Inputn:");
scanf("%d",&n);
printf("请依次输入%d门课程的成绩",n);
for(i=0;i<n;i++)
scanf("%lf",&score[i]);
sum=sum+score[i];
aver=sum/n;
printf( "\nAverage scoreis: %5.2f\n"。aver);
运行结果:
2、设计步伐sy5-2.c,对输入的10个整数按倒序寄存后输出成效。
算法阐发:
利用“半数交流”算法,最前面的元素和末了面的元素交流,逐步向中央挨近。可利用两个下标变量i和XXX。
参考答案:
include
int main()
int a[10]={1,2,3,4,5,6,7,8,9,10};
int i,j,t;
for( i=0,j=9.i<j。i++,j--)//逐一向中,交换。直到已没有元素没交换
t=a[i]。a[i]=a[j]。a[j]=t;}// a[i]-数组前端的数,a[j]-数组后端的数
printf("交流后数组元素是:");
for(i=0;i<10;i++)
人教版九年级下册化学第九单元实验活动5一定溶质质量分数的氯化钠溶液的配制(习题)(带答案)
实验活动5一定溶质质量分数的氯化钠溶液的配制
01实验报告
【实验目的】
1.练习配制一定溶质质量分数的溶液。
2.加深对溶质质量分数概念的理解。
【实验用品】
托盘天平、烧杯、玻璃棒、量筒、药匙、胶头滴管、细口试剂瓶。
氯化钠、水。
【实验步骤】
1.配制50 g质量分数为6%的氯化钠溶液
(1)计算:所需氯化钠的质量为__3__g;水的体积为__47__mL。
(2)称量、量取:用天平称取所需的氯化钠,并放入烧杯中;用50 mL__量筒__量取所需的水,倒入盛有氯化钠的烧杯中。
(3)溶解:用__玻璃棒__搅拌,使氯化钠全部溶解。
(4)装瓶贴标签:把配制好的溶液装入试剂瓶,并在试剂瓶上贴上标签(标签上注明试剂的__名称__和__溶质质量分数__)。
2.用质量分数为6%的氯化钠溶液(密度为1.04 g/cm3)配制50 g质量分数为3%的氯化钠溶液
(1)计算:所需质量分数为6%的氯化钠溶液的质量为__25__g(体积为__24__mL),水的质量为__25__g(体积为__25__mL)。
(2)量取:用50 mL__量筒__量取所需的氯化钠溶液和水,倒入烧杯中。
(3)混匀:用__玻璃棒__搅拌,使溶液混合均匀。
(4)装瓶贴上标签。(同上)
【问题与交流】
1.在溶解的操作中玻璃棒的作用是什么?
解:搅拌,加快氯化钠的溶解速率。
2.本次实验中,如果出现配制的溶液溶质质量分数小于6%,你认为可能是什么原因造成的?
解:(1)在称量的过程中,药品和砝码放反了(用了游码);(2)用量筒量取水时,仰视读数;(3)烧杯中有水;(4)氯化钠中有杂质;(5)氯化钠倒入烧杯时没有完全倒出等(合理即可)。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验五 连续系统分析
一、实验目的
1.深刻理解连续时间系统的系统函数在分析连续系统的时域特性、频域特性及稳定性中的重要作用及意义,掌握根据系统函数的零极点设计简单的滤波器的方法。
2.掌握利用MATLAB 分析连续系统的时域响应、频响特性和零极点的基本方法。
二、实验原理及内容
MATLAB 提供了许多可用于分析线性时不变连续系统的函数,主要包含有系统函数、系统时域响应、系统频域响应等分析函数。
1. 连续系统的时域响应
连续时间LTI 系统可用如下的线性常系数微分方程来描述:
)
()( )()(01)1(1)(t y a t y a t y a t y a n n n n ++++--
)()( )()(01)1(1)(t x b t x b t x b t x b m m m m ++++=-- 已知输入信号x (t )以及系统初始状态)0(,),0('),0()1(----n y y y ,就可以求出系统的响应。
MATLAB 提供了微分方程的数值计算的函数,可以计算上述n 阶微分方程描述的连续系统的响应,包括系统的单位冲激响应、单位阶跃响应、零输入响应、零状态响应和完全响应。
在调用MATLAB 函数时,需要利用连续系统对应的系数函数。对微分方程进行Laplace 变换即可得系统函数:
1110111)()()(a s a s a s a b s b s b s b s X s Y s H n n n n m m m m ++++++++==---- 在MATLAB 中可使用向量和向量分别保存分母多项式和分子多项式的系数:
],,,,[011a a a a a n n -= ],,,,[011b b b b b m m -=
这些系数均按s 的降幂直至s 0排列。
● 连续系统的单位冲激响应h (t )的计算
impulse(sys)计算并画出系统的冲激响应。 参数:sys 可由函数tf(b,a)获得。其中:
],,,,[011a a a a a n n -= ],,,,[011b b b b b m m -=
h=impulse(sys, t) 计算出系统在向量t 定义的区间上的冲激响应, 向
量h 保存对应区间的系统冲激响应的输出值。
● 连续系统的单位阶跃响应g (t )的计算
step(sys)计算并画出系统的阶跃响应。
参数:sys 可由函数tf(b,a)获得。其中:
],,,,[011a a a a a n n -= ],,,,[011b b b b b m m -=
g=step(sys, t) 计算出系统在向量t 定义的区间上的阶跃响应,向量g 保存对应区间的系统阶跃响应的输出值。
已知描述某连续系统的微分方程:
)(8)( '2)(6)( '5)("t x t x t y t y t y +=++,计算该系统的单位冲激响应h (t )和阶跃响应g (t )。t=(0:0.1:10)
程序如下
subplot(2,1,1);
t=0:0.1:10;
a=[1,5,6];
b=[2,8];
sys=tf(b,a);
h=impulse(sys,t);
plot(h);
subplot(2,1,2);
sys=tf(b,a);
g=step(sys,t);
plot(g);
程序运行结果如图
● 连续系统的零状态响应y (t )的计算
lsim(sys, x, t) 计算并画出系统的零状态响应。
参数: sys 可由函数tf(b,a)获得
x 为输入信号
t 为定义的时间向量。
已知描述某连续系统的微分方程:)(8)( '2)(6)( '5)("t x t x t y t y t y +=++,计算在输入)(e )(t u t x t -=为时系统的零状态响应。t=(0:10/300:10)
t=0:10/300:10;
a=[1,5,6];
b=[2,8];
sys=tf(b,a);
x=exp(-t)
y=lsim(sys,x,t);
plot(t,y);
程序运行结果如图:
2.连续系统的系统函数零极点分析
连续LTI 系统的系统函数H (s )可以表示为部分分式形式:
)
)...()(())...()(()()()(2121n m p s p s p s z s z s z s k s D s N s H ------== 设n m ≤,且H (s )的极点p i 全部为单极点,则:
∑=-=n
i i i p s k s H 1)( )()(1t u e k t h t p n i i i ∑== 系统函数H (s )的极点p i 决定了冲激响应h (t )的基本形式,而零点和极点共同确定了冲激响应h (t )的幅值k i 。
MATLAB 中提供了roots 函数计算系统的零极点,提供了pzmap 函数绘制连续系统的零极点分布图。
其中:],,,,[011a a a a a n n -= ],,,,[011b b b b b m m -=
roots(b):求b 的特征根;
roots(a):求a 的特征根
pzmap(sys): sys 可由函数tf(b,a)获得
已知某连续系统的系统函数为:1
22132)(232+++++=s s s s s s H 计算其零极点,画出分布图。