ASL  0.1.7
Advanced Simulation Library
aslDistanceFunctionAlg.h
Go to the documentation of this file.
1 /*
2  * Advanced Simulation Library <http://asl.org.il>
3  *
4  * Copyright 2015 Avtech Scientific <http://avtechscientific.com>
5  *
6  *
7  * This file is part of Advanced Simulation Library (ASL).
8  *
9  * ASL is free software: you can redistribute it and/or modify it
10  * under the terms of the GNU Affero General Public License as
11  * published by the Free Software Foundation, version 3 of the License.
12  *
13  * ASL is distributed in the hope that it will be useful,
14  * but WITHOUT ANY WARRANTY; without even the implied warranty of
15  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16  * GNU Affero General Public License for more details.
17  *
18  * You should have received a copy of the GNU Affero General Public License
19  * along with ASL. If not, see <http://www.gnu.org/licenses/>.
20  *
21  */
22 
23 
24 #ifndef ASLDISTANCEFUNCTIONALG_H
25 #define ASLDISTANCEFUNCTIONALG_H
26 
27 #include <acl/aclMath/aclVectorOfElementsDef.h>
28 #include <aslUtilities.h>
29 
30 namespace asl {
31 
32 // template <typename T> class AVec;
33 // class Block;
34 
35 // class AbstractDataWithGhostNodes;
36 // typedef std::shared_ptr<AbstractDataWithGhostNodes> SPAbstractDataWithGhostNodes;
37 
39  acl::VectorOfElements isGhostNode(TemplateVE & distanceTVE, unsigned int i);
40 
42  acl::VectorOfElements isComputationNode(TemplateVE & distanceTVE, unsigned int i);
44  acl::VectorOfElements nGhostNodesInCell(TemplateVE & distanceTVE, unsigned int i);
47  unsigned int iE,
48  unsigned int i,
49  unsigned int j);
50 
52 
55  acl::VectorOfElements exBoundaryX(TemplateVE & distanceTVE, unsigned int i);
56 
57 
59 
63  acl::VectorOfElements exBoundaryCenter(TemplateVE & distanceTVE, unsigned int iEl);
64 
66 
70  vector<acl::Element> gcBoundaryArea(TemplateVE & distanceTVE,
71  unsigned int iEl,
72  acl::VectorOfElements & center,
73  acl::VectorOfElements & area);
74 
76 
81  vector<acl::Element> gcBoundaryAreaPerGhostPoint(TemplateVE & distanceTVE,
82  unsigned int iEl,
83  acl::VectorOfElements & center,
84  acl::VectorOfElements & area);
85 
87 
90  vector<acl::Element> gcBoundaryArea(TemplateVE & distanceTVE,
91  acl::VectorOfElements & area);
92 
94 
97  vector<acl::Element> gcBoundaryAreaPerGhostPoint(TemplateVE & distanceTVE,
98  acl::VectorOfElements & area);
99 
100 } // asl
101 
102 #endif // ASLDISTANCEFUNCTION
asl::nGhostNodesInCell
acl::VectorOfElements nGhostNodesInCell(TemplateVE &distanceTVE, unsigned int i)
returns expression corresponding to number of ghost nodes in a cell i
asl::isGhostNode
acl::VectorOfElements isGhostNode(TemplateVE &distanceTVE, unsigned int i)
returns expression corresponding to check if the node in i^th direction is ghost one
asl::TemplateVE
This class contains VectorOfElements which corresponds to values of a field in littice nodes.
Definition: aslTemplateVE.h:52
asl::exBoundaryCenter
acl::VectorOfElements exBoundaryCenter(TemplateVE &distanceTVE, unsigned int iEl)
generates expresion for center of a boundary element
asl::gcBoundaryAreaPerGhostPoint
vector< acl::Element > gcBoundaryAreaPerGhostPoint(TemplateVE &distanceTVE, unsigned int iEl, acl::VectorOfElements &center, acl::VectorOfElements &area)
generates expresion for area of a boundary element
acl::VectorOfElements
The class represents several Element.
Definition: aclVectorOfElementsDef.h:92
asl::isBoundaryBetween
acl::VectorOfElements isBoundaryBetween(TemplateVE &distanceTVE, unsigned int iE, unsigned int i, unsigned int j)
returns expression corresponding to check if there is a boundary between nodes i^th and j^th within c...
asl::gcBoundaryArea
vector< acl::Element > gcBoundaryArea(TemplateVE &distanceTVE, unsigned int iEl, acl::VectorOfElements &center, acl::VectorOfElements &area)
generates expresion for area of a boundary element
asl::exBoundaryX
acl::VectorOfElements exBoundaryX(TemplateVE &distanceTVE, unsigned int i)
returns expression corresponding to the relative boundary position in direction i
asl
Advanced Simulation Library.
Definition: aslDataInc.h:31
asl::isComputationNode
acl::VectorOfElements isComputationNode(TemplateVE &distanceTVE, unsigned int i)
returns expression corresponding to check if the node in i^th direction is computation one