Panzer
Version of the Day
Toggle main menu visibility
Loading...
Searching...
No Matches
disc-fe
src
Panzer_WorksetNeeds.hpp
Go to the documentation of this file.
1
// @HEADER
2
// ***********************************************************************
3
//
4
// Panzer: A partial differential equation assembly
5
// engine for strongly coupled complex multiphysics systems
6
// Copyright (2011) Sandia Corporation
7
//
8
// Under the terms of Contract DE-AC04-94AL85000 with Sandia Corporation,
9
// the U.S. Government retains certain rights in this software.
10
//
11
// Redistribution and use in source and binary forms, with or without
12
// modification, are permitted provided that the following conditions are
13
// met:
14
//
15
// 1. Redistributions of source code must retain the above copyright
16
// notice, this list of conditions and the following disclaimer.
17
//
18
// 2. Redistributions in binary form must reproduce the above copyright
19
// notice, this list of conditions and the following disclaimer in the
20
// documentation and/or other materials provided with the distribution.
21
//
22
// 3. Neither the name of the Corporation nor the names of the
23
// contributors may be used to endorse or promote products derived from
24
// this software without specific prior written permission.
25
//
26
// THIS SOFTWARE IS PROVIDED BY SANDIA CORPORATION "AS IS" AND ANY
27
// EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
28
// IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
29
// PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL SANDIA CORPORATION OR THE
30
// CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
31
// EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
32
// PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
33
// PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
34
// LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
35
// NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
36
// SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
37
//
38
// Questions? Contact Roger P. Pawlowski (rppawlo@sandia.gov) and
39
// Eric C. Cyr (eccyr@sandia.gov)
40
// ***********************************************************************
41
// @HEADER
42
43
#ifndef __Panzer_WorsetNeeds_hpp__
44
#define __Panzer_WorsetNeeds_hpp__
45
46
#include "Teuchos_RCP.hpp"
47
48
#include "PanzerDiscFE_config.hpp"
49
#include "
Panzer_CellData.hpp
"
50
51
#include "
Panzer_BasisDescriptor.hpp
"
52
#include "
Panzer_IntegrationDescriptor.hpp
"
53
#include "
Panzer_PointDescriptor.hpp
"
54
55
#include <vector>
56
57
namespace
panzer
{
58
59
class
PureBasis
;
60
class
IntegrationRule
;
61
72
struct
WorksetNeeds
73
{
74
public
:
75
79
80
WorksetNeeds
() =
default
;
81
85
~WorksetNeeds
() =
default
;
86
91
void
addIntegrator
(
const
panzer::IntegrationDescriptor
& descriptor)
92
{
93
_integration_descriptors
.push_back(descriptor);
94
}
95
100
void
addPoint
(
const
panzer::PointDescriptor
& descriptor)
101
{
102
_point_descriptors
.push_back(descriptor);
103
}
104
109
void
addBasis
(
const
panzer::BasisDescriptor
& descriptor)
110
{
111
_basis_descriptors
.push_back(descriptor);
112
}
113
118
const
std::vector<panzer::IntegrationDescriptor> &
getIntegrators
()
const
119
{
120
return
_integration_descriptors
;
121
}
122
127
const
std::vector<panzer::PointDescriptor> &
getPoints
()
const
128
{
129
return
_point_descriptors
;
130
}
131
136
const
std::vector<panzer::BasisDescriptor> &
getBases
()
const
137
{
138
return
_basis_descriptors
;
139
}
140
141
//TEUCHOS_DEPRECATED
142
CellData
cellData
;
143
144
//TEUCHOS_DEPRECATED
145
std::vector<Teuchos::RCP<const IntegrationRule> >
int_rules
;
146
147
//TEUCHOS_DEPRECATED
148
std::vector<Teuchos::RCP<const PureBasis> >
bases
;
149
150
//TEUCHOS_DEPRECATED
151
std::vector<std::string>
rep_field_name
;
// representative field name
152
153
protected
:
154
156
std::vector<panzer::IntegrationDescriptor>
_integration_descriptors
;
157
159
std::vector<panzer::PointDescriptor>
_point_descriptors
;
160
162
std::vector<panzer::BasisDescriptor>
_basis_descriptors
;
163
164
};
165
166
}
// end namespace panzer
167
168
#endif
Panzer_BasisDescriptor.hpp
Panzer_CellData.hpp
Panzer_IntegrationDescriptor.hpp
Panzer_PointDescriptor.hpp
panzer::BasisDescriptor
Definition
Panzer_BasisDescriptor.hpp:54
panzer::CellData
Data for determining cell topology and dimensionality.
Definition
Panzer_CellData.hpp:65
panzer::IntegrationDescriptor
Definition
Panzer_IntegrationDescriptor.hpp:52
panzer::IntegrationRule
Definition
Panzer_IntegrationRule.hpp:73
panzer::PointDescriptor
Definition
Panzer_PointDescriptor.hpp:60
panzer::PureBasis
Description and data layouts associated with a particular basis.
Definition
Panzer_PureBasis.hpp:61
panzer
Computes .
Definition
Panzer_BasisValues_Evaluator_decl.hpp:54
panzer::WorksetNeeds::addBasis
void addBasis(const panzer::BasisDescriptor &descriptor)
Add request for basis.
Definition
Panzer_WorksetNeeds.hpp:109
panzer::WorksetNeeds::int_rules
std::vector< Teuchos::RCP< const IntegrationRule > > int_rules
Definition
Panzer_WorksetNeeds.hpp:145
panzer::WorksetNeeds::rep_field_name
std::vector< std::string > rep_field_name
Definition
Panzer_WorksetNeeds.hpp:151
panzer::WorksetNeeds::getIntegrators
const std::vector< panzer::IntegrationDescriptor > & getIntegrators() const
Get a list of integrators being requested.
Definition
Panzer_WorksetNeeds.hpp:118
panzer::WorksetNeeds::addIntegrator
void addIntegrator(const panzer::IntegrationDescriptor &descriptor)
Add request for integrator.
Definition
Panzer_WorksetNeeds.hpp:91
panzer::WorksetNeeds::WorksetNeeds
WorksetNeeds()=default
Constructor for empty needs.
panzer::WorksetNeeds::_basis_descriptors
std::vector< panzer::BasisDescriptor > _basis_descriptors
List of basis descriptors requested in workset.
Definition
Panzer_WorksetNeeds.hpp:162
panzer::WorksetNeeds::_point_descriptors
std::vector< panzer::PointDescriptor > _point_descriptors
List of point descriptors requested in workset.
Definition
Panzer_WorksetNeeds.hpp:159
panzer::WorksetNeeds::getPoints
const std::vector< panzer::PointDescriptor > & getPoints() const
Get a list of points being requested.
Definition
Panzer_WorksetNeeds.hpp:127
panzer::WorksetNeeds::cellData
CellData cellData
Definition
Panzer_WorksetNeeds.hpp:142
panzer::WorksetNeeds::getBases
const std::vector< panzer::BasisDescriptor > & getBases() const
Get a list of bases being requested.
Definition
Panzer_WorksetNeeds.hpp:136
panzer::WorksetNeeds::~WorksetNeeds
~WorksetNeeds()=default
Destructor.
panzer::WorksetNeeds::addPoint
void addPoint(const panzer::PointDescriptor &descriptor)
Add request for point.
Definition
Panzer_WorksetNeeds.hpp:100
panzer::WorksetNeeds::_integration_descriptors
std::vector< panzer::IntegrationDescriptor > _integration_descriptors
List of integration descriptors requested in workset.
Definition
Panzer_WorksetNeeds.hpp:156
panzer::WorksetNeeds::bases
std::vector< Teuchos::RCP< const PureBasis > > bases
Definition
Panzer_WorksetNeeds.hpp:148
Generated by
1.17.0