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.

1 view (last 30 days)
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 Comments
Geoff Hayes
Geoff Hayes on 11 Feb 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 on 11 Feb 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

Sign in to comment.

Accepted Answer

John D'Errico
John D'Errico on 11 Feb 2019
Theta4 = mod(Theta4,2*pi);

More Answers (0)

Categories

Find more on Mathematics in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!