|
[Sponsors] |
Recovering the original Matrix from lduMatrix and using it in a thirdparty solver |
|
LinkBack | Thread Tools | Search this Thread | Display Modes |
March 8, 2016, 23:59 |
Recovering the original Matrix from lduMatrix and using it in a thirdparty solver
|
#1 |
New Member
Thilina Rathnayake
Join Date: Jan 2016
Posts: 3
Rep Power: 10 |
Dear Foamers,
I am new to OpenFOAM and have been playing with it for sometime. I am working on linear solvers and want to see whether I can get a speedup after porting them to run on a GPU. I read the following Forum posts and know how to get the matrix A from its ldu representation. http://www.cfd-online.com/Forums/ope...ldumatrix.html http://www.cfd-online.com/Forums/ope...fficients.html http://www.cfd-online.com/Forums/ope...ddressing.html http://www.cfd-online.com/Forums/ope...m-solvers.html Is it correct to feed this recovered matrix and `source` to a separate linear system solver library for solving the system? I am worried about the variables `interfaceBouCoeffs`, `interfaceIntCoeffs` and `interfaces` in `lduMatrix::solver` class. What do they represent and How should I use them when recovering the original matrix from the ldu representation? |
|
March 9, 2016, 05:27 |
|
#2 | |
Senior Member
|
Hi,
Maybe this is off topic, but did you check: Symscape's ofgpu[1] and their OpenFOAM 2.2.x patch[2]? They convert lduMatrix for solution on GPU. Quote:
1. http://www.symscape.com/gpu-1-1-openfoam, http://www.symscape.com/files/articl...fgpu-1-1-0.tgz 2.http://www.symscape.com/openfoam-2-2-x-on-windows, http://www.symscape.com/files/articl...-2-x.patch.zip |
||
March 10, 2016, 09:11 |
|
#3 |
New Member
Thilina Rathnayake
Join Date: Jan 2016
Posts: 3
Rep Power: 10 |
Hi alexeym,
Thank you very much for the reply. I checked those and also one of my friends pointed out that this can be done by creating a LU Matrix out of the lduMatrix. See the following link: https://github.com/OpenFOAM/OpenFOAM...GSolver.C#L265 |
|
Tags |
ldumatrix, linear solvers |
|
|