Reference documentation for deal.II version 9.0.0
Public Types | Public Member Functions | Public Attributes | List of all members
MeshWorker::LoopControl Class Reference

#include <deal.II/meshworker/loop.h>

Public Types

enum  FaceOption { never, one, both }
 

Public Member Functions

 LoopControl ()
 

Public Attributes

bool own_cells
 
bool ghost_cells
 
FaceOption faces_to_ghost
 
FaceOption own_faces
 
bool cells_first
 

Detailed Description

Collection of parameters to control the execution of MeshWorker loops.

Definition at line 72 of file loop.h.

Member Enumeration Documentation

◆ FaceOption

Enumeration describing when to do assembly on a face: see, e.g., MeshWorker::LoopControl::faces_to_ghost for an example of how the value of this enumeration is interpreted in a particular circumstance.

Enumerator
never 

Do not perform assembly on a face.

one 

Perform assembly on one face.

both 

Perform assembly on both faces.

Definition at line 101 of file loop.h.

Constructor & Destructor Documentation

◆ LoopControl()

MeshWorker::LoopControl::LoopControl ( )
inline

Constructor.

Definition at line 78 of file loop.h.

Member Data Documentation

◆ own_cells

bool MeshWorker::LoopControl::own_cells

Loop over cells owned by this process. Defaults to true.

Definition at line 88 of file loop.h.

◆ ghost_cells

bool MeshWorker::LoopControl::ghost_cells

Loop over cells not owned by this process. Defaults to false.

Definition at line 94 of file loop.h.

◆ faces_to_ghost

FaceOption MeshWorker::LoopControl::faces_to_ghost

Control for looping over faces between a locally owned cell and a ghost cell:

  • never: Do not assembly these faces.
  • one: Only one of the processes will assemble these faces (from the finer side or the process with the lower MPI rank).
  • both: Both processes will assemble these faces. Note that these faces are never assembled from both sides on a single process.

The default is one.

Definition at line 128 of file loop.h.

◆ own_faces

FaceOption MeshWorker::LoopControl::own_faces

Control for looping over faces between two locally owned cells:

  • never: Do not assemble face terms.
  • one: Assemble once (always coming from the finer side).
  • both: Assemble each face twice (not implemented for hanging nodes!).

The default is one.

Definition at line 139 of file loop.h.

◆ cells_first

bool MeshWorker::LoopControl::cells_first

A flag to determine if cells integrals should be done before or after face integrals. The default is true.

Definition at line 145 of file loop.h.


The documentation for this class was generated from the following file: