13#include <jem/base/Object.h>
18#include <jem/base/Array.h>
19#include <jem/base/Error.h>
20#include <jem/base/System.h>
21#include <jem/util/Properties.h>
22#include <jive/Array.h>
23#include <jive/algebra/MatrixBuilder.h>
24#include <jive/algebra/NullMatrixBuilder.h>
25#include <jive/app/Names.h>
26#include <jive/fem/ElementSet.h>
27#include <jive/implict/Names.h>
28#include <jive/model/Actions.h>
29#include <jive/model/Model.h>
30#include <jive/model/ModelFactory.h>
31#include <jive/model/StateVector.h>
32#include <jive/util/Assignable.h>
33#include <jive/util/DofSpace.h>
34#include <jive/util/FuncUtils.h>
35#include <jive/util/XTable.h>
38using jem::newInstance;
44using jive::Properties;
47using jive::algebra::MatrixBuilder;
48using jive::algebra::NullMatrixBuilder;
49using jive::fem::ElementSet;
50using jive::fem::NodeSet;
51using jive::model::ActionParams;
52using jive::model::Actions;
53using jive::model::Model;
54using jive::model::StateVector;
55using jive::util::Assignable;
56using jive::util::DofSpace;
57using jive::util::FuncUtils;
58using jive::util::XTable;
103 const Properties &conf,
104 const Properties &props,
105 const Properties &globdat);
113 const Properties ¶ms,
114 const Properties &globdat)
override;
122 static Ref<Model>
makeNew(
const String &name,
123 const Properties &conf,
124 const Properties &props,
125 const Properties &globdat);
136 IdxVector &elementsB,
137 const Vector &disp)
const;
145 const Vector &disp)
const;
157 const Vector &disp)
const;
167 const IdxVector &elementsA,
168 const IdxVector &elementsB,
176 const IdxVector &elementsB,
184 const idx_t elementsB)
const;
194 const Matrix &possB)
const;
201 const Matrix &possM)
const;
217 const double uB)
const;
231 const double uM)
const;
234 Assignable<NodeSet> allNodes_;
235 Assignable<ElementSet> allElems_;
236 Array<Assignable<ElementGroup>> rodList_;
240 IdxVector blacklistA_;
241 IdxVector blacklistB_;
243 ArrayBuffer<idx_t> contactsA_;
244 ArrayBuffer<idx_t> contactsB_;
246 Ref<Function> updCond_;
Lattice model for managing collections of rod elements.
Shape function for 1D line elements in 3D space.
Special Cosserat rod model implementation.