55 virtual void constrainEdge(
int dir,
bool open,
int dof = 12,
int code = 0,
80 virtual void constrainNode(
double xi,
double eta,
int dof = 12,
int code = 0);
101 virtual bool addRigidCpl(
int lindx,
int ldim,
int basis,
102 int& gMaster,
const Vec3& Xmaster,
bool extraPt);
117 const std::map<int,VecFunc*>& vfunc,
double time,
118 const std::map<int,int>* g2l =
nullptr);
127 void addC1MPC(
int slave,
int dir,
int master1,
int master2 = 0,
int code = 0);
Driver for assembly of structured 2D spline FE models.
Driver for assembly of C1-continuous structured 2D spline FE models.
Definition: ASMs2DC1.h:27
ASMs2DC1(unsigned char n_s=2, unsigned char n_f=1)
Default constructor.
Definition: ASMs2DC1.h:30
void addC1MPC(int slave, int dir, int master1, int master2=0, int code=0)
Creates and adds a constraint equation enforcing C1-continuity.
Definition: ASMs2DC1.C:441
virtual bool generateFEMTopology()
Generates the finite element topology data for the patch.
Definition: ASMs2DC1.C:33
std::set< int > myC1slaves
Set of slave DOFs for C1-continuity enforcement.
Definition: ASMs2DC1.h:130
virtual bool initConstraints()
Initializes constraint equations enforcing C1-continuity.
Definition: ASMs2DC1.C:452
virtual void constrainNode(double xi, double eta, int dof=12, int code=0)
Constrains a node identified by two relative parameter values.
Definition: ASMs2DC1.C:249
virtual ~ASMs2DC1()
Empty destructor.
Definition: ASMs2DC1.h:34
static std::map< int, ASMs2DC1 * > neighbors
Global node to patch mapping.
Definition: ASMs2DC1.h:132
virtual void constrainEdge(int dir, bool open, int dof=12, int code=0, char basis=1)
Constrains all DOFs on a given boundary edge.
Definition: ASMs2DC1.C:181
virtual void constrainCorner(int I, int J, int dof, int code=0, char basis=1)
Constrains a corner node identified by the two parameter indices.
Definition: ASMs2D.C:1111
virtual bool updateDirichlet(const std::map< int, RealFunc * > &func, const std::map< int, VecFunc * > &vfunc, double time, const std::map< int, int > *g2l=nullptr)
Updates the time-dependent in-homogeneous Dirichlet coefficients.
Definition: ASMs2DC1.C:516
virtual bool addRigidCpl(int lindx, int ldim, int basis, int &gMaster, const Vec3 &Xmaster, bool extraPt)
Adds MPCs representing a rigid coupling to this patch.
Definition: ASMs2DC1.C:284
static void renumberNodes(const std::map< int, int > &old2new)
Renumbers the global node numbers in the neighbors map.
Definition: ASMs2DC1.C:270
bool connectC1(int edge, ASMs2DC1 *neighbor, int nedge, bool revers=false)
Connects all matching nodes on two adjacent boundary edges.
Definition: ASMs2DC1.C:46
ASMs2DC1(const ASMs2DC1 &patch, unsigned char n_f=0)
Copy constructor.
Definition: ASMs2DC1.h:32
virtual void closeBoundaries(int dir, int, int)
Makes two opposite boundary edges periodic.
Definition: ASMs2DC1.C:149
Driver for assembly of structured 2D spline FE models.
Definition: ASMs2D.h:39
virtual void constrainCorner(int I, int J, int dof, int code=0, char basis=1)
Constrains a corner node identified by the two parameter indices.
Definition: ASMs2D.C:1111
Simple class for representing a point in 3D space.
Definition: Vec3.h:27