Contact model that evaluates forces and moments between two particles using parallel bond models.
More...
#include <model_parallel_bond.hpp>
|
| ParallelBond () |
| Default constructor for ParallelBond.
|
|
| ParallelBond (double kn, double kt, double sig_n, double sig_t, double beta) |
| Constructor for ParallelBond.
|
|
nlohmann::json | PackJson () override |
| Packs the contact model properties into a JSON object.
|
|
void | InitFromJson (nlohmann::json const &js) override |
| Initializes the contact model from a JSON object.
|
|
void | SetProperty (nlohmann::json const &js) override |
| Sets the contact model properties.
|
|
ContactModel * | Clone () const override |
| Creates a copy of this contact model.
|
|
void | SetRadius (double r) |
| Sets the radius for the bond geometries used by this contact model.
|
|
void | EvaluateForces (ContactForces *const cnt_forces, BondGeometries &cnt_geoms, ContactPP *const cnt, double dt) const override |
| Evaluates the forces and moments between two particles using parallel bond models.
|
|
void | EvaluateForces (ContactForces *const cnt_forces, BondGeometries &cnt_geoms, ContactPW *const cnt, double dt) const override |
| Evaluates the forces and moments between a particle and a wall using parallel bond models.
|
|
void | Print () const override |
| Prints the contact model properties.
|
|
virtual void | SetProperty (std::string const &name, double value) |
| Set a property of this contact model by name and value.
|
|
virtual void | EvaluateForces (ContactForces *const cnt_forces, CollisionGeometries &cnt_geoms, ContactPP *const cnt, double dt) const |
| Calculate the contact forces and moments due to this model.
|
|
virtual void | EvaluateForces (ContactForces *const cnt_forces, CollisionGeometries &cnt_geoms, ContactPW *const cnt, double dt) const |
| Calculate the contact forces and moments due to this model.
|
|
virtual | ~ContactModel () |
|
|
double | kn {2e6} |
| < Stiffness parameters used to calculate contact forces.
|
|
double | kt {1e6} |
| Maximum stress parameters used to calculate the maximum allowable force.
|
|
double | max_sig_n {1.0e6} |
|
double | max_sig_t {1.0e6} |
|
double | beta {0.0} |
|
int | id {0} |
|
std::string | label {"default"} |
|
int | model_type {0} |
|
std::string | model_name {"contact_model"} |
|
Contact model that evaluates forces and moments between two particles using parallel bond models.
◆ ParallelBond() [1/2]
netdem::ParallelBond::ParallelBond |
( |
| ) |
|
◆ ParallelBond() [2/2]
netdem::ParallelBond::ParallelBond |
( |
double | kn, |
|
|
double | kt, |
|
|
double | sig_n, |
|
|
double | sig_t, |
|
|
double | beta ) |
Constructor for ParallelBond.
- Parameters
-
kn | Normal stiffness parameter used to calculate contact forces. |
kt | Tangential stiffness parameter used to calculate contact forces. |
sig_n | Maximum normal stress used to calculate the maximum allowable force. |
sig_t | Maximum tangential stress used to calculate the maximum allowable force. |
◆ Clone()
Creates a copy of this contact model.
- Returns
- A new instance of the contact model.
Reimplemented from netdem::ContactModel.
◆ EvaluateForces() [1/2]
Evaluates the forces and moments between two particles using parallel bond models.
- Parameters
-
cnt_forces | The contact forces data structure to store the results. |
cnt_geoms | The bond geometries data structure containing the contact information. |
cnt | The contact point between the two particles. |
dt | The simulation timestep. |
Reimplemented from netdem::ContactModel.
◆ EvaluateForces() [2/2]
Evaluates the forces and moments between a particle and a wall using parallel bond models.
- Parameters
-
cnt_forces | The contact forces data structure to store the results. |
cnt_geoms | The bond geometries data structure containing the contact information. |
cnt | The contact point between the particle and the wall. |
dt | The simulation timestep. |
Reimplemented from netdem::ContactModel.
◆ InitFromJson()
void netdem::ParallelBond::InitFromJson |
( |
nlohmann::json const & | js | ) |
|
|
overridevirtual |
Initializes the contact model from a JSON object.
- Parameters
-
js | A JSON object containing the contact model properties. |
Reimplemented from netdem::ContactModel.
◆ PackJson()
nlohmann::json netdem::ParallelBond::PackJson |
( |
| ) |
|
|
overridevirtual |
Packs the contact model properties into a JSON object.
- Returns
- A JSON object containing the contact model properties.
Reimplemented from netdem::ContactModel.
◆ Print()
void netdem::ParallelBond::Print |
( |
| ) |
const |
|
overridevirtual |
◆ SetProperty()
void netdem::ParallelBond::SetProperty |
( |
nlohmann::json const & | js | ) |
|
|
overridevirtual |
Sets the contact model properties.
- Parameters
-
js | A JSON object containing the contact model properties. |
Reimplemented from netdem::ContactModel.
◆ SetRadius()
void netdem::ParallelBond::SetRadius |
( |
double | r | ) |
|
Sets the radius for the bond geometries used by this contact model.
- Parameters
-
◆ beta
double netdem::ParallelBond::beta {0.0} |
◆ kn
double netdem::ParallelBond::kn {2e6} |
< Stiffness parameters used to calculate contact forces.
◆ kt
double netdem::ParallelBond::kt {1e6} |
Maximum stress parameters used to calculate the maximum allowable force.
◆ max_sig_n
double netdem::ParallelBond::max_sig_n {1.0e6} |
◆ max_sig_t
double netdem::ParallelBond::max_sig_t {1.0e6} |
The documentation for this class was generated from the following files: