How to express inner product of two vectors in Stateflow action language?
古いコメントを表示
I want to compute the inner product y of two vectors u and v (same size, both based on input from Simulink) in Stateflow action language. I have tried
x=ml.transpose(u)
y=ml.(x*v)
but during compilation this results in a coder error "Cannot reshape Local Data 'x' (#...) ([...]) to Local Data 'y' (#...) (scalar) for operator =. Please refer to object (#...)." Apparently, the "ml." notation only works with functions, not with operators such as '*'. Would there be a way to write a product as a function - something like y=ml.product(x,v)?
An alternative might be
x=ml.transpose(u)
y=ml('x*v')
but this requires x and v to be defined in the Matlab workspace, which would mean I have to export them first. This seems to be a rather laborious solution.
Any ideas?
採用された回答
その他の回答 (1 件)
カテゴリ
ヘルプ センター および File Exchange で Stateflow についてさらに検索
製品
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!