Filter löschen
Filter löschen

Solving multi-variable ODE

5 Ansichten (letzte 30 Tage)
진욱 강
진욱 강 am 17 Feb. 2023
Bearbeitet: Torsten am 17 Feb. 2023
Hello, I am having a hard time solving an ODE. Any help witll be grealy appreciated.
Below is the ODE i am trying to solve.
As you can see, I am trying to solve for η, and , and are just constants.
The problem is that v(r) is a function of r which is defined over r= [0 1]. (and same for )
And of course i only need to solve η for r = [0 1].
I looked at many examples, but i could not find any that resembles my equation.
The initial conditions are η=0, and r 0.
Before you tell me that I can just solve it by integrating it both sides, I have solved it that way, but i just want to learn how to solve such ODEs without integrating it.
Thanks in advance!!

Antworten (2)

Torsten
Torsten am 17 Feb. 2023
Bearbeitet: Torsten am 17 Feb. 2023
If nu(r) is known, you have to insert the expressions for nu(r) and dnu/dr in your equation for eta.
If nu(r) is unknown, you must solve an additional equation for it.
And then you can apply ode45 to solve one equation for eta or two equations for eta and nu.
  1 Kommentar
진욱 강
진욱 강 am 17 Feb. 2023
Hello torsten, yes v or as you mentioned nu, (it's actually velocity) is known and well defined for r=[0 1].
But i am not sure what you mean by insert the expression for into the equation for eta.
V is an array so do i simply put the array into the ODE and plug it into ode45?
thanks!

Melden Sie sich an, um zu kommentieren.


Torsten
Torsten am 17 Feb. 2023
Bearbeitet: Torsten am 17 Feb. 2023
Use interp1 to interpolate the vector values for v and dv/dr to the values r requested by the solver.
The example
ODE with Time-Dependent Terms
under
shows you how to proceed.

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by