Re: [petsc-users] Nullspaces for schur complement PCs

2014-11-12 Thread Lawrence Mitchell
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 On 11/11/14 15:18, Jed Brown wrote: ... Matt and I have a long-running disagreement about nullspace handling in PETSc. He added the code that hangs it on an IS despite it not logically belonging on IS, simply because the implementation in

[petsc-users] Extract subsection of DMDA

2014-11-12 Thread Christopher Thiele
Hello, I have a 3d DMDA and a vector created by DMCreateGlobalVector. I want to visualize and therefore export a subset of the values, i.e. I want to remove some points at the boundary. For example, if the DMDA represents the domain [0,1]^3, I want to extract [0.25,0.75]^3. I already tried to

Re: [petsc-users] Extract subsection of DMDA

2014-11-12 Thread Matthew Knepley
On Wed, Nov 12, 2014 at 9:56 AM, Christopher Thiele christopher.thi...@itwm.fraunhofer.de wrote: Hello, I have a 3d DMDA and a vector created by DMCreateGlobalVector. I want to visualize and therefore export a subset of the values, i.e. I want to remove some points at the boundary. For

[petsc-users] Setting up MPIBAIJ for MatMult

2014-11-12 Thread Steena M
I am trying to read in a sparse matrix file in binary format (.dat file) to set it up as MPIBAIJ for MPIMatMult. I don't think I'm doing the file reading or the matrix and vector setup correctly. Should the file loading, matrix setup, and loading be done only on rank 0 together with the vector

Re: [petsc-users] Setting up MPIBAIJ for MatMult

2014-11-12 Thread Barry Smith
1) remove all the preload stuff 2) MatLoad doesn't require or use the Mat preallocation stuff so remove all of that 3) MatLoad determines the global matrix size from the binary file so do not set that before calling MatLoad 4) All processes in the comm (in your case MPI_COMM_WORLD)

[petsc-users] Nonconforming object sizes ERROR

2014-11-12 Thread Brian Yang
Hi, I am solving an over-determined linear system Ax=b and b=0. A size: 296856 x 14430 x (non-zero guess): 14430 b (zero): 296856 All of them are using seq mode to create, so one node will solve this. However I got this error: [0]PETSC ERROR: Nonconforming object sizes! [0]PETSC ERROR: Mat

Re: [petsc-users] Nonconforming object sizes ERROR

2014-11-12 Thread Barry Smith
The calling sequence for KSPSolve is KSPSolve(KSP ksp,Vec b,Vec x), perhaps you have the b and the x backwards in your call? Barry On Nov 12, 2014, at 2:23 PM, Brian Yang brianyang1...@gmail.com wrote: Hi, I am solving an over-determined linear system Ax=b and b=0. A size:

Re: [petsc-users] Nonconforming object sizes ERROR

2014-11-12 Thread Brian Yang
Thank you for the prompt response. I checked and my usage of KSPSolve is correct. Besides, the assertion line is: if (*mat-rmap-N* != *y-map-N*) SETERRQ2(PETSC_COMM_SELF,PETSC_ERR_ARG_SIZ,Mat mat,Vec y: global dim %D %D,mat-rmap-N,y-map-N); On Wed, Nov 12, 2014 at 2:29 PM, Barry Smith

Re: [petsc-users] Nonconforming object sizes ERROR

2014-11-12 Thread Barry Smith
Oh, right CG only works for square matrices. I think you should be using lsqr. See http://www.mcs.anl.gov/petsc/petsc-current/docs/manualpages/KSP/KSPLSQR.html Note if you want to use preconditioning you need to pass for the second matrix the product of the transpose of the matrix times

Re: [petsc-users] Nonconforming object sizes ERROR

2014-11-12 Thread Brian Yang
Wow, it works... LSQR is fine with the problem. Thanks! On Wed, Nov 12, 2014 at 3:06 PM, Barry Smith bsm...@mcs.anl.gov wrote: Oh, right CG only works for square matrices. I think you should be using lsqr. See http://www.mcs.anl.gov/petsc/petsc-current/docs/manualpages/KSP/KSPLSQR.html

Re: [petsc-users] Extract subsection of DMDA

2014-11-12 Thread thiele
Thanks for your reply. I thought about changing the constructor parameters, too, but I found it rather complicated and it exceeds my current PETSc knowledge. So maybe you are right and I should use the visualization tool if there is no other way to do it with PETSc. Regards, Christopher On

[petsc-users] Inserting nonlocal values in DMDA vector

2014-11-12 Thread Ghosh, Swarnava
Hello, I have a DMDA vector and I need to set values in locations which are in different processors. I am going over the mesh points in z,y and x directions so I know the k,j,i indices of every point. However the 3D array obtained using DMDAVecGetArray will not let me access the points

Re: [petsc-users] Inserting nonlocal values in DMDA vector

2014-11-12 Thread Barry Smith
On Nov 12, 2014, at 3:48 PM, Ghosh, Swarnava sghosh2...@gatech.edu wrote: Hello, I have a DMDA vector and I need to set values in locations which are in different processors. I am going over the mesh points in z,y and x directions so I know the k,j,i indices of every point.

Re: [petsc-users] passing solver options in fieldsplit

2014-11-12 Thread Luc Berger-Vergiat
Thanks, the option -help was quite useful and I got things to work fine with icntl_14 50. Best, Luc On 11/11/2014 11:07 AM, Hong wrote: Luc: Run your code with option '-help |grep mumps', then you'll see what prefix should be used in your case with the mumps option '-mat_mumps_icntl_14

Re: [petsc-users] Setting up MPIBAIJ for MatMult

2014-11-12 Thread Steena M
Thank you, Barry. That took care of most of the issues. Two more things: 1) The code runs (MatMult executes) for block size =1. For block sizes 1. For instance, block size = 3, throws: PETSC ERROR: Arguments are incompatible! [0]PETSC ERROR: Cannot change block size 3 to 1! Matrix setup:

Re: [petsc-users] Nullspaces for schur complement PCs

2014-11-12 Thread Jed Brown
Lawrence Mitchell lawrence.mitch...@imperial.ac.uk writes: So is the problem that the nullspace belongs to the appropriate operator, but at the point you tell the solver, you don't necessarily have all the operators to hand? Moreover, depending on the PC choice, the nullspaces of the operator

Re: [petsc-users] Nullspaces for schur complement PCs

2014-11-12 Thread Barry Smith
I agree with what Jed says. One could argue that if the matrix was represented as a MatNest, the null space of the Schur complement is a property of the MatNest object and hence could/should be something that is attached to the matrix. Now if the Mat happens not to be a MatNest, the null

Re: [petsc-users] Nullspaces for schur complement PCs

2014-11-12 Thread Jed Brown
Barry Smith bsm...@mcs.anl.gov writes: Perhaps we need a generic way of attaching null spaces to parts of matrices and to parts of matrices in different basis (which is what a Schur complement is). So (and this is likely overly simplistic) one could supply a null space, an index

Re: [petsc-users] Nullspaces for schur complement PCs

2014-11-12 Thread Barry Smith
On Nov 12, 2014, at 7:49 PM, Jed Brown j...@jedbrown.org wrote: Barry Smith bsm...@mcs.anl.gov writes: Perhaps we need a generic way of attaching null spaces to parts of matrices and to parts of matrices in different basis (which is what a Schur complement is). So (and this is likely

Re: [petsc-users] Nullspaces for schur complement PCs

2014-11-12 Thread Jed Brown
Barry Smith bsm...@mcs.anl.gov writes: Indeed it could. Perhaps we could start by unifying the concept of a sub matrix and a Schur complement of the same part of the matrix? I'm not sure how to do that. We can certainly define an interface that works this way, but I'm not sure it's

Re: [petsc-users] Nullspaces for schur complement PCs

2014-11-12 Thread Dmitry Karpeyev
On Wed Nov 12 2014 at 7:49:28 PM Jed Brown j...@jedbrown.org wrote: Barry Smith bsm...@mcs.anl.gov writes: Perhaps we need a generic way of attaching null spaces to parts of matrices and to parts of matrices in different basis (which is what a Schur complement is). So (and this is

Re: [petsc-users] Setting up MPIBAIJ for MatMult

2014-11-12 Thread Barry Smith
Ok, for now run with the additional command line option -matload_block_size 3 and I'll fix the code to take the size in the matrix. Barry On Nov 12, 2014, at 6:48 PM, Steena M stm8...@yahoo.com wrote: Thank you, Barry. That took care of most of the issues. Two more things: 1) The

Re: [petsc-users] Nullspaces for schur complement PCs

2014-11-12 Thread Jed Brown
Dmitry Karpeyev karp...@mcs.anl.gov writes: I think the problem-specific solver configuration can be carried out by an additional user-specified callback (attached, e.g., using PCSetUserSetUp()) called from PCSetUp(). The problem of propagating it down the hierarchy can be solved by using DMs