New changes for CG set type in 2.3.1-p7 ?

Barry Smith bsmith at mcs.anl.gov
Thu Feb 23 16:03:19 CST 2006


    What about calling SetFromOptions after the call to KSPCGSetType()?

     Thanks
      Barry


On Thu, 23 Feb 2006, Satish Balay wrote:

>
> I just tried the following [with both c & fortran examples
> ksp/examples/tutorials/ex2.c, ex2f.F] And I get the expected behavior.
>
> Maybe KSPSetType() was not called before KSPCGSetType()?
>
> Satish
>
> --------
>
>>>>
>      call KSPCreate(PETSC_COMM_WORLD,ksp,ierr)
>      call KSPSetType(ksp,KSPCG,ierr)
>      call KSPCGSetType(ksp,KSP_CG_SYMMETRIC,ierr)
>      call KSPSetOperators(ksp,A,A,DIFFERENT_NONZERO_PATTERN,ierr)
>>>>
>
> asterix:/home/balay/spetsc/src/ksp/ksp/examples/tutorials>./ex2f -ksp_view
> KSP Object:
>  type: cg
>    CG or CGNE: variant SYMMETRIC
>  maximum iterations=10000, initial guess is zero
>  tolerances:  relative=1e-05, absolute=1e-50, divergence=10000
>  left preconditioning
> PC Object:
>  type: ilu
>    ILU: 0 levels of fill
>    ILU: max fill ratio allocated 1
>    ILU: tolerance for zero pivot 1e-12
>         out-of-place factorization
>         matrix ordering: natural
>         Factored matrix follows
>    Matrix Object:
>      type=aij, rows=9, cols=9
>      total: nonzeros=33, allocated nonzeros=45
>        not using I-node routines
>  linear system matrix = precond matrix:
>  Matrix Object:
>    type=aij, rows=9, cols=9
>    total: nonzeros=33, allocated nonzeros=45
>      not using I-node routines
> Norm of error 0.1215E-05 iterations     4
> asterix:/home/balay/spetsc/src/ksp/ksp/examples/tutorials>
>
>
> On Thu, 23 Feb 2006, Barry Smith wrote:
>
>>
>>    Satish,
>>
>>     Can you please check this? We should be able to
>> call KSPCGSetType() either before or afterwards. It could
>> be that KSPSetFromOptions_CG() wrongly resets to the default
>> value. I looked at the code and didn't see any wrong logic.
>> Probably it may be easiest to just run in the debugger and
>> check if it wrongly reset.
>>
>>     Thanks
>>
>>     Barry
>>
>>
>> On Thu, 23 Feb 2006, abdul-rahman at tu-harburg.de wrote:
>>
>>>
>>>
>>> On Wed, 22 Feb 2006, Satish Balay wrote:
>>>
>>> I know where I did wrong now: the call below:
>>>
>>>>>>>       call KSPCGSetType( ksp, KSP_CG_SYMMETRIC, ierr )
>>>
>>> should have come _after_:
>>>
>>>  call KSPSetFromOptions(ksp,ierr)
>>>
>>> Otherwise it just goes with the default Hermitian even if I don't set the
>>> switch to Hermitian.
>>>
>>>
>>>> You should be able to verify if the correct type is used with
>>>> '-ksp_view' option.
>>>>
>>>> Satish
>>>>
>>>
>>> Thank you again
>>>
>>>
>>> Razi
>>>
>>>
>>
>>
>
>




More information about the petsc-users mailing list