![]() |
PeriDEM 0.3.0
PeriDEM -- Peridynamics-based high-fidelity model for granular media
|
Structure to read and store particle-particle contact related input data. More...
#include <contactPairDeck.h>
Public Member Functions | |
| ContactPairDeck (const json &j=json({})) | |
| Constructor. | |
| ContactPairDeck (double contactR, bool computeContactR=true, bool dampingOn=true, bool frictionOn=true, double Kn=0., double eps=1., double mu=0., double KnFactor=1., double betanFactor=1., double deltaMax=1., double vMax=0.) | |
| Constructor. | |
| ContactPairDeck (const ContactPairDeck &cd) | |
| Copy constructor. | |
| void | readFromJson (const json &j) |
| Reads from json object. | |
| std::string | printStr (int nt=0, int lvl=0) const |
| Returns the string containing printable information about the object. | |
| void | print (int nt=0, int lvl=0) const |
| Prints the information about the object. | |
Static Public Member Functions | |
| static const std::vector< Field< ContactPairDeck > > & | fields () |
| The fields of this deck, declared once. | |
| static const std::vector< OneOf > & | groups () |
| Quantities this deck accepts in more than one form. | |
| static json | getExampleJson (const json &given=json::object()) |
| Returns example JSON object for ModelDeck configuration. | |
Data Fields | |
| double | d_contactR |
| contact radius | |
| bool | d_computeContactR |
| Flag that indicates whether contact radius is to be computed. | |
| double | d_vMax |
| parameters for normal force | |
| double | d_deltaMax |
| parameters for normal force | |
| double | d_Kn |
| parameters for normal force | |
| double | d_KnFactor |
| parameters for normal force | |
| double | d_eps |
| parameters for normal damping force | |
| double | d_betan |
| parameters for normal damping force | |
| bool | d_dampingOn |
| parameters for normal damping force | |
| double | d_betanFactor |
| parameters for normal damping force | |
| double | d_mu |
| parameters for frictional force | |
| bool | d_frictionOn |
| parameters for frictional force | |
| double | d_K |
| parameters for frictional force | |
Structure to read and store particle-particle contact related input data.
Definition at line 27 of file contactPairDeck.h.
Constructor.
Definition at line 61 of file contactPairDeck.h.
|
inline |
|
inline |
Copy constructor.
| cd | Another ContactPairDeck object |
Definition at line 86 of file contactPairDeck.h.
|
inlinestatic |
The fields of this deck, declared once.
The contact radius and the contact stiffness are each given in one of two ways and are resolved in readFromJson. What remains maps one key to one member.
Definition at line 104 of file contactPairDeck.h.
References d_betanFactor, d_dampingOn, d_eps, d_frictionOn, d_K, d_KnFactor, d_mu, and inp::field().
Referenced by getExampleJson(), and readFromJson().
|
inlinestatic |
Returns example JSON object for ModelDeck configuration.
Returns the block with the given fields set
The contact radius is given either as Contact_Radius, an absolute length, or as Contact_Radius_Factor, a multiple of the mesh size. The contact stiffness is given either as Kn, or as V_Max with an optional Delta_Max, the speed and overlap the stiffness is derived from. Naming one of each pair is what selects it; there is no flag and no value standing in for "not set".
| given | Field names and values to set, checked against the table |
Definition at line 158 of file contactPairDeck.h.
References inp::applyGiven(), inp::checkGroups(), inp::checkKeys(), fields(), and groups().
Referenced by anonymous_namespace{main.cpp}::buildBhatInputJson(), anonymous_namespace{main.cpp}::buildImpactInputJson(), anonymous_namespace{main.cpp}::buildInputJson(), anonymous_namespace{main.cpp}::buildInputJson(), anonymous_namespace{main.cpp}::buildInputJson(), anonymous_namespace{main.cpp}::buildInputJson(), anonymous_namespace{main.cpp}::buildInputJson(), anonymous_namespace{main.cpp}::buildInputJson(), getInputJson(), anonymous_namespace{main.cpp}::makeDeck(), and anonymous_namespace{testDeckRoundTrip.cpp}::testContactPairDeck().
|
inlinestatic |
Quantities this deck accepts in more than one form.
Definition at line 132 of file contactPairDeck.h.
Referenced by getExampleJson(), and readFromJson().
|
inline |
Prints the information about the object.
| nt | Number of tabs to append before printing |
| lvl | Information level (higher means more information) |
Definition at line 277 of file contactPairDeck.h.
References printStr().
|
inline |
Returns the string containing printable information about the object.
| nt | Number of tabs to append before printing |
| lvl | Information level (higher means more information) |
Definition at line 254 of file contactPairDeck.h.
References d_betan, d_betanFactor, d_contactR, d_dampingOn, d_deltaMax, d_eps, d_K, d_Kn, d_KnFactor, d_mu, d_vMax, and util::io::getTabS().
Referenced by print(), and inp::ContactDeck::printStr().
|
inline |
Reads from json object.
Definition at line 207 of file contactPairDeck.h.
References inp::checkGroups(), d_betanFactor, d_computeContactR, d_contactR, d_dampingOn, d_deltaMax, d_frictionOn, d_K, d_Kn, d_mu, d_vMax, fields(), groups(), and inp::readFields().
Referenced by anonymous_namespace{testDeckRoundTrip.cpp}::testContactPairDeck().
| double inp::ContactPairDeck::d_betan |
parameters for normal damping force
Definition at line 46 of file contactPairDeck.h.
Referenced by main(), contact::PairForce::nodeDampingForce(), printStr(), and contact::Contact::setup().
| double inp::ContactPairDeck::d_betanFactor |
parameters for normal damping force
Definition at line 48 of file contactPairDeck.h.
Referenced by fields(), printStr(), readFromJson(), and contact::Contact::setup().
| bool inp::ContactPairDeck::d_computeContactR |
Flag that indicates whether contact radius is to be computed.
Definition at line 33 of file contactPairDeck.h.
Referenced by readFromJson(), and contact::Contact::setup().
| double inp::ContactPairDeck::d_contactR |
contact radius
Definition at line 30 of file contactPairDeck.h.
Referenced by contact::PairForce::nodeDampingForce(), printStr(), readFromJson(), contact::Contact::setup(), contact::PairForce::springForce(), and contact::StickSlipPairForce::springForce().
| bool inp::ContactPairDeck::d_dampingOn |
parameters for normal damping force
Definition at line 47 of file contactPairDeck.h.
Referenced by fields(), contact::PairForce::nodeDampingForce(), printStr(), and readFromJson().
| double inp::ContactPairDeck::d_deltaMax |
parameters for normal force
Definition at line 38 of file contactPairDeck.h.
Referenced by printStr(), and readFromJson().
| double inp::ContactPairDeck::d_eps |
parameters for normal damping force
Definition at line 45 of file contactPairDeck.h.
Referenced by fields(), printStr(), and contact::Contact::setup().
| bool inp::ContactPairDeck::d_frictionOn |
parameters for frictional force
Definition at line 54 of file contactPairDeck.h.
Referenced by fields(), readFromJson(), contact::PairForce::springForce(), and contact::StickSlipPairForce::springForce().
| double inp::ContactPairDeck::d_K |
parameters for frictional force
Definition at line 55 of file contactPairDeck.h.
Referenced by fields(), main(), contact::PairForce::nodeDampingForce(), printStr(), readFromJson(), and contact::Contact::setup().
| double inp::ContactPairDeck::d_Kn |
parameters for normal force
Definition at line 39 of file contactPairDeck.h.
Referenced by printStr(), readFromJson(), contact::Contact::setup(), contact::PairForce::springForce(), and contact::StickSlipPairForce::springForce().
| double inp::ContactPairDeck::d_KnFactor |
parameters for normal force
Definition at line 40 of file contactPairDeck.h.
Referenced by fields(), printStr(), and contact::Contact::setup().
| double inp::ContactPairDeck::d_mu |
parameters for frictional force
Definition at line 53 of file contactPairDeck.h.
Referenced by fields(), printStr(), readFromJson(), contact::Contact::setup(), contact::PairForce::springForce(), and contact::StickSlipPairForce::springForce().
| double inp::ContactPairDeck::d_vMax |
parameters for normal force
Definition at line 37 of file contactPairDeck.h.
Referenced by printStr(), readFromJson(), and contact::Contact::setup().