Effacer les filtres
Effacer les filtres

Solving a system of differential equation numerically but with constants

3 vues (au cours des 30 derniers jours)
Hayao
Hayao le 13 Oct 2015
Hello,
I am asking this question before I buy MATLAB to make sure that I can get a solution of a problem (so that I won't be wasting money). I have never used MATLAB before.
I am currently needing a numerical solution to a system of differential equation for a certain phenomenon I am currently working on. However, the problem is when I look through google, most question involves a system of differential equation with constants that are defined apriori (like 3*x^2 instead of a*x^2). I am using the system of differential equation to fit certain experimental data I have achieved so that I can figure out the constants that have important meaning to the phenomenon. Therefore, I have no idea what value the constants take.
The system of differential equation I have set up looks like this:
w(t) = a*exp(-t/b)
dx(t)/dt = c*w(t) + d*y(t) + e*z(t) - (1/f)*x(t)
dy(t)/dt = g*x(t) + h*y(t) + i*z(t) - (1/j)*y(t)
dz(t)/dt = k*x(t) + l*y(t) - (1/m)*z(t)
where x(0) = y(0) = z(0) = 0, dx(0)/dt = dy(0)/dt = dz(0)/dt = 0, and all the constants from a to m is above 0.
There are four differential equation and four yet-to-be-known equation, so I think this is theoretically solvable. However, each equations are recursive (am I using this term right?) and I cannot do this by hand and nor could a freeware software that tried to solve this analytically.
I am expecting a solution where each equation consists of variable (t) and constants combined in an arithmetic way. Is this possible in MATLAB?
I really have no background in mathematics. Even worse, I learned almost everything in Japanese so I do not know the correct translation of tehcnical terms. Also, my English is mediocre at most. I apologize for my inability to effectively explain what I am trying to explain.
Thank you.
  10 commentaires
Hayao
Hayao le 14 Oct 2015
The constants are arbitrary. I do not know what number they actually are. I am not exactly trying to solve the ODE system. Instead, I am trying to find out what the constants are by fitting the ODE system to an experimental result.
As a matter of fact, it is virtually impossible to expect what the constants are. Some of them can be approximated, but lack of experimental method keeps those constants to be unknown (there is a way, but I don't have the machine capable of doing it).
Torsten
Torsten le 14 Oct 2015
Yes, of course a,b,c,.. are unknowns, and they will change during the computation until the best fit for your model is reached. But if you solve your problem with MATLAB, a,b,c,... will always be (changing) numerical values such that you apply the matrix exponential to a matrix with definite numbers as entries, not to a symbolic matrix with letters as entries.
Best wishes
Torsten.

Connectez-vous pour commenter.

Réponses (1)

Gajendra Singh
Gajendra Singh le 25 Juil 2019
Do you find any solution?? Actually i have same problem ( four differential equation with 4 unknown variable and 4 unknown constant which have to be optimize)

Community Treasure Hunt

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

Start Hunting!

Translated by