[petsc-users] nonzero prescribed boundary condition
Barry Smith
bsmith at mcs.anl.gov
Wed May 11 11:15:57 CDT 2011
Ok,
Run with -pc_type none -ksp_monitor_true_residual -snes_monitor -snes_mf
Send the output
Barry
On May 11, 2011, at 8:44 AM, Tian(ICT) wrote:
> C:\cygwin\home\rabbit\pGFEM-test>pgfem -pc_type lu -ksp_monitor_true_residual -s
> nes_monitor
> atol=1e-050, rtol=1e-008, stol=1e-008, maxit=50, maxf=10000
> 0 SNES Function norm 7.071067811865e-002
> 0 KSP preconditioned resid norm 9.965778978387e-002 true resid norm 7.07106781
> 1865e-002 ||Ae||/||Ax|| 1.000000000000e+000
> 1 KSP preconditioned resid norm 6.823187455811e-017 true resid norm 8.84729888
> 5656e-011 ||Ae||/||Ax|| 1.251197007446e-009
> 1 SNES Function norm 6.401926523423e-002
> 0 KSP preconditioned resid norm 8.969200212486e-002 true resid norm 6.40192652
> 3423e-002 ||Ae||/||Ax|| 1.000000000000e+000
> 1 KSP preconditioned resid norm 1.106757475780e-016 true resid norm 6.21183006
> 7439e-011 ||Ae||/||Ax|| 9.703063671087e-010
> 2 SNES Function norm 5.849992149767e-002
> 0 KSP preconditioned resid norm 8.072279488157e-002 true resid norm 5.84999214
> 9767e-002 ||Ae||/||Ax|| 1.000000000000e+000
> 1 KSP preconditioned resid norm 1.268750073799e-017 true resid norm 3.80243103
> 6387e-011 ||Ae||/||Ax|| 6.499890835816e-010
> 3 SNES Function norm 5.376618503592e-002
> 0 KSP preconditioned resid norm 7.265050969883e-002 true resid norm 5.37661850
> 3592e-002 ||Ae||/||Ax|| 1.000000000000e+000
> 1 KSP preconditioned resid norm 2.677655733356e-017 true resid norm 8.12039778
> 8686e-011 ||Ae||/||Ax|| 1.510316899602e-009
> 4 SNES Function norm 4.956894354459e-002
> 0 KSP preconditioned resid norm 6.538545411661e-002 true resid norm 4.95689435
> 4459e-002 ||Ae||/||Ax|| 1.000000000000e+000
> 1 KSP preconditioned resid norm 9.557004153175e-017 true resid norm 2.94425080
> 2029e-011 ||Ae||/||Ax|| 5.939708598754e-010
> 5 SNES Function norm 4.575418613137e-002
> 0 KSP preconditioned resid norm 5.884690496914e-002 true resid norm 4.57541861
> 3137e-002 ||Ae||/||Ax|| 1.000000000000e+000
> 1 KSP preconditioned resid norm 5.470969262115e-017 true resid norm 3.65900316
> 6095e-011 ||Ae||/||Ax|| 7.997089393284e-010
> 6 SNES Function norm 4.223022245585e-002
> 0 KSP preconditioned resid norm 5.296221144636e-002 true resid norm 4.22302224
> 5585e-002 ||Ae||/||Ax|| 1.000000000000e+000
> 1 KSP preconditioned resid norm 8.255198782390e-017 true resid norm 1.95554565
> 8933e-011 ||Ae||/||Ax|| 4.630678090739e-010
> 7 SNES Function norm 3.894430065910e-002
> 0 KSP preconditioned resid norm 4.766598785088e-002 true resid norm 3.89443006
> 5910e-002 ||Ae||/||Ax|| 1.000000000000e+000
> 1 KSP preconditioned resid norm 3.322615478395e-017 true resid norm 3.48532814
> 8673e-011 ||Ae||/||Ax|| 8.949520442496e-010
> 8 SNES Function norm 3.586683371135e-002
> 0 KSP preconditioned resid norm 4.289938708067e-002 true resid norm 3.58668337
> 1135e-002 ||Ae||/||Ax|| 1.000000000000e+000
> 1 KSP preconditioned resid norm 6.181358328498e-017 true resid norm 3.24690281
> 8086e-011 ||Ae||/||Ax|| 9.052660862724e-010
> 9 SNES Function norm 3.298130202025e-002
> 0 KSP preconditioned resid norm 3.860944676473e-002 true resid norm 3.29813020
> 2025e-002 ||Ae||/||Ax|| 1.000000000000e+000
> 1 KSP preconditioned resid norm 4.635174776374e-017 true resid norm 1.49751684
> 2272e-011 ||Ae||/||Ax|| 4.540502498513e-010
> 10 SNES Function norm 3.027806208930e-002
> 0 KSP preconditioned resid norm 3.474850078591e-002 true resid norm 3.02780620
> 8930e-002 ||Ae||/||Ax|| 1.000000000000e+000
> 1 KSP preconditioned resid norm 2.389914053685e-017 true resid norm 6.00744088
> 8596e-011 ||Ae||/||Ax|| 1.984090286517e-009
> 11 SNES Function norm 2.749422924729e-002
> 0 KSP preconditioned resid norm 3.081350823297e-002 true resid norm 2.74942292
> 4729e-002 ||Ae||/||Ax|| 1.000000000000e+000
> 1 KSP preconditioned resid norm 2.640567497647e-017 true resid norm 1.28163829
> 5853e-011 ||Ae||/||Ax|| 4.661481085089e-010
> 12 SNES Function norm 2.437488247885e-002
> 0 KSP preconditioned resid norm 2.633007441879e-002 true resid norm 2.43748824
> 7885e-002 ||Ae||/||Ax|| 1.000000000000e+000
> 1 KSP preconditioned resid norm 2.772331460094e-017 true resid norm 1.91821249
> 6143e-011 ||Ae||/||Ax|| 7.869627670236e-010
> 13 SNES Function norm 2.079664278637e-002
> 0 KSP preconditioned resid norm 2.104738289397e-002 true resid norm 2.07966427
> 8637e-002 ||Ae||/||Ax|| 1.000000000000e+000
> 1 KSP preconditioned resid norm 1.650632708670e-017 true resid norm 2.31637196
> 7362e-011 ||Ae||/||Ax|| 1.113820144509e-009
> 14 SNES Function norm 1.657344626858e-002
> 0 KSP preconditioned resid norm 1.454141853505e-002 true resid norm 1.65734462
> 6858e-002 ||Ae||/||Ax|| 1.000000000000e+000
> 1 KSP preconditioned resid norm 1.129401160070e-017 true resid norm 7.88549932
> 7559e-012 ||Ae||/||Ax|| 4.757911661686e-010
> 15 SNES Function norm 1.484243752612e-002
> 0 KSP preconditioned resid norm 5.241948491751e-009 true resid norm 1.48424375
> 2612e-002 ||Ae||/||Ax|| 1.000000000000e+000
> 1 KSP preconditioned resid norm 2.729506849025e-024 true resid norm 6.38667785
> 1085e-018 ||Ae||/||Ax|| 4.302984492839e-016
> 16 SNES Function norm 2.828002157497e-008
> 0 KSP preconditioned resid norm 6.042518362322e-015 true resid norm 2.82800215
> 7497e-008 ||Ae||/||Ax|| 1.000000000000e+000
> 1 KSP preconditioned resid norm 6.272441346127e-030 true resid norm 1.11285769
> 8032e-023 ||Ae||/||Ax|| 3.935137372797e-016
> 17 SNES Function norm 2.960967020289e-008
> STEP 0 (Newton iterations: 17)
>
> diverged reason: -6
>
> C:\cygwin\home\rabbit\pGFEM-test>
>
>
> ==================HOWEVER=================
> -snes_type tr seems work
>
> C:\cygwin\home\rabbit\pGFEM-test>pgfem -snes_type tr
> atol=1e-050, rtol=1e-008, stol=1e-008, maxit=50, maxf=10000
> STEP 0 (Newton iterations: 12)
>
> STEP 1 (Newton iterations: 11)
>
> STEP 2 (Newton iterations: 11)
> ...
>
> STEP 70 (Newton iterations: 14)
>
> ^C
> C:\cygwin\home\rabbit\pGFEM-test>
>
> ----- Original Message ----- From: "Barry Smith" <bsmith at mcs.anl.gov>
> To: "PETSc users list" <petsc-users at mcs.anl.gov>
> Sent: Wednesday, May 11, 2011 9:02 PM
> Subject: Re: [petsc-users] nonzero prescribed boundary condition
>
>
>
>>> Testing hand-coded Jacobian, if the ratio is
>>> O(1.e-8), the hand-coded Jacobian is probably correct.
>>> Run with -snes_test_display to show difference
>>> of hand-coded and finite difference Jacobian.
>>> Norm of matrix ratio 9.05702e-008 difference 3.94971
>>> Norm of matrix ratio 3.6015e-007 difference 15.7059
>>> Norm of matrix ratio 3.73941e-007 difference 16.3073
>
> Based on this it appears the Jacobian at the initial point is correct but
>
> 0 KSP preconditioned resid norm 9.965778978387e-002 true resid norm 7.071067811865e-002 ||Ae||/||Ax|| 1.000000000000e+000
> 1 KSP preconditioned resid norm 9.102368266281e-009 true resid norm 5.414197277222e-002 ||Ae||/||Ax|| 7.656831218811e-001
>
> this indicates that the linear solver is not actually solving the linear system. One would expect a large drop in the "true resid norm" and one does not see that. This could be caused by
>
> 1) the computed Jacobian is wrong or
>
> 2) the Jacobian is singular and that is not being taken into account in the linear solver.
>
> Please rerun with the options -pc_type lu -ksp_monitor_true_residual -snes_monitor BUT NOT THE OPTION -snes_mf_operator and send the same output.
>
> Barry
>
>
> On May 11, 2011, at 1:46 AM, Tian(ICT) wrote:
>
>> Pls ignore my previous email.
>>
>> The followings are the test results:
>> the previous error in using -snes_mf_opertor was due to my own code.
>> After modification, i.e. using different A and B and assemble both
>> and in FormJacobian the native jacobian was assembled into B.
>> Then with -snes_mf_operator led to the results shown below.
>> The first three steps converged but with a diverged reason -6 at step 4.
>>
>>
>> With additional -snes_type test, the results were
>>
>>> "-pc_type lu -ksp_monitor_true_residual -snes_monitor -ksp_monitor -snes_type test"
>>>
>>> atol=1e-050, rtol=1e-008, stol=1e-008, maxit=50, maxf=10000
>>> Testing hand-coded Jacobian, if the ratio is
>>> O(1.e-8), the hand-coded Jacobian is probably correct.
>>> Run with -snes_test_display to show difference
>>> of hand-coded and finite difference Jacobian.
>>> Norm of matrix ratio 9.05702e-008 difference 3.94971
>>> Norm of matrix ratio 3.6015e-007 difference 15.7059
>>> Norm of matrix ratio 3.73941e-007 difference 16.3073
>>> [0]PETSC ERROR: SNESSolve() line 1871 in
>>> src/snes/interface/C:\cygwin\home\PETSC-~1.3-P\src\snes\INTERF~1\snes.c
>>> [0]PETSC ERROR: User provided function() line 572 in
>>> unknowndirectory/c:\cygwin\home\rabbit\pgfem - csrbf\domain.cpp
>>> [0]PETSC ERROR: User provided function() line 40 in
>>> unknowndirectory/c:\cygwin\home\rabbit\pgfem - csrbf\main.cpp
>>>
>>>
>>> "-pc_type lu -ksp_monitor_true_residual -snes_monitor -ksp_monitor -snes_ms_operator"
>>
>> atol=1e-050, rtol=1e-008, stol=1e-008, maxit=50, maxf=10000
>> 0 SNES Function norm 7.071067811865e-002
>> 0 KSP Residual norm 9.965778978387e-002
>> 0 KSP preconditioned resid norm 9.965778978387e-002 true resid norm 7.071067811865e-002 ||Ae||/||Ax|| 1.000000000000e+000
>> 1 KSP Residual norm 9.102368266281e-009
>> 1 KSP preconditioned resid norm 9.102368266281e-009 true resid norm 5.414197277222e-002 ||Ae||/||Ax|| 7.656831218811e-001
>> 1 SNES Function norm 6.401926196865e-002
>> 0 KSP Residual norm 8.969200166800e-002
>> 0 KSP preconditioned resid norm 8.969200166800e-002 true resid norm 6.401926196865e-002 ||Ae||/||Ax|| 1.000000000000e+000
>> 1 KSP Residual norm 8.492849351675e-009
>> 1 KSP preconditioned resid norm 8.492849351675e-009 true resid norm 1.400035213572e-002 ||Ae||/||Ax|| 2.186896834670e-001
>> 2 SNES Function norm 5.849991037388e-002
>> 0 KSP Residual norm 8.072279482667e-002
>> 0 KSP preconditioned resid norm 8.072279482667e-002 true resid norm 5.849991037388e-002 ||Ae||/||Ax|| 1.000000000000e+000
>> 1 KSP Residual norm 3.610510067555e-009
>> 1 KSP preconditioned resid norm 3.610510067555e-009 true resid norm 4.757549946973e-003 ||Ae||/||Ax|| 8.132576471599e-002
>> 3 SNES Function norm 5.376617142827e-002
>> 0 KSP Residual norm 7.265050986128e-002
>> 0 KSP preconditioned resid norm 7.265050986128e-002 true resid norm 5.376617142827e-002 ||Ae||/||Ax|| 1.000000000000e+000
>> 1 KSP Residual norm 6.941165647221e-009
>> 1 KSP preconditioned resid norm 6.941165647221e-009 true resid norm 3.935270526562e-002 ||Ae||/||Ax|| 7.319231446138e-001
>> 4 SNES Function norm 4.956888929193e-002
>> 0 KSP Residual norm 6.538545408372e-002
>> 0 KSP preconditioned resid norm 6.538545408372e-002 true resid norm 4.956888929193e-002 ||Ae||/||Ax|| 1.000000000000e+000
>> 1 KSP Residual norm 3.457970649220e-009
>> 1 KSP preconditioned resid norm 3.457970649220e-009 true resid norm 2.037700110050e-002 ||Ae||/||Ax|| 4.110844804388e-001
>> 5 SNES Function norm 4.575415001780e-002
>> 0 KSP Residual norm 5.884690527647e-002
>> 0 KSP preconditioned resid norm 5.884690527647e-002 true resid norm 4.575415001780e-002 ||Ae||/||Ax|| 1.000000000000e+000
>> 1 KSP Residual norm 2.832662187541e-009
>> 1 KSP preconditioned resid norm 2.832662187541e-009 true resid norm 1.662420124938e-002 ||Ae||/||Ax|| 3.633375604818e-001
>> 6 SNES Function norm 4.223018337199e-002
>> 0 KSP Residual norm 5.296221162333e-002
>> 0 KSP preconditioned resid norm 5.296221162333e-002 true resid norm 4.223018337199e-002 ||Ae||/||Ax|| 1.000000000000e+000
>> 1 KSP Residual norm 3.091667005099e-009
>> 1 KSP preconditioned resid norm 3.091667005099e-009 true resid norm 2.235399010718e-002 ||Ae||/||Ax|| 5.293367994705e-001
>> 7 SNES Function norm 3.894426990170e-002
>> 0 KSP Residual norm 4.766598828506e-002
>> 0 KSP preconditioned resid norm 4.766598828506e-002 true resid norm 3.894426990170e-002 ||Ae||/||Ax|| 1.000000000000e+000
>> 1 KSP Residual norm 4.223811830585e-009
>> 1 KSP preconditioned resid norm 4.223811830585e-009 true resid norm 2.831156780040e-002 ||Ae||/||Ax|| 7.269764684732e-001
>> 8 SNES Function norm 3.586679674893e-002
>> 0 KSP Residual norm 4.289938722959e-002
>> 0 KSP preconditioned resid norm 4.289938722959e-002 true resid norm 3.586679674893e-002 ||Ae||/||Ax|| 1.000000000000e+000
>> 1 KSP Residual norm 3.504535460429e-009
>> 1 KSP preconditioned resid norm 3.504535460429e-009 true resid norm 2.254598873838e-002 ||Ae||/||Ax|| 6.286033541328e-001
>> 9 SNES Function norm 3.298126871313e-002
>> 0 KSP Residual norm 3.860944657267e-002
>> 0 KSP preconditioned resid norm 3.860944657267e-002 true resid norm 3.298126871313e-002 ||Ae||/||Ax|| 1.000000000000e+000
>> 1 KSP Residual norm 4.439084585574e-009
>> 1 KSP preconditioned resid norm 4.439084585574e-009 true resid norm 6.936792391193e-003 ||Ae||/||Ax|| 2.103252137305e-001
>> 10 SNES Function norm 3.027806037514e-002
>> 0 KSP Residual norm 3.474850031738e-002
>> 0 KSP preconditioned resid norm 3.474850031738e-002 true resid norm 3.027806037514e-002 ||Ae||/||Ax|| 1.000000000000e+000
>> 1 KSP Residual norm 3.476854671229e-009
>> 1 KSP preconditioned resid norm 3.476854671229e-009 true resid norm 1.935717696630e-002 ||Ae||/||Ax|| 6.393136391984e-001
>> 11 SNES Function norm 2.775064646763e-002
>> 0 KSP Residual norm 3.127364888698e-002
>> 0 KSP preconditioned resid norm 3.127364888698e-002 true resid norm 2.775064646763e-002 ||Ae||/||Ax|| 1.000000000000e+000
>> 1 KSP Residual norm 2.380857715198e-009
>> 1 KSP preconditioned resid norm 2.380857715198e-009 true resid norm 1.646856223644e-002 ||Ae||/||Ax|| 5.934478771746e-001
>> 12 SNES Function norm 2.430399371900e-002
>> 0 KSP Residual norm 2.602654480862e-002
>> 0 KSP preconditioned resid norm 2.602654480862e-002 true resid norm 2.430399371900e-002 ||Ae||/||Ax|| 1.000000000000e+000
>> 1 KSP Residual norm 2.556142726483e-009
>> 1 KSP preconditioned resid norm 2.556142726483e-009 true resid norm 1.794651743617e-002 ||Ae||/||Ax|| 7.384184526900e-001
>> 13 SNES Function norm 2.029256664631e-002
>> 0 KSP Residual norm 1.954645630691e-002
>> 0 KSP preconditioned resid norm 1.954645630691e-002 true resid norm 2.029256664631e-002 ||Ae||/||Ax|| 1.000000000000e+000
>> 1 KSP Residual norm 3.913585412092e-010
>> 1 KSP preconditioned resid norm 3.913585412092e-010 true resid norm 1.903675728342e-003 ||Ae||/||Ax|| 9.381148089946e-002
>> 14 SNES Function norm 1.566638821565e-002
>> 0 KSP Residual norm 1.231404128086e-002
>> 0 KSP preconditioned resid norm 1.231404128086e-002 true resid norm 1.566638821565e-002 ||Ae||/||Ax|| 1.000000000000e+000
>> 1 KSP Residual norm 7.258598971379e-010
>> 1 KSP preconditioned resid norm 7.258598971379e-010 true resid norm 1.221317129610e-003 ||Ae||/||Ax|| 7.795779810881e-002
>> 15 SNES Function norm 1.064422587384e-002
>> 0 KSP Residual norm 3.723145759360e-009
>> 0 KSP preconditioned resid norm 3.723145759360e-009 true resid norm 1.064422587384e-002 ||Ae||/||Ax|| 1.000000000000e+000
>> 1 KSP Residual norm 5.546825086207e-016
>> 1 KSP preconditioned resid norm 5.546825086207e-016 true resid norm 2.984647735625e-009 ||Ae||/||Ax|| 2.804006389003e-007
>> 16 SNES Function norm 9.689226075617e-008
>> 0 KSP Residual norm 1.643080767133e-014
>> 0 KSP preconditioned resid norm 1.643080767133e-014 true resid norm 9.689226075617e-008 ||Ae||/||Ax|| 1.000000000000e+000
>> 1 KSP Residual norm 7.291965935374e-022
>> 1 KSP preconditioned resid norm 7.291965935374e-022 true resid norm 5.001850432973e-015 ||Ae||/||Ax|| 5.162280654758e-008
>> 17 SNES Function norm 3.747290584108e-008
>> STEP 0 (Newton iterations: 17)
>>
>> 0 SNES Function norm 7.071067811866e-002
>> 0 KSP Residual norm 9.965769844003e-002
>> 0 KSP preconditioned resid norm 9.965769844003e-002 true resid norm 7.071067811866e-002 ||Ae||/||Ax|| 1.000000000000e+000
>> 1 KSP Residual norm 4.919247724727e-009
>> 1 KSP preconditioned resid norm 4.919247724727e-009 true resid norm 2.073848008334e-002 ||Ae||/||Ax|| 2.932863979685e-001
>> 1 SNES Function norm 6.402041310994e-002
>> 0 KSP Residual norm 8.969192038029e-002
>> 0 KSP preconditioned resid norm 8.969192038029e-002 true resid norm 6.402041310994e-002 ||Ae||/||Ax|| 1.000000000000e+000
>> 1 KSP Residual norm 4.072962844649e-009
>> 1 KSP preconditioned resid norm 4.072962844649e-009 true resid norm 2.116458841832e-002 ||Ae||/||Ax|| 3.305912503559e-001
>> 2 SNES Function norm 5.850358277995e-002
>> 0 KSP Residual norm 8.072272129834e-002
>> 0 KSP preconditioned resid norm 8.072272129834e-002 true resid norm 5.850358277995e-002 ||Ae||/||Ax|| 1.000000000000e+000
>> 1 KSP Residual norm 1.535693836801e-009
>> 1 KSP preconditioned resid norm 1.535693836801e-009 true resid norm 1.378413836547e-002 ||Ae||/||Ax|| 2.356118670085e-001
>> 3 SNES Function norm 5.377276379928e-002
>> 0 KSP Residual norm 7.265044334812e-002
>> 0 KSP preconditioned resid norm 7.265044334812e-002 true resid norm 5.377276379928e-002 ||Ae||/||Ax|| 1.000000000000e+000
>> 1 KSP Residual norm 8.196914267894e-009
>> 1 KSP preconditioned resid norm 8.196914267894e-009 true resid norm 1.643681592299e-002 ||Ae||/||Ax|| 3.056717706448e-001
>> 4 SNES Function norm 4.957825627064e-002
>> 0 KSP Residual norm 6.538539498475e-002
>> 0 KSP preconditioned resid norm 6.538539498475e-002 true resid norm 4.957825627064e-002 ||Ae||/||Ax|| 1.000000000000e+000
>> 1 KSP Residual norm 1.605278143372e-009
>> 1 KSP preconditioned resid norm 1.605278143372e-009 true resid norm 1.365749144340e-002 ||Ae||/||Ax|| 2.754734125550e-001
>> 5 SNES Function norm 4.576573391352e-002
>> 0 KSP Residual norm 5.884685187863e-002
>> 0 KSP preconditioned resid norm 5.884685187863e-002 true resid norm 4.576573391352e-002 ||Ae||/||Ax|| 1.000000000000e+000
>> 1 KSP Residual norm 3.917790130377e-009
>> 1 KSP preconditioned resid norm 3.917790130377e-009 true resid norm 2.918137698804e-002 ||Ae||/||Ax|| 6.376250196967e-001
>> 6 SNES Function norm 4.224348383506e-002
>> 0 KSP Residual norm 5.296216341013e-002
>> 0 KSP preconditioned resid norm 5.296216341013e-002 true resid norm 4.224348383506e-002 ||Ae||/||Ax|| 1.000000000000e+000
>> 1 KSP Residual norm 1.384279752582e-009
>> 1 KSP preconditioned resid norm 1.384279752582e-009 true resid norm 8.645143617596e-003 ||Ae||/||Ax|| 2.046503468168e-001
>> 7 SNES Function norm 3.895875122953e-002
>> 0 KSP Residual norm 4.766594475257e-002
>> 0 KSP preconditioned resid norm 4.766594475257e-002 true resid norm 3.895875122953e-002 ||Ae||/||Ax|| 1.000000000000e+000
>> 1 KSP Residual norm 5.442999105246e-009
>> 1 KSP preconditioned resid norm 5.442999105246e-009 true resid norm 3.199366262059e-002 ||Ae||/||Ax|| 8.212188946227e-001
>> 8 SNES Function norm 3.588203219083e-002
>> 0 KSP Residual norm 4.289934859308e-002
>> 0 KSP preconditioned resid norm 4.289934859308e-002 true resid norm 3.588203219083e-002 ||Ae||/||Ax|| 1.000000000000e+000
>> 1 KSP Residual norm 5.069272581944e-009
>> 1 KSP preconditioned resid norm 5.069272581944e-009 true resid norm 3.315026802067e-002 ||Ae||/||Ax|| 9.238681868510e-001
>> 9 SNES Function norm 3.299674865285e-002
>> 0 KSP Residual norm 3.860941169595e-002
>> 0 KSP preconditioned resid norm 3.860941169595e-002 true resid norm 3.299674865285e-002 ||Ae||/||Ax|| 1.000000000000e+000
>> 1 KSP Residual norm 2.314510318621e-009
>> 1 KSP preconditioned resid norm 2.314510318621e-009 true resid norm 1.422355468145e-002 ||Ae||/||Ax|| 4.310592789335e-001
>> 10 SNES Function norm 3.020092421335e-002
>> 0 KSP Residual norm 3.457428537321e-002
>> 0 KSP preconditioned resid norm 3.457428537321e-002 true resid norm 3.020092421335e-002 ||Ae||/||Ax|| 1.000000000000e+000
>> 1 KSP Residual norm 3.171225245965e-009
>> 1 KSP preconditioned resid norm 3.171225245965e-009 true resid norm 6.700877909403e-003 ||Ae||/||Ax|| 2.218765843742e-001
>> 11 SNES Function norm 2.761432326644e-002
>> 0 KSP Residual norm 3.100402216444e-002
>> 0 KSP preconditioned resid norm 3.100402216444e-002 true resid norm 2.761432326644e-002 ||Ae||/||Ax|| 1.000000000000e+000
>> 1 KSP Residual norm 2.317753799744e-009
>> 1 KSP preconditioned resid norm 2.317753799744e-009 true resid norm 1.143024510909e-002 ||Ae||/||Ax|| 4.139245057287e-001
>> 12 SNES Function norm 2.483228477543e-002
>> 0 KSP Residual norm 2.716039584199e-002
>> 0 KSP preconditioned resid norm 2.716039584199e-002 true resid norm 2.483228477543e-002 ||Ae||/||Ax|| 1.000000000000e+000
>> 1 KSP Residual norm 1.024860175617e-009
>> 1 KSP preconditioned resid norm 1.024860175617e-009 true resid norm 5.071961436716e-003 ||Ae||/||Ax|| 2.042486820115e-001
>> 13 SNES Function norm 2.155599009420e-002
>> 0 KSP Residual norm 2.247739022940e-002
>> 0 KSP preconditioned resid norm 2.247739022940e-002 true resid norm 2.155599009420e-002 ||Ae||/||Ax|| 1.000000000000e+000
>> 1 KSP Residual norm 1.231896568498e-009
>> 1 KSP preconditioned resid norm 1.231896568498e-009 true resid norm 2.253717888475e-003 ||Ae||/||Ax|| 1.045518150002e-001
>> 14 SNES Function norm 1.758159262430e-002
>> 0 KSP Residual norm 1.640654408633e-002
>> 0 KSP preconditioned resid norm 1.640654408633e-002 true resid norm 1.758159262430e-002 ||Ae||/||Ax|| 1.000000000000e+000
>> 1 KSP Residual norm 1.203409491551e-009
>> 1 KSP preconditioned resid norm 1.203409491551e-009 true resid norm 3.340286893989e-003 ||Ae||/||Ax|| 1.899877312236e-001
>> 15 SNES Function norm 1.275874713861e-002
>> 0 KSP Residual norm 8.737890404296e-003
>> 0 KSP preconditioned resid norm 8.737890404296e-003 true resid norm 1.275874713861e-002 ||Ae||/||Ax|| 1.000000000000e+000
>> 1 KSP Residual norm 3.862616851249e-010
>> 1 KSP preconditioned resid norm 3.862616851249e-010 true resid norm 9.158071400861e-004 ||Ae||/||Ax|| 7.177876715771e-002
>> 16 SNES Function norm 5.367994969686e-003
>> 0 KSP Residual norm 1.873266786098e-009
>> 0 KSP preconditioned resid norm 1.873266786098e-009 true resid norm 5.367994969686e-003 ||Ae||/||Ax|| 1.000000000000e+000
>> 1 KSP Residual norm 9.236612780542e-017
>> 1 KSP preconditioned resid norm 9.236612780542e-017 true resid norm 4.487656305545e-010 ||Ae||/||Ax|| 8.360023306445e-008
>> 17 SNES Function norm 1.843858578272e-008
>> 0 KSP Residual norm 3.418191528615e-015
>> 0 KSP preconditioned resid norm 3.418191528615e-015 true resid norm 1.843858578272e-008 ||Ae||/||Ax|| 1.000000000000e+000
>> 1 KSP Residual norm 2.091028447697e-022
>> 1 KSP preconditioned resid norm 2.091028447697e-022 true resid norm 9.356082852780e-016 ||Ae||/||Ax|| 5.074186796662e-008
>> 18 SNES Function norm 1.582175998776e-008
>> STEP 1 (Newton iterations: 18)
>>
>> 0 SNES Function norm 7.071067811866e-002
>> 0 KSP Residual norm 9.965760716669e-002
>> 0 KSP preconditioned resid norm 9.965760716669e-002 true resid norm 7.071067811866e-002 ||Ae||/||Ax|| 1.000000000000e+000
>> 1 KSP Residual norm 4.158690871520e-009
>> 1 KSP preconditioned resid norm 4.158690871520e-009 true resid norm 1.356168089543e-002 ||Ae||/||Ax|| 1.917911305090e-001
>> 1 SNES Function norm 6.402155946870e-002
>> 0 KSP Residual norm 8.969183775926e-002
>> 0 KSP preconditioned resid norm 8.969183775926e-002 true resid norm 6.402155946870e-002 ||Ae||/||Ax|| 1.000000000000e+000
>> 1 KSP Residual norm 7.922035131300e-009
>> 1 KSP preconditioned resid norm 7.922035131300e-009 true resid norm 4.173737132742e-002 ||Ae||/||Ax|| 6.519268145573e-001
>> 2 SNES Function norm 5.850726192206e-002
>> 0 KSP Residual norm 8.072264774465e-002
>> 0 KSP preconditioned resid norm 8.072264774465e-002 true resid norm 5.850726192206e-002 ||Ae||/||Ax|| 1.000000000000e+000
>> 1 KSP Residual norm 4.356474211542e-009
>> 1 KSP preconditioned resid norm 4.356474211542e-009 true resid norm 2.083500604436e-002 ||Ae||/||Ax|| 3.561097436437e-001
>> 3 SNES Function norm 5.377933295280e-002
>> 0 KSP Residual norm 7.265037686612e-002
>> 0 KSP preconditioned resid norm 7.265037686612e-002 true resid norm 5.377933295280e-002 ||Ae||/||Ax|| 1.000000000000e+000
>> 1 KSP Residual norm 8.772318530630e-009
>> 1 KSP preconditioned resid norm 8.772318530630e-009 true resid norm 5.284958913103e-002 ||Ae||/||Ax|| 9.827118751623e-001
>> 4 SNES Function norm 4.958751191600e-002
>> 0 KSP Residual norm 6.538533386375e-002
>> 0 KSP preconditioned resid norm 6.538533386375e-002 true resid norm 4.958751191600e-002 ||Ae||/||Ax|| 1.000000000000e+000
>> 1 KSP Residual norm 1.128741903850e-009
>> 1 KSP preconditioned resid norm 1.128741903850e-009 true resid norm 2.526410501148e-003 ||Ae||/||Ax|| 5.094852319729e-002
>> 5 SNES Function norm 4.577729047509e-002
>> 0 KSP Residual norm 5.884679667348e-002
>> 0 KSP preconditioned resid norm 5.884679667348e-002 true resid norm 4.577729047509e-002 ||Ae||/||Ax|| 1.000000000000e+000
>> 1 KSP Residual norm 5.763627011382e-009
>> 1 KSP preconditioned resid norm 5.763627011382e-009 true resid norm 1.051243252216e-002 ||Ae||/||Ax|| 2.296429608013e-001
>> 6 SNES Function norm 4.225677503639e-002
>> 0 KSP Residual norm 5.296211439112e-002
>> 0 KSP preconditioned resid norm 5.296211439112e-002 true resid norm 4.225677503639e-002 ||Ae||/||Ax|| 1.000000000000e+000
>> 1 KSP Residual norm 1.022912340341e-009
>> 1 KSP preconditioned resid norm 1.022912340341e-009 true resid norm 3.573383237647e-003 ||Ae||/||Ax|| 8.456355778617e-002
>> 7 SNES Function norm 3.897321226706e-002
>> 0 KSP Residual norm 4.766590050155e-002
>> 0 KSP preconditioned resid norm 4.766590050155e-002 true resid norm 3.897321226706e-002 ||Ae||/||Ax|| 1.000000000000e+000
>> 1 KSP Residual norm 3.528025220977e-009
>> 1 KSP preconditioned resid norm 3.528025220977e-009 true resid norm 1.960313404416e-002 ||Ae||/||Ax|| 5.029899488355e-001
>> 8 SNES Function norm 3.589720610234e-002
>> 0 KSP Residual norm 4.289930864255e-002
>> 0 KSP preconditioned resid norm 4.289930864255e-002 true resid norm 3.589720610234e-002 ||Ae||/||Ax|| 1.000000000000e+000
>> 1 KSP Residual norm 4.133432759880e-009
>> 1 KSP preconditioned resid norm 4.133432759880e-009 true resid norm 1.940005023620e-002 ||Ae||/||Ax|| 5.404334304149e-001
>> 9 SNES Function norm 3.301230929196e-002
>> 0 KSP Residual norm 3.860937624684e-002
>> 0 KSP preconditioned resid norm 3.860937624684e-002 true resid norm 3.301230929196e-002 ||Ae||/||Ax|| 1.000000000000e+000
>> 1 KSP Residual norm 8.211304264406e-010
>> 1 KSP preconditioned resid norm 8.211304264406e-010 true resid norm 7.328958637952e-003 ||Ae||/||Ax|| 2.220068451781e-001
>> 10 SNES Function norm 3.030900587812e-002
>> 0 KSP Residual norm 3.474843739750e-002
>> 0 KSP preconditioned resid norm 3.474843739750e-002 true resid norm 3.030900587812e-002 ||Ae||/||Ax|| 1.000000000000e+000
>> 1 KSP Residual norm 3.265840938498e-009
>> 1 KSP preconditioned resid norm 3.265840938498e-009 true resid norm 1.358870142093e-002 ||Ae||/||Ax|| 4.483387371916e-001
>> 11 SNES Function norm 2.718409957830e-002
>> 0 KSP Residual norm 3.013614572851e-002
>> 0 KSP preconditioned resid norm 3.013614572851e-002 true resid norm 2.718409957830e-002 ||Ae||/||Ax|| 1.000000000000e+000
>> 1 KSP Residual norm 1.652744245097e-009
>> 1 KSP preconditioned resid norm 1.652744245097e-009 true resid norm 1.202105117910e-002 ||Ae||/||Ax|| 4.422089149754e-001
>> 12 SNES Function norm 2.437348813670e-002
>> 0 KSP Residual norm 2.629377332723e-002
>> 0 KSP preconditioned resid norm 2.629377332723e-002 true resid norm 2.437348813670e-002 ||Ae||/||Ax|| 1.000000000000e+000
>> 1 KSP Residual norm 3.959255153953e-009
>> 1 KSP preconditioned resid norm 3.959255153953e-009 true resid norm 2.578989386428e-002 ||Ae||/||Ax|| 1.058112557367e+000
>> 13 SNES Function norm 2.199784341474e-002
>> 0 KSP Residual norm 2.328182605620e-002
>> 0 KSP preconditioned resid norm 2.328182605620e-002 true resid norm 2.199784341474e-002 ||Ae||/||Ax|| 1.000000000000e+000
>> 1 KSP Residual norm 8.915626892590e-010
>> 1 KSP preconditioned resid norm 8.915626892590e-010 true resid norm 6.263373898192e-003 ||Ae||/||Ax|| 2.847267243477e-001
>> 14 SNES Function norm 1.833996742657e-002
>> 0 KSP Residual norm 1.794186796967e-002
>> 0 KSP preconditioned resid norm 1.794186796967e-002 true resid norm 1.833996742657e-002 ||Ae||/||Ax|| 1.000000000000e+000
>> 1 KSP Residual norm 1.694980794482e-009
>> 1 KSP preconditioned resid norm 1.694980794482e-009 true resid norm 2.372076451714e-003 ||Ae||/||Ax|| 1.293391856453e-001
>> 15 SNES Function norm 1.384131369872e-002
>> 0 KSP Residual norm 1.074320273869e-002
>> 0 KSP preconditioned resid norm 1.074320273869e-002 true resid norm 1.384131369872e-002 ||Ae||/||Ax|| 1.000000000000e+000
>> 1 KSP Residual norm 7.118408455169e-010
>> 1 KSP preconditioned resid norm 7.118408455169e-010 true resid norm 4.592913592019e-003 ||Ae||/||Ax|| 3.318264213927e-001
>> 16 SNES Function norm 8.126551489387e-003
>> 0 KSP Residual norm 2.817712852237e-009
>> 0 KSP preconditioned resid norm 2.817712852237e-009 true resid norm 8.126551489387e-003 ||Ae||/||Ax|| 1.000000000000e+000
>> 1 KSP Residual norm 2.239560797627e-016
>> 1 KSP preconditioned resid norm 2.239560797627e-016 true resid norm 1.053395037920e-009 ||Ae||/||Ax|| 1.296238680448e-007
>> 17 SNES Function norm 4.871218193429e-008
>> 0 KSP Residual norm 1.123675925695e-014
>> 0 KSP preconditioned resid norm 1.123675925695e-014 true resid norm 4.871218193429e-008 ||Ae||/||Ax|| 1.000000000000e+000
>> 1 KSP Residual norm 5.307928330547e-022
>> 1 KSP preconditioned resid norm 5.307928330547e-022 true resid norm 2.893354456541e-015 ||Ae||/||Ax|| 5.939693813026e-008
>> 18 SNES Function norm 5.035279029783e-008
>> STEP 2 (Newton iterations: 18)
>>
>> diverged reason: -6
>>
>>
>> Rong
>>
>>> ----- Original Message ----- From: "Barry Smith" <bsmith at mcs.anl.gov>
>>> To: "PETSc users list" <petsc-users at mcs.anl.gov>
>>> Sent: Wednesday, May 11, 2011 11:05 AM
>>> Subject: Re: [petsc-users] nonzero prescribed boundary condition
>>>
>>>
>>>
>>> Ok, the linear solver looks like it is working ok. The likely problem is
>>> that Jacobian does not match the function evaluation.
>>>
>>> Run the same thing but with the additional option -snes_mf_operator
>>>
>>> Then run with -snes_type test (instead of -snes_mf_operator).
>>>
>>> Barry
>>>
>>> On May 10, 2011, at 8:14 PM, Tian(ICT) wrote:
>>>
>>>> Dear Barry, here is the output using -pc_type
>>>> lu -ksp_monitor_true_residual -snes_monitor -ksp_monitor
>>>> the attached is the same and for clear reference. Thanks again for helps.
>>>>
>>>> atol=1e-050, rtol=1e-008, stol=1e-008, maxit=50, maxf=10000
>>>> 0 SNES Function norm 7.071067811865e-002
>>>> 0 KSP Residual norm 9.965778978387e-002
>>>> 0 KSP preconditioned resid norm 9.965778978387e-002 true resid norm
>>>> 7.071067811865e-002 ||Ae||/||Ax|| 1.000000000000e+000
>>>> 1 KSP Residual norm 6.823187455811e-017
>>>> 1 KSP preconditioned resid norm 6.823187455811e-017 true resid norm
>>>> 8.847298885656e-011 ||Ae||/||Ax|| 1.251197007446e-009
>>>> 1 SNES Function norm 6.401926523423e-002
>>>> 0 KSP Residual norm 8.969200212486e-002
>>>> 0 KSP preconditioned resid norm 8.969200212486e-002 true resid norm
>>>> 6.401926523423e-002 ||Ae||/||Ax|| 1.000000000000e+000
>>>> 1 KSP Residual norm 1.106757475780e-016
>>>> 1 KSP preconditioned resid norm 1.106757475780e-016 true resid norm
>>>> 6.211830067439e-011 ||Ae||/||Ax|| 9.703063671087e-010
>>>> 2 SNES Function norm 5.849992149767e-002
>>>> 0 KSP Residual norm 8.072279488157e-002
>>>> 0 KSP preconditioned resid norm 8.072279488157e-002 true resid norm
>>>> 5.849992149767e-002 ||Ae||/||Ax|| 1.000000000000e+000
>>>> 1 KSP Residual norm 1.268750073799e-017
>>>> 1 KSP preconditioned resid norm 1.268750073799e-017 true resid norm
>>>> 3.802431036387e-011 ||Ae||/||Ax|| 6.499890835816e-010
>>>> 3 SNES Function norm 5.376618503592e-002
>>>> 0 KSP Residual norm 7.265050969883e-002
>>>> 0 KSP preconditioned resid norm 7.265050969883e-002 true resid norm
>>>> 5.376618503592e-002 ||Ae||/||Ax|| 1.000000000000e+000
>>>> 1 KSP Residual norm 2.677655733356e-017
>>>> 1 KSP preconditioned resid norm 2.677655733356e-017 true resid norm
>>>> 8.120397788686e-011 ||Ae||/||Ax|| 1.510316899602e-009
>>>> 4 SNES Function norm 4.956894354459e-002
>>>> 0 KSP Residual norm 6.538545411661e-002
>>>> 0 KSP preconditioned resid norm 6.538545411661e-002 true resid norm
>>>> 4.956894354459e-002 ||Ae||/||Ax|| 1.000000000000e+000
>>>> 1 KSP Residual norm 9.557004153175e-017
>>>> 1 KSP preconditioned resid norm 9.557004153175e-017 true resid norm
>>>> 2.944250802029e-011 ||Ae||/||Ax|| 5.939708598754e-010
>>>> 5 SNES Function norm 4.575418613137e-002
>>>> 0 KSP Residual norm 5.884690496914e-002
>>>> 0 KSP preconditioned resid norm 5.884690496914e-002 true resid norm
>>>> 4.575418613137e-002 ||Ae||/||Ax|| 1.000000000000e+000
>>>> 1 KSP Residual norm 5.470969262115e-017
>>>> 1 KSP preconditioned resid norm 5.470969262115e-017 true resid norm
>>>> 3.659003166095e-011 ||Ae||/||Ax|| 7.997089393284e-010
>>>> 6 SNES Function norm 4.223022245585e-002
>>>> 0 KSP Residual norm 5.296221144636e-002
>>>> 0 KSP preconditioned resid norm 5.296221144636e-002 true resid norm
>>>> 4.223022245585e-002 ||Ae||/||Ax|| 1.000000000000e+000
>>>> 1 KSP Residual norm 8.255198782390e-017
>>>> 1 KSP preconditioned resid norm 8.255198782390e-017 true resid norm
>>>> 1.955545658933e-011 ||Ae||/||Ax|| 4.630678090739e-010
>>>> 7 SNES Function norm 3.894430065910e-002
>>>> 0 KSP Residual norm 4.766598785088e-002
>>>> 0 KSP preconditioned resid norm 4.766598785088e-002 true resid norm
>>>> 3.894430065910e-002 ||Ae||/||Ax|| 1.000000000000e+000
>>>> 1 KSP Residual norm 3.322615478395e-017
>>>> 1 KSP preconditioned resid norm 3.322615478395e-017 true resid norm
>>>> 3.485328148673e-011 ||Ae||/||Ax|| 8.949520442496e-010
>>>> 8 SNES Function norm 3.586683371135e-002
>>>> 0 KSP Residual norm 4.289938708067e-002
>>>> 0 KSP preconditioned resid norm 4.289938708067e-002 true resid norm
>>>> 3.586683371135e-002 ||Ae||/||Ax|| 1.000000000000e+000
>>>> 1 KSP Residual norm 6.181358328498e-017
>>>> 1 KSP preconditioned resid norm 6.181358328498e-017 true resid norm
>>>> 3.246902818086e-011 ||Ae||/||Ax|| 9.052660862724e-010
>>>> 9 SNES Function norm 3.298130202025e-002
>>>> 0 KSP Residual norm 3.860944676473e-002
>>>> 0 KSP preconditioned resid norm 3.860944676473e-002 true resid norm
>>>> 3.298130202025e-002 ||Ae||/||Ax|| 1.000000000000e+000
>>>> 1 KSP Residual norm 4.635174776374e-017
>>>> 1 KSP preconditioned resid norm 4.635174776374e-017 true resid norm
>>>> 1.497516842272e-011 ||Ae||/||Ax|| 4.540502498513e-010
>>>> 10 SNES Function norm 3.027806208930e-002
>>>> 0 KSP Residual norm 3.474850078591e-002
>>>> 0 KSP preconditioned resid norm 3.474850078591e-002 true resid norm
>>>> 3.027806208930e-002 ||Ae||/||Ax|| 1.000000000000e+000
>>>> 1 KSP Residual norm 2.389914053685e-017
>>>> 1 KSP preconditioned resid norm 2.389914053685e-017 true resid norm
>>>> 6.007440888596e-011 ||Ae||/||Ax|| 1.984090286517e-009
>>>> 11 SNES Function norm 2.749422924729e-002
>>>> 0 KSP Residual norm 3.081350823297e-002
>>>> 0 KSP preconditioned resid norm 3.081350823297e-002 true resid norm
>>>> 2.749422924729e-002 ||Ae||/||Ax|| 1.000000000000e+000
>>>> 1 KSP Residual norm 2.640567497647e-017
>>>> 1 KSP preconditioned resid norm 2.640567497647e-017 true resid norm
>>>> 1.281638295853e-011 ||Ae||/||Ax|| 4.661481085089e-010
>>>> 12 SNES Function norm 2.437488247885e-002
>>>> 0 KSP Residual norm 2.633007441879e-002
>>>> 0 KSP preconditioned resid norm 2.633007441879e-002 true resid norm
>>>> 2.437488247885e-002 ||Ae||/||Ax|| 1.000000000000e+000
>>>> 1 KSP Residual norm 2.772331460094e-017
>>>> 1 KSP preconditioned resid norm 2.772331460094e-017 true resid norm
>>>> 1.918212496143e-011 ||Ae||/||Ax|| 7.869627670236e-010
>>>> 13 SNES Function norm 2.079664278637e-002
>>>> 0 KSP Residual norm 2.104738289397e-002
>>>> 0 KSP preconditioned resid norm 2.104738289397e-002 true resid norm
>>>> 2.079664278637e-002 ||Ae||/||Ax|| 1.000000000000e+000
>>>> 1 KSP Residual norm 1.650632708670e-017
>>>> 1 KSP preconditioned resid norm 1.650632708670e-017 true resid norm
>>>> 2.316371967362e-011 ||Ae||/||Ax|| 1.113820144509e-009
>>>> 14 SNES Function norm 1.657344626858e-002
>>>> 0 KSP Residual norm 1.454141853505e-002
>>>> 0 KSP preconditioned resid norm 1.454141853505e-002 true resid norm
>>>> 1.657344626858e-002 ||Ae||/||Ax|| 1.000000000000e+000
>>>> 1 KSP Residual norm 1.129401160070e-017
>>>> 1 KSP preconditioned resid norm 1.129401160070e-017 true resid norm
>>>> 7.885499327559e-012 ||Ae||/||Ax|| 4.757911661686e-010
>>>> 15 SNES Function norm 1.484243752612e-002
>>>> 0 KSP Residual norm 5.241948491751e-009
>>>> 0 KSP preconditioned resid norm 5.241948491751e-009 true resid norm
>>>> 1.484243752612e-002 ||Ae||/||Ax|| 1.000000000000e+000
>>>> 1 KSP Residual norm 2.729506849025e-024
>>>> 1 KSP preconditioned resid norm 2.729506849025e-024 true resid norm
>>>> 6.386677851085e-018 ||Ae||/||Ax|| 4.302984492839e-016
>>>> 16 SNES Function norm 2.828002157497e-008
>>>> 0 KSP Residual norm 6.042518362322e-015
>>>> 0 KSP preconditioned resid norm 6.042518362322e-015 true resid norm
>>>> 2.828002157497e-008 ||Ae||/||Ax|| 1.000000000000e+000
>>>> 1 KSP Residual norm 6.272441346127e-030
>>>> 1 KSP preconditioned resid norm 6.272441346127e-030 true resid norm
>>>> 1.112857698032e-023 ||Ae||/||Ax|| 3.935137372797e-016
>>>> 17 SNES Function norm 2.960967020289e-008
>>>> STEP 0 (Newton iterations: 17)
>>>>
>>>> diverged reason: -6
>>>>
>>>>
>>>> ----- Original Message ----- From: "Barry Smith" <bsmith at mcs.anl.gov>
>>>> To: "PETSc users list" <petsc-users at mcs.anl.gov>
>>>> Sent: Wednesday, May 11, 2011 2:54 AM
>>>> Subject: Re: [petsc-users] nonzero prescribed boundary condition
>>>>
>>>>
>>>>
>>>> Use -pc_type lu -ksp_monitor_true_residual -snes_monitor -ksp_monitor and
>>>> send the outputs
>>>>
>>>>
>>>> Barry
>>>>
>>>> On May 9, 2011, at 10:43 PM, Tian(ICT) wrote:
>>>>
>>>>> by the way, the increment size is like that
>>>>> for a 100 lengh model, the increment is set to 0.05,
>>>>> the engineering strain is around 5%% per load step.
>>>>> This is already too small increment size for a large deformation
>>>>> analysis.
>>>>> a 0.5 increment size leads to both linear search and trust region failed.
>>>>> linear search failed for 0.05 while trust region converges with 17 Newton
>>>>> iterations each load step.
>>>>> Rong
>>>>>
>>>>> ----- Original Message ----- From: "Tian(ICT)" <rongtian at ncic.ac.cn>
>>>>> To: "PETSc users list" <petsc-users at mcs.anl.gov>
>>>>> Sent: Tuesday, May 10, 2011 11:37 AM
>>>>> Subject: Re: [petsc-users] nonzero prescribed boundary condition
>>>>>
>>>>>
>>>>>> First, thanks again, the issue was gone.
>>>>>>
>>>>>> I just followed up with some test results.
>>>>>> I have tested SNES using one finite element for a geometric large
>>>>>> deformation problem.
>>>>>> Those are just the very early test results so they may be not telling
>>>>>> what happened exactly.
>>>>>> For the displacement controlled load, I found that convergence is much
>>>>>> slower than that of force loading.
>>>>>> Even worse, linear search is so sensitive to the displacement increment
>>>>>> and diverged no matter what the increment size was used (too small
>>>>>> incremnt also led to diverged soloution (-6 reason), trust region works
>>>>>> well in the sense of not sensitive to the displacement increment, but
>>>>>> during each load step, it requires around ten to several tens of Newton
>>>>>> interations whereas for the force loading case and the almost same
>>>>>> amount of deformation, this is normally 3. This is against my
>>>>>> expectation. Any hint?
>>>>>>
>>>>>> Rong
>>>>>>
>>>>>> ----- Original Message ----- From: "Barry Smith" <bsmith at mcs.anl.gov>
>>>>>> To: "PETSc users list" <petsc-users at mcs.anl.gov>
>>>>>> Sent: Tuesday, May 10, 2011 10:22 AM
>>>>>> Subject: Re: [petsc-users] nonzero prescribed boundary condition
>>>>>>
>>>>>>
>>>>>>
>>>>>> On May 9, 2011, at 9:15 PM, Tian(ICT) wrote:
>>>>>>
>>>>>>> Dear Barry, Thanks a lot for quick answering.
>>>>>>> I checked the development documents and found the new version of
>>>>>>> MatZeroRows() does support the nonzero prescribed boundary conditions.
>>>>>>>
>>>>>>> I followed up with more details.
>>>>>>> I am using Petasc 2.3.3. to solve a nonlinear problem, e.g. using SNES
>>>>>>> solvers.
>>>>>>> I used a displacement-controlled load (as this type of loading works
>>>>>>> well for all cases).
>>>>>>> This is the reason the nonzero prescribed boundary came up.
>>>>>>>
>>>>>>> In FormJacobian, I modified Jacobian and residual to satisfy the
>>>>>>> nonzero prescribed boundary.
>>>>>>> In FormFunction, I modified the solution to the known solution(this
>>>>>>> should not be necessary as the modified Jacobian and rhs should give
>>>>>>> the prescribed solution also)
>>>>>>
>>>>>> You should not do it this way. See below.
>>>>>>>
>>>>>>> Now I found another issue, no matter if I prescried the solution or not
>>>>>>> in FormFunction,
>>>>>>> SNES solver always call FormFunction and never call FormJacobian.
>>>>>>
>>>>>> The only reason it would not call FormJacobian is if decided that the
>>>>>> residual norm was small enough before any Newton steps; for example if
>>>>>> the FormFunction() computed exactly the zero function initially. When
>>>>>> you run with -snes_monitor -ksp_monitor what does it print for residual
>>>>>> norms.
>>>>>>
>>>>>>> Of course the solver finally diverged or converged to a zero solution.
>>>>>>>
>>>>>>> So my quick follow up question is How a displacement-controled load is
>>>>>>> done corrently in Petsc 2.3.3?
>>>>>>
>>>>>> To do it in 2.3.3 simply have for those components of F() the formula
>>>>>> F_i = x_i - givenvalue_i and in your Jacobian just use MatZeroRows() for
>>>>>> those rows
>>>>>>
>>>>>> We strongly urge you to upgrade to the latest PETSc before doing
>>>>>> anything further.
>>>>>>
>>>>>>
>>>>>> Barry
>>>>>>
>>>>>>>
>>>>>>> Rong
>>>>>>>
>>>>>>> ----- Original Message ----- From: "Barry Smith" <bsmith at mcs.anl.gov>
>>>>>>> To: "PETSc users list" <petsc-users at mcs.anl.gov>
>>>>>>> Sent: Tuesday, May 10, 2011 9:31 AM
>>>>>>> Subject: Re: [petsc-users] nonzero prescribed boundary condition
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> In petsc-dev
>>>>>>> http://www.mcs.anl.gov/petsc/petsc-as/developers/index.html we have
>>>>>>> modified the calling sequence for MatZeroRows() so that it can
>>>>>>> automatically adjust the appropriate right hand side values for the
>>>>>>> zeroed rows to support zero or non-zero prescribed boundary conditions
>>>>>>> easily.
>>>>>>>
>>>>>>> Barry
>>>>>>>
>>>>>>> On May 9, 2011, at 8:18 PM, Tian(ICT) wrote:
>>>>>>>
>>>>>>>> Dear all,
>>>>>>>>
>>>>>>>> I got this question long ago and searched the prior posting but did
>>>>>>>> not find the solution.
>>>>>>>> The question is about nonzero prescribed boundary condition.
>>>>>>>> My understanding is that MatZeroRows() works only for zero prescribed
>>>>>>>> value, not non-zero value.
>>>>>>>> For the non-zero values, we have to remove the rows associated with
>>>>>>>> the boundary, but this
>>>>>>>> will lead to a zero dignal and accordingly the rows in r.h.s should
>>>>>>>> also be removed.
>>>>>>>> My question is that does MatZeroRows() also works for nonzero
>>>>>>>> prescribed boundary and if so how to do it simply?
>>>>>>>>
>>>>>>>> Rong
>>>>>>>
>>>>>>>
>>>>>>
>>>>>>
>>>>>
>>>>
>>>> <aa>
>>>
>>>
>>
>
>
More information about the petsc-users
mailing list