[petsc-users] matsetvaluesblocked4_

Jed Brown jed at jedbrown.org
Wed May 27 22:27:58 CDT 2020


Mark Adams <mfadams at lbl.gov> writes:

>>
>>
>> Note that some DMPlex stuff might run faster if you just make one field
>> with num_species components instead of num_species fields with one
>> component each.  It'll also make the block structure more exploitable.
>>
>
> Humm, I assumed fields should be vectors (perhaps 0D for a scalar), but
> maybe Plex does not care. It would break my existing point functions and
> viz...

IIRC, the memory ordering for a point with several fields (of the same
size and number of components) is

  point_mem[field][node][component]

So if you want a block to have collocated components, it's better to
create one field with several components.  I'm pretty sure the
implementation will be faster, though it might still not be your
hot spot.


More information about the petsc-users mailing list