[petsc-users] DMPlex<Vec,Mat>SetClosure
Dharmendar Reddy
dharmareddy84 at gmail.com
Mon Apr 15 19:36:31 CDT 2013
I did realize that after some digging. I fixed that part. Thanks for the
updates to dmsneslocal.
If i am on the branch next, do i get access to all the changes you push to
knepley/plex ?
On Mon, Apr 15, 2013 at 7:20 PM, Matthew Knepley <knepley at gmail.com> wrote:
> On Sat, Apr 13, 2013 at 9:51 PM, Dharmendar Reddy <dharmareddy84 at gmail.com
> > wrote:
>
>> Hello,
>> Got it. I understand the reason for errors. I was using
>> XXXSetF90 functions in my code so i was using allocatable arrays. I thought
>> all set/getvlaues had corresponding F90 functions. I was trying to define
>> and use things consistently in the code.
>> I can fix the compile errors using pointers now.
>>
>> Now, can i request for Fortran interface for DMPlexMatSetClosure ?
>>
>
> Pushed.
>
>
>
>> will you be adding Fortran interfaces to the functions listed below ?
>>
>> FEMModules.F90:(.text+0xbfe0): undefined reference to
>> `dmplexgetdefaultsection_'
>>
>
> This is just DMGetDefaultSection().
>
> Matt
>
>
>> FEMModules.F90:(.text+0xc048): undefined reference to
>> `petscsectiongetconstraintdof_
>>
>> Solver.F90:(.text+0xaa1): undefined reference to `dmsnessetjacobianlocal_'
>> Solver.F90:(.text+0xabc): undefined reference to `dmsnessetfunctionlocal_'
>>
>> Thanks
>> Reddy
>>
>>
>> On Sat, Apr 13, 2013 at 9:32 PM, Matthew Knepley <knepley at gmail.com>wrote:
>>
>>> On Sat, Apr 13, 2013 at 9:18 PM, Dharmendar Reddy <
>>> dharmareddy84 at gmail.com> wrote:
>>>
>>>> I am getting bunch of erros in my code related to DMPlex
>>>>
>>>> If i use DMPlexVecSetClosure I get the following error.
>>>>
>>>> A pointer dummy argument may only be argument associated with a
>>>> pointer. [FELM]
>>>> call
>>>> DMPlexVecSetClosure(dm,PETSC_NULL_OBJECT,F,cellId,Felm,ADD_VALUES,ierr)
>>>>
>>>> Felm is defined as : PetscScalar,allocatable :: Felm(:)
>>>>
>>>
>>> Did you look at the sample code?
>>>
>>>
>>> http://www.mcs.anl.gov/petsc/petsc-dev/src/dm/impls/plex/examples/tests/ex2f90.F.html
>>>
>>> You define pointers. You can see what function I have defined by looking
>>> at the header
>>>
>>>
>>> https://bitbucket.org/petsc/petsc/src/62a20339e027b37fab44424f1466054586f1dc85/include/finclude/ftn-custom/petscdmplex.h90?at=master
>>>
>>> and its clear from the file that DMPlexMatSetClosure() has not been
>>> defined in Fortran.
>>>
>>> Matt
>>>
>>>
>>>> I do a similar call to DMPlexMatSetClosure, i get no error.
>>>>
>>>> Now if i use DMPlexVecSetClosureF90, code compiles, but i see undefined
>>>> reference error during link stage:
>>>>
>>>> FEMModules.F90:(.text+0xba77): undefined reference to
>>>> `dmplexvecsetclosuref90_'
>>>>
>>>> FEMModules.F90:(.text+0xbea9): undefined reference to
>>>> `dmplexmatsetclosure_'
>>>>
>>>> FEMModules.F90:(.text+0xbfe0): undefined reference to
>>>> `dmplexgetdefaultsection_'
>>>> FEMModules.F90:(.text+0xc048): undefined reference to
>>>> `petscsectiongetconstraintdof_
>>>>
>>>> Solver.F90:(.text+0xaa1): undefined reference to
>>>> `dmsnessetjacobianlocal_'
>>>> Solver.F90:(.text+0xabc): undefined reference to
>>>> `dmsnessetfunctionlocal_'
>>>>
>>>>
>>>>
>>>>
>>>> On Sat, Apr 13, 2013 at 8:22 PM, Matthew Knepley <knepley at gmail.com>wrote:
>>>>
>>>>> On Sat, Apr 13, 2013 at 8:20 PM, Dharmendar Reddy <
>>>>> dharmareddy84 at gmail.com> wrote:
>>>>>
>>>>>> Hello,
>>>>>> I am getting an undefined reference error ::
>>>>>> FEMModules.F90:(.text+0xba77): undefined reference to
>>>>>> `dmplexvecsetclosuref90_'
>>>>>> FEMModules.F90:(.text+0xbea9): undefined reference to
>>>>>> `dmplexmatsetclosuref90_'
>>>>>>
>>>>>> I can see that DMPlexVecSetClosure is defined in
>>>>>>
>>>>>> /finclude/ftn-custom/petscdmplex.h90:159:
>>>>>>
>>>>>> but the name is DMPlexVecSetClosure instead of DMPlexVecSetClosureF90.
>>>>>>
>>>>>> And there is no DMPlexMatSetClosureF90
>>>>>>
>>>>>>
>>>>>> What should i do ?
>>>>>>
>>>>>
>>>>> I was not consistent here with the naming. Since an F77 version was
>>>>> not possible, I did not
>>>>> add F90. That is probably wrong, however I would like to scrap the F77
>>>>> version of Plex since
>>>>> everyone uses F90 now and the extra letters are annoying. Go ahead and
>>>>> use the function.
>>>>>
>>>>> Matt
>>>>>
>>>>>
>>>>>> Thanks
>>>>>> Reddy
>>>>>> --
>>>>>> -----------------------------------------------------
>>>>>> Dharmendar Reddy Palle
>>>>>> Graduate Student
>>>>>> Microelectronics Research center,
>>>>>> University of Texas at Austin,
>>>>>> 10100 Burnet Road, Bldg. 160
>>>>>> MER 2.608F, TX 78758-4445
>>>>>> e-mail: dharmareddy84 at gmail.com
>>>>>> Phone: +1-512-350-9082
>>>>>> United States of America.
>>>>>> Homepage: https://webspace.utexas.edu/~dpr342
>>>>>>
>>>>>
>>>>>
>>>>>
>>>>> --
>>>>> What most experimenters take for granted before they begin their
>>>>> experiments is infinitely more interesting than any results to which their
>>>>> experiments lead.
>>>>> -- Norbert Wiener
>>>>>
>>>>
>>>>
>>>>
>>>> --
>>>> -----------------------------------------------------
>>>> Dharmendar Reddy Palle
>>>> Graduate Student
>>>> Microelectronics Research center,
>>>> University of Texas at Austin,
>>>> 10100 Burnet Road, Bldg. 160
>>>> MER 2.608F, TX 78758-4445
>>>> e-mail: dharmareddy84 at gmail.com
>>>> Phone: +1-512-350-9082
>>>> United States of America.
>>>> Homepage: https://webspace.utexas.edu/~dpr342
>>>>
>>>
>>>
>>>
>>> --
>>> What most experimenters take for granted before they begin their
>>> experiments is infinitely more interesting than any results to which their
>>> experiments lead.
>>> -- Norbert Wiener
>>>
>>
>>
>>
>> --
>> -----------------------------------------------------
>> Dharmendar Reddy Palle
>> Graduate Student
>> Microelectronics Research center,
>> University of Texas at Austin,
>> 10100 Burnet Road, Bldg. 160
>> MER 2.608F, TX 78758-4445
>> e-mail: dharmareddy84 at gmail.com
>> Phone: +1-512-350-9082
>> United States of America.
>> Homepage: https://webspace.utexas.edu/~dpr342
>>
>
>
>
> --
> What most experimenters take for granted before they begin their
> experiments is infinitely more interesting than any results to which their
> experiments lead.
> -- Norbert Wiener
>
--
-----------------------------------------------------
Dharmendar Reddy Palle
Graduate Student
Microelectronics Research center,
University of Texas at Austin,
10100 Burnet Road, Bldg. 160
MER 2.608F, TX 78758-4445
e-mail: dharmareddy84 at gmail.com
Phone: +1-512-350-9082
United States of America.
Homepage: https://webspace.utexas.edu/~dpr342
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mcs.anl.gov/pipermail/petsc-users/attachments/20130415/b7f81b40/attachment-0001.html>
More information about the petsc-users
mailing list