Evan,

> Okay, so I've been trying to implement the matrixfree class for a weak form
> of a parabolic equation in divergence form ( du/dt + div (coeff grad u ) =
> g ), where I want to use a viscous flux for the spatial derivative term. 
> So, in particular, I need to find a way of implementing face terms for the
> fluxes (after multiplying by the shape functions and integrating by parts),
> etc., using the matrixfree class.  I'm not quite clear how to go about
> doing this right now, in either 2 or 3 spatial dimensions (both ideally).

I haven't thought through that whole problem, but in essence what you do with 
the matrix-free implementation is the same as you do with implementations 
that do use matrices: you assemble all the pieces that would go into the 
global matrix, but instead of writing them into the global matrix you 
multiply them with what you currently have as right hand side and add the 
result to the output vector.

So in your case with the fluxes, you'd have to identify which would be the 
flux terms that you would write into the global matrix if you were to use 
one. You may want to look at the step-12 and step-38 tutorial programs that 
solve an advection problem with the DG method -- using matrix formulations, 
but once you know what terms you have it should be clear how to use them in a 
matrix-free version as well.

Best
 W.

-------------------------------------------------------------------------
Wolfgang Bangerth                email:            [email protected]
                                 www: http://www.math.tamu.edu/~bangerth/

_______________________________________________
dealii mailing list http://poisson.dealii.org/mailman/listinfo/dealii

Reply via email to