I am trying to solve a coupled system of differential-algebraic equations as follows.
First define a list of 6 equations
eqn = {f2[1, 1][t] f2[2, 1][t] == 0, f2[1, 2][t] f2[2, 2][t] == 0,
f2[1, 2][t] f2[2, 1][t] - μ[1, 2][t] == 0, -1 + f2[1, 1][t] f2[2, 2][t] + μ[1, 2][t] == 0, -Derivative[1][μ[0]][t] == 0,
f2[1, 2][t] f2[2, 1][t] - f2[1, 1][t] f2[2, 2][t] + f2[1, 2][t] Derivative[1][f2[2, 1]][t] -
f2[1, 1][t] Derivative[1][f2[2, 2]][t] - Derivative[1][μ[1, 2]][t] == 0}
Then list the 6 unknown functions
vars = Union[Flatten@ Array[f2[#1, #2][t] &, {2, 2}], {μ[0][t], μ[1, 2][t]}]
Naive use of DSolve
seems futile as the following flags an error
DSolve[Union[eqn,vars /. a_[b__][t] -> a[b][0] == c[a[b]]], vars, t]
where I am setting the initial values to be some arbitrary constants of the form c[_]
.
Reduce
does help but it treates the derivatives as being independent functions and is not able to simplify as much as it could.
Reduce[eqn, vars]
(*(Derivative[1][\[Mu][0]][t] == 0 && f2[1, 1][t] == 0 && Derivative[1][f2[2, 1]][t] != 0 &&
f2[1, 2][t] == (-1 + Derivative[1][\[Mu][1, 2]][t])/Derivative[1][f2[2, 1]][t] && f2[1, 2][t] != 0 &&
f2[2, 1][t] == 1/f2[1, 2][t] && f2[2, 2][t] == 0 && \[Mu][1, 2][t] == 1) ||
(Derivative[1][\[Mu][0]][t] == 0 && Derivative[1][f2[2, 2]][t] != 0 &&
f2[1, 1][t] == (-1 - Derivative[1][\[Mu][1, 2]][t])/Derivative[1][f2[2, 2]][t] && f2[1, 2][t] == 0 && f2[2, 1][t] == 0 &&
f2[1, 1][t] != 0 && f2[2, 2][t] == 1/f2[1, 1][t] && \[Mu][1, 2][t] == 0) ||
(Derivative[1][\[Mu][1, 2]][t] == -1 && Derivative[1][\[Mu][0]][t] == 0 && Derivative[1][f2[2, 2]][t] == 0 && f2[1, 2][t] == 0 &&
f2[2, 1][t] == 0 && f2[1, 1][t] != 0 && f2[2, 2][t] == 1/f2[1, 1][t] && \[Mu][1, 2][t] == 0) ||
(Derivative[1][\[Mu][1, 2]][t] == 1 && Derivative[1][\[Mu][0]][t] == 0 && Derivative[1][f2[2, 1]][t] == 0 && f2[1, 1][t] == 0 &&
f2[1, 2][t] != 0 && f2[2, 1][t] == 1/f2[1, 2][t] && f2[2, 2][t] == 0 && \[Mu][1, 2][t] == 1)*)
There are a lot of simplifications it can still do, once it understands that the derivative functions are not independent. How can I make mathematica completely solve this system? (note: this system has very simple solutions I can get by hand, using this as a sample example for applying to more complicated systems)
Any help will be appreciated.
Update: initial conditions added