PeriDEM 0.2.0
PeriDEM -- Peridynamics-based high-fidelity model for granular media
Loading...
Searching...
No Matches
material::RnpMaterial Class Reference

A class providing methods to compute energy density and force of peridynamic material. More...

#include <material.h>

Inheritance diagram for material::RnpMaterial:
Collaboration diagram for material::RnpMaterial:

Public Member Functions

 RnpMaterial (inp::MaterialDeck &deck, const size_t &dim, const double &horizon)
 Constructor.
 
bool isStateActive () const override
 Returns true if state-based potential is active.
 
std::pair< double, double > getBondEF (const double &r, const double &s, bool &fs, const bool &break_bonds) const override
 Returns energy and force between bond due to pairwise interaction.
 
std::pair< double, double > getBondEF (const double &r, const double &s, bool &fs, const double &mx, const double &thetax) const override
 Returns energy and force between bond due to state-based model.
 
util::Point getBondForceDirection (const util::Point &dx, const util::Point &du) const override
 Returns the unit vector along which bond-force acts.
 
double getS (const util::Point &dx, const util::Point &du) const override
 Returns the bond strain.
 
double getSc (const double &r) const override
 Returns critical bond strain.
 
double getDensity () const override
 Returns the density of the material.
 
double getInfFn (const double &r) const override
 Returns the value of influence function.
 
double getMoment (const size_t &i) const override
 Returns the moment of influence function.
 
double getHorizon () const override
 Returns horizon.
 
inp::MatData computeMaterialProperties (const size_t &dim) const override
 Computes elastic and fracture material properties and returns the data.
 
std::string printStr (int nt, int lvl) const override
 Returns the string containing printable information about the object.
 
void print (int nt, int lvl) const override
 Prints the information about the object.
 
void print () const override
 Prints the information about the object.
 
- Public Member Functions inherited from material::Material
 Material (std::string name="")
 Constructor.
 
virtual ~Material ()
 Destructor.
 
std::string name ()
 Returns name of the material.
 
size_t getDimension ()
 Returns dimension of the problem.
 
bool isPlaneStrain ()
 Returns plane-strain condition.
 

Private Member Functions

void computeParameters (inp::MaterialDeck &deck, const size_t &dim)
 Compute material model parameters.
 

Private Attributes

double d_horizon
 Horizon.
 
double d_density
 Density.
 
double d_rbar
 Inflection point of nonlinear function = \( 1/\sqrt{2\beta}\).
 
double d_invFactor
 Inverse of factor = \( \epsilon |B_\epsilon(0)|\).
 
double d_factorSc
 Factor to multiply to critical strain to check if bond is fractured.
 
bool d_irrevBondBreak
 Flag which indicates if the breaking of bond is irreversible.
 
Material parameters
double d_C
 Parameter C.
 
double d_beta
 Parameter \( \beta \).
 

Detailed Description

A class providing methods to compute energy density and force of peridynamic material.

Definition at line 251 of file material.h.

Constructor & Destructor Documentation

◆ RnpMaterial()

material::RnpMaterial::RnpMaterial ( inp::MaterialDeck deck,
const size_t &  dim,
const double &  horizon 
)
inline

Constructor.

Parameters
deckInput deck which contains user-specified information
dimDimension
horizonHorizon

Definition at line 260 of file material.h.

261 : Material("RNPBond"), d_horizon(horizon), d_density(deck.d_density),
262 d_C(0.), d_beta(0.), d_rbar(0.), d_invFactor(0.),
265
266 // set global fields
267 if (dimension != dim)
268 dimension = dim;
269
270 if (is_plane_strain != deck.d_isPlaneStrain)
272
273 // create influence function
274 if (deck.d_influenceFnType == 0) {
275 if (influence_fn == nullptr)
276 influence_fn = std::make_shared<material::ConstInfluenceFn>(
277 deck.d_influenceFnParams, dim);
278 }
279 else if (deck.d_influenceFnType == 1) {
280 if (influence_fn == nullptr)
281 influence_fn = std::make_shared<material::LinearInfluenceFn>(
282 deck.d_influenceFnParams, dim);
283 }
284 else if (deck.d_influenceFnType == 2) {
285 if (influence_fn == nullptr)
286 influence_fn = std::make_shared<material::GaussianInfluenceFn>(
287 deck.d_influenceFnParams, dim);
288 }
289 else {
290 std::cerr << "Error: Influence function type = "
291 << deck.d_influenceFnType
292 << " is invalid.\n";
293 exit(1);
294 }
295
296 if (dim == 1)
297 d_invFactor = std::pow(horizon, 2) * 2.;
298 else if (dim == 2)
299 d_invFactor = std::pow(horizon, 3) * M_PI;
300 else if (dim == 3)
301 d_invFactor = std::pow(horizon, 4) * 4. * M_PI / 3.;
302
303 // check if we need to compute the material parameters
305 computeParameters(deck, dim);
306 else {
307 d_C = deck.d_bondPotentialParams[0];
309 d_rbar = std::sqrt(0.5 / d_beta);
310 }
311 };
Material(std::string name="")
Constructor.
Definition material.h:83
double d_invFactor
Inverse of factor = .
Definition material.h:647
void computeParameters(inp::MaterialDeck &deck, const size_t &dim)
Compute material model parameters.
Definition material.h:541
bool d_irrevBondBreak
Flag which indicates if the breaking of bond is irreversible.
Definition material.h:658
double d_rbar
Inflection point of nonlinear function = .
Definition material.h:644
double d_factorSc
Factor to multiply to critical strain to check if bond is fractured.
Definition material.h:655
double d_density
Density.
Definition material.h:628
double d_beta
Parameter .
Definition material.h:639
double d_C
Parameter C.
Definition material.h:636
double d_horizon
Horizon.
Definition material.h:625
bool is_plane_strain
Is plane-stress condition active.
Definition material.h:29
size_t dimension
Dimension of the domain.
Definition material.h:26
std::shared_ptr< material::BaseInfluenceFn > influence_fn
Store pointer to influence function globally.
Definition material.h:32
bool d_isPlaneStrain
Indicates if the 2-d simulation is of plane-strain type (thick material) or plane-stress type (thin m...
double d_density
Density of material.
size_t d_influenceFnType
Type of influence function.
std::vector< double > d_bondPotentialParams
List of parameters for pairwise potential.
bool d_computeParamsFromElastic
Compute Peridynamic material properties from elastic properties.
std::vector< double > d_influenceFnParams
List of parameters for influence function.
bool d_irreversibleBondBreak
Flag for irreversible breaking of bonds.
double d_checkScFactor
Factor to check if bond is broken.

References computeParameters(), d_beta, inp::MaterialDeck::d_bondPotentialParams, d_C, inp::MaterialDeck::d_computeParamsFromElastic, inp::MaterialDeck::d_influenceFnParams, inp::MaterialDeck::d_influenceFnType, d_invFactor, inp::MaterialDeck::d_isPlaneStrain, and d_rbar.

Here is the call graph for this function:

Member Function Documentation

◆ computeMaterialProperties()

inp::MatData material::RnpMaterial::computeMaterialProperties ( const size_t &  dim) const
inlineoverridevirtual

Computes elastic and fracture material properties and returns the data.

Parameters
dimDimension of the problem
Returns
Data Material data

Implements material::Material.

Definition at line 461 of file material.h.

461 {
462
463 auto data = inp::MatData();
464
465 // set Poisson's ratio to 1/4
466 data.d_nu = 0.25;
467
468 // get moment of influence function
469 double M = getMoment(dim);
470
471 // compute peridynamic parameters
472 if (dim == 2) {
473 data.d_Gc = 4. * M * d_C / M_PI;
474 data.d_lambda = d_C * M * d_beta / 4.;
475 } else if (dim == 3) {
476 data.d_Gc = 3. * M * d_C / 2.;
477 data.d_lambda = d_C * M * d_beta / 5.;
478 }
479 data.d_mu = data.d_lambda;
480 data.d_G = data.d_lambda;
481 data.d_E = data.toELambda(data.d_lambda,
482 data.d_nu);
483 data.d_K =
484 data.toK(data.d_E, data.d_nu);
485 data.d_KIc = data.toKIc(
486 data.d_Gc, data.d_nu, data.d_E);
487
488 return data;
489 };
double getMoment(const size_t &i) const override
Returns the moment of influence function.
Definition material.h:444
Structure for elastic properties and fracture properties.

References d_beta, d_C, and getMoment().

Here is the call graph for this function:

◆ computeParameters()

void material::RnpMaterial::computeParameters ( inp::MaterialDeck deck,
const size_t &  dim 
)
inlineprivate

Compute material model parameters.

Parameters
deckMaterialDeck
dimDimension of the domain

Definition at line 541 of file material.h.

541 {
542 //
543 // Need following elastic and fracture properties
544 // 1. E or K
545 // 2. Gc or KIc
546 // For bond-based, Poisson's ratio is fixed to 1/4
547 //
548 if (util::isLess(deck.d_matData.d_E, 0.) &&
549 util::isLess(deck.d_matData.d_K, 0.)) {
550 std::cerr << "Error: Require either Young's modulus E or Bulk modulus K"
551 " to compute the RNP bond-based peridynamic parameters.\n";
552 exit(1);
553 }
554 if (util::isGreater(deck.d_matData.d_E, 0.) &&
555 util::isGreater(deck.d_matData.d_K, 0.)) {
556 std::cout << "Warning: Both Young's modulus E and Bulk modulus K are "
557 "provided.\n";
558 std::cout << "Warning: To compute the RNP bond-based peridynamic "
559 "parameters, we only require one of those.\n";
560 std::cout
561 << "Warning: Selecting Young's modulus to compute parameters.\n";
562 }
563
564 if (util::isLess(deck.d_matData.d_Gc, 0.) &&
565 util::isLess(deck.d_matData.d_KIc, 0.)) {
566 std::cerr << "Error: Require either critical energy release rate Gc or "
567 "critical stress intensity factor KIc to compute the RNP "
568 "bond-based peridynamic parameters.\n";
569 exit(1);
570 } else if (util::isGreater(deck.d_matData.d_Gc, 0.) &&
571 util::isGreater(deck.d_matData.d_KIc, 0.)) {
572 std::cout << "Warning: Both critical energy release rate Gc and critical "
573 "stress intensity factor KIc are provided.\n";
574 std::cout << "Warning: To compute the RNP bond-based peridynamic "
575 "parameters, we only require one of those.\n";
576 std::cout << "Warning: Selecting critical energy release rate Gc to "
577 "compute parameters.\n";
578 }
579
580 // set Poisson's ratio to 1/4
581 deck.d_matData.d_nu = 0.25;
582
583 // compute E if not provided or K if not provided
584 if (deck.d_matData.d_E > 0.)
585 deck.d_matData.d_K =
586 deck.d_matData.toK(deck.d_matData.d_E, deck.d_matData.d_nu);
587
588 if (deck.d_matData.d_K > 0. && deck.d_matData.d_E < 0.)
589 deck.d_matData.d_E =
590 deck.d_matData.toE(deck.d_matData.d_K, deck.d_matData.d_nu);
591
592 if (deck.d_matData.d_Gc > 0.)
593 deck.d_matData.d_KIc = deck.d_matData.toKIc(
594 deck.d_matData.d_Gc, deck.d_matData.d_nu, deck.d_matData.d_E);
595
596 if (deck.d_matData.d_KIc > 0. && deck.d_matData.d_Gc < 0.)
597 deck.d_matData.d_Gc = deck.d_matData.toGc(
598 deck.d_matData.d_KIc, deck.d_matData.d_nu, deck.d_matData.d_E);
599
600 // compute lame parameter
601 deck.d_matData.d_lambda =
603 deck.d_matData.d_G =
604 deck.d_matData.toGE(deck.d_matData.d_E, deck.d_matData.d_nu);
605 deck.d_matData.d_mu = deck.d_matData.d_G;
606
607 // get moment of influence function
608 double M = getMoment(dim);
609
610 // compute peridynamic parameters
611 if (dim == 2) {
612 d_C = M_PI * deck.d_matData.d_Gc / (4. * M);
613 d_beta = 4. * deck.d_matData.d_lambda / (d_C * M);
614 } else if (dim == 3) {
615 d_C = 2. * deck.d_matData.d_Gc / (3. * M);
616 d_beta = 5. * deck.d_matData.d_lambda / (d_C * M);
617 }
618
619 d_rbar = std::sqrt(0.5 / d_beta);
620 };
bool isGreater(const double &a, const double &b)
Returns true if a > b.
Definition function.cpp:15
bool isLess(const double &a, const double &b)
Returns true if a < b.
Definition function.cpp:20
double toGc(double KIc, double nu, double E)
Compute critical energy release rate Gc from critical stress-intensity factor KIc,...
double toLambdaE(double E, double nu)
Compute Lame first parameter lambda from Young's modulus E and Poisson's ratio nu.
double d_mu
Lame second parameter.
double toKIc(double Gc, double nu, double E)
Compute critical stress-intensity factor KIc from critical energy release rate Gc,...
double d_KIc
Critical stress intensity factor.
double toK(double E, double nu)
Compute Bulk modulus K from Young's modulus K and Poisson's ratio nu.
double d_K
Bulk modulus.
double d_lambda
Lame first parameter.
double toGE(double E, double nu)
Compute shear modulus from Young's modulus E and Poisson's ratio nu.
double d_nu
Poisson's ratio.
double d_G
Shear modulus or Lame second parameter.
double d_E
Young's elastic modulus.
double d_Gc
Critical energy release rate.
double toE(double K, double nu)
Compute Young's modulus E from Bulk modulus K and Poisson's ratio nu.
inp::MatData d_matData
List of elastic and fracture properties.

References d_beta, d_C, inp::MatData::d_E, inp::MatData::d_G, inp::MatData::d_Gc, inp::MatData::d_K, inp::MatData::d_KIc, inp::MatData::d_lambda, inp::MaterialDeck::d_matData, inp::MatData::d_mu, inp::MatData::d_nu, d_rbar, getMoment(), util::isGreater(), util::isLess(), inp::MatData::toE(), inp::MatData::toGc(), inp::MatData::toGE(), inp::MatData::toK(), inp::MatData::toKIc(), and inp::MatData::toLambdaE().

Referenced by RnpMaterial().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ getBondEF() [1/2]

std::pair< double, double > material::RnpMaterial::getBondEF ( const double &  r,
const double &  s,
bool &  fs,
const bool &  break_bonds 
) const
inlineoverridevirtual

Returns energy and force between bond due to pairwise interaction.

Peridynamic energy at point \( x \) is

\[ e(x) = \frac{1}{|B_\epsilon(0)|} \int_{B_\epsilon(x)} \frac{J^\epsilon(|y-x|)}{\epsilon} \psi(|y-x|S^2) dy \]

and force at point x is

\[ f(x) = \frac{4}{|B_\epsilon(0)|} \int_{B_\epsilon(x)} \frac{J^\epsilon(|y-x|)}{\epsilon} \psi'(|y-x|S^2) S \frac{y-x}{|y-x|} dy, \]

where \( \psi(r) = C(1-\exp(-\beta r))\).

For given initial bond length \( r \) and bond strain \( s\), this function returns pair of

\[ \hat{e} = \frac{J^\epsilon(r)}{\epsilon |B_\epsilon(0)|} \psi(r s^2) \]

and

\[ \hat{f} = \frac{4 J^\epsilon(r) s}{\epsilon |B_\epsilon(0)|} \psi'(r s^2). \]

Parameters
rReference (initial) bond length
sBond strain
fsBond fracture state
break_bondsFlag to specify whether bonds are allowed to break or not
Returns
value Pair of energy and force

Implements material::Material.

Definition at line 342 of file material.h.

344 {
345
346 if (break_bonds) {
347 // check if fracture state of the bond need to be updated
348 if (d_irrevBondBreak && !fs &&
349 util::isGreater(std::abs(s), d_factorSc * getSc(r)))
350 fs = true;
351
352 // if bond is not fractured, return energy and force from nonlinear
353 // potential otherwise return energy of fractured bond, and zero force
354 if (!fs)
355 return std::make_pair(
356 getInfFn(r) * d_C *
357 (1. - std::exp(-d_beta * r * s * s)) / d_invFactor,
358 getInfFn(r) * 4. * s * d_C * d_beta *
359 std::exp(-d_beta * r * s * s) / d_invFactor);
360 else
361 return std::make_pair(d_C / d_invFactor, 0.);
362 } else {
363 return std::make_pair(getInfFn(r) * d_C * d_beta *
364 r * s * s / d_invFactor,
365 getInfFn(r) * 4. * s * d_C *
367 }
368 };
double getInfFn(const double &r) const override
Returns the value of influence function.
Definition material.h:431
double getSc(const double &r) const override
Returns critical bond strain.
Definition material.h:415

References d_beta, d_C, d_factorSc, d_invFactor, d_irrevBondBreak, getInfFn(), getSc(), and util::isGreater().

Referenced by getBondEF().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ getBondEF() [2/2]

std::pair< double, double > material::RnpMaterial::getBondEF ( const double &  r,
const double &  s,
bool &  fs,
const double &  mx,
const double &  thetax 
) const
inlineoverridevirtual

Returns energy and force between bond due to state-based model.

Parameters
rReference (initial) bond length
sBond strain
fsBond fracture state
mxWeighted volume at node
thetaxDilation
Returns
value Pair of energy and force

Implements material::Material.

Definition at line 381 of file material.h.

382 {
383
384 return this->getBondEF(r, s, fs, true);
385 };
std::pair< double, double > getBondEF(const double &r, const double &s, bool &fs, const bool &break_bonds) const override
Returns energy and force between bond due to pairwise interaction.
Definition material.h:342

References getBondEF().

Here is the call graph for this function:

◆ getBondForceDirection()

util::Point material::RnpMaterial::getBondForceDirection ( const util::Point dx,
const util::Point du 
) const
inlineoverridevirtual

Returns the unit vector along which bond-force acts.

Parameters
dxReference bond vector
duDifference of displacement
Returns
vector Unit vector

Implements material::Material.

Definition at line 394 of file material.h.

395 {
396 return dx / dx.length();
397 };
double length() const
Computes the Euclidean length of the vector.
Definition point.h:118

References util::Point::length().

Here is the call graph for this function:

◆ getDensity()

double material::RnpMaterial::getDensity ( ) const
inlineoverridevirtual

Returns the density of the material.

Returns
density Density of the material

Implements material::Material.

Definition at line 423 of file material.h.

423{ return d_density; };

References d_density.

◆ getHorizon()

double material::RnpMaterial::getHorizon ( ) const
inlineoverridevirtual

Returns horizon.

Returns
horizon Horizon

Implements material::Material.

Definition at line 452 of file material.h.

452{ return d_horizon; };

References d_horizon.

◆ getInfFn()

double material::RnpMaterial::getInfFn ( const double &  r) const
inlineoverridevirtual

Returns the value of influence function.

Parameters
rReference (initial) bond length
Returns
value Influence function at r

Implements material::Material.

Definition at line 431 of file material.h.

431 {
432 return getGlobalInfFn(r / d_horizon);
433 };
double getGlobalInfFn(const double &r)
Returns the value of influence function.
Definition material.h:40

References d_horizon.

Referenced by getBondEF().

Here is the caller graph for this function:

◆ getMoment()

double material::RnpMaterial::getMoment ( const size_t &  i) const
inlineoverridevirtual

Returns the moment of influence function.

If \( J(r) \) is the influence function for \( r\in [0,1)\) then \( i^{th}\) moment is given by

\[ M_i = \int_0^1 J(r) r^i dr. \]

Parameters
iith moment
Returns
value Moment

Implements material::Material.

Definition at line 444 of file material.h.

444 {
445 return getGlobalMoment(i);
446 };
double getGlobalMoment(const size_t &i)
Returns the moment of influence function.
Definition material.h:53

Referenced by computeMaterialProperties(), and computeParameters().

Here is the caller graph for this function:

◆ getS()

double material::RnpMaterial::getS ( const util::Point dx,
const util::Point du 
) const
inlineoverridevirtual

Returns the bond strain.

Parameters
dxReference bond vector
duDifference of displacement
Returns
strain Bond strain \( S = \frac{du \cdot dx}{|dx|^2} \)

Implements material::Material.

Definition at line 405 of file material.h.

405 {
406 return dx.dot(du) / dx.dot(dx);
407 };
double dot(const Point &b) const
Computes the dot product of this vector with another point.
Definition point.h:132

References util::Point::dot().

Here is the call graph for this function:

◆ getSc()

double material::RnpMaterial::getSc ( const double &  r) const
inlineoverridevirtual

Returns critical bond strain.

Parameters
rReference length of bond
Returns
strain Critical strain

Implements material::Material.

Definition at line 415 of file material.h.

415 {
416 return d_rbar / std::sqrt(r);
417 };

References d_rbar.

Referenced by getBondEF().

Here is the caller graph for this function:

◆ isStateActive()

bool material::RnpMaterial::isStateActive ( ) const
inlineoverridevirtual

Returns true if state-based potential is active.

Returns
bool True/false

Implements material::Material.

Definition at line 314 of file material.h.

314{ return false; };

◆ print() [1/2]

void material::RnpMaterial::print ( ) const
inlineoverridevirtual

Prints the information about the object.

Reimplemented from material::Material.

Definition at line 532 of file material.h.

532{ print(0, 0); }
void print() const override
Prints the information about the object.
Definition material.h:532

References print().

Referenced by print().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ print() [2/2]

void material::RnpMaterial::print ( int  nt,
int  lvl 
) const
inlineoverridevirtual

Prints the information about the object.

Parameters
ntNumber of tabs to append before printing
lvlInformation level (higher means more information)

Reimplemented from material::Material.

Definition at line 527 of file material.h.

527 {
528 std::cout << printStr(nt, lvl);
529 }
std::string printStr(int nt, int lvl) const override
Returns the string containing printable information about the object.
Definition material.h:498

References printStr().

Here is the call graph for this function:

◆ printStr()

std::string material::RnpMaterial::printStr ( int  nt,
int  lvl 
) const
inlineoverridevirtual

Returns the string containing printable information about the object.

Parameters
ntNumber of tabs to append before printing
lvlInformation level (higher means more information)
Returns
string String containing printable information about the object

Reimplemented from material::Material.

Definition at line 498 of file material.h.

498 {
499
500 auto tabS = util::io::getTabS(nt);
501 std::ostringstream oss;
502 oss << tabS << "------- particle::RnpMaterial --------" << std::endl
503 << std::endl;
504 oss << tabS << "State active = " << 0 << std::endl;
505 oss << tabS << "Horizon = " << d_horizon << std::endl;
506 oss << tabS << "Influence fn address = " << influence_fn.get() << std::endl;
507 oss << tabS << "Influence fn info: " << std::endl;
508 oss << influence_fn->printStr(nt + 1, lvl);
509 oss << tabS << "Peridynamic parameters: " << std::endl;
510 oss << tabS << " C = " << d_C << std::endl;
511 oss << tabS << " beta = " << d_beta << std::endl;
512 oss << tabS << " r_bar = " << d_rbar << std::endl;
513 oss << tabS << " inv_factor = " << d_invFactor << std::endl;
514 oss << tabS << " factor_Sc = " << d_factorSc << std::endl;
515 oss << tabS << " irrev_bond_breaking = " << d_irrevBondBreak << std::endl;
516 oss << tabS << std::endl;
517
518 return oss.str();
519 }
std::string getTabS(int nt)
Returns tab spaces of given size.
Definition io.h:40

References d_beta, d_C, d_factorSc, d_horizon, d_invFactor, d_irrevBondBreak, d_rbar, and util::io::getTabS().

Referenced by print().

Here is the call graph for this function:
Here is the caller graph for this function:

Field Documentation

◆ d_beta

double material::RnpMaterial::d_beta
private

Parameter \( \beta \).

Definition at line 639 of file material.h.

Referenced by computeMaterialProperties(), computeParameters(), getBondEF(), printStr(), and RnpMaterial().

◆ d_C

double material::RnpMaterial::d_C
private

Parameter C.

Definition at line 636 of file material.h.

Referenced by computeMaterialProperties(), computeParameters(), getBondEF(), printStr(), and RnpMaterial().

◆ d_density

double material::RnpMaterial::d_density
private

Density.

Definition at line 628 of file material.h.

Referenced by getDensity().

◆ d_factorSc

double material::RnpMaterial::d_factorSc
private

Factor to multiply to critical strain to check if bond is fractured.

For nonlinear model, we consider bond is broken when it exceeds 10 times of critical strain. Typical value of factor is 10.

Definition at line 655 of file material.h.

Referenced by getBondEF(), and printStr().

◆ d_horizon

double material::RnpMaterial::d_horizon
private

Horizon.

Definition at line 625 of file material.h.

Referenced by getHorizon(), getInfFn(), and printStr().

◆ d_invFactor

double material::RnpMaterial::d_invFactor
private

Inverse of factor = \( \epsilon |B_\epsilon(0)|\).

Definition at line 647 of file material.h.

Referenced by getBondEF(), printStr(), and RnpMaterial().

◆ d_irrevBondBreak

bool material::RnpMaterial::d_irrevBondBreak
private

Flag which indicates if the breaking of bond is irreversible.

Definition at line 658 of file material.h.

Referenced by getBondEF(), and printStr().

◆ d_rbar

double material::RnpMaterial::d_rbar
private

Inflection point of nonlinear function = \( 1/\sqrt{2\beta}\).

Definition at line 644 of file material.h.

Referenced by computeParameters(), getSc(), printStr(), and RnpMaterial().


The documentation for this class was generated from the following file: