Satish,
This is a brand new petsc configured and installed today using sowing 1.1.16c
Blaise
On Oct 27, 2011, at 2:57 PM, Satish Balay wrote:
> Can you do the following and configure/rebuild petsc-dev - and see if
> the error goes away?
>
> rm -rf externalpacakges/sowing* PETSC_ARCH/conf/sowing
>
> Satish
>
> On Thu, 27 Oct 2011, Blaise Bourdin wrote:
>
>> Hi,
>>
>> Thanks for all the help in tracking our issue with TS... I think that there
>> is a small problem with the auto binding for TSGetConvergedReason (both dev
>> and 3.2).
>> I added a call to TSGetConvergedReason after the TSSolve in ex22f.F and get
>> the following result:
>>
>> (gdb) cont
>> Continuing.
>> [0]PETSC ERROR: TSGetConvergedReason() line 2755 in
>> /opt/HPC/petsc-dev/src/ts/interface/ts.c Invalid Pointer: Parameter # 2
>>
>> Program received signal SIGABRT, Aborted.
>> 0x00007fff98e4e82a in __kill ()
>> (gdb) where
>> #0 0x00007fff98e4e82a in __kill ()
>> #1 0x00007fff975f7a9c in abort ()
>> #2 0x0000000105bcbd52 in PetscAbortErrorHandler (comm=1140850689,
>> line=2755, fun=0x10691bb70 'TSGetConvergedReason\000', file=0x10691ae38
>> '/opt/HPC/petsc-dev/src/ts/interface/ts.c\000', dir=0x1068be9a0 '\000',
>> n=68, p=Invalid F77 type code 5 in symbol table.
>> ) at errabort.c:62
>> #3 0x0000000105bc4ce4 in PetscError (comm=1140850689, line=2755,
>> func=0x10691bb70 'TSGetConvergedReason\000', file=0x10691ae38
>> '/opt/HPC/petsc-dev/src/ts/interface/ts.c\000', dir=0x1068be9a0 '\000',
>> n=68, p=Invalid F77 type code 5 in symbol table.
>> ) at err.c:356
>> #4 0x000000010689e86b in TSGetConvergedReason (ts=0x7f7fab8e4370,
>> reason=0x162f727375) at ts.c:2755
>> #5 0x000000010682772d in tsgetconvergedreason_ (ts=0x7fff656ccf80,
>> reason=0x7fff656ccf8c, __ierr=0x7fff656ccfa8) at tsf.c:433
>> #6 0x0000000105ad037a in MAIN__ () at ex22f.F:127
>> #7 0x0000000105ad0426 in main (argc=3, argv=0x7fff656cd208 './ex22f\000')
>> at ex22f.F:137
>>
>>
>>
>>
>> If I replace te current binding in src/ts/interface/ftn-auto/tsf.c (yes, I
>> know I am not supposed to do that):
>> void PETSC_STDCALL tsgetconvergedreason_(TS ts,TSConvergedReason *reason,
>> int *__ierr ){
>> *__ierr = TSGetConvergedReason(
>> (TS)PetscToPointer((ts) ),
>> (TSConvergedReason* )PetscToPointer((reason) ));
>>
>> with this one:
>> void PETSC_STDCALL tsgetconvergedreason_(TS ts,TSConvergedReason *reason,
>> int *__ierr ){
>> *__ierr = TSGetConvergedReason(
>> (TS)PetscToPointer((ts) ),
>> reason);
>> }
>>
>> everything seems to work OK. Does this function need a custom binding?
>>
>> And also, the man page for TSGetConvergedReason states "see
>> TSConvergedReason or the manual pages for the individual convergence tests
>> for complete lists", but this man page does not seem to exist.
>>
>> Thanks,
>>
>> Blaise
>>
>>
>
--
Department of Mathematics and Center for Computation & Technology
Louisiana State University, Baton Rouge, LA 70803, USA
Tel. +1 (225) 578 1612, Fax +1 (225) 578 4276 http://www.math.lsu.edu/~bourdin