[petsc-dev] DMNetwork static sizing
Matthew Knepley
knepley at gmail.com
Mon Apr 5 05:47:57 CDT 2021
Dowe really need a configure time constant for
struct _p_DMNetworkComponentHeader {
PetscInt index; /* index for user input global edge and vertex */
PetscInt subnetid; /* Id for subnetwork */
PetscInt ndata; /* number of components */
PetscInt size[PETSC_DMNETWORK_MAXIMUM_COMPONENTS_PER_POINT];
PetscInt key[PETSC_DMNETWORK_MAXIMUM_COMPONENTS_PER_POINT];
PetscInt offset[PETSC_DMNETWORK_MAXIMUM_COMPONENTS_PER_POINT];
PetscInt nvar[PETSC_DMNETWORK_MAXIMUM_COMPONENTS_PER_POINT]; /* Number of
variables */
PetscInt offsetvarrel[PETSC_DMNETWORK_MAXIMUM_COMPONENTS_PER_POINT]; /*
offset from the first variable of the network point */
} PETSC_ATTRIBUTEALIGNED(PetscMax(sizeof(double),sizeof(PetscScalar)));
Can't we just allocate this struct when needed and carry the size along?
This design seem to go against the rest of what we do in PETSc?
Thanks,
Matt
--
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-dev/attachments/20210405/a6749ffa/attachment.html>
More information about the petsc-dev
mailing list