How do I solve a system of equations?

1 visualización (últimos 30 días)
Julian Laackmann
Julian Laackmann el 14 de Ag. de 2012
Hello,
suppose I've got four equations which depend on one another and one of them depends on the time:
a = f(b);
b = f(c);
c = f(d);
d = f(a,t);
How can a system like this be solved? I thought about using one of the ode solvers but failed to implement the functions. Can anybody give me a hint?
Thanks in advance,
J
  1 comentario
Walter Roberson
Walter Roberson el 15 de Ag. de 2012
I am confused about you using f() with one argument in most places, but using it with two arguments for "d".

Iniciar sesión para comentar.

Respuesta aceptada

Isktaine
Isktaine el 14 de Ag. de 2012
Editada: Isktaine el 14 de Ag. de 2012
You need to have a function which the ode solvers can act on.
[t,y] = ode45('YourODEFunction', [0 50], [a(0) b(0) c(0) d(0)])
An example of how to create the function:
function dA=YourODEFunction(x,A)
dA(1)=f(b); %Equation for a,
dA(2)=f(c); %Equation for b
dA(3)=f(d); %Equation for c
dA(4)=f(a,t); %Equation for d
dA=dA'
Note that when you have f(b) (and all the others) you'd have to type in an experission eg
dA(1)=3*A(2) %Coding up of a=3*b
Any time your equation would have a 'b' use A(2), any time you would use an 'a' use A(1), any time you would use a 'c' use A(3) and 'd' use A(4). Does that make sense?
  5 comentarios
Isktaine
Isktaine el 17 de Ag. de 2012
I'm sorry! I think I misunderstood your first question then. I was assuming all of these were differentials i.e. a'=f(b). How silly of me to make that assumption! Are any of the equations actually differentials?
If there are no differentials then you have to uncouple the system before it can solved numerically. You could just use direct substitution to solve them by hand to get one equation for d only in terms of t, the use back substitution to find values for c,b and a once you have d for any t.
Julian Laackmann
Julian Laackmann el 11 de Sept. de 2012
Isktaine,
thank you very much! Uncoupling the equations did the trick.

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre Ordinary Differential Equations en Help Center y File Exchange.

Community Treasure Hunt

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

Start Hunting!

Translated by