-
Hi, For a given element, I need to evaluate minimum entropy as the minimum of all entropies evaluated at solution, volume and surface quadrature nodes of the element itself and its neighbors. I iterate over the elements. Getting the solution nodes (DOFs) (and volume quadrature nodes) in neighbors on a different MPI rank is straightforward with the following two lines: vfes->GetFaceNbrElementVDofs(shifted_indx, vdof_indices);
sol.FaceNbrData().GetSubVector(vdof_indices, el_vdofs);
DenseMatrix vdof_mat(el_vdofs.GetData(), ndofs, num_equations);
for (int k = 0; k < ir->GetNPoints(); k++)
{
const IntegrationPoint &ip = ir->IntPoint(k);
fe->CalcShape(ip, shape);
vdof_mat.MultTranspose(shape, state);
.
.
.
} However, I haven't found an easy way of extracting faces and face quadrature values of neighbors on a different rank with an iterator over elements. Thank you very much for your time. Farhad |
Beta Was this translation helpful? Give feedback.
Replies: 1 comment 6 replies
-
Why not just use |
Beta Was this translation helpful? Give feedback.
I was thinking about just manually merging the volume rule and the transformed face rules (for each of the faces of the element), however, you can just add another loop over the faces and their (mapped) quadrature points after your loop over the volume quadrature points. This will look something like this: