Genral state space model - runge kutte

Click For Summary
SUMMARY

The discussion focuses on solving general n-order state space models using numerical methods, specifically the Runge-Kutta 4th order (RK4) method. Participants clarify that the state space representation involves matrices A, B, C, and D, and suggest using MATLAB/Simulink for implementation. The Butcher tableau is deemed unnecessary for this context, and alternative methods such as Heun's method are mentioned as viable options. The conversation emphasizes the importance of understanding the conversion of higher-order ODEs into first-order systems for effective application of numerical techniques.

PREREQUISITES
  • Understanding of state space representation in control systems
  • Familiarity with ordinary differential equations (ODEs)
  • Knowledge of numerical methods, particularly Runge-Kutta methods
  • Experience with MATLAB/Simulink for system simulation
NEXT STEPS
  • Research the conversion of higher-order ODEs to first-order systems
  • Learn about Heun's method as an alternative to RK4
  • Explore MATLAB/Simulink for simulating state space models
  • Study the implications of the Laplace transform in control systems
USEFUL FOR

Control engineers, systems analysts, and students studying differential equations or numerical methods for solving state space models.

ash4sigh
Messages
5
Reaction score
0
Hi,

Really glad to have found this site... I was hoping someone could help me - have been trying to decipher how to find a way to solve general n order state space model - I started off with RK4 and now I want to expand that but I can't get my head wrapped around the butcher tableau to generate code for n order state space model..

any help would be appreciated..

sorry *general
 
Last edited:
Physics news on Phys.org
hell i don't even know if i need butcher tableau - lost!
 
You've lost me too! I thought I knew differential equations but I don't recognize "n order state space" nor "Butcher tableau"!
 
sniff
 
What he means is just a matrix ODE given as in a compact fashion
<br /> \dot{x} = Ax+Bu, y = Cx + Du<br />
where A,B,C,D are matrices. This is usually referred as a State-Space model of a system.


You can just use MATLAB/simulink for your system. For that you don't need anything else, it does it for you. Or you can just pick up a sample time and update your states at each sample time e.g. Newton's method. If you insist on RK4 it is similar to Runge Kutta 4 for scalar ODEs. just make sure that what you are doing is the same with why you are doing.

Of course if you have the input function known in time domain, you can solve the convolution integral

<br /> y=Ce^{At}x_0 + C\int^t_0{e^{A(t-\tau)}Bu(\tau)d\tau}<br />

or the Laplace equivalent of this (in terms of a transfer function), (if you know your input function's Laplace domain representation!)
<br /> y(s) = (C(sI-A)^{-1}B + D)u(s)<br />

Butcher Tableau is not useful here. Just forget about it.
 
ash4sigh said:
[ I have ] been trying to decipher how to find a way to solve general n order state space model - I started off with RK4 ...
What do you mean by "general n order state space model"? I assume you mean that you have a functional representation for the nth derivative of the state with respect to time,

\frac {d^n}{dt^n} x(t) = x^{(n)}(t) = g(t,x(t),x^{(1)}(t),\cdots,x^{(n-1)}(t))

Such systems can be converted to a first-order ODE by making the derivatives up to order n-1 a part of the state. You then have a plethora of first-order ODE techniques from which to choose, Runge-Kutta methods being just one class.

RK4 is the gold standard, not so much because it is particularly good but more because it is often adequate and particular easy to implement. Lower order methods such as Heun's method (aka velocity verlet) can yield good results at a lower cost. What problems are you confronting, and what have you tried?

You probably don't need to use the Butcher tableau. Most of the work on Runge-Kutta methods was done a long time ago.
 
help on state space HW

Edited by HallsofIvy
I have removed this because

1) It introduced a totally new problem, not that of the original poster.

2) It has also been posted under "homework".
 
Last edited by a moderator:

Similar threads

  • · Replies 65 ·
3
Replies
65
Views
8K
  • · Replies 4 ·
Replies
4
Views
2K
Replies
0
Views
2K
  • · Replies 0 ·
Replies
0
Views
1K
  • · Replies 1 ·
Replies
1
Views
3K
  • · Replies 1 ·
Replies
1
Views
4K
  • · Replies 1 ·
Replies
1
Views
920
  • · Replies 1 ·
Replies
1
Views
2K
  • · Replies 2 ·
Replies
2
Views
2K
  • · Replies 1 ·
Replies
1
Views
2K