当前位置:文档之家› 《数字信号处理》上机实验指导书

《数字信号处理》上机实验指导书

《数字信号处理》上机实验指导书
《数字信号处理》上机实验指导书

实验1 离散时间信号的产生

1. 实验目的

数字信号处理系统中的信号都是以离散时间形态存在,所以对离散时间信号的研究是数字信号处理的基本所在。而要研究离散时间信号,首先需要产生出各种离散时间信号。MATLAB 是一套功能强大的工程计算及数据处理软件,广泛应用于工业,电子,医疗和建筑等众多领域。使用MATLAB 软件可以很方便地产生各种常见的离散时间信号,而且它还具有强大的绘图功能,便于用户直观地输出处理结果。

通过本实验,学生将学习如何用MATLAB 产生一些常见的离散时间信号,并通过MATLAB 中的绘图工具对产生的信号进行观察,加深对常用离散信号的理解。

2. 实验要求

本实验要求学生运用MATLAB 编程产生一些基本的离散时间信号,并通过MATLAB 的几种绘图指令画出这些图形,以加深对相关教学内容的理解,同时也通过这些简单的函数练习了MATLAB 的使用。

3. 实验原理

(1)常见的离散时间信号

1)单位抽样序列,或称为离散时间冲激,单位冲激:

???=0

1

)(n δ

≠=n n 如果)(n δ在时间轴上延迟了k 个单位,得到)(k n -δ即:

?

??=-01)(k n δ

0≠=n k

n

2)单位阶跃序列

??

?0

1)(n u 00<≥n n 在MATLAB 中可以利用ones( )函数实现。

);,1(N ones x =

3)正弦序列

)(cos )(0φω+=n A n x

这里,,,0ωA 和φ都是实数,它们分别称为本正弦信号)(n x 的振幅,角频率和初始相位。πω200=f 为频率。

4)复正弦序列

n j e n x ω=)(

5)实指数序列

n A n x α=)(

(2)MATLAB 编程介绍

MATLAB 是一套功能强大,但使用方便的工程计算及数据处理软件。其编程风格很简洁,没有太多的语法限制,所以使用起来非常方便,尤其对初学者来说,可以避免去阅读大量的指令系统,以便很快上手编程。值得注意得就是,MATLAB 中把所有参与处理的数据都视为矩阵,并且其函数众多,希望同学注意查看帮助,经过一段时间的训练就会慢慢熟练使用本软件了。关于更多的MATLAB 介绍,请大家查阅MATLAB 有关书籍及MATLAB 软件中的帮助。

本实验中使用到一些MATLAB 的基本函数,其中包括对矩阵操作的函数ones( )、pi 、rand( )、randn( )、zeros( ),基本函数 cos( ), exp( ), imag( ), real( ),数据分析函数sum( ),二维图形处理函数axis 、grid 、legend 、plot 、stem 、title 、xlabel 、ylabel 及通用功能图形函数clf 、subplot 等。 1)单位采样

长度为N 的单位采样序列u(n)可以通过下面的MATLAB 命令获得:

u=[1 )1,1(-N zeros ];

延迟M 个采样点的长度为N 的单位采样序列ud(n)(M

d=[),1(M zeros 1 )1,1(--M N zeros ];

2)单位阶跃序列

长度为N 的单位阶跃序列s(n)可以用下面的MATLAB 命令获得:

)];,1([N ones s =

延迟的单位阶跃序列可以使用类似于单位采样序列的方法获得。 3)正弦序列

长度为N 的正弦序列在MATLAB 中实现:

)

/***2cos(*1

:0phase Fs n f pi A x N n +=-=

4)指数序列

长度为N 的指数序列在MATLAB 中实现:

)

**exp(1:0n j x N n ω=-=

5)实指数序列

长度为N 的实指数序列在MATLAB 中实现:

n

a x N n .^1

:0=-=

6)随机序列

长度为N 的随机序列在MATLAB 中实现:

);,1(N rand x =

4.实验内容

编制程序产生前5种信号(长度可输入确定),并利用MATLAB 中的基本图形函数绘出其图形。

实验2 离散时间系统的差分方程、冲激响应

和卷积分析

1. 实验目的

线性时不变(LTI )离散时间系统在时域可以通过常系数线性差分方程来描述,而系统的冲激响应也从时域反应了一个LTI 离散时间系统的特点。本实验通过使用MATLAB 函数对一些简单的离散时间系统的时域特性进行仿真,以加深对离散时间系统的差分方程、冲激响应和卷积分析方法的理解。

2. 实验要求

编制程序求解以如下常系数线性差分方程形式给定的系统的单位冲激响应和阶跃响应,并绘出其图形;给出理论计算结果和程序计算结果并讨论。并基于前面计算出的冲击响应序列,计算当输入为390),2.0cos(][≤≤=n n n x π时,这两个系统的输出y[n]。

]1[][]2[125.0]1[75.0][--=-+-+n x n x n y n y n y ]}

4[]3[]2[]1[{25.0][-+-+-+-=n x n x n x n x n y

3. 实验原理

(1)线性时不变离散时间系统基本知识:

线性时不变离散时间系统如图1所示,其中][n x 表示系统的输入,][n y 表示系统的输出。系统就是某种运算T[·],对输入的数字信号][n x 进行处理,得到要求的输出][n y ,比如进行卷积,相关,滤波,调制解调等。

图1 LTI 离散时间系统输入输出关系图

其输入、输出关系可用以下常系数线性差分方程描述:

∑=∑=-=-M k k N k k k n x p k n y d 0

0][][

将输入信号分解为冲激信号的线性组合:∑-=∞

-∞

=m m n m x n x ][][][δ。记LTI

离散时间系统单位冲激响应为][n h ,则系统响应为如下的卷积计算式:

∑∞

-∞

=-=

*=m m n h m x n h n x n y ][][][][][

当N k d k ,...,2,1,0==时,][n h 是有限长度的(n :[0,M]),称系统为有限冲击响应(FIR )系统;反之,则称系统为无限冲击响应(IIR )系统。

(2)MATLAB 编程介绍

在MATLAB 中,可以用函数y=filter(p,d,x) 求解差分方程,可以用函数 y=conv(x,h)计算卷积,还可以用函数impz(p,d,N)计算冲击响应。

1)函数filter :可以用来仿真由常系数线性差分方程给出的LTI 离散时间系统。本函数有多种使用形式。若我们定义

p=[p 1 p 2 … p M ], d=[d 1 d 2 … d N ],

则y=filter(p,d,x)的结果就为当输入矢量x 作用在本LTI 离散时间系统上的零初始状态输出矢量,其长度与x 的长度相同。

2)函数conv :可以用来计算两个序列的线性卷积结果,参与卷积的两序列均以矢量形式给出。

3)函数impz:可以用来计算由常系数线性差分方程给出的LTI 离散时间系统的冲击响应序列的采样点。y=impz(p,d,N)可计算冲击响应序列的前N 个采样点。

4.实验内容

编制程序计算实验要求中给出的LTI 离散时间系统的冲击响应序列,阶跃响应及给定输入的响应。

实验3 离散时间信号的频域分析

1. 实验目的

信号的变换域分析是信号处理中一种有效的工具。在离散信号的时域分析中,我们通常将信号表示成单位采样序列][n δ的线性组合,而在频域中,我们将信号表示成复变量n

j e

ω-或n N

j

e

π2-的线性组合。通过这样的表示,可以将时域的离

散序列映射到频域以便于进一步的处理。

在本实验中,将学习利用MATLAB 计算离散时间信号的DTFT 和DFT ,并加深对其相互关系的理解。

2. 实验要求

(1) 对形式为ω

ωω

ωωωω

jN N j jM M j j j j e

d e d d e p e p p e D e p e X ----++++++==......)()()(1010的序列DTFT 编程进行计算,绘出一个周期中其实部,虚部,幅度及相角的图形。

(2) 计算常见序列的DFT 和IDFT ,绘出其幅度谱图形。并解释DTFT 和DFT 的

关系。

(3) 利用DFT 的快速算法FFT 计算线性卷积。

3. 实验原理

(1)DTFT 和DFT 的定义及其相互关系

序列x[n] 的DTFT 定义:∑=∞

-∞

=-n jn ωj ω

x[n]e )X(e

它是关于自变量ω的复函数,且是以π2为周期的连续函数。)X(e j ω

可以表示为:

)(e jX )(e X )X(e j ωim j ωre j ω+=

其中,)(e

X j ω

re 和)(e X j ωim 分别是)X(e j ω的实部和虚部;还可以表示为:

)(ωj j ωj ωe )X(e )X(e θ=

其中,)X(e

j ω

和}arg{)()X(e j ω=ωθ分别是)X(e j ω的幅度函数和相位函数;

它们都是ω的实函数,也是以π2为周期的周期函数。 序列x[n]的N 点DFT 定义:

∑∑-=-=-===10

1

22][][)(][N n kn

N

N n kn N

j

k N

j

W n x e

n x e

X k X ππ

][k X 是周期为N 的序列。

)X(e j ω与][k X 的关系:][k X 是对)X(e j ω在一个周期中的谱的等间隔N

点采样,即:

k N

j ω)X(e k X πω2|

][=

=,

而)X(e j ω

可以通过对][k X 内插获得,即:

]2/)1)][(/2([1

)

22sin()

22sin(

]

[1

----=?--=

∑N N k j N k j ωe N

k N k

N k X N

)X(e πωπωπω 1)使用到的MATLAB 命令

i. 基于DTFT 离散时间信号分析函数:freqz ,real ,imag ,abs ,angle ,

unwrap 。

函数freqz 可以用来计算一个以ωj e 的有理分式形式给出的序列的DTFT 值。freqz 的形式多样,常见的有H=freqz(num,den,w),其中num 表示序列有理分式DTFT 的分子多项式系数,den 表示分母多项式系数(均按z 的降幂排列),矢量w 表示在0~π2中给定的一系列频率点集合。freqz 函数的其他形式参见帮助。在求出DTFT 值后,可以使用函数real, imag, abs 和angle 分别求出并绘出其实部,虚部,幅度和相位谱。如果需要,还可以用unwrap 函数消除相位中的跳变。

ii.

求解序列DFT 的函数:fft ,ifft 。

函数fft(x)可以计算R 点序列的R 点DFT 值;而fft(x,N)则计算R 点序列的N 点DFT ,若R>N ,则直接截取R 点DFT 的前N 点,若R

4.实验内容

(1)编程计算并画出下面DTFT 的实部,虚部,幅度和相位谱。

ω

ωωω

ωωω

32323418.00388.12828.110518.01553.01553.00518.0)(j j j j j j j e

e e e e e e X ------+++++-= 观察其周期性及相位谱的连续性,如果不连续如何处理为连续?

(2)计算16点序列 150,16

5cos )(≤≤=n n n x π

的16点和32点DFT ,绘出幅度谱图

形,并绘出该序列的DFT 图形。

实验4 离散时间系统的变换域分析

1.

实验目的

线性时不变(LTI )离散时间系统的特性完全可以用其冲击响应序列h[n]来表示,则前面给出的离散时间信号的变换分析手段也可以用于离散时间系统的分析中。在LTI 的离散时间系统变换域分析中,我们常用传递函数H(z)和频率响应H(e jw )来表示系统。

本实验通过使用MATLAB 函数对离散时间系统的一些特性进行仿真分析,以加深对离散时间系统的零极点、稳定性,频率响应等概念的理解。

2. 实验要求

(1) 根据给定的差分方程或有理分式形式的传递函数求系统的零极点,绘制零

极点图并分析系统的稳定性。

(2) 给定系统的零极点及增益常数,求出系统的传递函数。

(3) 对以高阶有理分式形式给的系统传递函数进行一阶节或二阶节分解。 (4) 对给定的系统求频率响应,并绘出其实部,虚部,幅度和相位谱。

3. 实验原理

(1)线性时不变离散时间系统的变换域表示

LTI 离散时间系统的时域差分方程为:

∑∑==-=-M

k k N

k k

k n x p k n y d

)()(

1)传递函数

对上面的差分方程两边求z 变换,得:

∑∑∑∑=-=-=-=-=?

=N

k k

k

M

k k

k

M

k k k N

k k

k z d

z

p z X z Y z p z X z

d z Y 0

00

)

()

()()(

我们定义LTI 离散时间系统的输出的Z 变换Y(z)与输入的Z 变换X(z)的比值为该系统的传递函数,即)

()

()(z X z Y z H =

为系统的传递函数。

N

N M M z d z d d z p z p p z D z p z H ----++++++=

=......)()()(110110

分解因式 ∏-∏-=∑∑=

=-=-=-=-N

i i M

i i N

i i

k M

i i

k z z K

z

d z p z H 11

11

0)1()1()(λξ ,其中i ξ和i λ称为零、极点。

利用系统的传递函数)(z H ,我们可以分析系统的零极点,稳定性及实现结构等特点。

2)频率响应

因为大多数离散时间信号都可以分解为n j e ω的线性组合,所以研究输入n

j e ω-的响应具有极大的意义,即当输入为n j e n x ω=][时,输出为:

)()()(][)

(ωωωωωj n j m m

j n

j m n j m e H e e

m h e

e

m h n y ===

∑∑∞

-∞

=--∞

-∞

=

这里,∑∞-∞

=-=

n n

j j e

n h e H ωω

)()(是h(n)的DTFT ,称为LTI 离散时间系统的频率

响应。

利用系统的频率响应)(ωj e H ,我们可以分析系统对各种频率成分的响应特性,并推出系统的特性(高通,低通,带通,带阻,线性相位等)。

3)系统传递函数与频率响应之间的关系

从前面的推导可以看出,系统的传递函数是系统冲击响应序列的Z 变换,而系统的频率响应是冲击响应的DTFT ,因此传递函数)(z H 与频率响应)(ωj e H 的关系为:

ωωj e z j z H e H ==|)()(

ωωω

ωωωωjN N j jM M j j j j e

d e d d e p e p p e D e p e H ----++++++==......)()()(1010 (2) 使用到的MATLAB 命令

1)分析系统传递函数的函数:tf2zp ,zp2tf ,zplane ,zp2sos ,residuez 。 函数tf2zp 的使用形式为[z,p,k]=tf2zp(num,den),其中输入num,den 分别表示有理分式Z 变换的分子和分母多项式系数(按z 的降幂排列),输出为系统的零点,极点和增益因子。函数zplane 可以对输入的有理分式Z 变换的分子和

分母多项式或零极点坐标画系统的零极点图。zp2tf 的使用形式为[num,den]= zp2tf(z,p,k),其输入输出关系刚好与tf2zp 相反。函数zp2sos 的使用形式为sos=zp2sos(z,p,k),可以将一个用零极点及增益因子描述的系统分解为多个级联的二阶子系统。函数residuez 可以用来创建一个有理分式Z 变换的部分分式展开式。其使用形式有[r,p,k]=residuez(num,den)和[num,den]=residuez (r, p,k),前者输入为有理分式Z 变换的分子和分母多项式系数(按z 的降幂排列),输出的矢量r 表示留数和分子常数,矢量p 表示极点,矢量k 包含常数 η;而后者输入输出刚好相反。

另外还有根据系统的传递函数求冲击响应的函数impz ,filter 等,在LTI 离散时间系统的时域分析中都讨论过,这里就不再介绍了。

2)分析系统频率响应的函数:freqz ,real ,imag ,abs ,angle ,unwrap 。 由于系统的频率响应就是系统冲击响应序列的DTFT ,所以这些函数都是前面讨论过的求解离散时间信号DTFT 的函数。

4.实验内容

已知有一个由下式给定的LTI 离散时间系统:

5

4321543212336.09537.08801.14947.28107.110528.0797.01295.01295.00797/00528.0)(-----------+-+-+++++=

z z z z z z z z z z z H (1)要求由键盘实现系统参数输入,并绘出幅频和相频响应曲线和零、极点分布图,进而分析系统的滤波特性和稳定性。 (2)求出其二阶级联实现结构。

实验5 数字滤波器的设计

1. 实验目的

从理论上讲,任何的线性时不变(LTI )离散时间系统都可以看做一个数字滤波器,因此设计数字滤波器实际就是设计离散时间系统。数字滤波器包括IIR (无限冲击响应)和FIR (有限冲击响应)型,在设计时通常采用不同的方法。

本实验通过使用MATLAB 函数对数字滤波器进行设计和实现,同时也加深学生对数字滤波器的常用指标和设计过程的理解。

2. 实验要求

根据设计要求,给出IIR 数字滤波器参数和FIR 数字滤波器的冲激响应,绘出它们的幅度和相位频响曲线,并讨论它们各自的实现形式和特点。

3. 实验原理

(1)数字滤波器设计

1)数字滤波器设计步骤

a. 整理给定的滤波器设计要求,得到参数化描述,即通带,阻带截止频率p ω和

s ω,通带阻带纹波p δ和s δ等数据。

b. 寻找一个数字系统函数G(z),使其频率响应逼近设计要求。

c. 选择合适的滤波器结构对满足要求的传递函数G(z)进行实现。

2)滤波器设计中的注意事项

a. 设计要求的参数化:图1给出了一个典型的数字低通滤波器的幅频特性说明。

b. 滤波器类型选择:

在数字滤波器实现中可选择IIR 滤波器和FIR 滤波器两种。在实现相同幅频特性时,IIR 滤波器的阶数会相对FIR 滤波器的更低;而在实现中,对相同阶数的两种滤波器来看,对每个采样值所做的乘法数量,IIR 约为FIR 的两倍;另外,FIR 还可以方便地设计成线性相位滤波器。总的来说,IIR 滤波器除不能实现线性相位这一点外,由于阶数的原因,从计算复杂度上较FIR 滤波器有很大的优势,。

根据以上这些区别,结合实际的设计要求,就可以选择一款合适的滤波器。 c. 滤波器设计的方法:

由于IIR 滤波器和FIR 滤波器各自的结构特点,所以它们的设计方法也不一样。

在IIR 滤波器的设计中,常用的方法是:先根据设计要求寻找一个合适的模拟原型滤波器)(s H a ,然后根据一定的准则将此模拟原型滤波器转换为数字滤波器)(z G ,即为我们需要设计的数字滤波器。

在FIR 滤波器设计中,一般使用比较直接的方法:根据设计的要求在时域对理想的冲击响应序列进行加窗逼近,或从频域对需要实现的频率响应特性进行采样逼近然后进行反FFT 。 d. 滤波器阶数估计:

IIR 滤波器的阶数就等于所选的模拟原型滤波器的阶数,所以其阶数确定主要是在模拟原型滤波器设计中进行的。

FIR 滤波器阶数估计可以根据很多工程中的经验公式,这些公式可以直接从设计的参数要求中估计滤波器阶数。例如,对FIR 低通滤波器,已知通带截止频率p ω,阻带截止频率s ω,最大通带纹波p δ和最大最带纹波s δ,则可以使用下面的公式估计其阶数:

S ω - P ω - P ωS ω 通带 阻带 过渡带

图1.典型的数字LPF 幅频特性

π

ωωδδ2/)(6.1413)(log 2010p s s p N ---?

(2) 数字滤波器的设计方法

1)IIR 滤波器设计方法 a,冲击响应不变法

i,对满足设计要求的模拟原型滤波器)(s H a 进行部分分式展开为:

ii,基于 ,可以得到:

b,双线性变换法

i,对设计要求中给出的边界频率进行预畸处理,然后用得到的频率进行模拟滤波器设计,得到模拟原型滤波器)(s H a 。

Ii,用双线性变换法求出数字滤波器:1

111|)()(--+-==z z z a s H z G 。

2)FIR 滤波器设计方法 a,窗函数法

i,根据设计的要求选择合适的窗函数)(n w ,然后根据此窗计算阶数等参数N 。 ii,写出冲击响应序列的表达式:)()()(n w n h n h N d =,其中,)(n h d 为理想的冲击响应序列,一般为无限长的,)(n w N 为长度为N 的窗函数。

Iii,计算所得冲击响应序列)(n h 的DTFT ,然后验证其是否满足设计要求。 b,频率采样法

i,根据设计要求估算滤波器阶数N 。

ii,对要求的频率响应特性进行采样,获得N 个离散样点值H(k)。 iii,对H(k)求N 点IFFT ,得到所需要的滤波器冲击响应序列h(n)。 iiii,计算所得冲击响应序列)(n h 的DTFT ,然后验证其是否满足设计要求。

∑=-=

N

k k

k

a s

s A s H 1

)()0)(Re(max

()(nT h n g a =∑

=--=N

k T s k

z e A z G k 1

1

1)(

(3)使用到的MATLAB命令

IIR滤波器设计函数:butter, buttord, chebwin, cheb1ord, cheb2ord, cheby1, cheby2, ellip, ellipord。

例如:用下面的MATLAB命令可估算一个Butterworth滤波器的阶数:

[N, Wn] = buttord(Wp, Ws, Rp, Rs),

FIR滤波器设计函数:fir1, fir2, remez, remezord, kaiser, kaiserord, hanning, hamming, blackman。

4.实验内容

利用MATLAB编程设计一个数字带通滤波器,指标要求如下:

通带边缘频率:

π

ω45

.0

1

=

P,

π

ω65

.0

2

=

P,通带峰值起伏:]

[1dB

p

α。

阻带边缘频率:

π

ω3.0

1

=

S,

π

ω75

.0

2

=

S,最小阻带衰减:

]

[

40dB

S

α。

分别用IIR和FIR两种数字滤波器类型进行设计。

实验6 FFT 算法的应用

1.实验目的

离散傅氏变换(DFT )的目的是把信号由时域变换到频域,从而可以在频域分析处理信息,得到的结果再由逆DFT 变换到时域。FFT 是DFT 的一种快速算法。在数字信号处理系统中,FFT 作为一个非常重要的工具经常使用,甚至成为DSP 运算能力的一个考核因素。

本实验通过使用MATLAB 函数中的FFT 命令计算离散时间信号的频谱,以加深对离散信号的DFT 的理解及其FFT 算法的运用。

2. 实验要求

对实验内容中给定的序列求给定点数N 的FFT 和IFFT ,利用MATLAB 编程完成计算,绘出相应图形。并与理论计算相比较,说明实验结果的原因。

3. 实验原理

(1)基—2按时间抽取FFT 算法

对于有限长离散数字信号{x[n]},0 ≤ n ≤ N-1,其离散谱{x[k]}可以由离

散付氏变换(DFT )求得。DFT 的定义为

可以方便的把它改写为如下形式: 不难看出,W N 是周期性的,且周期为N ,即

W N 的周期性是DFT 的关键性质之一。为了强调起见,常用表达式W N 取代W 以便明确其周期是N 。

()1

,...,1,0][)2(

1

-==--=∑N k e

n x k X nk N

j N n π

()1

,...,1,0][1

0-==∑-=N k W n x k X nk

N

N n ...

2,1,0,))((±±==++l m W W nk N

lN k mN n N

由DFT 的定义可以看出,在x[n]为复数序列的情况下,完全直接运算N 点DFT 需要(N-1)2次复数乘法和N (N-1)次加法。因此,对于一些相当大的N 值(如1024)来说,直接计算它的DFT 所作的计算量是很大的。FFT 的基本思想在于,将原有的N 点序列序列分成两个较短的序列,这些序列的DFT 可以很简单的组合起来得到原序列的DFT 。例如,若N 为偶数,将原有的N 点序列分成两个(N/2)点序列,那么计算N 点DFT 将只需要约[(N/2)2 ·2]=N 2/2次复数乘法。即比直接计算少作一半乘法。因子(N/2)2表示直接计算(N/2)点DFT 所需要的乘法次数,而乘数2代表必须完成两个DFT 。上述处理方法可以反复使用,即(N/2)点的DFT 计算也可以化成两个(N/4)点的DFT (假定N/2为偶数),从而又少作一半的乘法。这样一级一级的划分下去一直到最后就划分成两点的FFT 运算的情况。比如,一个N = 8点的FFT 运算按照这种方法来计算FFT 可以用下面的流程图来表示:

x(0)

x(1)

x(2)

x(3)x(4)

x(5)

x(6)

x(7)

X(7)

X(6)X(5)X(4)X(3)X(2)

X(1)X(0)

关于蝶形结运算的具体原理及其推导可以参照讲义,在此就不再赘述。按频率抽取的FFT 的原理也可查阅相关资料,这里就不再推导了。

(2) 使用到的MATLAB 命令

函数fft(x)可以计算R 点序列的R 点DFT 值;而fft(x,N)则计算R 点序列的N 点DFT ,若R>N ,则直接截取R 点DFT 的前N 点,若R

零扩展为N 点序列再求N 点DFT 。函数ifft(X)可以计算R 点的谱序列的R 点IDFT 值;而ifft(X,N)同fft(x,N)的情况。

4.实验内容

(1) 计算一个实数序列[]1,0256x n n =≤≤的1024点FFT ,注意使用将此

序列组合成一复数序列后再计算的方法。

(2)

分别计算两个实数序列5()cos

,012816

x n n n π

=≤≤和5()sin

,012816

x n n n π

=≤≤的128点FFT ,

注意使用将此二序列组合成一复数序列后再计算的方法。

(3)

利用DFT 的方式计算下面两序列的线性卷积:

g[n]={3, 4, -2, 0, 1, -4},h[n]={1, -3, 0, 4, -2, 3}

2015VB实验指导书

计算机程序设计基础(VB)实验指导书主编:刘华伟 单位:信息工程学院

实验报告要求:每次实验要求写实验报告(word电子版),包括实验名称,实验目的,实验内容,所有主要界面(需把界面图贴上,用截图工具)和所有源程序(将代码复制粘贴到word报告里),每次上机课后的周五理论课对上机题目进行讲解,每次上机实验报告要求在上机内结束前提交,如果没做完最迟当天内提交给教师信箱458007844@https://www.doczj.com/doc/6f4994694.html, 只能用自己的邮箱在这个时间段提交。 提交格式:邮件名和word文件名均为: 公141班张三000000第1次作业 第一次上机课要做实验指导书中前两次实验的内容,将两次上机的实验报告都写在同一个word文档里提交。以后每次上机均做一次实验的内容。

实验一VB6.0环境和程序设计初步 一、实验目的 1.学会使用VB开发环境。 2.学会建立、编辑、运行一个简单的VB应用程序的全过程。 3.掌握变量的概念及使用。 4.通过程序实践结合课堂例子,理解类、对象的概念,掌握属性、事件、方法的应用。 二、实验内容: 1.熟悉VB开发环境的标题栏、菜单栏、工具栏、窗体窗口、属性窗口、工程资源管理器窗口、代码窗口、立即窗口、窗体布局窗口、工具箱窗口的位置以及用法。(此题不需要写实验报告) 2.编写一个四则运算的功能,在界面上输入两个数,并设置加减乘除四个按钮,点击不同的按钮,显示不同的运算结果。 步骤: (1)建立用户界面的对象。 (2)对象属性的设置。 (3)对象事件过程及编程。 (4)保存和运行程序

实验二选择结构程序设计 一、实验目的 1.掌握逻辑表达式的正确书写形式。 2.掌握单分支与双分支语句的使用。 3.掌握多分支条件语句的使用。 4.掌握情况语句的使用与多分支条件语句的区别。 二、实验内容 1.P272实验C的1,2题,界面按自己思路设计。其中第1题要求用两种方法实现。 2.在界面上输入4个数,求最大值和最小值并显示,要求用两种方法实现。提示:先编写求最大值的程序,然后再编写求最小值的程序。 3.输入三门功课的成绩,评定某个学生是否得奖学金。 评奖学金标准如下: 平均分大于95分或两门100分第三门不低于80分。

信号与系统实验指导书

实验一 常用信号分类与观察 一、实验目的 1、了解单片机产生低频信号源; 2、观察常用信号的波形特点及产生方法; 3、学会使用示波器对常用波形参数的测量。 二、实验内容 1、信号的种类相当的多,这里列出了几种典型的信号,便于观察。 2、这些信号可以应用到后面的“基本运算单元”和“无失真传输系统分析”中。 三、实验原理 对于一个系统特性的研究,其中重要的一个方面是研究它的输入输出关系,即在一特定的输入信号下,系统对应的输出响应信号。因而对信号的研究是对系统研究的出发点,是对系统特性观察的基本手段与方法。在本实验中,将对常用信号和特性进行分析、研究。 信号可以表示为一个或多个变量的函数,在这里仅对一维信号进行研究,自变量为时间。常用信号有:指数信号、正弦信号、指数衰减正弦信号、抽样信号、钟形信号、脉冲信号等。 1、正弦信号:其表达式为)sin()(θω+=t K t f ,其信号的参数:振幅K 、角频率ω、与初始相位θ。其波形如下图所示: 图 1-5-1 正弦信号 2、指数信号:指数信号可表示为at Ke t f =)(。对于不同的a 取值,其波形表现为不同的形式,如下图所示:

图 1-5-2 指数信号 3、指数衰减正弦信号:其表达式为 ?? ? ??><=-)0()sin()0(0)(t t Ke t t f at ω 其波形如下图: 图 1-5-3 指数衰减正弦信号 4、抽样信号:其表达式为: sin ()t Sa t t = 。)(t Sa 是一个偶函数,t = ±π,±2π,…,±n π时,函数值为零。该函数在很多应用场合具有独特的运用。其信号如下图所示:

《计算机图形学》新版实验指导书

湖北汽车工业学院实验报告 班级学号姓名 课程名称完成日期 实验一熟悉Visual C++绘图应用程序的开发过程 一、实验目的 1、熟悉VC6.0开发环境; 2、掌握MFC编程; 3、掌握CDC图形程序库; 4、掌握VC6.0下的简单图形程序的开发过程。 二、实验性质 验证性 三、实验要求 1、认真阅读本次实验的目的,了解本次实验要求掌握的内容; 2、能够根据实验指导书的要求,完成相关的内容; 3、务必掌握绘图程序的开发流程,为今后复杂的图形程序开发做好准备。 四、实验内容 (一)生成绘图应用程序的框架 开发绘图应用程序的第一步是使用AppWizard(程序生成向导)来建立程序的基本框架。AppWizard为框架的建立提供了一系列对话框及多种选项,用户可以根据不同的选项生成自己所需要的应用程序框架。具体步骤如下: 1、从“文件”菜单选择“新建”菜单项,在“新建”对话框中选择“工程”选项卡,从项目类型中选择MFC AppWizard(.exe)。在“位置”文本框中,可直接输入目录名称,或者单击“…”按钮选择已有的目录。在“工程名称”文本框中输入项目的名称,如Draw,其他采用默认值,这时确定按钮变亮,如下图所示:

2、单击确定按钮,弹出“MFC应用程序向导步骤1”对话框,如图所示,选择单文档单选按钮和“中文[中国]”选项,表示要生成以中文为用户界面的单文档(SDI绘图程序)。 3、点击下一步,在随后出现的几个对话框中,都点击下一步,表示采用各项的默认设置,直到出现“MFC应用程序向导步骤6”对话框,如图所示。

4、“MFC应用程序向导步骤6”对话框中默认设置确定了类得名称及其所在文件的名称。用户可以改CdrawApp、CmainFrame和CdrawDoc的文件名称,但不可以改变它们的基类。 单击完成按钮,应用程序向导显示将要创建的文件清单,再单击确定,MFC应用程序向导就自动生成绘图程序的各项源文件了。 MFC应用程序向导设置完后,点击组建按钮,然后再点击执行按钮,就会出现MFC 应用程序向导生成的完整应用程序的基本框架。

信号与系统实验指导书

信号与系统软件实验 指导书 《信号与系统》课程组 华中科技大学电子与信息工程系 二零零九年五月

“信号与系统软件实验”系统简介《信号与系统》是电子与通信类专业的主要技术基础课之一,该课程的任务在于研究信号与系统理论的基本概念和基本分析方法,使学生初步认识如何建立信号与系统的数学模型,如何经适当的数学分析求解,并对所得结果给以物理解释,赋予物理意义。由于本学科内容的迅速更新与发展,它所涉及的概念和方法十分广泛,而且还在不断扩充,通过本课程的学习,希望激发起学生对信号与系统学科方面的学习兴趣和热情,使他们的信心和能力逐步适应这一领域日新月异发展的需要。 近二十年来,随着电子计算机和大规模集成电路的迅速发展,用数字方法处理信号的范围不断扩大,而且这种趋势还在继续发展。实际上,信号处理已经与计算机难舍难分。为了配合《信号与系统》课程的教学、加强学生对信号与线性系统理论的感性认识,提高学生计算机应用能力,《信号与系统》课程组于2002年设计并开发了“基于MATLAB的信号与线性系统实验系统”。该实验系统是用MATLAB5.3编写的,包含十个实验内容,分别是:信号的 Fourier 分析、卷积计算、连续时间系统和离散时间系统的时域分析、变换域分析、状态变量分析、稳定性分析等,基本上覆盖了信号与线性系统理论的主要内容。通过这几年为学生们开设实验,学生们普遍反映该实验能够帮助他们将信号与系统中抽象的理论知识具体化,形象化。而且对于进一步搞清数学公式与物理概念的内在联系都很有帮助。 但是近两年我们进行了教学改革,更换了教材,原有的软件系统在内容的设计上就显现出一些不足;而且随着MATLAB版本的升级,该软件系统也陆续出现了一些问题,导致个别实验无法进行。在这样的背景下,我们设计并开发了一个新的基于MATLAB7.0的软件实验系统,利用MATLAB提供的GUI,使得系统界面更加美观;根据新教材的内容,设计并完善了实验内容;保留原有一些实验内容,但完善了功能,例如动态显示卷积过程,在任意范围显示图形等。 本系统包括七个实验,分别是:信号的时域基本运算、连续信号的卷积与连续时间系统的时域分析、离散信号的卷积与离散时间系统的时域分析、信号的频域分析、连续信号的采样与恢复、系统的频域分析、信号的幅度调制与解调。为了加强学生的计算机编程能力和应用能力,所有实验均提供设计性实验内容,让学生参与编程。 本系统既可作为教师教学的实验演示,又可作为学生动手实验的实验系统。 1. 安装本实验系统 本实验系统只能在 MATLAB 环境下运行,所以要求必须先安装 MATLAB7.0 以上版本的 MATLAB 软件,推荐安装MATLAB的所有组件。安装好MATLAB7.0之后,将本实验系统包含的文件夹 Signals&Systems 复制到MATLAB 的 work文件夹下即可。 2. 运行本实验系统 在 MATLAB 命令窗口下,键入启动命令 start,即可运行本实验系统,进入主实验界面。注意:如果MATLAB软件没有安装符号(Symbolic)、控制(Control)、信号(Signal)工具箱,运行过程中会有些命令无法识别。 start ↙ %启动命令 实验的运行过程中,需要实验者输入相应的参数、向量和矩阵,请参照本书中的格式输入。在输入向量时,数字之间用空格或逗号分隔,如输入离散序列

运筹学上机实验指导书.

运筹学上机实验指导书 重庆交通大学管理学院

目录 绪论 运筹学上机实验软件简介 第一章运筹学上机实验指导 §1.1 中小型线性规划模型的计算机求解 §1.2 大型线性规划模型的编程计算机求解 §1.3线性规划的灵敏度分析 §1.4运输问题数学模型的计算机求解 §1.5目标规划数学模型的计算机求解 §1.6整数规划数学模型的计算机求解 §1.7 指派问题的计算机求解 §1.8最短路问题的计算机求解 §1.9最大流问题的计算机求解 第二章LINGO软件基础及应用 §2.1 原始集(primitive set)和派生集(derived set)与集的定义 §2.2 LINGO中的函数与目标函数和约束条件的表示 §2.3 LINGO中的数据 §2.4 LINDO简介

第三章运筹学上机实验及要求 实验一.中小型线性规划模型的求解与Lingo软件的初步使用实验二.中小型运输问题数学模型的Lingo软件求解。 实验三.大型线性规划模型的编程求解。 实验四.运输问题数学模型的Lingo编程求解。 实验五.分支定界法上机实验 实验六.整数规划、0-1规划和指派问题的计算机求解 实验七:最短路问题的计算机求解 实验八:最大流问题的计算机求解 实验九:运筹学综合实验

绪论 运筹学是研究资源最优规划和使用的数量化的管理科学,它是广泛利用现有的科学技术和计算机技术,特别是应用数学方法和数学模型,研究和解决生产、经营和经济管理活动中的各种优化决策问题。 运筹学通常是从实际问题出发,根据决策问题的特征,建立适当的数学模型,研究和分析模型的性质和特点,设计解决模型的方法或算法来解决实际问题,是一门应用性很强的科学技术。运筹学的思想、内容和研究方法广泛应用于工程管理、工商企业管理、物流和供应链管理、交通运输规划与管理等各行各业,也是现代管理科学和经济学等许多学科研究的重要基础。 在解决生产、经营和管理活动中的实际决策问题时,一般都是建立变量多、约束多的大型复杂的运筹学模型,通常都只能通过计算机软件才能求解,因此,学习运筹学的计算机求解和进行上机实验,就是运筹学教学的重要组成部分。 现在求解各类运筹学模型的软件多种,主要有Microexcel,Matlab,LINDO,LINGO,WinQSB和英国运筹学软件Dash-Xpress。Microexcel主要利用规划求解来解线性规划模型,WinQSB功能比较齐全,但是主要适合解决规模较小的运筹学模型,英国运筹学软件Dash-Xpress现在在中国的使用率不高,Matlab是通过矩阵的方法解决线性规划,对非线性规划和其它运筹学模型特别是大规模的模型的输入不太方便,。而LINGO和LINDO是使用最广泛的运筹学专业软件,前者功能强大,能解决几乎所有的运筹学优化模型,后者主要功能是线性规划模型的求解。在LINGO中模型的输入和编程都比较方便,可解决大规模的运筹学模型。因此,本课程的教学就是以LINGO为主,适当补充Excel和LINDO作为运筹学上机软件,后者的优势主要在于能获得最优单纯形表以进行更全面地灵敏度分析。 LINGO是用来求解线性和非线性优化问题的简易工具。LINGO内置了一种建立最优化模型的语言,可以简便地表达大规模问题,利用LINGO高效的求解器可快速求解并分析结果。 LINGO全称是Linear INteractive and General Optimizer的缩写---交互式的线性和通用优化求解器。它是一套设计用来帮助您快速,方便和有效的构建和求解线性,非线性,和整数最优化模型的功能全面的工具.包括功能强大的建模语言,建立和编辑问题的全功能环境,读取和写入Excel和数据库的功能,和一系列完全内置的求解程序. 运行环境:Win9x/NT/2000/XP/2003/Vista/Win7 软件类别:国外软件/工具软件/计算工具 软件语言:英文 LINGO 是使建立和求解线性、非线性和整数最佳化模型更快更简单更有效率的综合工具。LINGO 提供强大的语言和快速的求解引擎来阐述和求解最佳化模型。LINGO具有如下的优势: 1.简单的模型表示 LINGO 可以将线性、非线性和整数问题迅速得予以公式表示,并且容易阅读、了解和修改。LINGO的建模语言允许您使用汇总和下标变量以一种易懂的直观的方式来表达模型,非常类似您在使用纸和笔。模型更加容易构建,更容易

西门子PLC实验指导书

实验一:PLC认知及PLC编程软件的使用(两学时) 一、实验目的: 1.熟悉典型继电器电路的工作原理及电路接线。 2.熟悉西门子PLC 的组成,模块及电路接线。 3.熟悉西门子STEP 7 编程软件的使用方法。 4.熟悉利用STEP 7 建立项目、硬件组态、编程、编译、下载和运行等设 计步骤。 5.学会用基本逻辑指令实现顺控系统的编程,完成三相异步电机单向运行控 制程序的编制及调试。 二、实验设备: 1.个人PC 机 1 台 2.西门子1214C AC/DC/RLY PLC 1 台 3.西门子CM1241 RS485通信模块 1 台 4.实验操作板 1 块 5.线缆若干 三、实验步骤: 1.参照黑板上的电路接线图,电路连接好后经指导教师检查无误,可以上电 试验。 2.了解西门子PLC 的组成,熟悉PLC的电源、输入信号端I 和公共端 COM、输出信号端Q 和公共端COM;PLC 的编程口及PC 机的串行通讯口、编程电缆的连接;PLC 上扩展单元插口以及EEPROM 插口的连接方法;RUN/STOP开关及各类指示灯的作用等。 2.参照黑板上的电路接线图,电路连接好后经指导教师检查无误,并将 RUN/STOP 开关置于STOP 后,方可接入220V交流电源。 3.在PC 机启动西门子STEP 7编程软件,新建工程,进入编程环境。 4.根据实验内容,在西门子STEP 7编程环境下输入梯形图程序,转换后, 下载到PLC中。

5.程序运行调试并修改。 6.写实验报告。 四、实验内容: 实验1、三相笼型异步电动机全压起动单向运行控制 图1 三相笼型异步电动机全压起动单向运行控制接线图实验2、三相笼型异步电动机全压起动单向运行PLC控制 图2 三相笼型异步电动机全压起动单向运行PLC控制梯形图 五、实验总结与思考: 1.简述S7-1200 PLC的硬件由哪几部分组成。 2.请简要叙述从硬件组态开始到程序下载到PLC进行调试的整个过程。 3.做完本次实验的心得体会;

《信号与系统》实验指导书

《信号与系统》实验指导书 张静亚周学礼 常熟理工学院物理与电子工程学院 2009年2月

实验一常用信号的产生及一阶系统的阶跃响应 一、实验目的 1. 了解常用信号的波形和特点。 2. 了解相应信号的参数。 3. 熟悉一阶系统的无源和有源模拟电路; 4.研究一阶系统时间常数T的变化对系统性能的影响; 5.研究一阶系统的零点对系统的响应及频率特性的影响。 二、实验设备 1.TKSX-1E型信号与系统实验平台 2. 计算机1台 3. TKUSB-1型多功能USB数据采集卡 三、实验内容 1.学习使用实验系统的函数信号发生器模块,并产生如下信号: (1) 正弦信号f1(t),频率为100Hz,幅度为1;正弦信号f2(t),频率为10kHz,幅度 为2; (2) 方波信号f3(t),周期为1ms,幅度为1; (3) 锯齿波信号f4(t),周期为0.1ms,幅度为2.5; 2.学会使用虚拟示波器,通过虚拟示波器观察以上四个波形,读取信号的幅度和频率,并用坐标纸上记录信号的波形。 3.采用实验系统的数字频率计对以上周期信号进行频率测试,并将测试结果与虚拟示波器的读取值进行比较。 4.构建无零点一阶系统(无源、有源),测量系统单位阶跃响应, 并用坐标纸上记录信号的波形。 5.构建有零点一阶系统(无源、有源),测量系统单位阶跃响应, 并用坐标纸上记录信号的波形。

四、实验原理 1.描述信号的方法有多种,可以是数学表达式(时间的函数),也可以是函数图形(即为信号的波形)。对于各种信号可以分为周期信号和非周期信号;连续信号和离散信号等。 2.无零点的一阶系统 无零点一阶系统的有源和无源模拟电路图如图1-1的(a)和(b)所示。它们的传递函数均为+1G(S)= 0.2S 1 (a) (b) 图1-1 无零点一阶系统有源、无源电路图 3.有零点的一阶系统(|Z|<|P|) 图1-2的(a)和(b)分别为有零点一阶系统的有源和无源模拟电路图,他们的传递函数为:2++0.(S 1)G(S)= 0.2S 1 (a) (b) 图1-2 有零点(|Z|<|P|)一阶系统有源、无源电路图 4.有零点的一阶系统(|Z|>|P|) 图1-3的(a)和(b)分别为有零点一阶系统的有源和无源模拟电路图,他们的传递函数为:++0.1S 1G (S )= S 1

使用C语言实现单纯形法求解线性规划问题

上机实验报告 一、实验目的和要求 1、目的: ●掌握单纯形算法的计算步骤,并能熟练使用该方法求解线性规划问题。 ●了解算法→程序实现的过程和方法。 2、要求: ●使用熟悉的编程语言编制单纯形算法的程序。 ●独立编程,完成实验,撰写实验报告并总结。 二、实验内容和结果 1、单纯形算法的步骤及程序流程图。 (1)、算法步骤

(2)、程序图

2、单纯形算法程序的规格说明 各段代码功能描述: (1)、定义程序中使用的变量 #include #include #define m 3 /*定义约束条件方程组的个数*/ #define n 5 /*定义未知量的个数*/

float M=1000000.0; float A[m][n]; /*用于记录方程组的数目和系数;*/ float C[n]; /*用于存储目标函数中各个变量的系数*/ float b[m]; /*用于存储常约束条件中的常数*/ float CB[m]; /*用于存储基变量的系数*/ float seta[m]; /*存放出基与入基的变化情况*/ float delta[n]; /*存储检验数矩阵*/ float x[n]; /*存储决策变量*/ int num[m]; /*用于存放出基与进基变量的情况*/ float ZB=0; /*记录目标函数值*/ (2)、定义程序中使用的函数 void input(); void print(); int danchunxing1(); int danchunxing2(int a); void danchunxing3(int a,int b); (3)、确定入基变量,对于所有校验数均小于等于0,则当前解为最优解。int danchunxing1() { int i,k=0; int flag=0; float max=0; for(i=0;i

运筹学实验报告1

运筹学实验报告(一) 实验要求:学会在Excel 软件中求解。 实验目的:通过小型线性规划模型的计算机求解方法。 熟练掌握并理解所学方法。 实验内容: 题目: 某昼夜服务的公交线路每天各时间区段内所需司机和乘务人员数如下; 设司机和乘务人员分别在各时间区段一开始上班,并连续工作八小时,问该公交线 路至少配备多少名司机和乘 务人员。列出这个问题的线 性规划模型。 解:设Xj 表示在第j 时间区段开始上班的司机和乘务人员数 班次 时间 所需人数 1 6:00-10:00 60 2 10:00-14:00 70 3 14:00-18:00 60 4 18:00-22:00 50 5 22:00-2:00 20 6 2:00-6:00 30

。 6-10 10-14 14-18 18-22 22-2 2-6 1 X1--- X1 2 X2--- X2 3 X3--- X3 4 X4--- X4 5 X5--- X5 6 X6 X6--- 60 70 60 50 20 30 所需人 数 Min z=x1+x2+x3+x4+x5+x6 St: x1+x6>=60 X1+x2>=70 X2+x3>=60 X3+x4>=50 X4+x5>=20 X5+x6>=30 Xj>=0,xj为整数, j=1,2,3,4,5,6

过程: 工作表[Book1]Sheet1 报告的建立: 2011-9-28 19:45:01 目标单元格(最小值) 单元格名字初值终值 $B$1 min 0 150 可变单元格 单元格名字初值终值 $B$3 x 0 45 $C$3 x 0 25 $D$3 x 0 35 $E$3 x 0 15 $F$3 x 0 15 $G$3 x 0 15 结果:最优解X=(45,25,35,15,15,15)T 目标函数值z=150 小结:1.计算机计算给规划问题的解答带来方便,让解答变得简洁;

基于Matlab的信号与系统实验指导2

基于Matlab 的信号与系统实验指导 实验一 连续时间信号在Matlab 中的表示 一、实验目的 1、学会运用Matlab 表示常用连续时间信号的方法 2、观察并熟悉这些信号的波形和特性 二、实验原理及实例分析 1、信号的定义与分类 2、如何表示连续信号? 连续信号的表示方法有两种;符号推理法和数值法。 从严格意义上讲,Matlab 数值计算的方法不能处理连续时间信号。然而,可利用连续信号在等时间间隔点的取样值来近似表示连续信号,即当取样时间间隔足够小时,这些离散样值能被Matlab 处理,并且能较好地近似表示连续信号。 3、Matlab 提供了大量生成基本信号的函数。如: (1)指数信号:K*exp(a*t) (2)正弦信号:K*sin(w*t+phi)和K*cos(w*t+phi) (3)复指数信号:K*exp((a+i*b)*t) (4)抽样信号:sin(t*pi) 注意:在Matlab 中用与Sa(t)类似的sinc(t)函数表示,定义为:)t /()t (sin )t (sinc ππ= (5)矩形脉冲信号:rectpuls(t,width) (6)周期矩形脉冲信号:square(t,DUTY),其中DUTY 参数表示信号的占空比

DUTY%,即在一个周期脉冲宽度(正值部分)与脉冲周期的比值。占空比默认为0.5。 (7)三角波脉冲信号:tripuls(t, width, skew),其中skew 取值范围在-1~+1之间。 (8)周期三角波信号:sawtooth(t, width) (9)单位阶跃信号:y=(t>=0) 三、实验内容 1、验证实验内容 直流及上述9个信号 2、程序设计实验内容 (1)利用Matlab 命令画出下列连续信号的波形图。 (a ))4/3t (2cos π+ (b ) )t (u )e 2(t -- (c ))]2()(u )][t (cos 1[--+t u t π (2)利用Matlab 命令画出复信号)4/t (j 2e )t (f π+=的实部、虚部、模和辐角。 四、实验报告要求 1、格式:实验名称、实验目的、实验原理、实验环境、实验内容、实验思考等 2、实验内容:程序设计实验部分源代码及运行结果图示。

lingo实验心得体会[工作范文]

lingo实验心得体会 篇一:LINGO软件学习入门实验报告 LINGO实验报告 一.实验目的 1、熟悉LINGO软件的使用方法、功能; 2、学会用LINGO软件求解一般的线性规划问题。 二.实验内容 1、求解线性规划: max z?x1?2x2 ?2x1?5x2?12 ??x1?2x2?8 ?x,x?0?12 2、求解线性规划: min z?20x1?10x2 ?5x1?4x2?24 ??2x1?5x2?5 ?x,x?0?12 3、假设现在一个计算机厂商要生产两种型号的PC:标准型和增强型,由于生产线和劳动力工作时间的约束,使得标准型PC最多生产100台。增强型PC最多生产120台;一共耗时劳动力时间不能超过160小时。已知每台标准型PC 可获利润$100,耗掉1小时劳动力工作时间;每台增强型PC 可获利润$150,耗掉2小时劳动力工作时间。请问:该如何

规划这两种计算机的生产量才能够使得最后获利最大? 三. 模型建立 1、求解线性规划: max z?x1?2x2 ?2x1?5x2?12 ??x 1?2x2?8 ??x1,x2?0 2、求解线性规划: min z?20x1?10x2 ?5x1?4x2?24 ?2x ?1?5x2?5 ?x1,x2?0 3、设生产标准型为x1台;生产增强型x2台,则可建立线性规划问题 数学模型为 max z?100x1?150x2 ??x1?100 ?x?120 ?2 ?x1?2x2?160

??x1,x2?0 四. 模型求解(含经调试后正确的源程序) 1、求解线性规划: model: max=x1+2*x2; 2*x1+5*x2>12; x1+2*x25; End 结果显示: 3、求解线性规划: model: mAX=100*x1+150*x2; x1+2*x2篇二:lingo上机实验报告 重庆交通大学 学生实验报告 实验课程名称专业综合实验Ⅰ 开课实验室交通运输工程实验教学中心 学院交通运输年级二年级专业班交通运输1班学生姓名学号631205020 开课时间20XX 至 20XX 学年第2学期 篇三:运筹学上机实践报告Southwestuniversityofscienceandtechnology

C语言实验指导书

《C语言程序设计》实验指导书 每次实验(10分)一共100分,最后折合成50分计入最终成绩。 第一次实验(一星期完成) ●内容一:熟悉编译环境和工具 在VS中键入以下的这段程序 1)关键字变色,自动缩近,智能提醒 2)代码风格和注释 3)编译出错,连接出错。修改错误 4)调试,断点,监控变量,进入函数,跳出函数。监控内存,监控堆栈 在linux中键入以下这段程序 1)熟悉VIM程序,gcc编译程序(开两个终端窗口) 2)熟悉GDB调试程序的基本技巧。(list,backstrac; break, watch,delete; next, continue, run; print,set,help) 其中,help命令是一个非常的参考,如果忘记了某条具体的命令,可以随时去参考help命令来得到相关的细节。 3)介绍《鸟歌的私房菜》这本书 ●内容二:登陆https://www.doczj.com/doc/6f4994694.html,网站,在线提交。 1)熟悉基本的提交方法和规则 2)现场演示反作弊程序的效果 ●程序: 输入:两个整数,用空格分隔, 输出:两个整数的和,计算两个整数的和的功能,要求用函数实现,同时如果输入有错误,例如(12 abc)程序能够给出“error input”的提示。 参考输入: 12 33 参考输出: 45 参考输入: 12 abc 参考输出:

error input ●思考和扩展(无标准答案) 如果用户输入12 12abc 如何判断并终止程序,输出“error input”的提示 第二次实验(一星期完成) ●内容一:登陆ACM,演示OJ系统 1)介绍这个网站,有兴趣的同学可以去尝试一下() ●内容二:计算工资/小时程序 1)强制类型转换 2)一共有多少位的算法 3)整形数的溢出,以及针对特定问题,如何解决溢出问题 注意:linux编译下应该加上–lm 开关。 ●程序: 输入:工资数,小时数(整数,空格分隔)。 输出:工资/小时数(精确到小数点后2位),并根据四舍五入取整,然后将取整的数平方后计算一共有几位,后三位分别是什么? 参考输入: 2345 2 ←input (separate by space) 参考输出: 1172.50 ←average salary 1173 ← round off to integer 7 ← number of digit 0 2 5 ← the last three digit (separate by space) 第三次实验(两星期完成) ●内容一:介绍linux 下的grep,并给出相应的实例。重点介绍下面要用到的四个符号。 ●内容二:正则表达式 ^ 代表字符串开始 . 代表任意字符 $ 代表字符串末尾

运筹学上机实验报告

运筹学上机实验报告 实验一:线性规划和灵敏度分析 一.线性规划和灵敏度分析 二. 实验目的: 安装WinQSB软件,了解WinQSB软件在Windows环境下的文件管理操作,熟悉软件界面内容,掌握操作命令。用WinQSB软件求解线性规划。掌握winQSB软件写对偶规划,灵敏度分析和参数分析的操作方法 三. 实验内容及要求: 安装与启动软件,建立新问题,输入模型,求解模型,结果的简单分析。 某公司是一家在同行业中处于领先地位的计算机和外围设备的制造商。公司的主导产品分类如下:大型计算机、小型计算机、个人计算机和打印机。公司的两个主要市场是北美和欧洲。公司下一季度的需求预测如下: 表1 需求预测 而公司三个工厂的能力限度又使得其不能随心所欲地在任意工厂进行生产,限制主要是各工厂规模和劳动力约束。 表2 工厂的生产能力 表4 单位利润贡献(美元)

根据以上信息,请完成: 1.为该公司建立一个线性优化模型,并求解。 2.作灵敏度分析: 1)爱尔兰工厂的劳动力变化为(50+学号后两位数); 2)采用新技术,大型计算机的资源利用率中劳动小时/单位(由79变为79减去学号后两位数/10); 3)削减中国台湾小型机生产。 四.实验结果及分析:(包括操作步骤) 1.根据题意列出约束方程: 运行软件:

按照约束方程输入数据: 运行的结果为:

数据分析: 伯灵顿向北美和欧洲提供大型计算机分别为0台、0台,小型计算机分别为1832.5880、0台,个人计算机分别为13710.07、0台,打印机分别为15540.0、6850.0台。中国台湾向北美和欧洲提供大型计算机分别为994.6420、321.0台,小型计算机分别为1619.3330、0台,个人计算机分别为34499.930、15400.0台,打印机都为0台。爱尔兰向北美和欧洲提供大型计算机都为0台,小型计算机分别为965.0793、1580.0台,个人计算机都为0台,打印机都

广工《Java语言程序设计基础教程》上机实验指导手册(第一次)

《Java语言程序设计基础教程》 上机实验指导手册 实验一 Java环境演练 【目的】 ①安装并配置Java运行开发环境; ②掌握开发Java应用程序的3个步骤:编写源文件、编译源文件和运行应用程序; ③掌握开发Java Applet程序的3个步骤:编写源文件、编译源文件和运行Java Applet 程序; ④学习同时编译多个Java源文件。 【内容】 1.一个简单的应用程序 ?实验要求: 编写一个简单的Java应用程序,该程序在命令行窗口输出两行文字:“你好,很高兴学习Java”和“We are students”。 ?程序运行效果示例: 程序运行效果如下图所示: ?程序模板: Hello.java public class Hello { public static void main (String args[ ]) { 【代码1】//命令行窗口输出"你好,很高兴学习Java" A a=new A(); a.fA(); } } class A { void fA() { 【代码2】//命令行窗口输出"We are students" } } ?实验后的练习: 1.编译器怎样提示丢失大括号的错误? 2.编译器怎样提示语句丢失分号的错误? 3.编译器怎样提示将System写成system这一错误?

4.编译器怎样提示将String写成string这一错误? 2.一个简单的Java Applet程序 ?实验要求: 编写一个简单的Java Applet程序,并在Java Applet中写两行文字:“这是一个Java Applet程序”和“我改变了字体”。 ?程序运行效果示例: 程序运行效果如下图所示: ?程序模板: FirstApplet.java import java.applet.*; import java.awt.*; public class FirstApplet extends Applet { public void paint(Graphics g) { g.setColor(Color.blue); 【代码1】//在Java Applet中绘制一行文字:“这是一个Java Applet 程序” g.setColor(Color.red); g.setFont(new Font("宋体",Font.BOLD,36)); 【代码2】//在Java Applet中绘制一行文字:“我改变了字体” } } ?实验后的练习: 5.程序中的主类如果不用public修饰,编译能通过吗? 6.程序中的主类如果不用public修饰,程序能正确运行吗? 7.程序将paint方法误写成Paint,编译能通过么? 8.程序将paint方法误写成Paint,运行时能看到有关的输出信息吗? 3.联合编译 ?实验要求: 编写4个源文件:Hello.java、A.java、B.java和C.java,每个源文件只有一个类,Hello.java是一个应用程序(含有main方法),使用了A、B和C类。将4个源文件保存到同一目录中,例如:C:\100,然后编译Hello.java。 ?程序运行效果示例: 程序运行效果如下图所示: ?程序模板: 模板1:Hello.java public class MainClass { public static void main (String args[ ]) {

管理运筹学上机实验报告1

管理运筹学实验报告 班级: __________________________ 姓名: __________________________ 学号: __________________________ 学期: __________________________ 中国矿业大学管理学院 2009年3月1日

实验题目线性规划建模应用 一、实验目的 1、了解线性规划问题在Excel屮如何建、丫,主要是数据单兀格、输岀单元格、可 变单元格和冃标单元格定义以及规划求解宏定义应川设置。 2、熟练寧握Excel规划求解宏定义模块便川。 3、掌拥LINDO软件在线性规划求解中的应用 二、实验内容 某医院院周会上正在研究制定一昼夜护士值班安排计划。在会议上,护理部主任提交了-份全院24小时各时段内需要在岗护士的数量报告,见下表。 如果按照每人每天两小班轮换.中间间隔休息时间8小时.这样安排岗位不但会造成人员冗余,同时护理人员上下班不是很方便。由丁?医院护理匸作的特殊性,又要求尽量保证护理人员T?作的连续性.报终确定毎名护士连续丁作两个小班次,即24小时内-个大班*小时,即连续上满两个小班。为了合理的压缩编制,医务部提出一个合理化建议:允许不同护士的人班之间可以合理相互重叠小班,即分成八组轮班开展全人的护理值班(每一人小班时段实际上山两个交替的大班的前段和后段共同庫担)o 现在人力部门而临的问题是:如何合理安排岗位.才能满足值班的需要? 」E在会议结束Z1W,护理部又提出一个问题:冃前全院在编的正式护I:只冇5() 人.匸资定额为10元/小时;如果人力部门提供的定编超过5()人,那么必须以

测控电路实验指导书

目录 第一次实验 实验二信号放大电路实验 (1) 第二次实验 实验六幅度调制及解调实验 (6) 实验七移相电桥实验 (19) 第三次实验 实验八脉宽调制电路实验 (20) 实验十一开关式相乘调制及解调实验 (12) 第四次实验 实验十二精密全波整流及检波实验 (14) 实验十三开关式全波相敏检波实验 (16) 第五次实验 实验十四锁相环单元实验 (18) 实验十五分频器单元实验 (34)

实验二 信号放大电路实验 一、实验目的 1.研究由集成运算放大器组成的基本放大电路的功能。 2.了解运算放大器在实际应用时应考虑的一些问题。 二、实验原理 集成运算放大器是一种具有电压放大倍数高的直接耦合多级放大电路。当外部接入不同的线性或非线性元器件组成输入和负反馈电路时,可以灵活地实现各种特定的函数关系。在线性应用方面,可以组成反相比例放大器,同相比例放大器,电压跟随器,同相交流放大器,自举组合电路,双运放高共模抑制比放大电路,三运放高共模抑制比放大电路等。 理想运算放大器的特性: 在大多数情况下,将运放视为理想运放,就是将运放的各项技术指标理想化,满足下列条 件(如表2-1所示)的运算放大器称为理想运放。 失调与漂移均为零等。 理想运放在线性应用时的两个重要特性: (1)输出电压U O 与输入电压之间满足关系式:U 0=A ud (U +-U -),而U 0为有限值,因此,(U +-U -)=0,即U +=U -,称为“虚短”。 (2)由于r i =∞,故流进运放两个输入端的电流可视为零,即称为“虚断”。这说明运放对其前级吸取电流极小。 以上两个特性是分析理想运放应用电路的基本原则,可简化运放电路的计算。 1.基本放大电路: 1)反向比例放大器 电路如图2-1所示。对理想运放,该电路的输出电压与输入电压之间的关系为: i 1 F O U R R U - =,为了减少输入级偏置电流引起的运算误差,在同相输入端应接入平衡电阻 R 2=R 1∥R F 图2-1 反向比例放大器 图2-2 同相比例放大器 2)同相比例放大器 电路如图2-2所示。对理想运放,该电路的输出电压与输入电压之间的关系为:

信号与系统实验指导书

信号与系统实验指导手册 沈阳工业大学信息科学与工程学院 2005年10月

前言 “信号与系统”是电子工程、通信工程、信息工程、微电子技术、自动化、计算机等电类相关专业的一门重要的专业基础课,为国内、外各高等院校相关专业的主要课程。由于本课程的理论性、系统性较强,为使抽象的概念和理论形象化、具体化,使学生能够比较深入的理解《信号与系统》课程的基本理论和分析方法,并提高学生分析问题和解决问题的能力。为此,开设了基于本课程的实验。 《信号与系统》实验指导手册,将《信号与系统》课程的理论知识与“信号与系统”的实验系统设备结合,从内容上对教材起到了一定的补充作用,为学生具体实验进行了指导。 鉴于时间仓促,可能会存在一些不足与错误之处,欢迎大家批评指正,使之完善。 编者 2005年10月

目录 实验一系统的特性测试 (1) 实验二信号的采样与恢复 (8) 实验三模拟滤波器分析 (14) 实验四模拟滤波器的设计 (26)

实验一系统的特性测试 一、实验目的 1、学会利用运算单元,搭建一些简单的实验系统。 2、学会测试系统的频率响应的方法。 3、了解二阶系统的阶跃响应特性。 4、学会对其零状态响应和零输入响应进行分析。 二、实验内容 1、根据要求搭建一阶、二阶实验系统。 2、测试一阶、二阶系统的频响特性和阶跃响应。 三、预备知识 学习使用波特图测试系统频响的方法。 四、实验仪器 1、信号与系统实验箱一台(主板)。 2、线性系统综合设计性模块一块。 3、20MHz双踪示波器一台。 五、实验原理 1、基本运算单元 (1)比例放大 1)反相数乘器

由: 2211R U R U -= 则有:1 122R U R U = 2)同相数乘器 由: 544 43R R U R U += 则有:()4 5434R R R U U += (2) 积分微分器 1)积分器: 由:212 11//1R SC U R U -= 则有:()12121 21C SR R R U U +-= 2)微分器 由: 141 31R U SC U -= 则有:S C R U U 1134-= (3) 加法器

运筹学上机实践报告

运筹学 实验报告 姓名: 学号: 班级:采矿1103 教师: (一)实验目的 (1)学会安装并使用Lingo软件 (2)利用Lingo求解一般线性,运输,一般整数与分派问题 (二)实验设备 (1)计算机 (2)Lingo软件 (三)实验步骤 (1)打开已经安装Lingo软件的计算机,进入Lingo (2)建立数学模型与Lingo语言 (3)输入完Lingo语言后运行得出求解结果LINGO就是用来求解线性与非线性规化问题的简易工具。LINGO内置了一种建立最优化模型的语言,可以简便地表达大规模问题,利用LINGO高效的求解器可快速求解并分析结果。当在windows下开始运行LINGO系统时,会得到类似下面的一个窗口:

外层就是主框架窗口,包含了所有菜单命令与工具条,其它所有的窗口将被包含在主窗口之下。在主窗口内的标题为LINGO Model–LINGO1的窗口就是LINGO的默认模型窗口,建立的模型都都要在该窗口内编码实现。下面就是以一般线性,运输,一般整数与分派问题为例进行实验的具体操作步骤: A:一般线性规划问题 数学模型(课本31页例11) 求解线性规划: Minz=-3x1+x2+x3 x1 - 2x2 + x3<=11 -4x1 + x2 + 2x3>=3 -2x1 + x3=1 x1,x2,x3>=0 打开lingo 输入min=-3*x1+x2+x3; x1-2*x2+x3<=11; -4*x1+x2+2*x3>=3; -2*x1+x3=1; End 如图所示:

然后按工具条的按钮运行出现如下的界面,也即就是运行的结果与所求的解: 结果分析:由longo运行的结果界面可以得到最优解为xb=(x1,x2,x3)T=(4,1,9)T,最优目标函数z=-2、 到此运用lingo解决了一般线性规划问题 B:运输问题 数学模型(课本80页例1) 例1 某公司有三个生产同类产品的加工厂(产地),生产的产品由四个销售点(销地)出售,各加工厂的生产量,各销售点的销售量(假设单位均为吨)以及各个加工厂到各销售点的单位运价(元/吨)就是如下表,问产品如何调运才能使总运费最小?

相关主题
文本预览
相关文档 最新文档