<p dir="ltr"><br>
On Apr 17, 2013 6:25 PM, "Dharmendar Reddy" <<a href="mailto:dharmareddy84@gmail.com">dharmareddy84@gmail.com</a>> wrote:<br>
><br>
> Sorry, I do not know how the reply went to your id. I replied the usual way.<br>
><br>
><br>
><br>
> I am solving : div(grad(V)) = 0 for x in [0, L] and V(0) = V1 and V(L) = V1<br>
><br>
> I get a solution V(x) = V1 after solving with intial guess V(X) = 0 for x in (0, L)<br>
><br>
> Now, what is the user defined ? is it V(X) = 0 ? or V(x) = V1 ?</p>
<p dir="ltr">Yes, it is the initial guess. SNES Test does not actually solve the problem.</p>
<p dir="ltr">><br>
> Is the user defined state is V(X) = V1 then it means the Jacobin is tested after doing a solve first ?<br>
><br>
> But then, for a linear Poisson problem, The Jacobin should be independent of V(X). I seem to get correct solution but snes_type test (fails ?) can you give me some pointers on how to debug this ?</p>
<p dir="ltr">How do you define the function evaluation? Is the Jacobian code really independent of the state vector? (It should be.)</p>
<p dir="ltr">><br>
> Thanks<br>
><br>
><br>
> On Wed, Apr 17, 2013 at 5:55 PM, Dharmendar Reddy <<a href="mailto:dharmareddy84@gmail.com">dharmareddy84@gmail.com</a>> wrote:<br>
>><br>
>> I am confused. <br>
>><br>
>> I am solving : div(grad(V)) = 0 for x in [0, L] and V(0) = V1 and V(L) = V1<br>
>><br>
>> I get a solution V(x) = V1 after solving with intial guess V(X) = 0 for x in (0, L)<br>
>><br>
>> Now, what is the user defined ? is it V(X) = 0 ? or V(x) = V1 ?<br>
>><br>
>> Is the user defined state is V(X) = V1 then it means the Jacobin is tested after doing a solve first ?<br>
>><br>
>> But then, for a linear Poisson problem, The Jacobin should be independent of V(X). I seem to get correct solution but snes_type test (fails ?) can you give me some pointers on how to debug this ?<br>
>><br>
>> Thanks<br>
>> Reddy<br>
>><br>
>><br>
>><br>
>><br>
>> On Wed, Apr 17, 2013 at 5:36 PM, Jed Brown <<a href="mailto:jedbrown@mcs.anl.gov">jedbrown@mcs.anl.gov</a>> wrote:<br>
>>><br>
>>> Dharmendar Reddy <<a href="mailto:dharmareddy84@gmail.com">dharmareddy84@gmail.com</a>> writes:<br>
>>><br>
>>> > Hello,<br>
>>> > I am solving a one dimensional (linear) Poisson equation. I have<br>
>>> > setup a snes problem using DM object. I am using Dirichlet boundary<br>
>>> > conditons at both ends of the one dimensional domain. For the test case i<br>
>>> > use the same value for potential at both ends.<br>
>>> ><br>
>>> > I am using DMplex object for the mesh and dof lay out.<br>
>>> ><br>
>>> > If i run the solver, i get a constant potential profile as expected.<br>
>>> > However, If i run the solver with snes_type test<br>
>>> > It is giving an error. what could i have done wrong ?<br>
>>> > Testing hand-coded Jacobian, if the ratio is<br>
>>> > O(1.e-8), the hand-coded Jacobian is probably correct.<br>
>>> > Run with -snes_test_display to show difference<br>
>>> > of hand-coded and finite difference Jacobian.<br>
>>> > Norm of matrix ratio 1.0913e-10 difference 5.85042e-10 (user-defined state)<br>
>>> > Norm of matrix ratio 0.5 difference 5.36098 (constant state -1.0)<br>
>>> > Norm of matrix ratio 0.666667 difference 10.722 (constant state 1.0)<br>
>>> > [0]PETSC ERROR: --------------------- Error Message<br>
>>> > -----------------------------------<br>
>>> > -<br>
>>> > [0]PETSC ERROR: Object is in wrong state!<br>
>>> > [0]PETSC ERROR: SNESTest aborts after Jacobian test!<br>
>>><br>
>>> This is what '-snes_type test' is supposed to do. So you're fine and<br>
>>> your Jacobian is fine at the initial state, but not at the constant<br>
>>> value 1.0 or -1.0. (That's okay if those are non-physical states,<br>
>>> otherwise your Jacobian evaluation is incorrect.)<br>
>>><br>
>>> > [0]PETSC ERROR:<br>
>>> > -----------------------------------------------------------------------<br>
>>> > -<br>
>>> > [0]PETSC ERROR: Petsc Development GIT revision:<br>
>>> > e0030536e6573667cee5340eb367e8213e67d68<br>
>>> > 9 GIT Date: 2013-04-16 21:48:15 -0500<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>
>>> > -----------------------------------------------------------------------<br>
>>> > -<br>
>>> > [0]PETSC ERROR: ./PoisTest on a mpi_rScalar_Debug named<br>
>>> > <a href="http://login2.stampede.tacc.utexas.edu">login2.stampede.tacc.utexas.edu</a><br>
>>> > by Reddy135 Wed Apr 17 17:22:02 2013<br>
>>> > [0]PETSC ERROR: Libraries linked from<br>
>>> > /home1/00924/Reddy135/LocalApps/petsc/mpi_rScalar<br>
>>> > _Debug/lib<br>
>>> > [0]PETSC ERROR: Configure run at Tue Apr 16 22:30:58 2013<br>
>>> > [0]PETSC ERROR: Configure options --download-blacs=1 --download-ctetgen=1<br>
>>> > --download-<br>
>>> > metis=1 --download-mumps=1 --download-parmetis=1 --download-scalapack=1<br>
>>> > --download-supe<br>
>>> > rlu_dist=1 --download-triangle=1 --download-umfpack=1<br>
>>> > --with-blas-lapack-dir=/opt/apps/<br>
>>> > intel/13/composer_xe_2013.2.146/mkl/lib/intel64/ --with-debugging=1<br>
>>> > --with-mpi-dir=/opt<br>
>>> > /apps/intel13/mvapich2/1.9/ --with-petsc-arch=mpi_rScalar_Debug<br>
>>> > --with-petsc-dir=/home1<br>
>>> > /00924/Reddy135/LocalApps/petsc PETSC_ARCH=mpi_rScalar_Debug<br>
>>> > [0]PETSC ERROR:<br>
>>> > -----------------------------------------------------------------------<br>
>>> > -<br>
>>> > [0]PETSC ERROR: SNESSolve_Test() line 127 in<br>
>>> > /home1/00924/Reddy135/LocalApps/petsc/src/<br>
>>> > snes/impls/test/snestest.c<br>
>>> > [0]PETSC ERROR: SNESSolve() line 3755 in<br>
>>> > /home1/00924/Reddy135/LocalApps/petsc/src/snes<br>
>>> > /interface/snes.c<br>
>>> > SNESDivergedReason 0<br>
>>> > Exiting solve<br>
>>> > --<br>
>>> > -----------------------------------------------------<br>
>>> > Dharmendar Reddy Palle<br>
>>> > Graduate Student<br>
>>> > Microelectronics Research center,<br>
>>> > University of Texas at Austin,<br>
>>> > 10100 Burnet Road, Bldg. 160<br>
>>> > MER 2.608F, TX 78758-4445<br>
>>> > e-mail: <a href="mailto:dharmareddy84@gmail.com">dharmareddy84@gmail.com</a><br>
>>> > Phone: +1-512-350-9082<br>
>>> > United States of America.<br>
>>> > Homepage: <a href="https://webspace.utexas.edu/~dpr342">https://webspace.utexas.edu/~dpr342</a><br>
>><br>
>><br>
>><br>
>><br>
>> -- <br>
>> -----------------------------------------------------<br>
>> Dharmendar Reddy Palle<br>
>> Graduate Student<br>
>> Microelectronics Research center,<br>
>> University of Texas at Austin,<br>
>> 10100 Burnet Road, Bldg. 160<br>
>> MER 2.608F, TX 78758-4445<br>
>> e-mail: <a href="mailto:dharmareddy84@gmail.com">dharmareddy84@gmail.com</a><br>
>> Phone: +1-512-350-9082<br>
>> United States of America.<br>
>> Homepage: <a href="https://webspace.utexas.edu/~dpr342">https://webspace.utexas.edu/~dpr342</a><br>
><br>
><br>
><br>
><br>
> -- <br>
> -----------------------------------------------------<br>
> Dharmendar Reddy Palle<br>
> Graduate Student<br>
> Microelectronics Research center,<br>
> University of Texas at Austin,<br>
> 10100 Burnet Road, Bldg. 160<br>
> MER 2.608F, TX 78758-4445<br>
> e-mail: <a href="mailto:dharmareddy84@gmail.com">dharmareddy84@gmail.com</a><br>
> Phone: +1-512-350-9082<br>
> United States of America.<br>
> Homepage: <a href="https://webspace.utexas.edu/~dpr342">https://webspace.utexas.edu/~dpr342</a><br>
</p>