Re: [petsc-users] MUMPS Error 'INFOG(1)=-3 INFO(2)=3' (SPARSE MATRIX INVERSE)

2023-07-27 Thread Pierre Jolivet
MUMPS errors are documented in section 8 of 
https://mumps-solver.org/doc/userguide_5.6.1.pdf

Thanks,
Pierre

> On 27 Jul 2023, at 3:50 PM, maitri ksh  wrote:
> 
> I am using 'MatMumpsGetInverse()' to get the inverse of a sparse matrix. I am 
> using parts of ex214.c 
> 
>  code to get the inverse, but I get an error that seems to be coming from 
> MUMPS-library. Any suggestions?
> 
> ERROR:
> [0]PETSC ERROR: - Error Message 
> --
> [0]PETSC ERROR: Error in external library
> [0]PETSC ERROR: Error reported by MUMPS in solve phase: INFOG(1)=-3 INFO(2)=3
> [0]PETSC ERROR: See https://petsc.org/release/faq/ for trouble shooting.
> [0]PETSC ERROR: Petsc Release Version 3.19.3, unknown
> [0]PETSC ERROR: ./MatInv_MUMPS on a arch-linux-c-debug named LAPTOP-0CP4FI1T 
> by maitri Thu Jul 27 16:35:02 2023
> [0]PETSC ERROR: Configure options --with-cc=gcc --with-cxx=g++ 
> --with-fc=gfortran --download-mpich --download-fblaslapack --with-matlab 
> --with-matlab-dir=/usr/local/MATLAB/R2022a --download-hdf5 --with-hdf5=1 
> --download-mumps --download-scalapack --download-parmetis --download-metis 
> --download-ptscotch --download-bison --download-cmake
> [0]PETSC ERROR: #1 MatMumpsGetInverse_MUMPS() at 
> /home/maitri/petsc/src/mat/impls/aij/mpi/mumps/mumps.c:2720
> [0]PETSC ERROR: #2 MatMumpsGetInverse() at 
> /home/maitri/petsc/src/mat/impls/aij/mpi/mumps/mumps.c:2753
> [0]PETSC ERROR: #3 main() at MatInv_MUMPS.c:74
> [0]PETSC ERROR: No PETSc Option Table entries
> [0]PETSC ERROR: End of Error Message ---send entire error 
> message to petsc-ma...@mcs.anl.gov--
> application called MPI_Abort(MPI_COMM_SELF, 76) - process 0
> [unset]: PMIU_write error; fd=-1 buf=:cmd=abort exitcode=76 
> message=application called MPI_Abort(MPI_COMM_SELF, 76) - process 0
> :
> system msg for write_line failure : Bad file descriptor
> 
> 
> Maitri
> 



[petsc-users] MUMPS Error 'INFOG(1)=-3 INFO(2)=3' (SPARSE MATRIX INVERSE)

2023-07-27 Thread maitri ksh
I am using 'MatMumpsGetInverse()' to get the inverse of a sparse matrix. I
am using parts of ex214.c

code
to get the inverse, but I get an error that seems to be coming from
MUMPS-library. Any suggestions?

ERROR:
[0]PETSC ERROR: - Error Message
--
[0]PETSC ERROR: Error in external library
[0]PETSC ERROR: Error reported by MUMPS in solve phase: INFOG(1)=-3
INFO(2)=3
[0]PETSC ERROR: See https://petsc.org/release/faq/ for trouble shooting.
[0]PETSC ERROR: Petsc Release Version 3.19.3, unknown
[0]PETSC ERROR: ./MatInv_MUMPS on a arch-linux-c-debug named
LAPTOP-0CP4FI1T by maitri Thu Jul 27 16:35:02 2023
[0]PETSC ERROR: Configure options --with-cc=gcc --with-cxx=g++
--with-fc=gfortran --download-mpich --download-fblaslapack --with-matlab
--with-matlab-dir=/usr/local/MATLAB/R2022a --download-hdf5 --with-hdf5=1
--download-mumps --download-scalapack --download-parmetis --download-metis
--download-ptscotch --download-bison --download-cmake
[0]PETSC ERROR: #1 MatMumpsGetInverse_MUMPS() at
/home/maitri/petsc/src/mat/impls/aij/mpi/mumps/mumps.c:2720
[0]PETSC ERROR: #2 MatMumpsGetInverse() at
/home/maitri/petsc/src/mat/impls/aij/mpi/mumps/mumps.c:2753
[0]PETSC ERROR: #3 main() at MatInv_MUMPS.c:74
[0]PETSC ERROR: No PETSc Option Table entries
[0]PETSC ERROR: End of Error Message ---send entire
error message to petsc-ma...@mcs.anl.gov--
application called MPI_Abort(MPI_COMM_SELF, 76) - process 0
[unset]: PMIU_write error; fd=-1 buf=:cmd=abort exitcode=76
message=application called MPI_Abort(MPI_COMM_SELF, 76) - process 0
:
system msg for write_line failure : Bad file descriptor


Maitri
maitri@LAPTOP-0CP4FI1T:~/my_executables$ ./MatInv_MUMPS
using LU factorization
[0]PETSC ERROR: - Error Message 
--
[0]PETSC ERROR: Error in external library
[0]PETSC ERROR: Error reported by MUMPS in solve phase: INFOG(1)=-3 INFO(2)=3
[0]PETSC ERROR: See https://petsc.org/release/faq/ for trouble shooting.
[0]PETSC ERROR: Petsc Release Version 3.19.3, unknown
[0]PETSC ERROR: ./MatInv_MUMPS on a arch-linux-c-debug named LAPTOP-0CP4FI1T by 
maitri Thu Jul 27 16:35:02 2023
[0]PETSC ERROR: Configure options --with-cc=gcc --with-cxx=g++ 
--with-fc=gfortran --download-mpich --download-fblaslapack --with-matlab 
--with-matlab-dir=/usr/local/MATLAB/R2022a --download-hdf5 --with-hdf5=1 
--download-mumps --download-scalapack --download-parmetis --download-metis 
--download-ptscotch --download-bison --download-cmake
[0]PETSC ERROR: #1 MatMumpsGetInverse_MUMPS() at 
/home/maitri/petsc/src/mat/impls/aij/mpi/mumps/mumps.c:2720
[0]PETSC ERROR: #2 MatMumpsGetInverse() at 
/home/maitri/petsc/src/mat/impls/aij/mpi/mumps/mumps.c:2753
[0]PETSC ERROR: #3 main() at MatInv_MUMPS.c:74
[0]PETSC ERROR: No PETSc Option Table entries
[0]PETSC ERROR: End of Error Message ---send entire error 
message to petsc-ma...@mcs.anl.gov--
application called MPI_Abort(MPI_COMM_SELF, 76) - process 0
[unset]: PMIU_write error; fd=-1 buf=:cmd=abort exitcode=76 message=application 
called MPI_Abort(MPI_COMM_SELF, 76) - process 0
:
system msg for write_line failure : Bad file descriptor#include 
#include 

int main(int argc,char **args)
{
  PetscErrorCode ierr;
  PetscMPIIntsize,rank;
  MatA,F,X,spRHST;
  PetscInt   m,n,nrhs,M,N,i,test;
  PetscScalarv;
  PetscReal  norm,tol=PETSC_SQRT_MACHINE_EPSILON;
  PetscRandomrand;
  PetscBool  displ=PETSC_FALSE;
 
  ierr = PetscInitialize(, , NULL, NULL);if (ierr) return ierr;
  ierr = MPI_Comm_size(PETSC_COMM_WORLD,);CHKERRQ(ierr);
  ierr = MPI_Comm_rank(PETSC_COMM_WORLD,);CHKERRQ(ierr);
  ierr = PetscOptionsGetBool(NULL,NULL,"-displ",,NULL);CHKERRQ(ierr);

  /* Load matrix A */
  PetscViewer viewerA;
  ierr = PetscViewerBinaryOpen(PETSC_COMM_WORLD, "A1.petsc", FILE_MODE_READ, 
);CHKERRQ(ierr);
  ierr = MatCreate(PETSC_COMM_WORLD, );CHKERRQ(ierr);
  ierr = MatLoad(A, viewerA);CHKERRQ(ierr);
  ierr = PetscViewerDestroy();CHKERRQ(ierr);
  ierr = MatGetLocalSize(A,,);CHKERRQ(ierr);
  ierr = MatGetSize(A,,);CHKERRQ(ierr);
  if (m != n) SETERRQ(PETSC_COMM_SELF,PETSC_ERR_ARG_SIZ, "The matrix is not 
square (%d, %d)", m, n);

  /* Create dense matrix X */
  nrhs = N;
  ierr = PetscOptionsGetInt(NULL,NULL,"-nrhs",,NULL);CHKERRQ(ierr);
  ierr = MatCreate(PETSC_COMM_WORLD, );CHKERRQ(ierr);
  ierr = MatSetSizes(X, m, PETSC_DECIDE, PETSC_DECIDE, nrhs);CHKERRQ(ierr);
  ierr = MatSetType(X, MATDENSE);CHKERRQ(ierr);
  ierr = MatSetFromOptions(X);CHKERRQ(ierr);
  ierr = MatSetUp(X);CHKERRQ(ierr);
  ierr = PetscRandomCreate(PETSC_COMM_WORLD,);CHKERRQ(ierr);
  ierr = PetscRandomSetFromOptions(rand);CHKERRQ(ierr);
  ierr = MatSetRandom(X,rand);CHKERRQ(ierr);

  // factorise 'A' using LU Factorization