|
Parallel Finite Element - General geometry Ewald-like Method
Part of Continuum-particle Simulation Suite under MICCOM
|
#include <pm_system_stokes.h>


Public Types | |
| typedef PMSystemStokes | sys_type |
Public Types inherited from libMesh::PMLinearImplicitSystem | |
| typedef PMLinearImplicitSystem | sys_type |
Public Member Functions | |
| PMSystemStokes (EquationSystems &es, const std::string &name, const unsigned int number) | |
| virtual | ~PMSystemStokes () |
| sys_type & | system () |
| void | reinit_hi_system (bool &neighbor_list_update_flag) |
| void | reinit_fd_system (bool &neighbor_list_update_flag) |
| void | clear () |
| void | assemble_matrix (const std::string &system_name, const std::string &option) |
| void | assemble_rhs (const std::string &system_name, const std::string &option) |
| void | solve (const std::string &option, const bool &re_init) |
| void | add_local_solution () |
| void | test_l2_norm (bool &neighbor_list_update_flag) |
| void | write_equation_systems (const std::size_t time_step, const std::string &output_filename, const std::string &output_format) |
| StokesSolver & | stokes_solver () |
| void | compute_point_velocity (const std::string &option, std::vector< Real > &pv) |
| std::vector< Real > | compute_unperturbed_point_velocity () |
| std::vector< Real > | point_velocity (const std::vector< Real > &vel_beads, const std::size_t i) const |
| std::vector< Real > | local_velocity_fluid (const Point &p, const std::string &force_type) const |
| std::vector< Real > | local_velocity_fluid (const Elem *elem, const Point &p, const std::string &force_type) const |
| Point | local_velocity_bead (const std::size_t &bead_id, const std::string &force_type) const |
| Point | global_self_exclusion (const std::size_t p_id) const |
| void | test_velocity_profile (bool &neighbor_list_update_flag) |
| void | write_fluid_velocity_data (const std::string &filename) |
Public Member Functions inherited from libMesh::PMLinearImplicitSystem | |
| PMLinearImplicitSystem (EquationSystems &es, const std::string &name, const unsigned int number) | |
| virtual | ~PMLinearImplicitSystem () |
| sys_type & | system () |
| void | attach_point_mesh (PointMesh< 3 > *pm) |
| PointMesh< 3 > * | point_mesh () |
| PointMesh< 3 > * | point_mesh () const |
| void | attach_particle_mesh (ParticleMesh< 3 > *pm) |
| ParticleMesh< 3 > * | particle_mesh () |
| ParticleMesh< 3 > * | particle_mesh () const |
| void | attach_fixes (std::vector< Fix * > fixes) |
| std::vector< Fix * > | fixes () |
| std::vector< Fix * > | fixes () const |
| void | write_out_single_particle (const Point &coords, const std::vector< Real > &vel, const int i_step, const Real time) const |
| void | write_out_point_coordinate (Vec *ROUT, const std::size_t istep, const Real &time, const std::string &f_name, const std::string &openmode) const |
| void | write_point_csv (const std::string &filename, const std::vector< Real > &pv, const bool write_velocity) const |
| PetscErrorCode | write_point_csv (const std::string &filename, Vec *petsc_vector, const bool write_velocity) const |
Additional Inherited Members | |
Protected Attributes inherited from libMesh::PMLinearImplicitSystem | |
| PointMesh< 3 > * | _point_mesh |
| ParticleMesh< 3 > * | _particle_mesh |
| std::vector< Fix * > | _fixes |
The type of system.
| libMesh::PMSystemStokes::PMSystemStokes | ( | EquationSystems & | es, |
| const std::string & | name, | ||
| const unsigned int | number | ||
| ) |
Constructor.
|
virtual |
Destructor.

|
virtual |
Implements libMesh::PMLinearImplicitSystem.


|
virtual |
Assemble the system matrix. option == "undisturbed" : undisturbed velocity field (without particles) option == "disturbed" : disturbed velocity field (with particles)
Implements libMesh::PMLinearImplicitSystem.


|
virtual |
Assemble the system rhs.
Implements libMesh::PMLinearImplicitSystem.


|
virtual |
Clear all the data structures associated with the system.
Implements libMesh::PMLinearImplicitSystem.

| void libMesh::PMSystemStokes::compute_point_velocity | ( | const std::string & | option, |
| std::vector< Real > & | pv | ||
| ) |
Compute the purturbed velocity vector of moving points according to physical fields. which is a dim*N vector NOTE that the "self-term" should be excluded, which is done in GGEMSystem. See ref. [1] Y Zhang, J J de Pablo, and M D Graham, J Chem Phys (2012) 014901. [2] P Pranay, S G Anekal, J P Hernandez-Ortiz, Phys Fluids (2010)
option = "disturbed" or "undistrubed" pv = particle_velocity


| std::vector< Real > libMesh::PMSystemStokes::compute_unperturbed_point_velocity | ( | ) |
Compute the unperturbed velocity vector at the location of particles


| Point libMesh::PMSystemStokes::global_self_exclusion | ( | const std::size_t | p_id | ) | const |


| Point libMesh::PMSystemStokes::local_velocity_bead | ( | const std::size_t & | bead_id, |
| const std::string & | force_type | ||
| ) | const |
Local velocity of a bead in an unbounded space, which is computed from Green's function. force_type: "regularized" or "smooth"


| std::vector< Number > libMesh::PMSystemStokes::local_velocity_fluid | ( | const Point & | p, |
| const std::string & | force_type | ||
| ) | const |
Local velocity of a fluid point in an unbounded space, which is computed from Green's function force_type: "regularized" or "smooth"


| std::vector< Number > libMesh::PMSystemStokes::local_velocity_fluid | ( | const Elem * | elem, |
| const Point & | p, | ||
| const std::string & | force_type | ||
| ) | const |
Local velocity of a fluid point in an unbounded space, which is computed from Green's function force_type: "regularized" or "smooth"

| std::vector< Real > libMesh::PMSystemStokes::point_velocity | ( | const std::vector< Real > & | vel_beads, |
| const std::size_t | i | ||
| ) | const |

| void libMesh::PMSystemStokes::reinit_fd_system | ( | bool & | neighbor_list_update_flag | ) |


| void libMesh::PMSystemStokes::reinit_hi_system | ( | bool & | neighbor_list_update_flag | ) |


|
virtual |
Solve the system.
Implements libMesh::PMLinearImplicitSystem.


|
inline |


|
inline |

|
virtual |
Implements libMesh::PMLinearImplicitSystem.


| void libMesh::PMSystemStokes::test_velocity_profile | ( | bool & | neighbor_list_update_flag | ) |


|
virtual |
Implements libMesh::PMLinearImplicitSystem.


| void libMesh::PMSystemStokes::write_fluid_velocity_data | ( | const std::string & | filename | ) |

1.8.11