Classes | Namespaces | Functions
two_d_poisson_compare_solvers.cc File Reference

Go to the source code of this file.

Classes

class  PoissonProblem< ELEMENT >
 2D Poisson problem on rectangular domain, discretised with 2D QPoisson elements. The specific type of element is specified via the template parameter. More...
 

Namespaces

 TanhSolnForPoisson
 Namespace for exact solution for Poisson equation with "sharp step".
 

Functions

void TanhSolnForPoisson::get_exact_u (const Vector< double > &x, Vector< double > &u)
 Exact solution as a Vector. More...
 
void TanhSolnForPoisson::get_source (const Vector< double > &x, double &source)
 Source function required to make the solution above an exact solution. More...
 
void run (const string &dir_name, LinearSolver *linear_solver_pt, const unsigned nel_1d, bool mess_up_order)
 Build and run problem with specified linear solver. Also pass flag to specify if order of elements should be messed up. nel_1d is the number of elements along the 1D mesh edge. Total number of elements is nel_1d x nel_1d. More...
 
int main ()
 Driver code for 2D Poisson problem – compare different solvers. More...
 

Function Documentation

◆ main()

int main ( )

Driver code for 2D Poisson problem – compare different solvers.

Use SuperLU with compressed row storage

Use compressed row storage

Switch on full doc

Use SuperLU with compressed column storage

Use compressed row storage

Switch on full doc

Use HSL frontal solver MA42 without element re-ordering

Switch on full doc

Use HSL frontal solver MA42 with element reordering by Sloan's algorithm

Switch on full doc

Switch on re-ordering

Use dense matrix LU decomposition

Use dense matrix LU decomposition

Definition at line 385 of file two_d_poisson_compare_solvers.cc.

References run().

◆ run()

void run ( const string &  dir_name,
LinearSolver *  linear_solver_pt,
const unsigned  nel_1d,
bool  mess_up_order 
)

Build and run problem with specified linear solver. Also pass flag to specify if order of elements should be messed up. nel_1d is the number of elements along the 1D mesh edge. Total number of elements is nel_1d x nel_1d.

Set linear solver:

Definition at line 317 of file two_d_poisson_compare_solvers.cc.

References TanhSolnForPoisson::Alpha, PoissonProblem< ELEMENT >::doc_solution(), TanhSolnForPoisson::get_source(), and TanhSolnForPoisson::TanPhi.

Referenced by main().