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

#include <brownian_system.h>

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

Public Member Functions

 BrownianSystem (EquationSystems &es)
 
 ~BrownianSystem ()
 
const EquationSystems & get_equation_systems () const
 
EquationSystems & get_equation_systems ()
 
PetscErrorCode petsc_vec_scatter_to_all (Vec f, Vec vf, VecScatter scatter, const std::string &mode)
 
PetscErrorCode extract_particle_vector (Vec *x, const std::string &vec_type, const std::string &mode)
 
PetscErrorCode vector_transform (std::vector< Real > &std_vec, Vec *petsc_vec, const std::string &mode) const
 
RandomGeneratorrandom_generator ()
 
void set_std_random_seed (const std::size_t seed_val)
 
PetscErrorCode std_random_vector (const Real &a, const Real &b, const std::string &random_type, Vec *u)
 
std::vector< Real > std_random_vector (const std::size_t N, const Real &a, const Real &b, const std::string &random_type)
 
PetscErrorCode init_petsc_random (PetscRandom *rand_ctx)
 
PetscErrorCode petsc_random_vector (const PetscInt N, PetscRandom *rand_ctx, Vec *u)
 
Real compute_eigenvalue (const std::string &option, const Real tol)
 
Real compute_eigenvalue (const std::string &option, const Real tol, const bool use_init_space, Vec *v0)
 
PetscErrorCode compute_eigenvalues (Real &eigen_min, Real &eigen_max, const Real &tol)
 
Real power_iteration ()
 
DenseMatrix< Number > chebyshev_transform_matrix (const std::size_t N) const
 
DenseVector< Number > chebyshev_quadrature_point (const std::size_t N) const
 
bool chebyshev_polynomial_approximation (const std::size_t N, const Real eigen_min, const Real eigen_max, const Real tol_cheb, Vec *dw)
 
PetscErrorCode hi_ewald (Mat M, Vec f, Vec u)
 
PetscErrorCode _test_diagonal_mat (Vec f, Vec u)
 
PetscErrorCode _vector_mean_variance (Vec u, Real &mean, Real &variance) const
 
PetscErrorCode _vector_mean_variance (const std::vector< Real > &u) const
 
PetscErrorCode _create_shell_mat (const std::size_t N, Mat *M)
 
PetscErrorCode _create_petsc_vec (const std::size_t N, Vec *V)
 

Friends

PetscErrorCode _MatMult_Stokes (Mat M, Vec f, Vec u)
 

Constructor & Destructor Documentation

BrownianSystem::BrownianSystem ( EquationSystems &  es)

Here is the call graph for this function:

BrownianSystem::~BrownianSystem ( )

Member Function Documentation

PetscErrorCode BrownianSystem::_create_petsc_vec ( const std::size_t  N,
Vec *  V 
)

Here is the caller graph for this function:

PetscErrorCode BrownianSystem::_create_shell_mat ( const std::size_t  N,
Mat *  M 
)

Here is the caller graph for this function:

PetscErrorCode BrownianSystem::_test_diagonal_mat ( Vec  f,
Vec  u 
)

Here is the caller graph for this function:

PetscErrorCode BrownianSystem::_vector_mean_variance ( Vec  u,
Real &  mean,
Real &  variance 
) const

Here is the caller graph for this function:

PetscErrorCode BrownianSystem::_vector_mean_variance ( const std::vector< Real > &  u) const
bool BrownianSystem::chebyshev_polynomial_approximation ( const std::size_t  N,
const Real  eigen_min,
const Real  eigen_max,
const Real  tol_cheb,
Vec *  dw 
)

Here is the call graph for this function:

Here is the caller graph for this function:

DenseVector< Number > BrownianSystem::chebyshev_quadrature_point ( const std::size_t  N) const

Here is the caller graph for this function:

DenseMatrix< Number > BrownianSystem::chebyshev_transform_matrix ( const std::size_t  N) const

Here is the caller graph for this function:

Real BrownianSystem::compute_eigenvalue ( const std::string &  option,
const Real  tol 
)

Here is the call graph for this function:

Here is the caller graph for this function:

Real BrownianSystem::compute_eigenvalue ( const std::string &  option,
const Real  tol,
const bool  use_init_space,
Vec *  v0 
)

Here is the call graph for this function:

PetscErrorCode BrownianSystem::compute_eigenvalues ( Real &  eigen_min,
Real &  eigen_max,
const Real &  tol 
)

Here is the call graph for this function:

Here is the caller graph for this function:

PetscErrorCode BrownianSystem::extract_particle_vector ( Vec *  x,
const std::string &  vec_type,
const std::string &  mode 
)

Here is the call graph for this function:

Here is the caller graph for this function:

const EquationSystems& libMesh::BrownianSystem::get_equation_systems ( ) const
inline

Here is the caller graph for this function:

EquationSystems& libMesh::BrownianSystem::get_equation_systems ( )
inline

Here is the call graph for this function:

PetscErrorCode libMesh::BrownianSystem::hi_ewald ( Mat  M,
Vec  f,
Vec  u 
)
inline

Here is the call graph for this function:

Here is the caller graph for this function:

PetscErrorCode BrownianSystem::init_petsc_random ( PetscRandom *  rand_ctx)

Here is the caller graph for this function:

PetscErrorCode BrownianSystem::petsc_random_vector ( const PetscInt  N,
PetscRandom *  rand_ctx,
Vec *  u 
)

Here is the call graph for this function:

Here is the caller graph for this function:

PetscErrorCode BrownianSystem::petsc_vec_scatter_to_all ( Vec  f,
Vec  vf,
VecScatter  scatter,
const std::string &  mode 
)

Here is the caller graph for this function:

Real BrownianSystem::power_iteration ( )

Here is the call graph for this function:

Here is the caller graph for this function:

RandomGenerator& libMesh::BrownianSystem::random_generator ( )
inline
void libMesh::BrownianSystem::set_std_random_seed ( const std::size_t  seed_val)
inline

Here is the call graph for this function:

Here is the caller graph for this function:

PetscErrorCode BrownianSystem::std_random_vector ( const Real &  a,
const Real &  b,
const std::string &  random_type,
Vec *  u 
)

Here is the call graph for this function:

Here is the caller graph for this function:

std::vector< Real > BrownianSystem::std_random_vector ( const std::size_t  N,
const Real &  a,
const Real &  b,
const std::string &  random_type 
)

Here is the call graph for this function:

PetscErrorCode BrownianSystem::vector_transform ( std::vector< Real > &  std_vec,
Vec *  petsc_vec,
const std::string &  mode 
) const

Here is the caller graph for this function:

Friends And Related Function Documentation

PetscErrorCode _MatMult_Stokes ( Mat  M,
Vec  f,
Vec  u 
)
friend

Internal function if shell matrix mode is used, this just calls the shell matrix's matrix multiplication function. In this class, it will call Stokes solver. u = M*f NOTE that the pm_system should be reinit() before solving Stokes


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