On Fri, 04 Oct 2013 08:01:47 -0500
Jed Brown <[email protected]> wrote:

> Jan Blechta <[email protected]> writes:
> 
> > Hi Corrado and FEniCS list,
> >
> > I'm just looking onto option of using semi-smooth Newton. It seems
> > being implemented as SNESVINEWTONSSLS [1] in PETSc. As I understand
> > it, it should work without specifying any bounds (letting them
> > +/-INF).
> 
> How are you setting them?

Nowise. Note in [2] says that if you don't call
SNESVISetVariableBoundst then +/-INF are considered.

[2]http://www.mcs.anl.gov/petsc/petsc-current/docs/manualpages/SNES/SNESVISetVariableBounds.html

> Note that there is no point using a
> semi-smooth method without any bounds.  It's just more complicated
> (and much less tested) code without offering anything over the
> unconstrained SNES types.

I see. I'm currently quite confused about a terminology. Is
the semi-smooth Newton method merely the Newton method (with linesearch
bussiness) when used on unconstrained problem?

> 
> > Nevertheless it raises
> >
> > [0]PETSC ERROR: Object is in wrong state!
> > [0]PETSC ERROR: This DM is incapable of computing variable bounds.!
> 
> Please send the ENTIRE error message.

SNES Object: 1 MPI processes
  type: vinewtonssls
  maximum iterations=20, maximum function evaluations=2000
  tolerances: relative=1e-09, absolute=1e-10, solution=1e-16
  total number of linear solver iterations=0
  total number of function evaluations=0
  SNESLineSearch Object:   1 MPI processes
    type: basic
    maxstep=1.000000e+08, minlambda=1.000000e-12
    tolerances: relative=1.000000e-08, absolute=1.000000e-15, 
lambda=1.000000e-08
    maximum iterations=40
  KSP Object:   1 MPI processes
    type: preonly
    maximum iterations=10000, initial guess is zero
    tolerances:  relative=1e-05, absolute=1e-50, divergence=10000
    left preconditioning
    using DEFAULT norm type for convergence test
  PC Object:   1 MPI processes
    type: lu
    PC has not been set up so information may be incomplete
      LU: out-of-place factorization
      tolerance for zero pivot 2.22045e-14
      matrix ordering: nd
    linear system matrix = precond matrix:
    Matrix Object:     1 MPI processes
      type: seqaij
      rows=57540, cols=57540
      total: nonzeros=1896540, allocated nonzeros=1896540
      total number of mallocs used during MatSetValues calls =0
        using I-node routines: found 32917 nodes, limit used is 5
[0]PETSC ERROR: --------------------- Error Message 
------------------------------------
[0]PETSC ERROR: Object is in wrong state!
[0]PETSC ERROR: This DM is incapable of computing variable bounds.!
[0]PETSC ERROR: 
------------------------------------------------------------------------
[0]PETSC ERROR: Petsc Release Version 3.4.0, May, 13, 2013 
[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: Unknown Name on a linux-gnu-c-opt named r0 by blechta Fri Oct  
4 14:16:28 2013
[0]PETSC ERROR: Libraries linked from /usr/local/pkg/petsc/3.4.0/gnu/lib
[0]PETSC ERROR: Configure run at Sat May 18 11:01:44 2013
[0]PETSC ERROR: Configure options
--prefix=/usr/local/pkg/petsc/3.4.0/gnu --with-gnu-compilers=1
--with-petsc-arch=linux-gnu-c-opt --AR=ar --RANLIB=ranlib
--with-shared-libraries --with-pic=1 --with-dynamic-libraries
--CFLAGS="-march=native -fPIC -pipe " --CXXFLAGS="-march=native -fPIC
-pipe " --FFLAGS="-march=native -fPIC -pipe " --with-debugging=0
--COPTFLAGS="-O2 -mfpmath=sse -fexpensive-optimizations    "
--CXXOPTFLAGS="-O2 -mfpmath=sse -fexpensive-optimizations    "
--FOPTFLAGS="-O2 -mfpmath=sse -fexpensive-optimizations    "
--LDFLAGS=-fopenmp --with-c++-support --with-64-bit-pointers=yes
--with-blas-lib="-L/usr/local/pkg/lapack/3.4.1/gnu/lib -lblas  "
--with-lapack-lib="-L/usr/local/pkg/lapack/3.4.1/gnu/lib -llapack
-lblas  " --with-parmetis=1 --download-parmetis=yes --with-metis=1
--download-metis=yes --with-mumps=1 --download-mumps=yes
--with-umfpack=1 --download-umfpack=yes --with-scalapack=1
--download-scalapack=yes --with-hypre=1 --download-hypre=yes
--with-blacs=1 --download-blacs=yes --with-superlu=1
--download-superlu=yes --with-superlu_dist=1
--download-superlu_dist=yes --with-hypre=1 --download-hypre=yes
--with-parms=1 --download-parms=yes --with-spai=1 --download-spai=yes
[0]PETSC ERROR:
------------------------------------------------------------------------
[0]PETSC ERROR: DMComputeVariableBounds() line 2306
in /usr/users/hron/Cluster/src/free/petsc/petsc-3.4.0/src/dm/interface/dm.c
[0]PETSC ERROR: SNESVIDMComputeVariableBounds() line 390
in /usr/users/hron/Cluster/src/free/petsc/petsc-3.4.0/src/snes/impls/vi/vi.c
[0]PETSC ERROR: SNESSetUp_VI() line 432
in /usr/users/hron/Cluster/src/free/petsc/petsc-3.4.0/src/snes/impls/vi/vi.c
[0]PETSC ERROR: SNESSetUp_VINEWTONSSLS() line 416
in 
/usr/users/hron/Cluster/src/free/petsc/petsc-3.4.0/src/snes/impls/vi/ss/viss.c
[0]PETSC ERROR: SNESSetUp() line 2577
in /usr/users/hron/Cluster/src/free/petsc/petsc-3.4.0/src/snes/interface/snes.c
[0]PETSC ERROR: SNESSolve() line 3619
in /usr/users/hron/Cluster/src/free/petsc/petsc-3.4.0/src/snes/interface/snes.c


Jan

> 
> > when calling solve() without bounds. Is it possible bug in
> > PETScSNESSolver.cpp? Tested with PETSc 3.4.0.
> >
> > [1]http://www.mcs.anl.gov/petsc/petsc-current/docs/manualpages/SNES/SNESVINEWTONSSLS.html
> >
> > Jan
> > _______________________________________________
> > fenics mailing list
> > [email protected]
> > http://fenicsproject.org/mailman/listinfo/fenics

_______________________________________________
fenics mailing list
[email protected]
http://fenicsproject.org/mailman/listinfo/fenics

Reply via email to