C语言结合gnuplot绘制连续时间系统的频率响应曲线

文章目录

  • C程序
  • gnuplot绘图
  • matlab代码
  • matlab绘图

C语言结合gnuplot绘制连续时间系统的频率响应曲线_第1张图片

C程序

#include
#include
#define pi 3.1416
int main()
{ 
	double complex H; 
	double w;
	for(w = -6*pi; w <= 6*pi; w = w+0.01)
	{
		H = (I*w) / (0.2*cpow(I*w,3) + 0.2*cpow(I*w,2) + I*w);
		printf("%f\t%f\t%f\n", w, cabs(H), carg(H));
	}
}

gnuplot绘图

  • 幅频特性曲线
    C语言结合gnuplot绘制连续时间系统的频率响应曲线_第2张图片
  • 相频特性曲线
    C语言结合gnuplot绘制连续时间系统的频率响应曲线_第3张图片

matlab代码

w = -6*pi:0.01:6*pi;
b = [1 0];
a = [0.2 0.2 1 0];
H = freqs(b,a,w);
figure(1);
plot(w, abs(H));
figure(2);
plot(w, angle(H));

matlab绘图

  • 幅频特性曲线
    C语言结合gnuplot绘制连续时间系统的频率响应曲线_第4张图片
  • 相频特性曲线
    C语言结合gnuplot绘制连续时间系统的频率响应曲线_第5张图片

你可能感兴趣的:(C语言结合gnuplot绘制连续时间系统的频率响应曲线)