13#include <jem/base/Object.h>
15#include <jem/util/ArrayBuffer.h>
16#include <jem/util/Properties.h>
18#include <jive/Array.h>
19#include <jive/fem/NodeGroup.h>
20#include <jive/fem/NodeSet.h>
21#include <jive/model/Actions.h>
22#include <jive/model/Model.h>
23#include <jive/model/ModelFactory.h>
24#include <jive/model/Names.h>
25#include <jive/util/Assignable.h>
26#include <jive/util/Constraints.h>
27#include <jive/util/DofSpace.h>
28#include <jive/util/Globdat.h>
34using jem::util::Properties;
35using jive::BoolMatrix;
37using jive::fem::NodeGroup;
38using jive::fem::NodeSet;
39using jive::model::Model;
40using jive::util::Assignable;
41using jive::util::Constraints;
42using jive::util::DofSpace;
43using jive::util::Globdat;
86 const Properties &conf,
87 const Properties &props,
88 const Properties &globdat);
96 const Properties ¶ms,
97 const Properties &globdat)
override;
105 static Ref<Model>
makeNew(
const String &name,
106 const Properties &conf,
107 const Properties &props,
108 const Properties &globdat);
116 void init_(
const Properties &globdat);
119 void setConstraints_();
122 Assignable<NodeSet> nodes_;
124 Ref<Constraints> cons_;
125 StringVector dofOppoNames_;
126 StringVector dofEqualNames_;
127 StringVector surfaceNames_;
128 IdxVector mainOppoDofs_;
129 IdxVector secondaryOppoDofs_;
130 IdxVector mainEqualDofs_;
131 IdxVector secondaryEqualDofs_;
jem::util::ArrayBuffer< idx_t > IdxBuffer
Definition SymBCModel.h:45
Model for symmetry boundary conditions on plane symmetric domains.
Definition SymBCModel.h:68
virtual bool takeAction(const String &action, const Properties ¶ms, const Properties &globdat) override
Handle model actions.
Definition SymBCModel.cpp:67
static const char * SURFACES_PROP
Surface pairs property.
Definition SymBCModel.h:75
static const char * TYPE_NAME
Model type name.
Definition SymBCModel.h:72
static Ref< Model > makeNew(const String &name, const Properties &conf, const Properties &props, const Properties &globdat)
Create new SymBCModel instance.
Definition SymBCModel.cpp:164
static void declare()
Declare model type to factory.
Definition SymBCModel.cpp:170
static const char * DOF_OPPO_NAMES_PROP
Opposing DOF names property.
Definition SymBCModel.h:73
static const char * DOF_EQUAL_NAMES_PROP
Equal DOF names property.
Definition SymBCModel.h:74
file containing some basic helper functions
several compiler macros for faster testing of variables