Parallel Finite Element - General geometry Ewald-like Method
Part of Continuum-particle Simulation Suite under MICCOM
Public Types | Public Member Functions | Public Attributes | List of all members
libMesh::Fix Class Reference

#include <fix.h>

Inheritance diagram for libMesh::Fix:
Inheritance graph
[legend]
Collaboration diagram for libMesh::Fix:
Collaboration graph
[legend]

Public Types

typedef std::string type_force_name
 
typedef std::vector< Real > type_force_parameter
 
typedef std::pair< type_force_name, type_force_parametertype_force
 

Public Member Functions

 Fix (PMLinearImplicitSystem &pm_sys, ElasticitySystem &el_sys)
 Constructor for a system with elastic structures (finite size particles) More...
 
 Fix (PMLinearImplicitSystem &pm_sys)
 Constructor for a system with point particles. More...
 
void initialization ()
 
virtual ~Fix ()
 Destructor. More...
 
virtual void initParticleType ()
 
virtual void initParams ()
 Check if num of parameters are correct. More...
 
virtual void compute ()
 
virtual void check_walls ()
 
virtual void check_walls_pbcCount ()
 
virtual void print_fix ()
 
virtual void check_pbc_pre_fix ()
 
virtual void check_pbc_post_fix ()
 
virtual void sync_node_to_pointmesh ()
 

Public Attributes

PMLinearImplicitSystempm_system
 
PointMesh< 3 > * point_mesh
 
unsigned int dim
 
unsigned int out_domain_counter = 0
 
std::string force_type
 
std::vector< Real > force_params
 
FixBase fix_base
 
std::string particle_type
 
Real bead_r
 
std::size_t num_points
 
std::vector< PointParticle * > point_particles
 
Real kBT
 
const Real PI = libMesh::pi
 
PMPeriodicBoundarypbc
 
std::string wall_type
 
std::vector< Real > wall_params
 
Point box_min
 
Point box_max
 
Point box_len
 
std::vector< bool > periodic
 
std::vector< bool > inlet
 

Member Typedef Documentation

typedef std::string libMesh::Fix::type_force_name
typedef std::vector<Real> libMesh::Fix::type_force_parameter

Constructor & Destructor Documentation

libMesh::Fix::Fix ( PMLinearImplicitSystem pm_sys,
ElasticitySystem el_sys 
)

Constructor for a system with elastic structures (finite size particles)

Fix::Fix ( PMLinearImplicitSystem pm_sys)

Constructor for a system with point particles.

Here is the call graph for this function:

virtual libMesh::Fix::~Fix ( )
inlinevirtual

Destructor.

Member Function Documentation

virtual void libMesh::Fix::check_pbc_post_fix ( )
inlinevirtual

Reimplemented in libMesh::FixRigid.

virtual void libMesh::Fix::check_pbc_pre_fix ( )
inlinevirtual

use this for rigid particle fixes check if particle is on periodic boundary, if so, rebuild particle mesh this function is called once before all fix::compute(), no matter how many fixes we have

Reimplemented in libMesh::FixRigid.

virtual void libMesh::Fix::check_walls ( )
inlinevirtual

Reimplemented in libMesh::FixRigid, and libMesh::FixPoint.

virtual void libMesh::Fix::check_walls_pbcCount ( )
inlinevirtual

Reimplemented in libMesh::FixRigid, and libMesh::FixPoint.

virtual void libMesh::Fix::compute ( )
inlinevirtual

Compute force field attach it to particles /*! User-defined function for reinitializing the force field at each time step The velocities of all beads are given (for calculating friction) This function is the same to reinit_force_field() unless velocities are given, i.e., friction need to be calculated

Reimplemented in libMesh::FixPointSlitWallEmpiricalDNA, libMesh::FixPointSphereWallEmpiricalDNA, libMesh::FixPointWLS, libMesh::FixPointDiscretizedWallLJCut, libMesh::FixPointGaussianDNA, libMesh::FixPointSlitWallLJCut, libMesh::FixPointSphereWallLJCut, libMesh::FixRigidSlitWallLJCut, libMesh::FixRigidSphereWallLJCut, libMesh::FixPointLJCut, libMesh::FixPointGaussian, libMesh::FixRigidLJCut, libMesh::FixRigidSedimentation, and libMesh::FixRigidSurfaceConstraint.

void Fix::initialization ( )

Here is the call graph for this function:

Here is the caller graph for this function:

virtual void libMesh::Fix::initParams ( )
inlinevirtual
virtual void libMesh::Fix::initParticleType ( )
inlinevirtual

Prepare ForceField for run /*! Check force field parameters when build force field classes. This function is only evaluated once at the beginning of a simulation check the following things: 1) if this "force field" is supported; 2) if this "force field" is applicable to this "particle type" 3) if correct number of parameters are assigned to this "force field"

Reimplemented in libMesh::FixRigid, and libMesh::FixPoint.

virtual void libMesh::Fix::print_fix ( )
inlinevirtual
virtual void libMesh::Fix::sync_node_to_pointmesh ( )
inlinevirtual

Reimplemented in libMesh::FixRigid.

Member Data Documentation

Real libMesh::Fix::bead_r
Point libMesh::Fix::box_len
Point libMesh::Fix::box_max
Point libMesh::Fix::box_min
unsigned int libMesh::Fix::dim
FixBase libMesh::Fix::fix_base
std::vector<Real> libMesh::Fix::force_params
std::string libMesh::Fix::force_type
std::vector<bool> libMesh::Fix::inlet
Real libMesh::Fix::kBT
std::size_t libMesh::Fix::num_points
unsigned int libMesh::Fix::out_domain_counter = 0
std::string libMesh::Fix::particle_type
PMPeriodicBoundary* libMesh::Fix::pbc
std::vector<bool> libMesh::Fix::periodic
const Real libMesh::Fix::PI = libMesh::pi
PMLinearImplicitSystem* libMesh::Fix::pm_system
PointMesh<3>* libMesh::Fix::point_mesh
std::vector<PointParticle*> libMesh::Fix::point_particles
std::vector<Real> libMesh::Fix::wall_params
std::string libMesh::Fix::wall_type

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