solving for x in a state space model
2 views (last 30 days)
Show older comments
Hi, Assume that we have a diff equation as :
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/166900/image.gif)
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:
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/166901/image.png)
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?
0 Comments
Answers (1)
Suhan
on 31 Aug 2017
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 Comments
See Also
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!