In my last question I noticed a peculiar error when solving the Poisson equation using finite volume method (FVM), Peculiar error when solving the Poisson equation on a non-uniform mesh (1D only) finite volume method. This is actually only one equation in coupled system of non-linear equations. The other equations in the system are of advection-reaction-diffusion type which I can solved robustly using a FVM scheme (http://danieljfarrell.github.io/FVM/advection_diffusion.html).Would it be feasible to use a mixed approach in this case? For example, using a finite difference scheme to solve the Poisson equation and sticking with the FVM for the advection-diffusion equations?I am using a method of lines (MOL) when solving these equations, so I only need supply a vector which represents the spatial discretisation of each variable. I was hoping that if I use a finite difference method for the Poisson equation I could then interpolate the resulting vector on to the finite volume mesh afterwards?This might sound like a hack, but wanted to get your opinion before trying it. Maybe moving to a finite element approach is needed?
Is is possible to mix finite-volume and finite-difference discretisations when solving a coupled non-linear system?
finite element;finite difference;finite volume;poisson
Of course you can discretize the two equations of your system with two different methods. The challenge will simply be when the solution of one equation enters that of another. At that point, you will have to decide what the finite volume solution should be at a finite difference point should be, or how to integrate the finite difference solution (which is only defined at individual points) over a finite volume integration area (a volume or co-volume).It is relatively easy to define something for these operations, but it is equally simple to get something that reduces the overall order of your scheme. That said, if the question is whether it's possible and whether it's complicated, I would say that the answer is yes and no, respectively.