|November 30, 2013, 15:50||
Linear Solver for Particle Methods
Join Date: Mar 2009
Location: Bangalore, India
Posts: 105Rep Power: 9
I am using a particle method to solve a fluid mechanics problem. This involves solving a poisson equation every time step. I have my BiCGSTAB code to solve the linear system. But since the particle configuration changes with time, I have to build a new coefficient matrix for every time step. So, I believe there must be a linear solver library out there that can help me do this efficiently.
I started with LIS (since I wish to use a library that is simple with less dependencies). But the problem is that, since the coeff matrix changes size and sparsity every time step, the sparse matrix build involves lot of reallocation of memory and is costing a lot of computation time. I am unable to use OMP parallelization effectively, for the same reason.
I was told that PetsC has a way to allocate the sparse matrix based on a rough estimate of sparsity, to begin with. Will this help? Are there libraries that can solve my issue and get help me solve the poisson equation reasonably fast?
My code is in C, I use OpenMP. I have plans to write a GPU version too.
|December 2, 2013, 21:03||
Join Date: Mar 2011
Posts: 21Rep Power: 7
How about a multigrid method (Vcycle or FMG)?? after all it's build to solve poisson equation
and it's easily paralizable whether in omp or gpu
|linear solver, particle methods, petsc, reallocation, sparsity|
|Thread||Thread Starter||Forum||Replies||Last Post|
|Edit linear solver||luckycfd||OpenFOAM Programming & Development||32||January 24, 2014 14:28|
|Use "bounded" in scheme or not to use?||immortality||OpenFOAM Pre-Processing||0||June 11, 2013 16:20|
|suitable boundary condition for scavenging process?||immortality||OpenFOAM Running, Solving & CFD||3||January 25, 2013 20:10|
|compressible two phase flow in CFX4.4||youngan||CFX||0||July 1, 2003 23:32|
|solver for linear system with large sparse matrix||Yangang Bao||Main CFD Forum||1||October 25, 1999 04:22|