Initial README for examples

development
Cirdans-Home 3 days ago
parent 4ee170f0ec
commit 6e2d61b51e

@ -0,0 +1,69 @@
# Samples
This folder contains several example for the AMG4PSBLAS library. After having compiled (and if needed installed) the library
these example can be compiled and run to become familiar with the use of the library and the preconditioners implemented in it.
## Simple
### pdegen
This folder contains three main examples
- `amg_dexample_ml.f90`
- ``
- ``
#### Example `amg_dexample_ml.f90`
This sample program solves a linear system obtained by discretizing a PDE with Dirichlet boundary conditions. The solver used is **Flexible Conjugate Gradient (FCG)**, coupled with one of the following multi-level preconditioners, as explained in **Section 4.1** of the *AMG4PSBLAS User's and Reference Guide*:
##### Available Preconditioner Choices:
- **Choice = 1** (Default multi-level preconditioner):
V-cycle with decoupled smoothed aggregation, **1 hybrid forward/backward Gauss-Seidel** sweep as pre/post-smoother, and **UMFPACK** as the coarsest-level solver.
*(See Section 4.1, Listing 1)*
- **Choice = 2**:
V-cycle preconditioner with **1 block-Jacobi sweep** (using ILU(0) on the blocks) as pre/post-smoother, and **8 block-Jacobi sweeps** (with ILU(0) on the blocks) as the coarsest-level solver.
*(See Section 4.1, Listing 2)*
- **Choice = 3**:
W-cycle preconditioner based on coupled aggregation relying on **matching**, with:
- Maximum aggregate size of **8**
- Smoothed prolongators
- **2 hybrid forward/backward Gauss-Seidel sweeps** as pre/post-smoother
- A **distributed coarsest matrix**
- Preconditioned **Flexible Conjugate Gradient** as the coarsest-level solver
*(See Section 4.1, Listing 3)*
##### Input Data
The matrix and the right-hand side (RHS) are read from files. If an RHS is not available, a **unit RHS** is set.
#### The PDE Formulation
The PDE is a general second-order equation in **3D**:
\[
- \left( a_1 \frac{d^2 u}{dx^2} + a_2 \frac{d^2 u}{dy^2} + a_3 \frac{d^2 u}{dz^2} \right)
+ \left( b_1 \frac{du}{dx} + b_2 \frac{du}{dy} + b_3 \frac{du}{dz} \right)
+ c u = f
\]
with **Dirichlet boundary conditions**:
\[
u = g
\]
on the unit cube:
\[
0 \leq x,y,z \leq 1
\]
##### Special Case: Laplace Equation
If \( b_1 = b_2 = b_3 = c = 0 \), the PDE reduces to the **Laplace equation**.
##### Computational Domain and Data Distribution
In this sample program:
1. The index space of the **discretized computational domain** is numbered sequentially in a standard way.
2. The corresponding vector is then distributed according to a **BLOCK data distribution**.
Loading…
Cancel
Save