Can I use as Input at Simulink a equation?

2 次查看(过去 30 天)
Hello,
Can I use this equation as input at Simulink? I would appreciate any help.
Simulink block:

采纳的回答

Walter Roberson
Walter Roberson 2015-12-24
Use a MATLAB Function Block, or an Interpreted MATLAB Block
  5 个评论
Walter Roberson
Walter Roberson 2015-12-29
"Interpreted MATLAB Function
Supports only a single input and a single output port. Use a Mux block to combine the inputs and a Demux block to separate the outputs if you pass multiple signals into or out of these blocks."
Alternately you could use a Level 2 MATLAB S-Function as those accept multiple inputs.
For the Interpreted MATLAB Function, I am not at the moment sure whether it is permitted to name the input anything other than u. It might need to look something like,
sum( u(:,2).*cos(2.*pi.*u(:,3).*u(:,1)+u(:,4) )
But since this is a scalar result involving only values from your workspace, it is not clear to me why you do not just calculate the scalar in MATLAB ? Is your mention of a random number generator intended to be a hint that you want to try random phases? Keep in mind that if you use random numbers inside an algebraic loop then the calculation is not going to be differentiable and Simulink would not be able to calculate consistent values.
Bob
Bob 2016-1-2
Thank you for your answer again.
So I should calculate the equation in Matlab.
Get two variables simin=[t,h].
And use "From Workspace" block at Simulink?
Actually I did that. I got the same results with Matlab. The only "problem" is that I have to manually change the simulation time in Simulink but it's ok.
Thanks for your time.

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Simulink Functions 的更多信息

标签

Community Treasure Hunt

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

Start Hunting!

Translated by