SPHinXsys  alpha version
Public Member Functions | Public Attributes | List of all members
SPH::ShellParticles Class Reference

A group of particles with shell particle data. More...

#include <solid_particles.h>

Inherits SPH::ElasticSolidParticles.

Public Member Functions

 ShellParticles (SPHBody &sph_body, ElasticSolid *elastic_solid)
 
virtual Real ParticleVolume (size_t index_i)
 
virtual Real ParticleMass (size_t index_i)
 
virtual void initializeOtherVariables () override
 
virtual ShellParticlesThisObjectPtr () override
 
- Public Member Functions inherited from SPH::ElasticSolidParticles
 ElasticSolidParticles (SPHBody &sph_body, ElasticSolid *elastic_solid)
 
Matd getGreenLagrangeStrain (size_t particle_i)
 
Vecd getPrincipalStrains (size_t particle_i)
 
Real getVonMisesStrain (size_t particle_i)
 
Real getVonMisesStrainDynamic (size_t particle_i, Real poisson)
 
StdLargeVec< Real > getVonMisesStrainVector (std::string strain_measure="static")
 
Real getVonMisesStrainMax (std::string strain_measure="static")
 
Real getPrincipalStrainMax ()
 
Matd getStressCauchy (size_t particle_i)
 
Matd getStressPK2 (size_t particle_i)
 
Vecd getPrincipalStresses (size_t particle_i)
 
Real getVonMisesStress (size_t particle_i)
 
StdLargeVec< Real > getVonMisesStressVector ()
 
Real getVonMisesStressMax ()
 
Real getPrincipalStressMax ()
 
Vecd displacement (size_t particle_i)
 
StdLargeVec< Vecd > getDisplacement ()
 
Real getMaxDisplacement ()
 
Vecd normal (size_t particle_i)
 
StdLargeVec< Vecd > getNormal ()
 
virtual StdLargeVec< Vecd > * AverageVelocity ()
 
virtual StdLargeVec< Vecd > * AverageAcceleration ()
 
- Public Member Functions inherited from SPH::SolidParticles
 SolidParticles (SPHBody &sph_body, Solid *solid)
 
virtual Vecd getKernelGradient (size_t index_i, size_t index_j, Real dW_ij, Vecd &e_ij) override
 
- Public Member Functions inherited from SPH::BaseParticles
 BaseParticles (SPHBody &sph_body, BaseMaterial *base_material)
 
template<typename VariableType >
void registerVariable (StdLargeVec< VariableType > &variable_addrs, const std::string &variable_name, VariableType initial_value=VariableType(0))
 
template<typename VariableType , class InitializationFunction >
void registerVariable (StdLargeVec< VariableType > &variable_addrs, const std::string &variable_name, const InitializationFunction &initialization)
 
template<typename VariableType >
StdLargeVec< VariableType > * getVariableByName (const std::string &variable_name)
 
template<typename VariableType >
void addVariableNameToList (ParticleVariableList &variable_name_list, const std::string &variable_name)
 
template<typename VariableType >
void addVariableToWrite (const std::string &variable_name)
 
template<class DerivedVariableMethod >
void addDerivedVariableToWrite ()
 
template<typename VariableType >
void addVariableToRestart (const std::string &variable_name)
 
template<typename VariableType >
void addVariableToReload (const std::string &variable_name)
 
template<typename VariableType >
void registerSortableVariable (const std::string &variable_name)
 
SPHBodygetSPHBody ()
 
void addBufferParticles (size_t buffer_size)
 
void copyFromAnotherParticle (size_t this_index, size_t another_index)
 
void updateFromAnotherParticle (size_t this_index, size_t another_index)
 
size_t insertAGhostParticle (size_t index_i)
 
void switchToBufferParticle (size_t index_i)
 
template<typename OutStreamType >
void writeParticlesToVtk (OutStreamType &output_stream)
 
void writeParticlesToPltFile (std::ofstream &output_file)
 
virtual void writeSurfaceParticlesToVtuFile (std::ostream &output_file, BodySurface &surface_particles)
 
void resizeXmlDocForParticles (XmlEngine &xml_engine)
 
void writeParticlesToXmlForRestart (std::string &filefullpath)
 
void readParticleFromXmlForRestart (std::string &filefullpath)
 
XmlEnginegetReloadXmlEngine ()
 
void writeToXmlForReloadParticle (std::string &filefullpath)
 
void readFromXmlForReloadParticle (std::string &filefullpath)
 
virtual Vecd ParticleTotalAcceleration (size_t index_i)
 
template<typename StreamType >
void writeParticlesToVtk (StreamType &output_stream)
 

Public Attributes

Real thickness_ref_
 
StdLargeVec< Matd > transformation_matrix_
 
StdLargeVec< Real > thickness_
 
StdLargeVec< Vecd > pseudo_n_
 
StdLargeVec< Vecd > dpseudo_n_dt_
 
StdLargeVec< Vecd > dpseudo_n_d2t_
 
StdLargeVec< Vecd > rotation_
 
StdLargeVec< Vecd > angular_vel_
 
StdLargeVec< Vecd > dangular_vel_dt_
 
StdLargeVec< Matd > F_bending_
 
StdLargeVec< Matd > dF_bending_dt_
 
StdLargeVec< Vecd > global_shear_stress_
 
StdLargeVec< Matd > global_stress_
 
StdLargeVec< Matd > global_moment_
 
- Public Attributes inherited from SPH::ElasticSolidParticles
StdLargeVec< Matd > F_
 
StdLargeVec< Matd > dF_dt_
 
StdLargeVec< Vecd > vel_ave_
 
StdLargeVec< Vecd > acc_ave_
 
std::string stress_measure_
 
- Public Attributes inherited from SPH::SolidParticles
StdLargeVec< Vecd > pos0_
 
StdLargeVec< Vecd > n_
 
StdLargeVec< Vecd > n0_
 
StdLargeVec< Matd > B_
 
- Public Attributes inherited from SPH::BaseParticles
StdLargeVec< Vecd > pos_
 
StdLargeVec< Vecd > vel_
 
StdLargeVec< Vecd > acc_
 
StdLargeVec< Vecd > acc_prior_
 
StdLargeVec< Real > Vol_
 
StdLargeVec< Real > rho_
 
StdLargeVec< Real > mass_
 
Real rho0_
 
Real sigma0_
 
Real speed_max_
 
Real signal_speed_max_
 
size_t total_real_particles_
 
size_t real_particles_bound_
 
size_t total_ghost_particles_
 
ParticleData all_particle_data_
 
ParticleDataMap all_variable_maps_
 
StdVec< ParticleDynamics< void > * > derived_variables_
 
ParticleVariableList variables_to_write_
 
StdLargeVec< size_tunsorted_id_
 
StdLargeVec< size_tsorted_id_
 
StdLargeVec< size_tsequence_
 
ParticleData sortable_data_
 
ParticleDataMap sortable_variable_maps_
 

Additional Inherited Members

- Protected Member Functions inherited from SPH::BaseParticles
void addAParticleEntry ()
 
virtual void writePltFileHeader (std::ofstream &output_file)
 
virtual void writePltFileParticleData (std::ofstream &output_file, size_t index_i)
 
- Protected Attributes inherited from SPH::ElasticSolidParticles
ElasticSolidelastic_solid_
 
- Protected Attributes inherited from SPH::BaseParticles
SPHBodysph_body_
 
std::string body_name_
 
XmlEngine restart_xml_engine_
 
XmlEngine reload_xml_engine_
 
ParticleVariableList variables_to_restart_
 
ParticleVariableList variables_to_reload_
 
DataAssembleOperation< resizeParticleDataresize_particle_data_
 
DataAssembleOperation< addAParticleDataValueadd_a_particle_value_
 
DataAssembleOperation< copyAParticleDataValuecopy_a_particle_value_
 

Detailed Description

A group of particles with shell particle data.

Member Function Documentation

◆ initializeOtherVariables()

void SPH::ShellParticles::initializeOtherVariables ( )
overridevirtual

initialize other variables based one geometric variables and material

Reimplemented from SPH::ElasticSolidParticles.

Member Data Documentation

◆ angular_vel_

StdLargeVec<Vecd> SPH::ShellParticles::angular_vel_

angular velocity respective to each axis

◆ dangular_vel_dt_

StdLargeVec<Vecd> SPH::ShellParticles::dangular_vel_dt_

angular acceleration of respective to each axis

◆ dF_bending_dt_

StdLargeVec<Matd> SPH::ShellParticles::dF_bending_dt_

bending deformation gradient change rate

◆ dpseudo_n_d2t_

StdLargeVec<Vecd> SPH::ShellParticles::dpseudo_n_d2t_

pseudo-normal vector second order time derivation

◆ dpseudo_n_dt_

StdLargeVec<Vecd> SPH::ShellParticles::dpseudo_n_dt_

pseudo-normal vector change rate

◆ F_bending_

StdLargeVec<Matd> SPH::ShellParticles::F_bending_

bending deformation gradient

◆ global_moment_

StdLargeVec<Matd> SPH::ShellParticles::global_moment_

global bending moment for pair interaction

◆ global_shear_stress_

StdLargeVec<Vecd> SPH::ShellParticles::global_shear_stress_

global shear stress

◆ global_stress_

StdLargeVec<Matd> SPH::ShellParticles::global_stress_

global stress for pair interaction

◆ pseudo_n_

StdLargeVec<Vecd> SPH::ShellParticles::pseudo_n_

current pseudo-normal vector

◆ rotation_

StdLargeVec<Vecd> SPH::ShellParticles::rotation_

rotation angle of the initial normal respective to each axis

◆ thickness_

StdLargeVec<Real> SPH::ShellParticles::thickness_

shell thickness

◆ transformation_matrix_

StdLargeVec<Matd> SPH::ShellParticles::transformation_matrix_

initial transformation matrix from global to local coordinates


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