[petsc-users] How rto use multigrid?

Matthew Knepley knepley at gmail.com
Thu Nov 1 08:49:35 CDT 2012


On Thu, Nov 1, 2012 at 9:47 AM, w_ang_temp <w_ang_temp at 163.com> wrote:

> Hello,
>    I have just used the latest version 'petsc-3.3-p4.tar.gz'. The codes
> which are ok under version 'petsc-3.2-p7.tar.gz'
> are not ok now. The error infomation is as follows. So if can I still use
> the original codes without any
> modification and also use multigrid with -pc_type gamg
> -pc_gamg_agg_nsmooths 1.
>    Thanks.
>                                                           Jim
> [0]PETSC ERROR: --------------------- Error Message
> ------------------------------------
> [0]PETSC ERROR: Object is in wrong state!
> [0]PETSC ERROR: Must call MatXXXSetPreallocation() or MatSetUp() on
> argument 1 "mat" before MatGetOwnershipRange()!
>

This says what is wrong. Now you must either preallocate your matrix or
turn of this error using MatSetOption()

   Matt


> [0]PETSC ERROR:
> ------------------------------------------------------------------------
> [0]PETSC ERROR: Petsc Release Version 3.3.0, Patch 4, Fri Oct 26 10:46:51
> CDT 2012
> [0]PETSC ERROR: See docs/changes/index.html for recent updates.
> [0]PETSC ERROR: See docs/faq.html for hints about trouble shooting.
> [0]PETSC ERROR: See docs/index.html for manual pages.
> [0]PETSC ERROR:
> ------------------------------------------------------------------------
> [0]PETSC ERROR: ./ex4f on a arch-linu named ubuntu by ubu Thu Nov  1
> 06:10:23 2012
> [0]PETSC ERROR: Libraries linked from
> /home/ubu/soft/petsc/petsc-3.3-p4/arch-linux2-c-debug/lib
> [0]PETSC ERROR: Configure run at Thu Nov  1 05:54:48 2012
> [0]PETSC ERROR: Configure options --with-mpi-dir=/home/ubu/soft/mpich2/
> --download-f-blas-lapack =1
> [0]PETSC ERROR:
> ------------------------------------------------------------------------
> [0]PETSC ERROR: MatGetOwnershipRange() line 5992 in
> src/mat/interface/matrix.c
> [1]PETSC ERROR: [2]PETSC ERROR: --------------------- Error Message
> ------------------------------------
> [2]PETSC ERROR: Object is in wrong state!
> [2]PETSC ERROR: Must call MatXXXSetPreallocation() or MatSetUp() on
> argument 1 "mat" before MatGetOwnershipRange()!
> [2]PETSC ERROR:
> ------------------------------------------------------------------------
> [2]PETSC ERROR: Petsc Release Version 3.3.0, Patch 4, Fri Oct 26 10:46:51
> CDT 2012
> [2]PETSC ERROR: See docs/changes/index.html for recent updates.
> [2]PETSC ERROR: See docs/faq.html for hints about trouble shooting.
> [2]PETSC ERROR: See docs/index.html for manual pages.
> [2]PETSC ERROR:
> ------------------------------------------------------------------------
> [2]PETSC ERROR: ./ex4f on a arch-linu named ubuntu by ubu Thu Nov  1
> 06:10:23 2012
> [2]PETSC ERROR: Libraries linked from
> /home/ubu/soft/petsc/petsc-3.3-p4/arch-linux2-c-debug/lib
> [2]PETSC ERROR: Configure run at Thu Nov  1 05:54:48 2012
> [2]PETSC ERROR: Configure options --with-mpi-dir=/home/ubu/soft/mpich2/
> --download-f-blas-lapack =1
> [2]PETSC ERROR:
> ------------------------------------------------------------------------
> [2]PETSC ERROR: MatGetOwnershipRange() line 5992 in
> src/mat/interface/matrix.c
> [3]PETSC ERROR: --------------------- Error Message
> ------------------------------------
> [3]PETSC ERROR: Object is in wrong state!
> [3]PETSC ERROR: Must call MatXXXSetPreallocation() or MatSetUp() on
> argument 1 "mat" before MatGetOwnershipRange()!
> [3]PETSC ERROR:
> ------------------------------------------------------------------------
> [3]PETSC ERROR: Petsc Release Version 3.3.0, Patch 4, Fri Oct 26 10:46:51
> CDT 2012
> [3]PETSC ERROR: See docs/changes/index.html for recent updates.
> [3]PETSC ERROR: See docs/faq.html for hints about trouble shooting.
> [3]PETSC ERROR: See docs/index.html for manual pages.
> [3]PETSC ERROR:
> ------------------------------------------------------------------------
> [3]PETSC ERROR: ./ex4f on a arch-linu named ubuntu by ubu Thu Nov  1
> 06:10:23 2012
> [3]PETSC ERROR: Libraries linked from
> /home/ubu/soft/petsc/petsc-3.3-p4/arch-linux2-c-debug/lib
> [3]PETSC ERROR: Configure run at Thu Nov  1 05:54:48 2012
> [3]PETSC ERROR: Configure options --with-mpi-dir=/home/ubu/soft/mpich2/
> --download-f-blas-lapack =1
> [3]PETSC ERROR:
> ------------------------------------------------------------------------
> [3]PETSC ERROR: MatGetOwnershipRange() line 5992 in
> src/mat/interface/matrix.c
> --------------------- Error Message ------------------------------------
> [1]PETSC ERROR: Object is in wrong state!
> [1]PETSC ERROR: Must call MatXXXSetPreallocation() or MatSetUp() on
> argument 1 "mat" before MatGetOwnershipRange()!
> [1]PETSC ERROR:
> ------------------------------------------------------------------------
> [1]PETSC ERROR: Petsc Release Version 3.3.0, Patch 4, Fri Oct 26 10:46:51
> CDT 2012
> [1]PETSC ERROR: See docs/changes/index.html for recent updates.
> [1]PETSC ERROR: See docs/faq.html for hints about trouble shooting.
> [1]PETSC ERROR: See docs/index.html for manual pages.
> [1]PETSC ERROR:
> ------------------------------------------------------------------------
> [1]PETSC ERROR: ./ex4f on a arch-linu named ubuntu by ubu Thu Nov  1
> 06:10:23 2012
> [1]PETSC ERROR: Libraries linked from
> /home/ubu/soft/petsc/petsc-3.3-p4/arch-linux2-c-debug/lib
> [1]PETSC ERROR: Configure run at Thu Nov  1 05:54:48 2012
> [1]PETSC ERROR: Configure options --with-mpi-dir=/home/ubu/soft/mpich2/
> --download-f-blas-lapack =1
> [1]PETSC ERROR:
> ------------------------------------------------------------------------
> [1]PETSC ERROR: MatGetOwnershipRange() line 5992 in
> src/mat/interface/matrix.c
> [1]PETSC ERROR: [2]PETSC ERROR: [3]PETSC ERROR: ---------------------
> Error Message ------------------------------------
> [3]PETSC ERROR: Object is in wrong state!
> [3]PETSC ERROR: Matrix is missing diagonal entry 0!
> [3]PETSC ERROR:
> ------------------------------------------------------------------------
> [3]PETSC ERROR: Petsc Release Version 3.3.0, Patch 4, Fri Oct 26 10:46:51
> CDT 2012
> [3]PETSC ERROR: See docs/changes/index.html for recent updates.
> [3]PETSC ERROR: See docs/faq.html for hints about trouble shooting.
> [3]PETSC ERROR: See docs/index.html for manual pages.
> [3]PETSC ERROR:
> ------------------------------------------------------------------------
> [3]PETSC ERROR: ./ex4f on a arch-linu named ubuntu by ubu Thu Nov  1
> 06:10:23 2012
> [3]PETSC ERROR: Libraries linked from
> /home/ubu/soft/petsc/petsc-3.3-p4/arch-linux2-c-debug/lib
> [3]PETSC ERROR: Configure run at Thu Nov  1 05:54:48 2012
> [3]PETSC ERROR: Configure options --with-mpi-dir=/home/ubu/soft/mpich2/
> --download-f-blas-lapack =1
> [3]PETSC ERROR:
> ------------------------------------------------------------------------
> [3]PETSC ERROR: MatILUFactorSymbolic_SeqAIJ_ilu0() line 1641 in
> src/mat/impls/aij/seq/aijfact.c
> [3]PETSC ERROR: MatILUFactorSymbolic_SeqAIJ() line 1745 in
> src/mat/impls/aij/seq/aijfact.c
> [3]PETSC ERROR: MatILUFactorSymbolic() line 6130 in
> src/mat/interface/matrix.c
> [3]PETSC ERROR: PCSetUp_ILU() line 216 in src/ksp/pc/impls/factor/ilu/ilu.c
> [3]PETSC ERROR: PCSetUp() line 832 in src/ksp/pc/interface/precon.c
> [3]PETSC ERROR: KSPSetUp() line 278 in src/ksp/ksp/interface/itfunc.c
> [3]PETSC ERROR: PCSetUpOnBlocks_BJacobi_Singleblock() line 715 in
> src/ksp/pc/impls/bjacobi/bjacobi.c
> [3]PETSC ERROR: PCSetUpOnBlocks() line 865 in src/ksp/pc/interface/precon.c
> [3]PETSC ERROR: KSPSetUpOnBlocks() line 154 in
> src/ksp/ksp/interface/itfunc.c
> [3]PETSC ERROR: KSPSolve() line 403 in src/ksp/ksp/interface/itfunc.c
> Fatal error in MPI_Send: Invalid count, error stack:
> MPI_Send(173): MPI_Send(buf=0x100, count=-199040697, MPI_REAL, dest=0,
> tag=3, MPI_COMM_WORLD) failed
> MPI_Send(97).: Negative count, value is -199040697
>
>
>
>
>
>
>
>
> >在 2012-10-29 21:57:49,"Mark F. Adams" <mark.adams at columbia.edu> 写道:
>
> >You need an updated PETSc. (I thought 3.2 had an early version of gamg …
> but you need 3.3 or dev)
>
> >Mark
>
>  >On Oct 29, 2012, at 8:49 AM, w_ang_temp <w_ang_temp at 163.com> wrote:
>
>  >Hello, Jed
> >    I use the command:
> >    mpiexec -n 4 ./ex4f -ksp_type cgs -pc_type gamg -pc_gamg_agg_nsmooths
> 1  -ksp_rtol 1.0e-15 -ksp_converged_reason
> >    The error is as follows:
> >[0]PETSC ERROR: --------------------- Error Message
> ------------------------------------
> >[0]PETSC ERROR: Unknown type. Check for miss-spelling or missing external
> package needed for type
> >
> seehttp://www.mcs.anl.gov/petsc/petsc-as/documentation/installation.html#external!
> >[0]PETSC ERROR: Unable to find requested PC type gamg!
> >[0]PETSC ERROR:
> ------------------------------------------------------------------------
> >[0]PETSC ERROR: Petsc Release Version 3.2.0, Patch 7, Thu Mar 15 09:30:51
> CDT 2012
> >[0]PETSC ERROR: See docs/changes/index.html for recent updates.
> >[0]PETSC ERROR: See docs/faq.html for hints about trouble shooting.
> >[0]PETSC ERROR: See docs/index.html for manual pages.
> >[0]PETSC ERROR:
> ------------------------------------------------------------------------
> >[0]PETSC ERROR: ./ex4f on a arch-linu named ubuntu by geo Mon Oct 29
> 05:40:13 2012
> >[0]PETSC ERROR: Libraries linked from /home
> /geo/soft/petsc/petsc-3.2-p7/arch-linux2-c-opt/lib
> >[0]PETSC ERROR: Configure run at Mon Jul  2 20:33:17 2012
> >[0]PETSC ERROR: Configure options --with-mpi-dir=/home/geo/soft/mpich2
> --download-f-blas-lapack=1 --with-x=1 --with-debugging=0
> -->download-parmetis --download-mumps --download-scalapack --download-blacs
> >[0]PETSC ERROR:
> ------------------------------------------------------------------------
> >[0]PETSC ERROR: PCSetType() line 67 in src/ksp/pc/interface/pcset.c
> >[0]PETSC ERROR: PCSetFromOptions() line 184 in
> src/ksp/pc/interface/pcset.c
> >[0]PETSC ERROR: KSPSetFromOptions() line 286 in
> src/ksp/ksp/interface/itcl.c
> >     When I use 'mpiexec -n 4 ./ex4f -ksp_type cgs -pc_type sor -ksp_rtol
> 1.0e-15 -ksp_converged_reason', it is ok. So
> >what is the possible reason?
> >     Thanks.
> >                                                    Jim
>
>
>
>
>
> >>At 2012-10-28 22:25:31,"Jed Brown" <jedbrown at mcs.anl.gov> wrote:
>
> >>Try the simple option I just sent.
> >>On Oct 28, 2012 6:38 AM, "w_ang_temp" <w_ang_temp at 163.com> wrote:
>
>>  >>Hello, Jed
>> >>    Thanks for your timely reply. I deal with the soil-water coupled
>> problem in geotechnical engineering,
>> >>whose stiffness matrix is ill-conditioned. I have did some work about
>> it, mainly finding the effective
>> >>solvers and preconditioners. I used the command line option like this:
>> >>mpiexec -n 4 ./ex4f -ksp_type cgs -pc_type sor -ksp_rtol 1.0e-15
>> -ksp_converged_reason.
>> >>    So, I also want to use the multigrid just like the simple command.
>> There is only a little introduction
>> >>about multigrid in the manual. Multigrid is complex and not a easy
>> thing for me, so I just need to konw how
>> >>to use it simply in PETSc to solve the Ax=b system.
>> >>    Thanks.
>>                                                                Jim
>>
>>
>>
>>
>>
>> >At 2012-10-28 21:17:00,"Jed Brown" <jedbrown at mcs.anl.gov> wrote:
>>
>> >Algebraic multigrid can be used directly, -pc_type gamg
>> -pc_gamg_agg_nsmooths 1. Geometric either required that you use the PCMG
>> interface to set >interpolation (and provide a coarse operator for
>> non-Galerkin) or use a DM that provides coarsening capability.
>>
>> >What kind of problem are you solving?
>> >>On Oct 28, 2012 6:09 AM, "w_ang_temp" <w_ang_temp at 163.com> wrote:
>>
>>>  >>Hello,
>>> >>   I want to use the multigrid as a preconditioner. The introduction
>>> about it in the manual is little.
>>> >>So are there some typical examples or details about multigrid? Is it
>>> used just like other preconditioners
>>> >>like jacobi, sor, which can be simply used in the cammand line options?
>>> >>   Thanks.
>>> >>
>>> Jim
>>>
>>>
>>>
>>
>>
>
>
>
>
>


-- 
What most experimenters take for granted before they begin their
experiments is infinitely more interesting than any results to which their
experiments lead.
-- Norbert Wiener
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mcs.anl.gov/pipermail/petsc-users/attachments/20121101/92e8f8fb/attachment-0001.html>


More information about the petsc-users mailing list