WaveBEM: Unsteady Nonlinear Potential Flow Solver for Ship-Wave Interaction.
BEMFMA< dim > Class Template Reference

#include <bem_fma.h>

Public Types

typedef DoFHandler< dim-1, dim >::active_cell_iterator cell_it
 

Public Member Functions

 BEMFMA (ComputationalDomain< dim > &comp_dom)
 
void declare_parameters (ParameterHandler &prm)
 
void parse_parameters (ParameterHandler &prm)
 
void direct_integrals ()
 
void multipole_integrals ()
 
void generate_multipole_expansions (const Vector< double > &phi_values, const Vector< double > &dphi_dn_values) const
 
void multipole_matr_vect_products (const Vector< double > &phi_values, const Vector< double > &dphi_dn_values, Vector< double > &matrVectProdN, Vector< double > &matrVectProdD) const
 
SparseDirectUMFPACKFMA_preconditioner (const Vector< double > &alpha)
 

Private Attributes

ComputationalDomain< dim > & comp_dom
 
unsigned int trunc_order
 
SparsityPattern prec_sparsity_pattern
 
SparseMatrix< double > prec_neumann_matrix
 
SparseMatrix< double > prec_dirichlet_matrix
 
SparseMatrix< double > preconditioner
 
std::map< unsigned int, std::map< cell_it, std::vector< MultipoleExpansion > > > elemMultipoleExpansionsKer1
 
std::map< unsigned int, std::map< cell_it, std::vector< MultipoleExpansion > > > elemMultipoleExpansionsKer2
 
std::vector< MultipoleExpansionblockMultipoleExpansionsKer1
 
std::vector< MultipoleExpansionblockMultipoleExpansionsKer2
 
std::vector< LocalExpansionblockLocalExpansionsKer1
 
std::vector< LocalExpansionblockLocalExpansionsKer2
 
AssLegFunction assLegFunction
 
SparseDirectUMFPACK inv
 

Detailed Description

template<int dim>
class BEMFMA< dim >

Definition at line 45 of file bem_fma.h.

Member Typedef Documentation

template<int dim>
typedef DoFHandler<dim-1,dim>::active_cell_iterator BEMFMA< dim >::cell_it

Definition at line 50 of file bem_fma.h.

Constructor & Destructor Documentation

template<int dim>
BEMFMA< dim >::BEMFMA ( ComputationalDomain< dim > &  comp_dom)

Definition at line 23 of file bem_fma.cc.

Member Function Documentation

template<int dim>
void BEMFMA< dim >::declare_parameters ( ParameterHandler prm)

Definition at line 30 of file bem_fma.cc.

template<int dim>
void BEMFMA< dim >::direct_integrals ( )

Definition at line 56 of file bem_fma.cc.

template<int dim>
SparseDirectUMFPACK & BEMFMA< dim >::FMA_preconditioner ( const Vector< double > &  alpha)

Definition at line 1100 of file bem_fma.cc.

template<int dim>
void BEMFMA< dim >::generate_multipole_expansions ( const Vector< double > &  phi_values,
const Vector< double > &  dphi_dn_values 
) const

Definition at line 767 of file bem_fma.cc.

template<int dim>
void BEMFMA< dim >::multipole_integrals ( )

Definition at line 663 of file bem_fma.cc.

template<int dim>
void BEMFMA< dim >::multipole_matr_vect_products ( const Vector< double > &  phi_values,
const Vector< double > &  dphi_dn_values,
Vector< double > &  matrVectProdN,
Vector< double > &  matrVectProdD 
) const

Definition at line 886 of file bem_fma.cc.

template<int dim>
void BEMFMA< dim >::parse_parameters ( ParameterHandler prm)

Definition at line 42 of file bem_fma.cc.

Member Data Documentation

template<int dim>
AssLegFunction BEMFMA< dim >::assLegFunction
private

Definition at line 188 of file bem_fma.h.

template<int dim>
std::vector<LocalExpansion > BEMFMA< dim >::blockLocalExpansionsKer1
mutableprivate

Definition at line 178 of file bem_fma.h.

template<int dim>
std::vector<LocalExpansion > BEMFMA< dim >::blockLocalExpansionsKer2
mutableprivate

Definition at line 184 of file bem_fma.h.

template<int dim>
std::vector<MultipoleExpansion > BEMFMA< dim >::blockMultipoleExpansionsKer1
mutableprivate

Definition at line 166 of file bem_fma.h.

template<int dim>
std::vector<MultipoleExpansion > BEMFMA< dim >::blockMultipoleExpansionsKer2
mutableprivate

Definition at line 172 of file bem_fma.h.

template<int dim>
ComputationalDomain<dim>& BEMFMA< dim >::comp_dom
private

Definition at line 113 of file bem_fma.h.

template<int dim>
std::map<unsigned int, std::map <cell_it, std::vector <MultipoleExpansion > > > BEMFMA< dim >::elemMultipoleExpansionsKer1
mutableprivate

Definition at line 149 of file bem_fma.h.

template<int dim>
std::map<unsigned int, std::map <cell_it, std::vector <MultipoleExpansion > > > BEMFMA< dim >::elemMultipoleExpansionsKer2
mutableprivate

Definition at line 160 of file bem_fma.h.

template<int dim>
SparseDirectUMFPACK BEMFMA< dim >::inv
private

Definition at line 191 of file bem_fma.h.

template<int dim>
SparseMatrix<double> BEMFMA< dim >::prec_dirichlet_matrix
private

Definition at line 135 of file bem_fma.h.

template<int dim>
SparseMatrix<double> BEMFMA< dim >::prec_neumann_matrix
private

Definition at line 129 of file bem_fma.h.

template<int dim>
SparsityPattern BEMFMA< dim >::prec_sparsity_pattern
private

Definition at line 124 of file bem_fma.h.

template<int dim>
SparseMatrix<double> BEMFMA< dim >::preconditioner
private

Definition at line 139 of file bem_fma.h.

template<int dim>
unsigned int BEMFMA< dim >::trunc_order
private

Definition at line 119 of file bem_fma.h.


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