Help to Generate triangle wave

1 Ansicht (letzte 30 Tage)
taher zaouali
taher zaouali am 10 Dez. 2019
Kommentiert: taher zaouali am 10 Dez. 2019
Si i have this code for a square wave and i need to modify it to a triangle wave how??
t=-0.4:0.001:0.4;
T=0.2;
A=2;
Nt=length(t);
xt=zeros(1,Nt);
P=-0.4;
for n=1:Nt
if t(n)<P+T/2
xt(n)=A;
else
xt(n)=-A;
end
if t(n)>=P+T
P=P+T;
end
end
  2 Kommentare
Erivelton Gualter
Erivelton Gualter am 10 Dez. 2019
By the way, your code can be replaced by:
t = -0.4:0.001:0.4; % Time Array
T = 0.2 % Wave Period
A = 2; % Amplitude
xt = A*square(2*pi*t/T);
plot(t,xt)
taher zaouali
taher zaouali am 10 Dez. 2019
Yes i know but my assignment is to use matematical equation.

Melden Sie sich an, um zu kommentieren.

Antworten (1)

Erivelton Gualter
Erivelton Gualter am 10 Dez. 2019
Bearbeitet: Erivelton Gualter am 10 Dez. 2019
There is a function you might use for this task called sawtooth. You might find some help in this page.
t = -.4:0.001:.4; % Time Array
A = 2;
T = 0.2;
x = 2*sawtooth(2*pi*t/T, 1/2); % sawtooth(T, xmax):
% xmax = 1/2: For triangle wave
plot(t,x)
  1 Kommentar
taher zaouali
taher zaouali am 10 Dez. 2019
i know the function but i need to use a mathematical equation based on the one i wrote

Melden Sie sich an, um zu kommentieren.

Kategorien

Mehr zu Matrices and Arrays finden Sie in Help Center und File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by