# DSolve does not work

I am trying to solve this coupled nonlinear pdes for $$\kappa(x,t)$$ and $$\tau(x,t)$$:

where $$\zeta_1 = \kappa(x,t)$$, $$\zeta_2 = 0$$. I used this code

ζ1[t, s] := k[t, s];
ζ2[t, s] := 0;
DSolve[{D[τ[t, s], t] == -ζ2[t, s] k[t, s] - D[ζ1[t, s], s],
D[k[t, s], t] == -τ[t, s] ζ2[t, s] -
D[(ζ1[t, s] k[t, s] + D[ζ2[t, s], s] )/τ[t, s], s]}, {k, τ}, t, s]


but the Mathematica repeats the code like that:

and sometimes with different values for $$\zeta_1\,\,and\,\, \zeta_2$$, it repeats the same equation again. Any suggestions to solve this problem?

• DSolve returns unevaluated when it cannot obtain a solution. Perhaps, there is no analytical solution. Do you have reason to believe otherwise? Commented Sep 11, 2020 at 1:43
• @bbgodfrey,It has a solution because some colleagues use Mathematica 7 and it gives a solution with them but with Mathematica 12 or other versions doesn't work. I wonder why it does not work with me?!. At the beginning I thought the problem from my laptop but after trying another laptops still have the same problem. Commented Sep 11, 2020 at 17:16

As noted by the OP in a comment above, the system of PDEs in the question has a solution. It can be obtained by assuming that D[ζ1[t, s], s] == 0, in which case the first equation requires that k must be a function of t only, and τ a function of s only. Inserting this result into the second equation causes it to simplify into two terms one a function of s only and the other a function of t only. So, each of those terms must be constant, which allows k and τ to be determined by

solk = Flatten@DSolve[k'[t] == c k[t]^2, k, t] /. C[1] -> ck /. {t} -> {t, s}
(* {k -> Function[{t, s}, 1/(-c t - ck)]} *)
solτ = Flatten@DSolve[τ'[s] == c τ[s]^2, τ, s] /. C[1] -> cτ /. {s} -> {t, s}
(* {τ -> Function[{t, s}, 1/(-c s - cτ)]} *)


Inserting these into the original equations then yields

{D[τ[t, s], t] == -ζ2[t, s] k[t, s] - D[ζ1[t, s], s],
D[k[t, s], t] == -τ[t, s] ζ2[t, s] - D[(ζ1[t, s] k[t, s] + D[ζ2[t, s], s])/τ[t, s], s]}
/. Flatten[{solk, solτ}]
(* {True, True} *)


It is possible, of course, that there are other solution. This question illustrates the need for DSolve to be improved, especially with respect to systems of first order PDEs.