Contact
CoCalc Logo Icon
StoreFeaturesDocsShareSupport News AboutSign UpSign In
| Download
Views: 88
Kernel: Octave
y(t)=4Aπn=1,3,51nsin(nπtT/2)y(t)=\frac{4A}{\pi}\sum_{n=1,3,5}^{\infty}\frac{1}{n}sin\left ( \frac{n \pi t}{T/2} \right )
pkg load signal

початковий сигнал - періодичний прямокутний сигнал (меандр)

Синтез меандра з набору гармонік періодичного сигналу. Чим більше число гармонік, тим ближче до ідеальної форма сигналу.

https://uk.wikipedia.org/wiki/Меандр_(%D1%80%D0%B0%D0%B4%D1%96%D0%BE%D1%82%D0%B5%D1%85%D0%BD%D1%96%D0%BA%D0%B0

T=2; A=3; t=0:0.01:10; y=A*square(t*(2*pi)/T); plot(t,y) title('Square Wave') xlabel('t') ylabel('y(t)') ylim([-A-0.5 A+0.5]) niceplot
Image in a Jupyter notebook

перша гармоніка

n=1

y1=4*A/pi*sin(pi*t/(T/2)); plot(t,y, t,y1) legend('y(t)','1th harmonics') xlabel('t') niceplot
Image in a Jupyter notebook

гармоніки 1,3

y3=4*A/pi/3*sin(3*pi*t/(T/2)); ys=y1+y3; plot(t,y, t,y1, t,y3, t,ys,'b') legend('y(t)','1','3','sum') xlabel('t') xlim([0 T]) niceplot
Image in a Jupyter notebook

гармоніки 1,3,5,7

y5=4*A/pi/5*sin(5*pi*t/(T/2)); y7=4*A/pi/7*sin(7*pi*t/(T/2)); ys=y1+y3+y5+y7; plot(t,y, t,y1, t,y3, t,y5, t,y7, t,ys,'b') legend('y(t)','1','3','5','7','sum') xlabel('t') xlim([0 T]) %grid on niceplot
Image in a Jupyter notebook

гармоніки 1,3,5,7 - 2й спосіб

ys=zeros(size(t)); %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% n=1; yn=4*A/pi/n*sin(n*pi*t/(T/2)); ys=ys+yn; n=3; yn=4*A/pi/n*sin(n*pi*t/(T/2)); ys=ys+yn; n=5; yn=4*A/pi/n*sin(n*pi*t/(T/2)); ys=ys+yn; n=7; yn=4*A/pi/n*sin(n*pi*t/(T/2)); ys=ys+yn; %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% plot(t,y, t,ys) legend('y(t)','sum') title(['N=7']) xlabel('t') xlim([0 T]) %grid on niceplot
Image in a Jupyter notebook

N гармонік

N=300; ys=zeros(size(t)); for n=1:2:N yn=4*A/pi/n*sin(n*pi*t/(T/2)); ys=ys+yn; end plot(t,y, t,ys) legend('y(t)','sum') title(['N=' num2str(N)]) xlabel('t') xlim([0 T]) %grid on niceplot
Image in a Jupyter notebook