Effacer les filtres
Effacer les filtres

I have a matrix, I want all values inside the matrix greater than 2*pi to be subtracted by 2*pi. All values less than 0 to have 2*pi be added to them. Other terms stay constant.

4 vues (au cours des 30 derniers jours)
I have a matrix, I want all values inside the matrix greater than 2*pi to be subtracted by 2*pi, all values less than 0 to have 2*pi be added to them. Other terms stay constant as they are.
I have tried code below, but it does nothing. (I tried to change the theta4 > 2pi, then theta4 = 0 and nothing happened to my graph, althought some values are clearly above 0)
Theta4 is my matrix "[1x111] double" with "random" numbers.
I am not an expert in matlab, and some explination would be great.
%{
if theta4 > 2*pi
theta4 = theta4 - 2*pi;
elseif theta4 < 0
theta4 = theta4 + 2*pi ;
else
theta4= theta4 ;
end
%}
  2 commentaires
Geoff Hayes
Geoff Hayes le 11 Fév 2019
gabriel - suppose your matrix has 4*pi as one of its elements. If we subtract 2*pi, then we are left with 2*pi. Should we subtract 2*pi again (and continue to do so) until the result is less than 2*pi?
gabriel rios
gabriel rios le 11 Fév 2019
Interesting thought experiment, but I think my attempted if statement would stop that
Just to complelety clarify, I want all my values inbeetween 0-2pi values. With my attemped solution
if theta > 2 pi , meaning not 2pi = 2pi but 2pi+0.01 > 2pi then it would subract 2pi
if theta < 0 then add to 2pi to make it positive, but less than 2pi
else if theta somehow ends up 2pi exact, end.
These are all numbers in a matrix (1x111 double). I am satisfied when all values inside are
0 <= x <= 2 pi . I attamped another if statement, and it did not change my matrix. If statement is NOT changing my matrix values.
if theta4 > 2*pi
theta4 = theta4 - 2*pi;
elseif theta4 < 0
theta4 = theta4 + 2*pi ;
elseif theta4==theta4
theta4 = theta4
else
theta4=0
end

Connectez-vous pour commenter.

Réponse acceptée

John D'Errico
John D'Errico le 11 Fév 2019
Theta4 = mod(Theta4,2*pi);

Plus de réponses (0)

Catégories

En savoir plus sur Matrix Indexing dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by