How to solve differential equation with variable input parameters

How to solve differential equation: zdot = (w*v*z)+1. where w=constant, v= velocity array of size 10, z is the initial condition=0. The solution for the first step is the z value for the next step.

 Risposta accettata

z0=0
z1=z0+dt*(w*v1*z1+1) -> z1=(z0+dt)/(1-dt*w*v1)
z2=z1+dt*(w*v2*z2+1) -> z2=(z1+dt)/(1-dt*w*v2)
...
In general:
Use the recursion
z(i+1)=(z(i)+dt)/(1-dt*w*v(i+1)) (i=1,...,9)
with
z(1)=0
Best wishes
Torsten.

3 Commenti

Thank you. The solution provided is working fine.But I was looking for a solution using functions, such as 'ode'. This is only a small part of the equation to be solved.
Torsten
Torsten il 29 Giu 2017
Modificato: Torsten il 29 Giu 2017
Then, with your time-dependent vector v, you can adapt the example "ODE with Time-Dependent Terms" provided under
https://de.mathworks.com/help/matlab/ref/ode45.html
Best wishes
Torsten.

Accedi per commentare.

Più risposte (0)

Categorie

Prodotti

Community Treasure Hunt

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

Start Hunting!

Translated by