NetDEM v1.0
Loading...
Searching...
No Matches
netdem::PeriDigmDamageModel Class Reference

A class representing a damage model. More...

#include <peridigm_damage_model.hpp>

Public Types

enum  Type { Critical_Stretch }
 An enumeration defining the types of damage models. More...
 

Public Member Functions

void InitFromEnergyReleaseRate (double youngs_modulus, double poissons_ratio, double horizon, double energy_release_rate)
 Initializes the damage model from an energy release rate.
 
void WriteInputFile (std::ostream &os, int damage_model_id)
 Writes the damage model to an input file.
 

Static Public Member Functions

static double GetStretchFromEnergyReleaseRate (double youngs_modulus, double poissons_ratio, double horizon, double energy_release_rate)
 Computes the stretch value from an energy release rate.
 

Public Attributes

Type type {Type::Critical_Stretch}
 The type of the damage model.
 
double critical_stretch {1.0e-2}
 The critical stretch value.
 

Detailed Description

A class representing a damage model.

The PeriDigmDamageModel class represents a damage model that is used to simulate the deformation and failure of material in a peridynamic simulation. Currently, only one type of damage model is supported: critical stretch.

Member Enumeration Documentation

◆ Type

An enumeration defining the types of damage models.

Enumerator
Critical_Stretch 

Member Function Documentation

◆ GetStretchFromEnergyReleaseRate()

double PeriDigmDamageModel::GetStretchFromEnergyReleaseRate ( double youngs_modulus,
double poissons_ratio,
double horizon,
double energy_release_rate )
static

Computes the stretch value from an energy release rate.

This static method computes the stretch value from an energy release rate and other material properties.

Parameters
youngs_modulusThe Young's modulus of the material.
poissons_ratioThe Poisson's ratio of the material.
horizonThe horizon parameter used in the peridynamic simulation.
energy_release_rateThe energy release rate.
Returns
The computed stretch value.

◆ InitFromEnergyReleaseRate()

void PeriDigmDamageModel::InitFromEnergyReleaseRate ( double youngs_modulus,
double poissons_ratio,
double horizon,
double energy_release_rate )

Initializes the damage model from an energy release rate.

This method initializes the damage model by computing the critical stretch value from an energy release rate and other material properties.

Parameters
youngs_modulusThe Young's modulus of the material.
poissons_ratioThe Poisson's ratio of the material.
horizonThe horizon parameter used in the peridynamic simulation.
energy_release_rateThe energy release rate.

◆ WriteInputFile()

void PeriDigmDamageModel::WriteInputFile ( std::ostream & os,
int damage_model_id )

Writes the damage model to an input file.

This method writes the damage model to an input file.

Parameters
osThe output stream to which the input file is written.
damage_model_idThe index of the damage model.

Member Data Documentation

◆ critical_stretch

double netdem::PeriDigmDamageModel::critical_stretch {1.0e-2}

The critical stretch value.

◆ type

Type netdem::PeriDigmDamageModel::type {Type::Critical_Stretch}

The type of the damage model.


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