So I'm currently solving a system of coupled PDEs using fenics. I'm a little confused as to what I'm supposed to do with the Neumann BCs for the code though. I'm trying to solve
$$\frac{\partial P}{\partial t} - D_{p} \Delta P = - \lambda M $$
$$\frac{\partial M}{\partial t} - D_{M} \Delta M = kM $$
$$\frac{\partial P}{\partial n} = 0 $$
$$\frac{\partial M}{\partial n} = 0 $$
I have the weak formulation of this as follows, after using a Crank-Nicholson like scheme to discretize in time:
$$\int_\Omega \nu_P \frac{P^{(n+1)} - P^{(n)}}{\Delta t} - D_P \nabla P^{(n)} \cdot \nabla \nu_P + \lambda \mathbb{M} \nu_P d\Omega = 0$$
$$\int_\Omega \nu_M \frac{M^{n+1} - M^{n}}{\Delta t} - D_M \nabla M^{(n)} \cdot \nabla \nu_M - k \mathbb{M} \nu_M d\Omega = 0$$
$$\mathbb{M} = \frac{1}{2} (M^{(n+1)} + M^{(n)})$$
The tutorial for systems of PDEs doesn't really seem to discuss what I need to do for this. I'm solving this on the unit disk. I know that I next need to create the class for the system. After that I'm lost. Below is the code that I have so far; any help/advice that you can give would be greatly appreciated.
from cbc.pdesys import *
import numpy
# Set up the mesh to solve on
mesh = UnitCircle(20)
Q = FunctionSpace(mesh,'Q',1)
#establish time parameters
problem_parameters['time_integration'] = "Transient"
problem = Problem(mesh, problem_parameters)
# Set up first PDESystem
solver_parameters['space']['u'] = VectorFunctionSpace
solver_parameters['degree']['u'] = 2
Plaque = PDESystem([['u', 'p']], problem, solver_parameters)
boundary = AutoSubDomain[lambda x, on_boundary: on_boundary]