MPM-Geomechanics
Material Point Method for simulating geo-materials under large deformation conditions
Loading...
Searching...
No Matches
NodeMixture Class Reference

Represents a mesh node for calculations using the mixture theory. More...

#include <NodeMixture.h>

Inheritance diagram for NodeMixture:
Collaboration diagram for NodeMixture:

Public Member Functions

 NodeMixture ()
 Default constructor.
 
virtual ~NodeMixture ()
 Default destructor.
 
virtual void resetValues ()
 Delete all values stored in node.
 
virtual void addMassFluid (double fluid_mass_increment)
 Add fluid mass increment to the nodal mass.
 
virtual void addMomentumFluid (const Vector3d &fluid_momentum_increment)
 Add fluid momentum increment to the nodal momentum of fluid.
 
virtual void addInternalForceFluid (const Vector3d &internal_force_fluid_increment)
 Add a internal force increment of fluid to the nodal internal force.
 
virtual void addExternalForceFluid (const Vector3d &external_force_fluid_increment)
 Add a external force of fluid increment to the nodal external force.
 
virtual void setMomentumFluid (const Vector3d &nodal_momentum_fluid)
 Configure the nodal momentum of fluid phase.
 
virtual const Vector3d * getMomentumFluid () const
 Return the nodal momentum of fluid phase.
 
virtual void updateTotalForce ()
 Calculate the total nodal force.
 
virtual void updateDampingForce ()
 Calculate the damping nodal force.
 
virtual void setTotalForceFluid (const Vector3d &total_nodal_force_fluid)
 Configure the total nodal force in fluid phase.
 
virtual const Vector3d * getTotalForceFluid () const
 Return the nodal total force of fluid phase.
 
virtual void integrateMomentum (double dt)
 
virtual double getMassFluid () const
 Return the nodal mass of fluid phase.
 
virtual void updateVelocity ()
 Update nodal velocity of mixture.
 
virtual const Vector3d * getVelocityFluid () const
 Return the nodal velocity of fluid phase.
 
- Public Member Functions inherited from Node
virtual ~Node ()
 Default destructor.
 
 Node ()
 Default constructor.
 
void setId (int node_id)
 Configure node identification.
 
void setActive (bool node_activate)
 Configure the active state on the node.
 
void setCoordinates (const Vector3d &nodal_coordinates)
 Configure the nodal coordinates.
 
void setVelocity (const Vector3d &nodal_velocity)
 Configure the nodal velocity.
 
void setMomentum (const Vector3d &nodal_momentum)
 Configure the nodal momentum.
 
void setTotalForce (const Vector3d &total_nodal_force)
 Configure the total nodal force.
 
int getId () const
 Return the nodal identification.
 
bool getActive () const
 Return the activate state of the node.
 
double getMass () const
 Return the nodal mass.
 
const Vector3d & getCoordinates () const
 Return the nodal coordinates.
 
const Vector3d & getMomentum () const
 Return the nodal momentum.
 
const Vector3d & getInternalForce () const
 Return the nodal internal force.
 
const Vector3d & getExternalForce () const
 Return the nodal external force.
 
const Vector3d & getTotalForce () const
 Return the nodal total force.
 
const Vector3d & getVelocity () const
 Return the nodal velocity.
 
void addMass (double mass_increment)
 Add a mass increment to the nodal mass.
 
void addMomentum (const Vector3d &momentum_increment)
 Add a momentum increment to the nodal momentum.
 
void addInternalForce (const Vector3d &internal_force_increment)
 Add a internal force increment to the nodal internal force.
 
void addExternalForce (const Vector3d &external_force_increment)
 Add a external force increment to the nodal external force.
 
void updateVelocity ()
 Update nodal velocity.
 

Private Attributes

double massFluid
 nodal mass of fluid: \(m_I^{f}\)
 
Vector3d momentumFluid
 nodal momentum of fluid: \(p_{iI}^{f}\)
 
Vector3d velocityFluid
 nodal velocity of fluid: \(v_{iI}^{f}\)
 
Vector3d externalForceFluid
 nodal external force of fluid: \(f_{iI}^{ext,f}\)
 
Vector3d internalForceFluid
 nodal internal force of fluid: \(f_{iI}^{int,f}\)
 
Vector3d dampingForceFluid
 nodal damping force of fluid: \(f_{iI}^{dmp,f}\)
 
Vector3d totalForceFluid
 nodal total force of fluid: \(f_{iI}^{f}\)
 

Additional Inherited Members

- Protected Attributes inherited from Node
bool active
 is active node
 
int id
 nodal identification
 
double mass
 nodal mass: \(m_{I}\), or solid mass in two-phase calculations: \(m_{I}^{s}\)
 
Vector3d coordinates
 nodal coordinates: \(x_{iI}\)
 
Vector3d momentum
 nodal momentum: \(p_{iI}\), or momentum in solid in two-phase calculations: \(p_{iI}^{s}\)
 
Vector3d velocity
 nodal velocity: \(v_{iI}\), or velocity in solid in two-phase calculations: \(v_{iI}^{s}\)
 
Vector3d externalForce
 nodal external force: \(f_{iI}^{ext}\), or external force in solid in two-phase calculations: \(f_{iI}^{ext,s}\)
 
Vector3d internalForce
 nodal internal force: \(f_{iI}^{int}\), or internal force in solid in two-phase calculations: \(f_{iI}^{int,s}\)
 
Vector3d dampingForce
 nodal damping force: \(f_{iI}^{dmp}\), or damping force in solid in two-phase calculations: \(f_{iI}^{dmp,s}\)
 
Vector3d totalForce
 nodal total force: \(f_{iI}\), or total force in solid in two-phase calculations: \(f_{iI}^{s}\)
 

Detailed Description

Represents a mesh node for calculations using the mixture theory.

Constructor & Destructor Documentation

◆ NodeMixture()

NodeMixture::NodeMixture ( )
inline

Default constructor.

◆ ~NodeMixture()

virtual NodeMixture::~NodeMixture ( )
virtual

Default destructor.

Member Function Documentation

◆ addExternalForceFluid()

virtual void NodeMixture::addExternalForceFluid ( const Vector3d & external_force_fluid_increment)
inlinevirtual

Add a external force of fluid increment to the nodal external force.

Parameters
[in]external_force_fluid_incrementVector containing nodal external force increment

Reimplemented from Node.

◆ addInternalForceFluid()

virtual void NodeMixture::addInternalForceFluid ( const Vector3d & internal_force_fluid_increment)
inlinevirtual

Add a internal force increment of fluid to the nodal internal force.

Parameters
[in]internal_force_fluid_incrementVector containing nodal internal force increment of fluid

Reimplemented from Node.

◆ addMassFluid()

virtual void NodeMixture::addMassFluid ( double fluid_mass_increment)
inlinevirtual

Add fluid mass increment to the nodal mass.

Parameters
[in]fluid_mass_incrementNodal mass increment

Reimplemented from Node.

◆ addMomentumFluid()

virtual void NodeMixture::addMomentumFluid ( const Vector3d & fluid_momentum_increment)
inlinevirtual

Add fluid momentum increment to the nodal momentum of fluid.

Parameters
[in]fluid_momentum_incrementVector containing the nodal momentum increment of fluid

Reimplemented from Node.

◆ getMassFluid()

virtual double NodeMixture::getMassFluid ( ) const
inlinevirtual

Return the nodal mass of fluid phase.

Returns
Nodal mass of fluid phase

Reimplemented from Node.

◆ getMomentumFluid()

virtual const Vector3d * NodeMixture::getMomentumFluid ( ) const
inlinevirtual

Return the nodal momentum of fluid phase.

Returns
Vector containing the nodal momentum of fluid phase

Reimplemented from Node.

◆ getTotalForceFluid()

virtual const Vector3d * NodeMixture::getTotalForceFluid ( ) const
inlinevirtual

Return the nodal total force of fluid phase.

Returns
Vector containing the nodal total force of fluid phase

Reimplemented from Node.

◆ getVelocityFluid()

virtual const Vector3d * NodeMixture::getVelocityFluid ( ) const
inlinevirtual

Return the nodal velocity of fluid phase.

Returns
Vector containing the nodal velocity of fluid phase

Reimplemented from Node.

◆ integrateMomentum()

virtual void NodeMixture::integrateMomentum ( double dt)
virtual

brief Integrate momentum

Reimplemented from Node.

◆ resetValues()

void NodeMixture::resetValues ( )
inlinevirtual

Delete all values stored in node.

Reimplemented from Node.

◆ setMomentumFluid()

virtual void NodeMixture::setMomentumFluid ( const Vector3d & nodal_momentum_fluid)
inlinevirtual

Configure the nodal momentum of fluid phase.

Parameters
[in]nodal_momentum_fluidVector containing the nodal momentum of fluid phase

Reimplemented from Node.

◆ setTotalForceFluid()

virtual void NodeMixture::setTotalForceFluid ( const Vector3d & total_nodal_force_fluid)
inlinevirtual

Configure the total nodal force in fluid phase.

Parameters
[in]total_nodal_force_fluidVector containing the total nodal force in fluid phase

Reimplemented from Node.

◆ updateDampingForce()

virtual void NodeMixture::updateDampingForce ( )
virtual

Calculate the damping nodal force.

Reimplemented from Node.

◆ updateTotalForce()

virtual void NodeMixture::updateTotalForce ( )
virtual

Calculate the total nodal force.

Reimplemented from Node.

◆ updateVelocity()

virtual void NodeMixture::updateVelocity ( )
virtual

Update nodal velocity of mixture.

Member Data Documentation

◆ dampingForceFluid

Vector3d NodeMixture::dampingForceFluid
private

nodal damping force of fluid: \(f_{iI}^{dmp,f}\)

◆ externalForceFluid

Vector3d NodeMixture::externalForceFluid
private

nodal external force of fluid: \(f_{iI}^{ext,f}\)

◆ internalForceFluid

Vector3d NodeMixture::internalForceFluid
private

nodal internal force of fluid: \(f_{iI}^{int,f}\)

◆ massFluid

double NodeMixture::massFluid
private

nodal mass of fluid: \(m_I^{f}\)

◆ momentumFluid

Vector3d NodeMixture::momentumFluid
private

nodal momentum of fluid: \(p_{iI}^{f}\)

◆ totalForceFluid

Vector3d NodeMixture::totalForceFluid
private

nodal total force of fluid: \(f_{iI}^{f}\)

◆ velocityFluid

Vector3d NodeMixture::velocityFluid
private

nodal velocity of fluid: \(v_{iI}^{f}\)


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