So you want to have a parallel linear? solver and the rest of the code including Jacobian generation sequential?
Barry > On Apr 12, 2018, at 2:32 PM, Klaus Burkart <k_burk...@yahoo.com> wrote: > > Are your matrix entries stored in parallel or is your current code that > generates the rows, columns, and values sequential. > > >> The three arrays are the result of a matrix format conversion to CSR > >> format in my cfd application interface, the code is sequential. > > > Does your matrix have a pointwise-block structure (like from having > multiple degrees of freedom per grid point) or is it a scalar PDE? If scalar > than you use AIJ matrices if point wise-block structure then use BAIJ. If > symmetric than use SBAIJ. > > >> I assume it's a case for AIJ > > > How are your matrix entries generated? Via the finite element method, finite > differences, something else? Is there a mesh, how do you handle the mesh? > > >> Via finite volume, yes there is a mesh but I am only replacing the matrix > >> solver (as I've done with another LA library before) afterwards returning > >> the solution vector to the application where all the other steps are > >> handled > > Klaus > > > Am Donnerstag, 12. April 2018, 21:10:12 MESZ hat Smith, Barry F. > <bsm...@mcs.anl.gov> Folgendes geschrieben: > > > > Are your matrix entries stored in parallel or is your current code that > generates the rows, columns, and values sequential. > > Does your matrix have a pointwise-block structure (like from having > multiple degrees of freedom per grid point) or is it a scalar PDE? If scalar > than you use AIJ matrices if point wise-block structure then use BAIJ. If > symmetric than use SBAIJ. > > How are your matrix entries generated? Via the finite element method, > finite differences, something else? Is there a mesh, how do you handle the > mesh? > > Barry > > > > On Apr 12, 2018, at 1:54 PM, Klaus Burkart <k_burk...@yahoo.com> wrote: > > > > I am confused with matrix object types and which one to use in my case: > > > > > > I want to solve a linear system using multiple processes. The steps I am > > struggling with is the import of the global matrix and global rhs vector > > into applicable PETSc objects. > > > > The global matrix is currently stored in CSR format using 3 arrays. Array > > one contains all the row indices, array two all the column indices, array > > three all the values of the global matrix. In addition to that, there's a > > vector object containing the rhs vector. > > > > I think for the vector object I should use VectorCreateMPI with m set to > > PETSC_DECIDE? > > > > > > What's the matrix object I should use in my case which also takes care of > > the allocation local matrices to the processes at a later stage i.e. > > creates the local matrices in line with the rhs vector? > > > > Klaus