miu = 0.0008;
q = 0.55;
eps1 = 0.04;
kappa = 1;
tmax = 100; (* time interval length *)
Lx = 1; (* x-side of the rectangle *)
Ly = 1; (* y-side of the rectangle *)
frontier = Rectangle[{-Lx, -Ly}, {Lx, Ly}];
C1ini = 1;
C2ini = 1;
freact[p, s] :=
p(1 - p) - ((p - miu)/(p + miu))q*
s; (* reaction kinetics for eqn involving C1 *)
greact[p, s] :=
p - s; \
(* reaction kinetics for eqn involving C2 *)
eqn1 = D[C1[t, x, y], t] - D[C1[t, x, y], x, x] -
D[C1[t, x, y], y, y] ==
freact[C1[t, x, y], C2[t, x, y]]/
eps1; (* diffusion-reaction eqn 1 *)
eqn2 = D[C2[t, x, y], t] -
kappa(D[C1[t, x, y], x, x] + D[C1[t, x, y], y, y]) ==
greact[C1[t, x, y], C2[t, x, y]]; ( diffusion-reaction eqn 2 *)
InitialConditions = {C1[0, x, y] == C1ini,
C2[0, x, y] ==
C2ini}; (* initial homogeneous concentration in the petri-dish *)
BoundaryConditions = {(D[C1[t, x, y], x] /.
x -> -Lx) == (D[C2[t, x, y], x] /.
x -> -Lx) == (D[C1[t, x, y], x] /.
x -> Lx) == (D[C2[t, x, y], x] /. x -> Lx) == 0,
(D[C1[t, x, y], y] /.
y -> -Ly) == (D[C2[t, x, y], y] /.
y -> -Ly) == (D[C1[t, x, y], y] /.
y -> Ly) == (D[C2[t, x, y], y] /. y -> Ly) ==
0}; \
(absence of flux through the boundaries )
solution =
NDSolve[Join[{eqn1, eqn2}, InitialConditions,
BoundaryConditions], {C1, C2}, {t, 0, tmax}, {x, -Lx, Lx}, {y, -Ly,
Ly}]
Would the fact that freact[C1,C2] is a nonlinear function, create the problem for NDSolve? This is an example of partially nonlinear diffusion equation.