step-33 does compute interior face integrals twice.
One way I handle this is to attach a cell user index
Thanks Praveen, this is similar to owner/neighbour concept of OpenFOAM :).
Doug,
Many thanks for the detailed explanations and your code :).
--
The deal.II project is located at
> On 18-Sep-2019, at 11:40 AM, Doug wrote:
>
> Praveen,
>
> I did inspire my loops out of your dflo ;). Note that if you use a
> distributed grid, the user_index() will not be consistent across MPI
> boundaries. Therefore, you might end up with doubly-counted faces. Here is a
>
Hello Vachan,
Quick note. I'm only suggesting looping yourself because I am not totally
familiar with MeshWorker. Looping myself exposed the mechanics a bit more
for me, which I wanted.
I was pointing to step-33 for the loop, not the operators. I don't remember
seeing a deal.II example
> I now have one more question. In assemble_face_term function of step-33, the
> normal numerical flux is calculated. This function is called for every
> cell-neighbor pair from the assemble_system function. This means, if I am not
> wrong, at every interior face quadrature point, the
Doug and Praveen,
Thanks for your answers. I had a look at step-33. As far as I understand,
although the looping through cells is not through MeshWorker, the assembly
is still global! So, for a non-cartesian mesh, I think you are suggesting
using such a loop over all cells to calculate local
Hello Vachan,
What you are describing is very similar to Hesthaven's framework of build
matrix operators and apply them to your degrees of freedom. The main
advantage of this operator form is to have a common mass (if linear
elements), differentiation, flux, and boundary operators for all your