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 commentaires

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 le 10 Déc 2019
Yes i know but my assignment is to use matematical equation.

Connectez-vous pour commenter.

Réponses (1)

Erivelton Gualter
Erivelton Gualter le 10 Déc 2019
Modifié(e) : Erivelton Gualter le 10 Déc 2019

0 votes

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 commentaire

taher zaouali
taher zaouali le 10 Déc 2019
i know the function but i need to use a mathematical equation based on the one i wrote

Connectez-vous pour commenter.

Catégories

En savoir plus sur Mathematics dans Centre d'aide et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by