OK, so this time, I deleted externalpackages/sow* externalpackages/_d_sow* ,
$PETSC_ARCH, reconfigured and rebuild, but the fortran binding is unchanged. I
even deleted it and ran make allfortranstubs, but I still get the same error.
Blaise
On Oct 27, 2011, at 3:19 PM, Satish Balay wrote:
> Are you sure sowing got rebuilt? [the other requirement for rebuild is 'rm
> PETSC_ARCH/conf/sowing']
>
> Satish
>
> ---------
> asterix:/home/balay/hg-repo/petsc-release-3.2>diff -Nru
> ./src/ts/interface/ftn-auto/tsf.c
> ~/tmp/petsc-dist-test/./src/ts/interface/ftn-auto/tsf.c
> --- ./src/ts/interface/ftn-auto/tsf.c 2011-10-23
> 12:24:44.019970587 -0500
> +++ /home/balay/tmp/petsc-dist-test/./src/ts/interface/ftn-auto/tsf.c
> 2011-10-27 15:05:35.883363505 -0500
> @@ -386,8 +386,7 @@
> }
> void PETSC_STDCALL tsgetconvergedreason_(TS ts,TSConvergedReason *reason,
> int *__ierr ){
> *__ierr = TSGetConvergedReason(
> - (TS)PetscToPointer((ts) ),
> - (TSConvergedReason* )PetscToPointer((reason) ));
> + (TS)PetscToPointer((ts) ),reason);
> }
> void PETSC_STDCALL tsvisetvariablebounds_(TS ts,Vec xl,Vec xu, int *__ierr ){
> *__ierr = TSVISetVariableBounds(
> asterix:/home/balay/hg-repo/petsc-release-3.2>
>
>
> On Thu, 27 Oct 2011, Blaise Bourdin wrote:
>
>> after deleting externalpackages/sow*, updating petsc and BuildSystem,
>> reconfiguring, deleting src/ts/interface/ftn-auto/tsf.c, regenerating the
>> fortran bindings, then rebuilding, I still get the same error (and the
>> fortan binding is unchanged)
>>
>> Blaise
>>
>> On Oct 27, 2011, at 3:02 PM, Satish Balay wrote:
>>
>>> I just updated the tarball with an entry for TSGetConvergedReason
>>> [hence the rebuild request]
>>>
>>>
>>> Satish
>>>
>>> On Thu, 27 Oct 2011, Blaise Bourdin wrote:
>>>
>>>> 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