Calculate vector norm in Simulink?
252 次查看(过去 30 天)
显示 更早的评论
Is there a block that finds the norm of a vector in simulink? I haven't found the equivalent to norm(v) from MATLAB.
Thanks!
0 个评论
采纳的回答
Jon
2013-4-8
You can use the dot product block (with the same vector wired to both inputs) followed by a square root. Both are under the Math Operations library. I think the previously suggested abs block computes the absolute values of each element of the input vector.
0 个评论
更多回答(4 个)
Youssef Khmou
2013-4-8
hi, it does exist, its called "abs" , open Simulink library and go to :"Math operations" block , its the first on the list, with notation u : ABS
2 个评论
Jon
2013-4-8
As noted in my alternative answer, I don't this this gives you what you want. As far as I can tell abs gives the element wise absolute values, not the norm
Youssef Khmou
2013-4-8
hi, if the first answer does not work, you can use other ways, like :
1) go to " User Defined Functions" in Simulink Block .
2) choose "f(u)" FCN, add it to your file , right click on it you will find the default value :
sin(u(1)*exp(2.3*(-u(2))))
change it to
"norm(u)"
4 个评论
Jon
2013-4-9
I couldn't find and "Embeded function" Do you mean the Interpreted MATLAB Fcn under User Defined Functions? The Interpreted MATLAB Fcn works, but I would guess that the dot product block, followed by the sqrt block is faster, because it doesn't need to be interpreted.
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Math Operations 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!