Amit,

I am trying to solve a reaction-diffusion PDE with two reactants A and B. Reactant B diffuses much faster than A i.e. it instantly diffuses to become uniform over the whole domain in response to changes in concentration of A. Thus, the concentration of this reactant is simply a real number that varies with time but not with space. The total mass of reactants A and B is fixed. The governing equations are as shown in the following image

System.png

Here, a(x, t) and b(t) are the concentrations of the reactants. D is the diffusion co-efficient and f(a, b) is a non-linear reaction term. M is total mass of A and B and S is the surface area of the domain. I came up with the following weak form from these two equations

WeakForm.png

You can do it that way, but (i) that's awkward because now you have this global term in your problem, and (ii) it's not really useful to think of a scalar equation as one you wanted to solve with a "field" for 'b' and 'r'.

But let's pretend that you wanted to do it that way (and that for simplicity, f(a,b) is a linear function of the two variables, so that your problem is linear). Then the way I would approach this is by conceptually saying that you have one DoFHandler for 'a', which is your field, and your overall linear problem leads to a matrix that you can partition as follows:

  [ A   C ]  [ a ]   =   [ ... ]
  [ B^T I ]  [ b ]   =   [ M/S ]

Here, C results from f(a,b) = X a + C b, and B^T is a 1xn vector of all ones. I is the 1x1 unit matrix. A is what you get from the spatial discretization of 'a' plus the X that comes out of 'f'.

You can build this linear system as a BlockSparseMatrix, where only A is associated with the DoFHandler.


I would imagine that a better way to solve this problem is to do some sort of operator splitting where you alternate between updating 'a' and 'b'. The equations for the updates are obvious.

Best
 W.

--
------------------------------------------------------------------------
Wolfgang Bangerth          email:                 bange...@colostate.edu
                           www: http://www.math.colostate.edu/~bangerth/

--
The deal.II project is located at http://www.dealii.org/
For mailing list/forum options, see 
https://groups.google.com/d/forum/dealii?hl=en
--- You received this message because you are subscribed to the Google Groups "deal.II User Group" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to dealii+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/dealii/cff5592c-feea-9514-7797-6be1356ce88a%40colostate.edu.

Reply via email to