Panzer Version of the Day
Loading...
Searching...
No Matches
Panzer_Evaluator_DomainInterface.hpp
Go to the documentation of this file.
1// @HEADER
2// *****************************************************************************
3// Panzer: A partial differential equation assembly
4// engine for strongly coupled complex multiphysics systems
5//
6// Copyright 2011 NTESS and the Panzer contributors.
7// SPDX-License-Identifier: BSD-3-Clause
8// *****************************************************************************
9// @HEADER
10
11#ifndef PANZER_EVALUATOR_DOMAIN_INTERFACE_HPP
12#define PANZER_EVALUATOR_DOMAIN_INTERFACE_HPP
13
14namespace panzer {
15
16 class Workset;
17
23
24 public:
25
27 enum DomainType : int {
30 REAL=2,
33 ALL=5
34 };
35
42
46 virtual ~DomainEvaluator() = default;
47
53 void setDomain(const DomainType domain);
54
60
72 virtual int cellStartIndex(const panzer::Workset & workset) const;
73
85 virtual int cellEndIndex(const panzer::Workset & workset) const;
86
87 private:
88
91
92 };
93
94}
95
96#endif
Mix-in interface to support cell "domains" in panzer.
virtual ~DomainEvaluator()=default
Default destructor.
DomainType domain_
Domain for this evaluator.
void setDomain(const DomainType domain)
Set the domain for the evaluator.
DomainType
Domain types supported by worksets.
@ ALL
All ghost and virtual cells for the workset on the MPI process.
@ REAL
All Ghosted cells for the workset on the MPI process.
@ EXTERNAL
All virtual cells for the workset on the MPI process.
@ VIRTUAL
All Owned and Ghosted cells for the workset on the MPI process.
@ GHOST
All Owned cells for the workset on the MPI process.
virtual int cellStartIndex(const panzer::Workset &workset) const
Returns the starting cell for the specified domain for a given workset.
DomainType getDomain()
Get the domain for the evaluator.
virtual int cellEndIndex(const panzer::Workset &workset) const
Returns the non-inclusive end cell for the specified domain for a given workset.