Calculate vector norm in Simulink?

264 次查看(过去 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!

采纳的回答

Jon
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.

更多回答(4 个)

Youssef  Khmou
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
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
Steven Crews
Steven Crews 2021-4-21
Agreed. This is not the correct answer.

请先登录,再进行评论。


Joshua
Joshua 2013-4-8
Thanks!

Youssef  Khmou
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
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.

请先登录,再进行评论。


DEBASISH MISHRA
DEBASISH MISHRA 2019-8-9
Hi,
You may direct use matrix 1-norms from dsp tool box.
Thanks

类别

Help CenterFile Exchange 中查找有关 Math Operations 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by