[petsc-users] Inquiry about the PetscScalar in Petsc.

Matthew Knepley knepley at gmail.com
Tue Jul 11 10:54:01 CDT 2023


On Tue, Jul 11, 2023 at 11:48 AM neil liu <liufield at gmail.com> wrote:

> Thanks for your reply.
> I am using DMPLEX to read GMSH. And it seems I have to use
> DMGetCoordinatesLocal();
> VecGetArray(veccords, &coords);//it seems coords has to be defined by
> complex either.
>
> 2) Store the coordinates in coords with imaginary part equal to zero.
> I got the coordinates from above function *VecGetArray*, therefore will
> this reduce the memory?
>
> 3) is a good way to work around that.
>

We just store them with real part 0.

  Thanks,

    Matt


> On Tue, Jul 11, 2023 at 11:40 AM Barry Smith <bsmith at petsc.dev> wrote:
>
>>
>>   Not really. PetscScalar (and entries of vectors etc) are either real or
>> complex, they cannot be mixed.
>>
>>   What parts of PETSc are you using, DM?
>>
>>   You can
>>
>> 1) store the coordinates in arrays and not use Vec for them. (of if you
>> are not using DM)
>> 2) sore them in Vec but with imaginary part 0
>> 3) rewrite your complex systems as real systems (with twice as many
>> unknowns, but only real ones)
>>
>>   Barry
>>
>>
>> > On Jul 11, 2023, at 11:34 AM, neil liu <liufield at gmail.com> wrote:
>> >
>> > Dear Petsc developers,
>> >
>> > My computation involves both real and complex numbers.
>> > For example, my coordinate is real, but my matrix is complex.
>> >
>> > I use VecGetArray to get the coordinates. But it seems coordinates have
>> to be defined in a complex manner to be consistent with complex matrix.
>> >
>> > Is there some ways to work around this if I understood correctly ?
>> >
>> > Thanks,
>> >
>> > Xiaodong
>> >
>> >
>> >
>>
>>

-- 
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

https://www.cse.buffalo.edu/~knepley/ <http://www.cse.buffalo.edu/~knepley/>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mcs.anl.gov/pipermail/petsc-users/attachments/20230711/61445cf5/attachment-0001.html>


More information about the petsc-users mailing list