I could not find a control systems forum on stack exchange and so I am doing this here. Is it possible to solve the state space variable form of a system $\dot{x}=A\,x + B\,u$ using any order of Runge-Kutta method, and if so can anyone please tell me the method
2026-03-25 01:14:59.1774401299
Solving a matrix differential equation using Runge-Kutta methods
6.8k Views Asked by Bumbble Comm https://math.techqa.club/user/bumbble-comm/detail At
1
There are 1 best solutions below
Related Questions in CONTROL-THEORY
- MIT rule VS Lyapunov design - Adaptive Control
- Question on designing a state observer for discrete time system
- Do I really need quadratic programming to do a Model Predictive Controller?
- Understanding Definition of Switching Sequence
- understanding set of controllable state for switched system
- understanding solution of state equation
- Derive Anti Resonance Frequency from Transfer Function
- Laplace Transforms, show the relationship between the 2 expressions
- Laplace transform of a one-sided full-wave rectified...
- Controlled Markov process - proper notation and set up
Related Questions in RUNGE-KUTTA-METHODS
- Sensitivity (gradient) of function solved using RK4
- Solve fourth order ODE using fourth order Runge-Kutta method
- Prove that Runge Kutta Method (RK4) is of Order 4
- Applying second-order differential operator vs applying first-order differential operator twice?
- Adaptive step size Runge Kutta: getting a specific value
- PYTHON RK2 (Midpoint Method)
- Runge-Kutta Order Question
- fourth-order Runge-Kutta method producing values for $f(x)=\int_0^x e^{-t^2}$ (confusing answer key)
- Adaptive Step Size in RK45 for Second-Order ODE
- Runge kutta method for order 4 for ODE x'=f(t)
Trending Questions
- Induction on the number of equations
- How to convince a math teacher of this simple and obvious fact?
- Find $E[XY|Y+Z=1 ]$
- Refuting the Anti-Cantor Cranks
- What are imaginary numbers?
- Determine the adjoint of $\tilde Q(x)$ for $\tilde Q(x)u:=(Qu)(x)$ where $Q:U→L^2(Ω,ℝ^d$ is a Hilbert-Schmidt operator and $U$ is a Hilbert space
- Why does this innovative method of subtraction from a third grader always work?
- How do we know that the number $1$ is not equal to the number $-1$?
- What are the Implications of having VΩ as a model for a theory?
- Defining a Galois Field based on primitive element versus polynomial?
- Can't find the relationship between two columns of numbers. Please Help
- Is computer science a branch of mathematics?
- Is there a bijection of $\mathbb{R}^n$ with itself such that the forward map is connected but the inverse is not?
- Identification of a quadrilateral as a trapezoid, rectangle, or square
- Generator of inertia group in function field extension
Popular # Hahtags
second-order-logic
numerical-methods
puzzle
logic
probability
number-theory
winding-number
real-analysis
integration
calculus
complex-analysis
sequences-and-series
proof-writing
set-theory
functions
homotopy-theory
elementary-number-theory
ordinary-differential-equations
circles
derivatives
game-theory
definite-integrals
elementary-set-theory
limits
multivariable-calculus
geometry
algebraic-number-theory
proof-verification
partial-derivative
algebra-precalculus
Popular Questions
- What is the integral of 1/x?
- How many squares actually ARE in this picture? Is this a trick question with no right answer?
- Is a matrix multiplied with its transpose something special?
- What is the difference between independent and mutually exclusive events?
- Visually stunning math concepts which are easy to explain
- taylor series of $\ln(1+x)$?
- How to tell if a set of vectors spans a space?
- Calculus question taking derivative to find horizontal tangent line
- How to determine if a function is one-to-one?
- Determine if vectors are linearly independent
- What does it mean to have a determinant equal to zero?
- Is this Batman equation for real?
- How to find perpendicular vector to another vector?
- How to find mean and median from histogram
- How many sides does a circle have?
Runge-Kutta methods considers the problem $\dot{x}=f(t,x)$ with $x(t_0)=x_0$ and wants to find $x(t)$ at $t=t_0+n\,h$ for $n=1,2,3,...$. In your case $f(t,x)=A\,x+B\,u$, so you have choose how to interpret $u$ as a function of time. Often $u$ is also only sampled every $h$ time units, so two options would be to assume $u$ to be constant between sample steps (zero order hold), or perform linear interpolation (first order hold). If $u$ is know continuously, then you can directly evaluate $u(t)$ at the give sub time steps of the Runge-Kutta method.
For example when using the fourth order Runge-Kutta method with zero order hold, using $x_n=x(t_0+n\,h)$ and $u_n=u(t_0+n\,h)$, you get
\begin{align} x_{n+1}&=x_n+\frac{1}{6}\left(k_1+2\,k_2+2\,k_3+k_4\right) \\ k_1&=h\left(A\,x_n+B\,u_n\right) \\ k_2&=h\left(A\,(x_n+k_1/2)+B\,u_n\right)\\ k_3&=h\left(A\,(x_n+k_2/2)+B\,u_n\right)\\ k_4&=h\left(A\,(x_n+k_3)+B\,u_n\right)\\ \end{align}
Substituting these equations into each other gives
$$ x_{n+1} = \left(I + h\,A + \frac{h^2}{2!}A^2 + \frac{h^3}{3!}A^3 + \frac{h^4}{4!}A^4\right) x_n + \left(h\,I + \frac{h^2}{2}A + \frac{h^3}{3!}A^2 + \frac{h^4}{4!}A^3\right)B\,u_n $$
which is just the fourth order approximation of the zero order hold discretization, which can be expressed as
\begin{align} x_{n+1} &= e^{A\,h} x_n + A^{-1} (e^{A\,h} - I)B\,u_n \\ e^{A\,h} & = \sum_{i=0}^\infty \frac{1}{i!}(A\,h)^i \end{align}
Similarly one would obtain a fourth order approximation of the first order hold discretization when using first order hold for $u$. So when $u$ is sampled every $h$ time units and the system is LTI then using Runge-Kutta would just be an approximation of known discetization methods and you might as well use those methods instead. However if the sample frequency is sufficiently high compared to the system dynamics, then the difference between Runge-Kutta and the discetization methods should become negligible. If $u(t)$ is known at all time then Runge-Kutta might give more accurate results then the other mentioned discetization methods. And for LPV or LTV systems Runge-Kutta discetization should work as well, as long as the sample frequency is high enough.