# What is the advantage of Runge Kutta (or any other) method over just solving the o.d.e?

An example in task had a model with "runge kutta RK4 approximation applied" so I naturally went to Google what Runge Kutta method is. I found how to use it and why it's better over euler method but I didn't find why/what it is used for.

From what I read, Runge-Kutta is used to approximate ordinary differential equation solutions. And here's my question: Why use Runge-Kutta, if we can just solve the differential equation using integral and get infinitely more precise solution? Question is not limited to Runge Kutta, it is just the one I'm currently working with.

Perhaps my understanding of RK or o.d.e is totally wrong.

Why use Runge-Kutta, if we can just solve the differential equation using integral and get infinitely more precise solution?

That's a pretty darn big "if" you have there. In fact, most differential equations, ordinary or not, cannot be solved. And in practical use, we may not even know the true form of the equation itself, just a few discrete measurements of the coefficient functions. That's what numerical methods like Euler or RK are really for.

• For an example of "we do not know the coefficient functions" that I just came up with, consider the scenario where we have a container with something temperature sensitive inside, and we have a thermometer on the outside. If you want to know, at any time, what the temperature is inside by using a list of readings of the outside thermometer, you can do that with RK or Euler (a simple model is that the inside temperature changes proportional to the temp difference), but you don't have a function for how the outside temperature has varied, so there is no way to solve the equation analytically. Feb 17, 2021 at 18:01

When I started taking Differential Equations (18.03) at MIT, I quickly got the impression that Diff Eq is not a "finished" class. They haven't finished discovering it yet, they haven't figured out how to solve huge categories of equations, and so forth. There was very little by way of general techniques, and a whole bunch of specialized tricks: "If you see this, try that." It was like integration but squared. "Derivatives are a science; Integrals are an art; Differential Equations are a black art."

So I found myself wondering why they were bothering to teach it when it wasn't done yet. The answer is simple: our understanding of Nature is currently written in the language of differential equations. We don't have time to wait for a finished, perfect theory. If you go into physics or any sort of engineering, you are probably going to be fighting with differential equations at every turn. So they teach us as best they can the tools that have been developed so far. Differential equations are HARD. If you find an exact solution of the Einstein equations, for example, you usually get it named after you.

Numerical approximation is the approach when all else fails. And all else fails far more often than not. Different techniques of approximation have different efficiencies in terms of computation time and memory usage and so forth, and it makes sense to pick the technique that works most efficiently for your problem. Runge-Kutta is one of those techniques.

Most real world applications of differential equations are not easily analytically solvable. When I took numerical methods an example problem we had was simulating a giant asteroid called Apophis to determine the likelihood of a collision with Earth using other planets and the moon as well. This ends up being a system of differential equations. It isn't super hard but it's also not something most people want to do.

Real world problems are much more complex than that. Applications in engineering typically have you simulating different forces on buildings or products by generating complex meshes to evaluate them. The reality is you could never do any of that by hand. If you watched the movie "Hidden Figures" she ends up using a simple Runge-Kutte method. More complex Runge-Kutte methods that you use in practice are more complex and require more evaluations.

Runge-Kutte is also a relatively simple way that doesn't apply to all differential equations. There are much more complex and time consuming methods.