Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Arrays MATLAB查找数组元素并有条件地添加到常数_Arrays_Matlab_Conditional_Addition - Fatal编程技术网

Arrays MATLAB查找数组元素并有条件地添加到常数

Arrays MATLAB查找数组元素并有条件地添加到常数,arrays,matlab,conditional,addition,Arrays,Matlab,Conditional,Addition,给定此角度阵列: 123.5280 129.5280 129.0130 136.2960 139.1640 145.7430 148.9800 156.9080 168.3440 179.2340 3.0840 3.9720 我想确定

给定此角度阵列:

  123.5280
  129.5280
  129.0130
  136.2960
  139.1640
  145.7430
  148.9800
  156.9080
  168.3440
  179.2340
    3.0840
    3.9720
我想确定<90度的位置

angles(angles < 90)

ans =

    3.0840
    3.9720
如何实现这一点?

角度(角度<90)=角度(角度<90)+180
angles(angles < 90) = angles(angles < 90) + 180
角度(角度<90)=角度(角度<90)+180

您正在寻找的行为称为(相位)展开,并且有一个内置函数


请注意,
unwrap
以弧度工作,跳跃+/-pi,而不是您要求的2*pi,因此我有意使用
90*pi
而不是
180*pi
进行缩放。另请参见讨论。

您正在寻找的行为称为(相位)展开,并且有一个内置函数用于此操作

请注意,
unwrap
以弧度工作,跳跃+/-pi,而不是您要求的2*pi,因此我有意使用
90*pi
而不是
180*pi
进行缩放。另请参见讨论。

一行解决方案:

angles=angles+(angles<90)*180;
角度=角度+(角度一行解决方案:

angles=angles+(angles<90)*180;

angles=angles+(angles
ind=angles<90;angles(ind)=angles(ind)+180;
@Jubobs:没有更多要添加的了。请回答这个问题!谢谢@Jubobs——请将它添加为答案,以便我可以给它打勾
ind=angles<90;angles(ind)=angles(ind angles)(ind)+180;
@Jubobs:没什么可补充的了。请回答!谢谢@Jubobs--请将它添加为答案,这样我就可以给它打勾了
angles=angles+(angles<90)*180;