9#include <jem/base/Class.h>
11#include <jem/base/System.h>
12#include <jem/util/Properties.h>
13#include <jive/Array.h>
14#include <jive/fem/NodeGroup.h>
15#include <jive/fem/NodeSet.h>
16#include <jive/model/Actions.h>
17#include <jive/model/Model.h>
18#include <jive/model/ModelFactory.h>
19#include <jive/util/Assignable.h>
20#include <jive/util/Constraints.h>
21#include <jive/util/DofSpace.h>
22#include <jive/util/Globdat.h>
25using jem::newInstance;
27using jive::Properties;
30using jive::StringVector;
32using jive::fem::NodeGroup;
33using jive::fem::NodeSet;
34using jive::model::Actions;
35using jive::model::Model;
36using jive::util::Assignable;
37using jive::util::Constraints;
38using jive::util::DofSpace;
39using jive::util::Globdat;
65 const Properties &conf,
66 const Properties &props,
67 const Properties &globdat);
76 (
const String &action,
77 const Properties ¶ms,
78 const Properties &globdat)
override;
89 const Properties &conf,
90 const Properties &props,
91 const Properties &globdat);
100 Ref<Constraints> cons_;
101 Assignable<NodeSet> nodes_;
106 StringVector nodeGroups_;
107 StringVector dofNames_;
Model for impact boundary conditions with weighted acceleration updates.
Definition ImpactModel.h:45
static const char * NODES_PROP
Node groups property.
Definition ImpactModel.h:52
static const char * WEIGHTS_PROP
Impactor weights property.
Definition ImpactModel.h:54
static Ref< Model > makeNew(const String &name, const Properties &conf, const Properties &props, const Properties &globdat)
Factory method for creating new ImpactModel instances.
Definition ImpactModel.cpp:118
virtual bool takeAction(const String &action, const Properties ¶ms, const Properties &globdat) override
Handle model actions for impact boundary conditions.
Definition ImpactModel.cpp:67
static const char * DOF_PROP
DOF types property.
Definition ImpactModel.h:53
static const char * TYPE_NAME
Model type name.
Definition ImpactModel.h:51
static void declare()
Register ImpactModel type with ModelFactory.
Definition ImpactModel.cpp:131