[SCILAB]信号与系统实验2-连续时间信号的运算
信号与系统实验二:连续时间信号的运算
环境信息:SCILAB 6.1.1
安装插件:Scilab support for Visual Studio Code(mammothb)
安装工具箱:Scilab Wavelet Toolbox
实验目的
- 掌握连续时间信号时域运算的 SCILAB 实现方法。
- 掌握 SCILAB 内部函数的应用。
实验原理
信号的基本运算包括信号的相加(减)和相乘(除)。信号的时域变换包括信号的平移、 翻转、反折以及尺度变换、微分、积分等。
例题
[例2-1]信号的移位、反褶、尺度变换
//[例2-1]信号的移位、反褶、尺度变换
//原信号
function f=fct(t)
//f=(u(t+2)-u(t))+(-t+1).*(u(t)-u(t-1));
f=(sinc(t+2)-sinc(t))+(-t+1).*(sinc(t)-sinc(t-1));
end
t=-5:.01:5;
//原信号
ft1=fct(t);
subplot(2,2,1);
plot(t,ft1);
mtlb_axis([-6 6 -5 2]);
title("f(t)");
xlabel("时间(t)");
xgrid;//grid on
//信号移位
ft2=fct(t+2);
subplot(2,2,2);
plot(t,ft2);
mtlb_axis([-6 6 -5 2]);
title("f(t+2)");
xlabel("时间(t)");
xgrid;//grid on
//信号反褶
ft3=fct(-t);
subplot(2,2,3);
plot(t,ft3);
mtlb_axis([-6 6 -5 2]);
title("f(t)");
xlabel("时间(t)");
xgrid;//grid on
//信号尺度变换
ft4=fct(2*t);
subplot(2,2,4);
plot(t,ft4);
mtlb_axis([-6 6 -5 2]);
title("f(2t)");
xlabel("时间(t)");
xgrid;//grid on
[例2-2]信号的微分、积分(积分失败)
//[例2-2]信号的微分、积分
//定义变量
t=-5:.01:5;
w=2*%pi;
//第一张图
y=sin(w*t);
subplot(311);
title("sin(2πt)");
plot(y);
//第二张图
y1=diff(y);//信号微分
subplot(312);
title("2cos(2πt)π");
plot(y1);
//第三张图
y2=integrate(y1,'t',-5,5);//信号积分
subplot(313);
title("sin(2πt)");
plot(y2);
期望结果:
[例2-3]两信号的相加、相乘
//[例2-3]两信号的相加、相乘
t=-2:.01:2;
w=2*%pi;
//第一张图
f1=sin(w*t);
subplot(4,1,1);
plot(t,f1);
title("sin(wt)");
xlabel("t");
//第二张图
f2=sin(8*w*t);
subplot(4,1,2);
plot(t,f2);
title("sin(8wt)");
xlabel("t");
//第三张图
y1=f1+f2;//相加信号
subplot(4,1,3);
plot(t,y1);
title("sin(wt)+sin(8wt)");
xlabel("t");
//第四张图
y2=f1.*f2;//相乘信号
subplot(4,1,4);
plot(t,y2);
title("sin(wt)*sin(8wt)");
xlabel("t");
[例2-4]信号的奇偶分解
//[例2-4]信号的奇偶分解
t=-2:.02:2;
//第一张图
f=sin(%pi*t/2).*(sinc(t)-sinc(t-2));
subplot(311);
plot(t,f);
xgrid;//grid on
title("f(t)");
xlabel("时间t");
//第二张图
//偶分量 fe=(f(t)+f(-t))/2
fe=(sin(%pi*t/2).*(sinc(t)-sinc(t-2))+sin(-%pi*t/2).*(sinc(-t)-sinc(-t-2)))/2;
subplot(312);
plot(t,fe);
title("偶分量");
xlabel("时间t");
xgrid;//grid on
//第三张图
//奇分量 fe=(f(t)-f(-t))/2
fo=(sin(%pi*t/2).*(sinc(t)-sinc(t-2))-sin(-%pi*t/2).*(sinc(-t)-sinc(-t-2)))/2;
subplot(313);
plot(t,fo);
title("奇分量");
xlabel("时间t");
xgrid;//grid on
附录:连续时间信号运算(MATLAB版)