ASL 0.1.7
Advanced Simulation Library
Loading...
Searching...
No Matches
aslGeomInc.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 ASLGEOMINC_H
25#define ASLGEOMINC_H
26
27#include <memory>
28#include <vector>
29#include "acl/aclHardware.h"
30
31namespace acl
32{
33 class KernelConfiguration;
34}
35
36namespace asl {
37
38 template <typename T> class AVec;
39 class Block;
40
41 class AbstractDataWithGhostNodes;
42 typedef std::shared_ptr<AbstractDataWithGhostNodes> SPAbstractDataWithGhostNodes;
43
44 class DistanceFunction;
45 typedef std::shared_ptr<DistanceFunction> SPDistanceFunction;
46
47
48
50
55
56
58
64 const AVec<double> & l,
65 const AVec<double> & c);
66
68
74 const AVec<double> & l,
75 const AVec<double> & c);
76
78
84 const AVec<double> & l,
85 const AVec<double> & a);
86
91 const AVec<double> & p0);
92
93
95
103
104
106
114
115
118
119
121
127
136
140 unsigned int gN,
141 acl::TypeID t);
142
143
150 const acl::KernelConfiguration & k);
151
152} // asl
153
154#endif // ASLDISTANCEFUNCTION
ACL Kernel configuration class.
SPDataWrapperACLData generateDataContainerACL_SP(const Block &b, unsigned int n=1)
generates pointer to ACL Data field with n components
SPDataWrapperACL generateDataContainer_SP(const Block &b, const acl::VectorOfElements &a)
acl::VectorOfElements dx(const TemplateVE &a)
differential operator
SPDistanceFunction generateDFInBlock(const Block &b, unsigned int nG)
generates map corresponding to external (ghost) part of the block
SPDistanceFunction operator|(SPDistanceFunction a, SPDistanceFunction b)
SPDistanceFunction generateDFCylinder(double r, const AVec< double > &l, const AVec< double > &c)
generates cylinder
SPDistanceFunction generateDFConvexPolygonPyramid(std::vector< AVec< double > > points, AVec< double > a)
generates pyramid with convex polygon at its base and apex a
SPDistanceFunction generateDFPlane(const AVec< double > &n, const AVec< double > &p0)
SPDistanceFunction normalize(SPDistanceFunction a, double dx)
SPDistanceFunction operator-(SPDistanceFunction a)
SPDistanceFunction generateDFConvexPolygonPrism(std::vector< AVec< double > > points)
generates infinite prism with convex polygon at its base
SPDistanceFunction operator&(SPDistanceFunction a, SPDistanceFunction b)
SPDistanceFunction generateDFCone(double r, const AVec< double > &l, const AVec< double > &a)
generates cone
SPDistanceFunction generateDFSphere(double r, const AVec< double > &c)
generates sphere
SPDistanceFunction generateDFCylinderInf(double r, const AVec< double > &l, const AVec< double > &c)
generates infinite cylinder
std::shared_ptr< DistanceFunction > SPDistanceFunction
Definition aslGeomInc.h:45
Advanced Computational Language.
Definition acl.h:41
TypeID
Definition aclTypes.h:39
Advanced Simulation Library.
Definition aslDataInc.h:31
std::shared_ptr< AbstractDataWithGhostNodes > SPAbstractDataWithGhostNodes
void initData(SPAbstractData d, double a)