How to restrict the range ?
32 次查看(过去 30 天)
显示 更早的评论
I want to restrict the output of the arc cosine to be in the range [-1,1], but I want to know if there is built-in Matlab function for this task and if it is possible for example merge @max & @min simultaneoulsy in the function bsxfun to achieve this task.
0 个评论
采纳的回答
Jos (10584)
2016-3-3
I do not see why you need bsxfun for this. If X is your signal, this statement restricts X between -1 and 1
X = [0.5 1 2 -2 -1 -0.5 0]
OUT = min(max(X,-1),1)
You can create an (anonymous) function for this, if you need it a lot.
minmax = @(x,a,b) max(min(x,a),b) % restricts input X between a and b
1 个评论
Nishantha Randunu
2021-3-3
anoymous function should be
minmax = @(x,a,b) min(max(x,a),b) % restricts input X between a and b
更多回答(1 个)
Walter Roberson
2016-3-3
min(max(x, -1), 1)
2 个评论
Jos (10584)
2016-3-4
Simply replace -1 and 1 by the minimum and maximum of B
... max(A,min(B(:))) ...
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Logical 的更多信息
产品
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!