Parallel Finite Element - General geometry Ewald-like Method
Part of Continuum-particle Simulation Suite under MICCOM
|
#include <rigid_particle.h>
Public Member Functions | |
RigidParticle (const dof_id_type &particle_id, const int &particle_type, const Point &pt, const Point &mag, const Point &rot, const Real &charge, const Real &epsilon_in, const Point &sedimentation_body_force_density, const Parallel::Communicator &comm_in) | |
~RigidParticle () | |
void | init () |
std::vector< int > & | counter () |
dof_id_type | id () const |
Real | radius () const |
const Real & | charge () const |
const Real & | epsilon_in () const |
int | processor_id () const |
void | set_processor_id (const int pid) |
const std::string & | mesh_type () const |
void | set_neighbor_list (const std::vector< std::pair< std::size_t, Real > > &nei_list) |
std::vector< std::pair< std::size_t, Real > > | neighbor_list () const |
void | attach_mesh_spring_network (MeshSpringNetwork *msn) |
MeshSpringNetwork * | mesh_spring_network () const |
void | extract_surface_mesh (const std::string &vmesh, const std::string &smesh) const |
void | read_mesh (const std::string &filename, const std::string &mesh_type) |
void | read_mesh_sphere (const std::string &filename) |
void | read_mesh_cylinder (const std::string &filename) |
void | write_mesh (const std::string &filename) |
void | update_mesh (const std::vector< Point > &nodal_pos, const std::vector< Point > &nodal_vel) |
void | update_mesh (const std::vector< Point > &nodal_pos) |
void | translate_mesh (const Point &translationDist) |
void | extract_nodes (std::vector< Point > &node_xyz) |
SerialMesh & | mesh () |
std::vector< Real > | mesh_size () const |
const Point & | mesh_point (const std::size_t i) const |
const Real | node_center_dist (const std::size_t i) const |
std::size_t | num_mesh_nodes () const |
std::size_t | num_mesh_elem () const |
bool | on_the_periodic_boundary () |
const bool & | if_on_the_periodic_boundary () const |
void | rebuild_periodic_mesh () |
void | restore_periodic_mesh () |
void | build_nodal_sedimentation_force () |
void | compute_volume () |
void | compute_area () |
void | compute_centroid () |
const Real & | get_volume0 () const |
const Real & | get_volume () const |
const Real & | get_area0 () const |
const Real & | get_area () const |
const Point & | get_center0 () const |
const Point & | get_centroid0 () |
const Point & | get_centroid () |
const std::string & | get_particle_shape () |
Point | elem_surface_normal (const Elem &s_elem, const Point &pt0) const |
std::vector< Point > | compute_surface_normal () |
void | volume_conservation () |
void | print_info () const |
void | set_node_velocity (std::vector< Point > &node_velocity) |
void | zero_node_force () |
force on surface nodes More... | |
void | add_node_force (std::vector< Point > &node_force) |
add force to surface nodes More... | |
void | get_node_force (std::vector< Point > &node_force) const |
get force on surface nodes More... | |
void | compute_centroid_velocity () |
compute body velocity each node of this rigid particle does not have member velocity so we can only calculate centroid_velocity in point_mesh.C and assign it to this rigid particle More... | |
const Point & | centroid_velocity () |
get centroid velocity More... | |
void | compute_centroid_force () |
compute body force More... | |
const Point & | centroid_force () |
libMesh::RigidParticle::RigidParticle | ( | const dof_id_type & | particle_id, |
const int & | particle_type, | ||
const Point & | pt, | ||
const Point & | mag, | ||
const Point & | rot, | ||
const Real & | charge, | ||
const Real & | epsilon_in, | ||
const Point & | sedimentation_body_force_density, | ||
const Parallel::Communicator & | comm_in | ||
) |
libMesh::RigidParticle::~RigidParticle | ( | ) |
void libMesh::RigidParticle::add_node_force | ( | std::vector< Point > & | node_force | ) |
add force to surface nodes
|
inline |
void libMesh::RigidParticle::build_nodal_sedimentation_force | ( | ) |
|
inline |
get centroid force
|
inline |
get centroid velocity
|
inline |
void libMesh::RigidParticle::compute_area | ( | ) |
void libMesh::RigidParticle::compute_centroid | ( | ) |
void libMesh::RigidParticle::compute_centroid_force | ( | ) |
compute body force
void libMesh::RigidParticle::compute_centroid_velocity | ( | ) |
compute body velocity each node of this rigid particle does not have member velocity so we can only calculate centroid_velocity in point_mesh.C and assign it to this rigid particle
std::vector< Point > libMesh::RigidParticle::compute_surface_normal | ( | ) |
void libMesh::RigidParticle::compute_volume | ( | ) |
|
inline |
Point libMesh::RigidParticle::elem_surface_normal | ( | const Elem & | s_elem, |
const Point & | pt0 | ||
) | const |
|
inline |
void libMesh::RigidParticle::extract_nodes | ( | std::vector< Point > & | node_xyz | ) |
void libMesh::RigidParticle::extract_surface_mesh | ( | const std::string & | vmesh, |
const std::string & | smesh | ||
) | const |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
get force on surface nodes
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
void libMesh::RigidParticle::init | ( | ) |
SerialMesh & libMesh::RigidParticle::mesh | ( | ) |
const Point & libMesh::RigidParticle::mesh_point | ( | const std::size_t | i | ) | const |
std::vector< Real > libMesh::RigidParticle::mesh_size | ( | ) | const |
|
inline |
|
inline |
|
inline |
const Real libMesh::RigidParticle::node_center_dist | ( | const std::size_t | i | ) | const |
std::size_t libMesh::RigidParticle::num_mesh_elem | ( | ) | const |
std::size_t libMesh::RigidParticle::num_mesh_nodes | ( | ) | const |
bool libMesh::RigidParticle::on_the_periodic_boundary | ( | ) |
void libMesh::RigidParticle::print_info | ( | ) | const |
|
inline |
|
inline |
void libMesh::RigidParticle::read_mesh | ( | const std::string & | filename, |
const std::string & | mesh_type | ||
) |
void libMesh::RigidParticle::read_mesh_cylinder | ( | const std::string & | filename | ) |
void libMesh::RigidParticle::read_mesh_sphere | ( | const std::string & | filename | ) |
void libMesh::RigidParticle::rebuild_periodic_mesh | ( | ) |
void libMesh::RigidParticle::restore_periodic_mesh | ( | ) |
|
inline |
|
inline |
|
inline |
void libMesh::RigidParticle::translate_mesh | ( | const Point & | translationDist | ) |
void libMesh::RigidParticle::update_mesh | ( | const std::vector< Point > & | nodal_pos, |
const std::vector< Point > & | nodal_vel | ||
) |
void libMesh::RigidParticle::update_mesh | ( | const std::vector< Point > & | nodal_pos | ) |
void libMesh::RigidParticle::volume_conservation | ( | ) |
void libMesh::RigidParticle::write_mesh | ( | const std::string & | filename | ) |
void libMesh::RigidParticle::zero_node_force | ( | ) |
force on surface nodes