FEI Package Browser (Single Doxygen Collection)
Version of the Day
Toggle main menu visibility
Loading...
Searching...
No Matches
base
snl_fei_PointBlockMap.hpp
Go to the documentation of this file.
1
/*--------------------------------------------------------------------*/
2
/* Copyright 2005 Sandia Corporation. */
3
/* Under the terms of Contract DE-AC04-94AL85000, there is a */
4
/* non-exclusive license for use of this work by or on behalf */
5
/* of the U.S. Government. Export of this program may require */
6
/* a license from the United States Government. */
7
/*--------------------------------------------------------------------*/
8
9
#ifndef _snl_fei_PointBlockMap_hpp_
10
#define _snl_fei_PointBlockMap_hpp_
11
12
#include <
fei_macros.hpp
>
13
14
#include <map>
15
16
namespace
snl_fei
{
23
class
PointBlockMap
{
24
public
:
26
PointBlockMap
();
27
29
virtual
~PointBlockMap
();
30
36
void
setPtEqualBlk
();
37
40
bool
ptEqualBlk
() {
return
(
ptEqualBlk_
); }
41
47
int
setEqn
(
int
ptEqn,
int
blkEqn);
48
55
int
setEqn
(
int
ptEqn,
int
blkEqn,
int
blkSize);
56
61
int
setBlkEqnSize
(
int
blkEqn,
int
size);
62
64
int
getBlkEqnSize
(
int
blkEqn);
65
68
int
getMaxBlkEqnSize
() {
return
(
maxSize_
); }
69
72
void
setMaxBlkEqnSize
(
int
sz) {
maxSize_
= sz; }
73
79
int
eqnToBlkEqn
(
int
eqn)
const
;
80
86
int
blkEqnToPtEqn
(
int
blkEqn)
const
;
87
93
int
getBlkEqnInfo
(
int
blkEqn,
int
& ptEqn,
int
& blkSize);
94
99
int
getPtEqnInfo
(
int
ptEqn,
int
& blkEqn,
int
& blkOffset);
100
106
int
getBlkEqnOffset
(
int
blkEqn,
int
ptEqn);
107
111
bool
isExactlyBlkEqn
(
int
ptEqn);
112
115
std::map<int,int>*
getPtEqns
()
116
{
117
return
(
ptEqns_
);
118
}
119
122
std::map<int,std::pair<int,int> >*
getBlkEqns
()
123
{
124
return
(
blkEqns_
);
125
}
126
127
private
:
129
PointBlockMap
(
const
PointBlockMap
& src);
130
131
PointBlockMap
&
operator=
(
const
PointBlockMap
& src);
132
133
std::map<int,int>*
ptEqns_
;
//ptEqns_ maps point-equations to block-equations
134
135
std::map<int,std::pair<int,int> >*
blkEqns_
;
136
//blkEqns_ maps block-equations to point-equations and block-sizes
137
//(the point-equation stored is the first or smallest point-equation that is
138
//associated with the block-equation)
139
140
int
maxSize_
;
141
142
bool
ptEqualBlk_
;
//if this is true, then all blkSizes are 1
143
};
//class PointBlockMap
144
}
//namespace snl_fei
145
#endif
// _snl_fei_PointBlockMap_hpp_
146
snl_fei::PointBlockMap::ptEqns_
std::map< int, int > * ptEqns_
Definition
snl_fei_PointBlockMap.hpp:133
snl_fei::PointBlockMap::blkEqnToPtEqn
int blkEqnToPtEqn(int blkEqn) const
Definition
snl_fei_PointBlockMap.cpp:133
snl_fei::PointBlockMap::setEqn
int setEqn(int ptEqn, int blkEqn)
Definition
snl_fei_PointBlockMap.cpp:42
snl_fei::PointBlockMap::ptEqualBlk
bool ptEqualBlk()
Definition
snl_fei_PointBlockMap.hpp:40
snl_fei::PointBlockMap::getBlkEqnInfo
int getBlkEqnInfo(int blkEqn, int &ptEqn, int &blkSize)
Definition
snl_fei_PointBlockMap.cpp:148
snl_fei::PointBlockMap::ptEqualBlk_
bool ptEqualBlk_
Definition
snl_fei_PointBlockMap.hpp:142
snl_fei::PointBlockMap::getPtEqnInfo
int getPtEqnInfo(int ptEqn, int &blkEqn, int &blkOffset)
Definition
snl_fei_PointBlockMap.cpp:169
snl_fei::PointBlockMap::eqnToBlkEqn
int eqnToBlkEqn(int eqn) const
Definition
snl_fei_PointBlockMap.cpp:121
snl_fei::PointBlockMap::getMaxBlkEqnSize
int getMaxBlkEqnSize()
Definition
snl_fei_PointBlockMap.hpp:68
snl_fei::PointBlockMap::getBlkEqnSize
int getBlkEqnSize(int blkEqn)
Definition
snl_fei_PointBlockMap.cpp:106
snl_fei::PointBlockMap::setBlkEqnSize
int setBlkEqnSize(int blkEqn, int size)
Definition
snl_fei_PointBlockMap.cpp:85
snl_fei::PointBlockMap::getBlkEqns
std::map< int, std::pair< int, int > > * getBlkEqns()
Definition
snl_fei_PointBlockMap.hpp:122
snl_fei::PointBlockMap::isExactlyBlkEqn
bool isExactlyBlkEqn(int ptEqn)
Definition
snl_fei_PointBlockMap.cpp:210
snl_fei::PointBlockMap::getPtEqns
std::map< int, int > * getPtEqns()
Definition
snl_fei_PointBlockMap.hpp:115
snl_fei::PointBlockMap::~PointBlockMap
virtual ~PointBlockMap()
Definition
snl_fei_PointBlockMap.cpp:29
snl_fei::PointBlockMap::maxSize_
int maxSize_
Definition
snl_fei_PointBlockMap.hpp:140
snl_fei::PointBlockMap::PointBlockMap
PointBlockMap(const PointBlockMap &src)
snl_fei::PointBlockMap::setMaxBlkEqnSize
void setMaxBlkEqnSize(int sz)
Definition
snl_fei_PointBlockMap.hpp:72
snl_fei::PointBlockMap::PointBlockMap
PointBlockMap()
Definition
snl_fei_PointBlockMap.cpp:18
snl_fei::PointBlockMap::operator=
PointBlockMap & operator=(const PointBlockMap &src)
snl_fei::PointBlockMap::getBlkEqnOffset
int getBlkEqnOffset(int blkEqn, int ptEqn)
Definition
snl_fei_PointBlockMap.cpp:198
snl_fei::PointBlockMap::blkEqns_
std::map< int, std::pair< int, int > > * blkEqns_
Definition
snl_fei_PointBlockMap.hpp:135
snl_fei::PointBlockMap::setPtEqualBlk
void setPtEqualBlk()
Definition
snl_fei_PointBlockMap.cpp:36
fei_macros.hpp
snl_fei
Definition
fei_MatrixGraph_Impl2.cpp:46
Generated by
1.17.0