42 virtual bool read(std::istream& is);
44 virtual bool write(std::ostream&,
int)
const;
55 virtual int parseNodeSet(
const std::string& setName,
const char* cset);
76 int,
int,
int,
bool local)
const;
115 const int*,
int,
bool)
const;
Base class for spline-based finite element (FE) assembly drivers.
std::vector< int > IntVec
General integer vector.
Definition: ASMbase.h:25
std::vector< IntVec > IntMat
General 2D integer matrix.
Definition: ASMbase.h:26
Various utilities for assembly scope.
Representation of the element matrices for a FEM problem.
std::vector< RealArray > Real2DMat
A real-valued two-dimensional array without algebraic operations.
Definition: ImmersedBoundaries.h:34
Representation of a point in 3D space with some basic operations.
std::vector< Vec3 > Vec3Vec
An array of point vectors.
Definition: Vec3.h:318
Base class for spline-based finite element (FE) assembly drivers.
Definition: ASMbase.h:70
virtual bool evalSolution(Matrix &sField, const Vector &locSol, const int *npe, int n_f=0, bool piola=false) const
Evaluates the primary solution field at all visualization points.
Definition: ASMbase.C:1735
Driver for assembly of general superelements.
Definition: ASMsupel.h:30
virtual const IntVec & getNodeSet(int iset) const
Returns an indexed pre-defined node set.
Definition: ASMsupel.C:138
ASMsupel(unsigned char n_f=6)
Default constructor.
Definition: ASMsupel.h:33
virtual bool tesselate(ElementBlock &grid, const int *) const
Creates a standard FE model of this patch for visualization.
Definition: ASMsupel.C:224
ASMsupel(const ASMsupel &patch)
Default copy constructor copying everything.
Definition: ASMsupel.h:37
virtual int findElementContaining(const double *) const
Dummy method doing nothing.
Definition: ASMsupel.h:102
virtual double findPoint(Vec3 &, double *) const
Dummy method doing nothing.
Definition: ASMsupel.h:104
virtual bool integrate(Integrand &integrand, GlobalIntegral &glbInt, const TimeDomain &)
Evaluates an integral over the interior patch domain.
Definition: ASMsupel.C:211
virtual bool getElementCoordinates(Matrix &X, int iel, bool=false) const
Returns a matrix with nodal coordinates for an element.
Definition: ASMsupel.C:201
virtual bool empty() const
Checks if this patch is empty.
Definition: ASMsupel.h:48
virtual bool generateFEMTopology()
Generates the finite element topology data for this patch.
Definition: ASMsupel.C:101
virtual bool write(std::ostream &, int) const
Writes the geometry of the patch to the given stream.
Definition: ASMsupel.C:86
virtual void getBoundaryNodes(int lIndex, IntVec &nodes, int, int, int, bool local) const
Finds the global (or patch-local) node numbers on a patch boundary.
Definition: ASMsupel.C:162
virtual void findBoundaryElms(IntVec &, int, int) const
Dummy method doing nothing.
Definition: ASMsupel.h:79
virtual int evalPoint(const double *, double *, Vec3 &) const
Dummy method doing nothing.
Definition: ASMsupel.h:100
virtual bool getParameterDomain(Real2DMat &, IntVec *) const
Dummy method doing nothing.
Definition: ASMsupel.h:81
virtual bool transform(const Matrix &Tlg)
Applies a transformation matrix from local to global system.
Definition: ASMsupel.C:256
Vec3Vec myNodes
Supernode coordinates.
Definition: ASMsupel.h:121
virtual int getNodeSetIdx(const std::string &setName) const
Returns (1-based) index of a predefined node set in the patch.
Definition: ASMsupel.C:125
ElmMats myElmMat
Duperelement matrices.
Definition: ASMsupel.h:122
virtual void getNodalCoordinates(Matrix &X, bool=false) const
Returns a matrix with all nodal coordinates within the patch.
Definition: ASMsupel.C:189
virtual int parseNodeSet(const std::string &setName, const char *cset)
Defines a node set by parsing a list of node numbers.
Definition: ASMsupel.C:147
std::vector< ASM::NodeSet > nodeSets
Node sets for Dirichlet BCs.
Definition: ASMsupel.h:124
virtual bool integrate(Integrand &, int, GlobalIntegral &, const TimeDomain &)
Dummy method (patch patch boundaries are not defined).
Definition: ASMsupel.h:96
virtual Vec3 getCoord(size_t inod) const
Returns the global coordinates for the given node.
Definition: ASMsupel.C:172
virtual ~ASMsupel()
Empty destructor.
Definition: ASMsupel.h:39
virtual bool read(std::istream &is)
Creates an instance by reading the given input stream.
Definition: ASMsupel.C:23
ASMsupel(const ASMsupel &patch, unsigned char n_f)
Special copy constructor for sharing of FE data.
Definition: ASMsupel.h:35
virtual bool updateCoords(const Vector &)
Dummy method doing nothing.
Definition: ASMsupel.h:85
virtual void getElmConnectivities(IntMat &, int) const
Dummy method doing nothing.
Definition: ASMsupel.h:83
virtual bool evalSolution(Matrix &sField, const Vector &locSol, const int *npe, int n_f=0, bool piola=false) const
Evaluates the primary solution field at all visualization points.
Definition: ASMbase.C:1735
virtual Vec3 getElementCenter(int) const
Dummy method doing nothing.
Definition: ASMsupel.h:87
Class for storage of a standard FE grid block.
Definition: ElementBlock.h:27
Class collecting the element matrices associated with a FEM problem.
Definition: ElmMats.h:34
virtual bool empty() const
Checks if the element matrices are empty.
Definition: ElmMats.h:52
Abstract base class representing a system level integrated quantity.
Definition: GlobalIntegral.h:29
Abstract base class representing a system level integrated quantity.
Definition: Integrand.h:44
Simple class for representing a point in 3D space.
Definition: Vec3.h:27
A vector class with some added algebraic operations.
Definition: matrix.h:64
Struct representing the time domain.
Definition: TimeDomain.h:23