Solving a system of differential equation numerically but with constants

7 次查看(过去 30 天)
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 个评论
Hayao
Hayao 2015-10-14
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 2015-10-14
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.

请先登录,再进行评论。

回答(1 个)

Gajendra Singh
Gajendra Singh 2019-7-25
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)

类别

Help CenterFile Exchange 中查找有关 Linear Least Squares 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by