ESPResSo
Extensible Simulation Package for Research on Soft Matter Systems
Loading...
Searching...
No Matches
walberla Namespace Reference

\file PackInfoPdfDoublePrecision.cpp \author pystencils More...

Namespaces

namespace  blockforest
 
namespace  domain_decomposition
 
namespace  field
 
namespace  lbm
 
namespace  pystencils
 
namespace  vtk
 

Classes

struct  BlockAndCell
 
class  BoundaryHandling
 Boundary class optimized for sparse data. More...
 
class  EKinWalberlaImpl
 Class that runs and controls the EK on waLBerla. More...
 
class  EKReactant
 
class  EKReactionBase
 
class  EKReactionBaseIndexed
 
class  EKReactionImplBulk
 
class  EKReactionImplIndexed
 
class  FFT
 
class  InterpolateAndShiftAtBoundary
 Lees-Edwards sweep. More...
 
class  LBWalberlaImpl
 Class that runs and controls the LB on waLBerla. More...
 
class  None
 
class  PoissonSolver
 
class  ResetForce
 Sweep that swaps force_to_be_applied and last_applied_force and resets force_to_be_applied to the global external force. More...
 

Functions

template<typename T >
IBlock * get_block_extended (LatticeWalberla const &lattice, Utils::Vector< T, 3 > const &pos, unsigned int n_ghost_layers)
 
std::optional< BlockAndCellget_block_and_cell (::LatticeWalberla const &lattice, Utils::Vector3i const &node, bool consider_ghost_layers)
 
IBlock * get_block (::LatticeWalberla const &lattice, Utils::Vector3d const &pos, bool consider_ghost_layers)
 
std::shared_ptr< walberla::PoissonSolvernew_ek_poisson_fft (std::shared_ptr< LatticeWalberla > const &lattice, double permittivity, bool single_precision)
 
std::shared_ptr< walberla::PoissonSolvernew_ek_poisson_none (std::shared_ptr< LatticeWalberla > const &lattice, bool single_precision)
 
std::shared_ptr< EKinWalberlaBasenew_ek_walberla (std::shared_ptr< LatticeWalberla > const &lattice, double diffusion, double kT, double valency, Utils::Vector3d ext_efield, double density, bool advection, bool friction_coupling, bool single_precision, bool thermalized, unsigned int seed)
 
std::shared_ptr< EKReactionBasenew_ek_reaction_bulk (std::shared_ptr< LatticeWalberla > const &lattice, typename EKReactionBase::reactants_type const &reactants, double coefficient)
 
std::shared_ptr< EKReactionBaseIndexednew_ek_reaction_indexed (std::shared_ptr< LatticeWalberla > const &lattice, typename EKReactionBase::reactants_type const &reactants, double coefficient)
 
void mpi_init ()
 Initialize waLBerla's MPI manager.
 
std::unique_ptr< ResourceManagerget_vtk_dependent_resources ()
 Get a lock on waLBerla's global resources for VTK.
 
std::vector< Utils::Vector3dfill_3D_vector_array (std::vector< double > const &vec_flat, Utils::Vector3i const &grid_size)
 
std::vector< double > fill_3D_scalar_array (std::vector< double > const &vec_flat, Utils::Vector3i const &grid_size)
 
template<class BoundaryModel , class DataType >
void set_boundary_from_grid (BoundaryModel &boundary, LatticeWalberla const &lattice, std::vector< int > const &raster_flat, std::vector< DataType > const &data_flat)
 
template<typename T , typename U = T>
es2walberla (T v)
 
template<>
Vector3< float > es2walberla (Utils::Vector3d const v)
 
template<>
Vector3< double > es2walberla (Utils::Vector3d const v)
 
template<typename T >
walberla2es (T v)
 
Utils::Vector3d walberla2es (Vector3< float > const v)
 
Utils::Vector3d walberla2es (Vector3< double > const v)
 
Utils::Vector3d to_vector3d (Vector3< float > const &v)
 
Utils::Vector3d to_vector3d (Vector3< double > const &v)
 
template<typename FloatType >
Vector3< FloatType > to_vector3 (Utils::Vector3d const &v)
 
Utils::VectorXd< 9 > to_vector9d (Matrix3< double > const &m)
 
Utils::VectorXd< 9 > to_vector9d (Matrix3< float > const &m)
 
template<typename Function >
void interpolate_bspline_at_pos (Utils::Vector3d const &pos, Function const &f)
 

Detailed Description

\file PackInfoPdfDoublePrecision.cpp \author pystencils

\file PackInfoVecSinglePrecisionCUDA.h \author pystencils

\file PackInfoVecSinglePrecision.cpp \author pystencils

\file PackInfoVecDoublePrecisionCUDA.h \author pystencils

\file PackInfoVecDoublePrecision.cpp \author pystencils

\file PackInfoPdfSinglePrecisionCUDA.h \author pystencils

\file PackInfoPdfSinglePrecision.cpp \author pystencils

\file PackInfoPdfDoublePrecisionCUDA.h \author pystencils

Function Documentation

◆ es2walberla() [1/3]

template<typename T , typename U = T>
U walberla::es2walberla ( v)
inline

Definition at line 31 of file types_conversion.hpp.

◆ es2walberla() [2/3]

template<>
Vector3< float > walberla::es2walberla ( Utils::Vector3d const  v)
inline

Definition at line 34 of file types_conversion.hpp.

◆ es2walberla() [3/3]

template<>
Vector3< double > walberla::es2walberla ( Utils::Vector3d const  v)
inline

Definition at line 38 of file types_conversion.hpp.

◆ fill_3D_scalar_array()

std::vector< double > walberla::fill_3D_scalar_array ( std::vector< double > const &  vec_flat,
Utils::Vector3i const &  grid_size 
)
inline

◆ fill_3D_vector_array()

std::vector< Utils::Vector3d > walberla::fill_3D_vector_array ( std::vector< double > const &  vec_flat,
Utils::Vector3i const &  grid_size 
)
inline

◆ get_block()

IBlock * walberla::get_block ( ::LatticeWalberla const &  lattice,
Utils::Vector3d const &  pos,
bool  consider_ghost_layers 
)
inline

◆ get_block_and_cell()

std::optional< BlockAndCell > walberla::get_block_and_cell ( ::LatticeWalberla const &  lattice,
Utils::Vector3i const &  node,
bool  consider_ghost_layers 
)
inline

Definition at line 56 of file BlockAndCell.hpp.

References block(), get_block_extended(), LatticeWalberla::get_blocks(), and LatticeWalberla::get_ghost_layers().

Referenced by walberla::LBWalberlaImpl< FloatType, Architecture >::add_force_at_pos(), walberla::EKinWalberlaImpl< FluxCount, FloatType >::get_interval(), walberla::LBWalberlaImpl< FloatType, Architecture >::get_interval(), walberla::LBWalberlaImpl< FloatType, Architecture >::get_node_boundary_force(), walberla::EKinWalberlaImpl< FluxCount, FloatType >::get_node_density(), walberla::LBWalberlaImpl< FloatType, Architecture >::get_node_density(), walberla::EKinWalberlaImpl< FluxCount, FloatType >::get_node_density_at_boundary(), walberla::EKinWalberlaImpl< FluxCount, FloatType >::get_node_flux_at_boundary(), walberla::LBWalberlaImpl< FloatType, Architecture >::get_node_force_to_be_applied(), walberla::EKReactionImplIndexed::get_node_is_boundary(), walberla::EKinWalberlaImpl< FluxCount, FloatType >::get_node_is_boundary(), walberla::LBWalberlaImpl< FloatType, Architecture >::get_node_is_boundary(), walberla::EKinWalberlaImpl< FluxCount, FloatType >::get_node_is_density_boundary(), walberla::EKinWalberlaImpl< FluxCount, FloatType >::get_node_is_flux_boundary(), walberla::LBWalberlaImpl< FloatType, Architecture >::get_node_last_applied_force(), walberla::LBWalberlaImpl< FloatType, Architecture >::get_node_population(), walberla::LBWalberlaImpl< FloatType, Architecture >::get_node_pressure_tensor(), walberla::LBWalberlaImpl< FloatType, Architecture >::get_node_velocity(), walberla::LBWalberlaImpl< FloatType, Architecture >::get_node_velocity_at_boundary(), walberla::LBWalberlaImpl< FloatType, Architecture >::remove_node_from_boundary(), walberla::EKinWalberlaImpl< FluxCount, FloatType >::remove_node_from_density_boundary(), walberla::EKinWalberlaImpl< FluxCount, FloatType >::remove_node_from_flux_boundary(), set_boundary_from_grid(), walberla::EKinWalberlaImpl< FluxCount, FloatType >::set_node_density(), walberla::LBWalberlaImpl< FloatType, Architecture >::set_node_density(), walberla::EKinWalberlaImpl< FluxCount, FloatType >::set_node_density_boundary(), walberla::EKinWalberlaImpl< FluxCount, FloatType >::set_node_flux_boundary(), walberla::EKReactionImplIndexed::set_node_is_boundary(), walberla::LBWalberlaImpl< FloatType, Architecture >::set_node_last_applied_force(), walberla::LBWalberlaImpl< FloatType, Architecture >::set_node_population(), walberla::LBWalberlaImpl< FloatType, Architecture >::set_node_velocity(), walberla::LBWalberlaImpl< FloatType, Architecture >::set_node_velocity_at_boundary(), walberla::EKinWalberlaImpl< FluxCount, FloatType >::set_slice_density_boundary(), walberla::EKinWalberlaImpl< FluxCount, FloatType >::set_slice_flux_boundary(), and walberla::LBWalberlaImpl< FloatType, Architecture >::set_slice_velocity_at_boundary().

◆ get_block_extended()

template<typename T >
IBlock * walberla::get_block_extended ( LatticeWalberla const &  lattice,
Utils::Vector< T, 3 > const &  pos,
unsigned int  n_ghost_layers 
)

Definition at line 40 of file BlockAndCell.hpp.

References block(), and LatticeWalberla::get_cached_blocks().

Referenced by get_block(), and get_block_and_cell().

◆ get_vtk_dependent_resources()

std::unique_ptr< ResourceManager > walberla::get_vtk_dependent_resources ( )

Get a lock on waLBerla's global resources for VTK.

Definition at line 45 of file walberla_init.cpp.

References walberla_mpi_comm, and walberla_mpi_env.

Referenced by VTKHandle::VTKHandle().

◆ interpolate_bspline_at_pos()

◆ mpi_init()

void walberla::mpi_init ( )

Initialize waLBerla's MPI manager.

Definition at line 36 of file walberla_init.cpp.

References walberla_mpi_comm, and walberla_mpi_env.

Referenced by Communication::init().

◆ new_ek_poisson_fft()

std::shared_ptr< walberla::PoissonSolver > walberla::new_ek_poisson_fft ( std::shared_ptr< LatticeWalberla > const &  lattice,
double  permittivity,
bool  single_precision 
)

◆ new_ek_poisson_none()

std::shared_ptr< walberla::PoissonSolver > walberla::new_ek_poisson_none ( std::shared_ptr< LatticeWalberla > const &  lattice,
bool  single_precision 
)

◆ new_ek_reaction_bulk()

std::shared_ptr< EKReactionBase > walberla::new_ek_reaction_bulk ( std::shared_ptr< LatticeWalberla > const &  lattice,
typename EKReactionBase::reactants_type const &  reactants,
double  coefficient 
)

◆ new_ek_reaction_indexed()

std::shared_ptr< EKReactionBaseIndexed > walberla::new_ek_reaction_indexed ( std::shared_ptr< LatticeWalberla > const &  lattice,
typename EKReactionBase::reactants_type const &  reactants,
double  coefficient 
)

◆ new_ek_walberla()

std::shared_ptr< EKinWalberlaBase > walberla::new_ek_walberla ( std::shared_ptr< LatticeWalberla > const &  lattice,
double  diffusion,
double  kT,
double  valency,
Utils::Vector3d  ext_efield,
double  density,
bool  advection,
bool  friction_coupling,
bool  single_precision,
bool  thermalized,
unsigned int  seed 
)

Definition at line 36 of file ek_walberla_init.cpp.

References density.

Referenced by ScriptInterface::walberla::EKSpecies::make_instance().

◆ set_boundary_from_grid()

◆ to_vector3()

template<typename FloatType >
Vector3< FloatType > walberla::to_vector3 ( Utils::Vector3d const &  v)
inline

Definition at line 58 of file types_conversion.hpp.

◆ to_vector3d() [1/2]

Utils::Vector3d walberla::to_vector3d ( Vector3< double > const &  v)
inline

Definition at line 54 of file types_conversion.hpp.

◆ to_vector3d() [2/2]

◆ to_vector9d() [1/2]

◆ to_vector9d() [2/2]

Utils::VectorXd< 9 > walberla::to_vector9d ( Matrix3< float > const &  m)
inline

Definition at line 66 of file types_conversion.hpp.

◆ walberla2es() [1/3]

template<typename T >
T walberla::walberla2es ( v)
inline

Definition at line 42 of file types_conversion.hpp.

◆ walberla2es() [2/3]

Utils::Vector3d walberla::walberla2es ( Vector3< double > const  v)
inline

Definition at line 46 of file types_conversion.hpp.

◆ walberla2es() [3/3]

Utils::Vector3d walberla::walberla2es ( Vector3< float > const  v)
inline

Definition at line 43 of file types_conversion.hpp.