<div dir="ltr"><div><div>Hi, there<br><br></div>From the error message below I am sure I configured PETSc with superLU and superLU-DIST. However, it told me there's no such package.<br></div>Or, is mpiaij not compatible with superlu? According to the manual, I think it should be compatible with it. Thanks a lot.<br>
<div><div><br><div>[0]PETSC ERROR: --------------------- Error Message ------------------------------------<br>[0]PETSC ERROR: No support for this operation for this object type!<br>[0]PETSC ERROR: Matrix format mpiaij does not have a solver package superlu for LU. Perhaps you must ./configure with --download-superlu!<br>
[0]PETSC ERROR: ------------------------------------------------------------------------<br>[0]PETSC ERROR: Petsc Release Version 3.4.4, Mar, 13, 2014 <br>[0]PETSC ERROR: See docs/changes/index.html for recent updates.<br>
[0]PETSC ERROR: See docs/faq.html for hints about trouble shooting.<br>[0]PETSC ERROR: See docs/index.html for manual pages.<br>[0]PETSC ERROR: ------------------------------------------------------------------------<br>[0]PETSC ERROR: Unknown Name on a arch-linux2-c-debug named altria-Aspire-5830TG by root Tue May 13 14:53:33 2014<br>
[0]PETSC ERROR: Libraries linked from /home/altria/software/petsc-3.4.4/arch-linux2-c-debug/lib<br>[0]PETSC ERROR: Configure run at Tue May 13 14:43:13 2014<br>[0]PETSC ERROR: Configure options --with-cc=gcc --with-fc=gfortran --with-cxx=g++ --download-mpich --download-scalapack --download-metis --download-parmetis --download-mumps --download-PASTIX --download-superLU --download-superLU-dist --with-scalar-type=complex --with-clanguage=cxx<br>
<br></div><div>My code<br><br> input(Ap,Ai,Ax,Az,size,nz); //Process input<br> MatSetOption(A,MAT_NEW_NONZERO_ALLOCATION_ERR, PETSC_FALSE);<br> EPSCreate( PETSC_COMM_WORLD, &eps ); //Setup Solver<br>
EPSSetOperators(eps,A,NULL);<br> EPSSetProblemType(eps,EPS_NHEP);<br> EPSSetDimensions(eps,1,6,0);<br> EPSSetType(eps,type);<br> EPSSetTarget(eps,offset); <br> EPSSetWhichEigenpairs(eps,EPS_TARGET_REAL); //Set Target<br>
<br><br> //EPSSetExtraction(eps,EPS_HARMONIC);<br> EPSGetST(eps,&st); //shift-and-invert<br> STSetType(st,STSINVERT);<br> STSetShift(st,offset);<br> STGetKSP(st,&ksp);<br> KSPSetType(ksp,KSPPREONLY);<br>
KSPGetPC(ksp,&pc);<br> PCSetType(pc,PCLU);<br> PCFactorSetMatSolverPackage(pc,MATSOLVERSUPERLU);<br> EPSSolve(eps);<br> EPSGetConverged(eps,&nconv);<br><br><br></div><div>Function input<br><br>MatCreate(PETSC_COMM_WORLD,&A);<br>
MatSetType(A,MATMPIAIJ);<br> MatSetSizes(A,PETSC_DECIDE, PETSC_DECIDE,size,size); <br> MatMPIAIJSetPreallocationCSR(A,Ap,Ai,temp);<br> MatAssemblyBegin(A,MAT_FINAL_ASSEMBLY);<br> MatAssemblyEnd(A,MAT_FINAL_ASSEMBLY);<br>
<br><br><br></div><div>Guoxi<br></div><div><br></div></div></div></div>