Model for applying Neumann boundary conditions on node groups.
More...
#include "NeumannModel.h"
|
| | NeumannModel (const String &name) |
| | Constructor.
|
| |
| virtual void | configure (const Properties &props, const Properties &globdat) override |
| | Configure the model from properties.
|
| |
| virtual void | getConfig (const Properties &conf, const Properties &globdat) const override |
| | Get current model configuration.
|
| |
| virtual bool | takeAction (const String &action, const Properties ¶ms, const Properties &globdat) override |
| | Handle model actions.
|
| |
| void | setLoadIncr (double incr) |
| | Set load increment.
|
| |
| double | getLoadIncr () const |
| | Get current load increment.
|
| |
|
| static Ref< Model > | makeNew (const String &name, const Properties &conf, const Properties &props, const Properties &globdat) |
| | Create new NeumannModel instance.
|
| |
| static void | declare () |
| | Declare model type to factory.
|
| |
|
|
| static const char * | TYPE_NAME = "Neumann" |
| | Model type name.
|
| |
| static const char * | LOAD_INCR_PROP = "loadIncr" |
| | Load increment property.
|
| |
| static const char * | INIT_LOAD_PROP = "initLoad" |
| | Initial load property.
|
| |
| static const char * | MIN_LOAD_PROP = "minLoadIncr" |
| | Minimum load increment property.
|
| |
| static const char * | MAX_LOAD_PROP = "maxLoad" |
| | Maximum load value property.
|
| |
| static const char * | REDUCTION_PROP = "reduction" |
| | Load reduction factor property.
|
| |
| static const char * | NODES_PROP = "nodeGroups" |
| | Node groups property.
|
| |
| static const char * | DOF_PROP = "dofs" |
| | DOF types property.
|
| |
| static const char * | FACTORS_PROP = "factors" |
| | Load factors property.
|
| |
The NeumannModel applies load boundary conditions on specified node groups with configurable load increment control. Unlike point loads, this model can handle dynamic node group configurations and provides sophisticated load scaling and increment management for nonlinear analysis.
Features:
- Load application on multiple node groups with individual DOF types
- Load increment control with adaptive stepping
- Initial load specification and load reduction capabilities
- External scaling support for displacement control
- Maximum load value constraints
◆ NeumannModel()
| NeumannModel::NeumannModel |
( |
const String & |
name | ) |
|
|
explicit |
◆ ~NeumannModel()
| NeumannModel::~NeumannModel |
( |
| ) |
|
|
protectedvirtual |
◆ configure()
| void NeumannModel::configure |
( |
const Properties & |
props, |
|
|
const Properties & |
globdat |
|
) |
| |
|
overridevirtual |
- Parameters
-
| props | User-specified model properties |
| globdat | Global data container |
◆ declare()
| void NeumannModel::declare |
( |
| ) |
|
|
static |
◆ getConfig()
| void NeumannModel::getConfig |
( |
const Properties & |
conf, |
|
|
const Properties & |
globdat |
|
) |
| const |
|
overridevirtual |
- Parameters
-
| conf | Actually used configuration properties (output) |
| globdat | Global data container |
◆ getLoadIncr()
| double NeumannModel::getLoadIncr |
( |
| ) |
const |
|
inline |
- Returns
- Current load increment
◆ makeNew()
| Ref< Model > NeumannModel::makeNew |
( |
const String & |
name, |
|
|
const Properties & |
conf, |
|
|
const Properties & |
props, |
|
|
const Properties & |
globdat |
|
) |
| |
|
static |
- Parameters
-
| name | Model name |
| conf | Actually used configuration properties (output) |
| props | User-specified model properties |
| globdat | Global data container |
- Returns
- New model instance
◆ setLoadIncr()
| void NeumannModel::setLoadIncr |
( |
double |
incr | ) |
|
- Parameters
-
| incr | New load increment value |
◆ takeAction()
| bool NeumannModel::takeAction |
( |
const String & |
action, |
|
|
const Properties & |
params, |
|
|
const Properties & |
globdat |
|
) |
| |
|
overridevirtual |
- Parameters
-
| action | Action name |
| params | Action parameters |
| globdat | Global data container |
- Returns
- true if action was handled
◆ DOF_PROP
| const char * NeumannModel::DOF_PROP = "dofs" |
|
static |
◆ FACTORS_PROP
| const char * NeumannModel::FACTORS_PROP = "factors" |
|
static |
◆ INIT_LOAD_PROP
| const char * NeumannModel::INIT_LOAD_PROP = "initLoad" |
|
static |
◆ LOAD_INCR_PROP
| const char * NeumannModel::LOAD_INCR_PROP = "loadIncr" |
|
static |
◆ MAX_LOAD_PROP
| const char * NeumannModel::MAX_LOAD_PROP = "maxLoad" |
|
static |
◆ MIN_LOAD_PROP
| const char * NeumannModel::MIN_LOAD_PROP = "minLoadIncr" |
|
static |
◆ NODES_PROP
| const char * NeumannModel::NODES_PROP = "nodeGroups" |
|
static |
◆ REDUCTION_PROP
| const char * NeumannModel::REDUCTION_PROP = "reduction" |
|
static |
◆ TYPE_NAME
| const char * NeumannModel::TYPE_NAME = "Neumann" |
|
static |