solving for x in a state space model

4 次查看(过去 30 天)
Peppe
Peppe 2017-8-27
评论: Jan 2018-6-5
Hi, Assume that we have a diff equation as :
where x is nx1 and A is nxn and b is nxm and u is mx1. How do I perform algorithm to find for x given an initial values of x? If matrix A is containing different parameters from workspace how do I insert these values to a new matrix in simulink? and regarding the integrator block , how will it perform the integration when you have arrays/matrices? row by row or matrix calculations? and how do you give the initial values of x in such model?
In fact I have an observator looking like:
I use a matlab function for calculating the inverse of jacobian. for multiplication of jacobian and gain K I used the matrix multiplication block in simulink. and for addition of these terms I used a sum block. and for integration I used a integrator block. Am I doing this correctly?

回答(1 个)

Suhan
Suhan 2017-8-31
I have attached here a model 'Sample_Model.slx' which can solve the above differential equation. I have used dummy values for matrix A and B in the model, you can replace it by the actual values.
You can set the initial values for the state X in the 'integrator' block which does element wise integration of the input array.
If the matrix A is defined in case workspace, you can directly enter 'A' in the constant block. Also, note that you have to use 'matrix multiplication' in the product block.
  3 个评论
Peppe
Peppe 2017-9-9
I still cant see the attached file. Can you update your post Suhan
Jan
Jan 2018-6-5
[MOVED from flags] Maa wrote:
Where is the model

请先登录,再进行评论。

Community Treasure Hunt

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

Start Hunting!

Translated by