copied the templates
This commit is contained in:
commit
46636593b5
63 changed files with 570970 additions and 0 deletions
24
mgrid_2/README.md
Normal file
24
mgrid_2/README.md
Normal file
|
|
@ -0,0 +1,24 @@
|
|||
# gmgrid: Geometric multigrid on CPU (OpenMP)
|
||||
|
||||
### Status on 2025-May-14
|
||||
- The multigrid part is deactivated via `*#undef MG` in *main.cpp* and so only a simple Jacobi iteration is performed as solver.
|
||||
- `make run`
|
||||
- or `main.GCC_ levels` with number of `levels` in [0,7].
|
||||
|
||||
### Data structures/implementation for GPU
|
||||
- use data structures from cg_2:Framework for preconditioned solvers on GPU and CPU
|
||||
- suggested: class vec from vdop_gpu.h
|
||||
- suggested: class CRS_Matrix_GPU from crsmatrix_gpu.h
|
||||
- use cuBLAS, cuSPARSE and more libraries whenever possible.
|
||||
|
||||
### current code structure
|
||||
- *main.cpp*
|
||||
- *binaryIO.cpp* : reads CRS matrix and vector from files
|
||||
- *vdop.cpp* : some basic vector operations on CPU, also in *utils.h*
|
||||
- *geom.cpp* : reads the coarse geometry, performes mesh handling and includes mesh hierarchy
|
||||
- *getmatrix.cpp* : compressed row storage matrix and its generation from a 2D mesh
|
||||
- *cuthill_mckee_ordering.cpp* : graph reordering to minimize the bandwidth
|
||||
- *jacsolve.cpp* : Jacobi solver/smoother for a linear system of equations with CRS matrix; multigrid solver
|
||||
- *elements.cpp* : more general elements - experimental. Try with *el_main.cpp*
|
||||
- *generateCRS.cpp* : Reads mesh files and generates files output with stiffness matrix (Laplace) and right hand side.
|
||||
|
||||
Loading…
Add table
Add a link
Reference in a new issue