xref: /petsc/include/petscdmswarm.h (revision b5bcf52311774689373e5c90f7c8fdb3a2ca5abe)
13d5c7219SDave May #if !defined(__PETSCDMSWARM_H)
23d5c7219SDave May #define __PETSCDMSWARM_H
33d5c7219SDave May 
43d5c7219SDave May #include <petscdm.h>
53d5c7219SDave May 
6*b5bcf523SDave May PETSC_EXTERN PetscErrorCode DMSwarmCreateGlobalVectorFromField(DM dm,const char fieldname[],Vec *vec);
7*b5bcf523SDave May PETSC_EXTERN PetscErrorCode DMSwarmDestroyGlobalVectorFromField(DM dm,const char fieldname[],Vec *vec);
8*b5bcf523SDave May 
9*b5bcf523SDave May PETSC_EXTERN PetscErrorCode DMSwarmInitializeFieldRegister(DM dm);
10*b5bcf523SDave May PETSC_EXTERN PetscErrorCode DMSwarmFinalizeFieldRegister(DM dm);
11*b5bcf523SDave May PETSC_EXTERN PetscErrorCode DMSwarmSetLocalSizes(DM dm,PetscInt nlocal,PetscInt buffer);
12*b5bcf523SDave May PETSC_EXTERN PetscErrorCode DMSwarmRegisterPetscDatatypeField(DM dm,const char fieldname[],PetscInt blocksize,PetscDataType type);
13*b5bcf523SDave May PETSC_EXTERN PetscErrorCode DMSwarmRegisterUserStructField(DM dm,const char fieldname[],size_t size);
14*b5bcf523SDave May PETSC_EXTERN PetscErrorCode DMSwarmRegisterUserDatatypeField(DM dm,const char fieldname[],size_t size);
15*b5bcf523SDave May PETSC_EXTERN PetscErrorCode DMSwarmGetField(DM dm,const char fieldname[],PetscInt *blocksize,PetscDataType *type,void **data);
16*b5bcf523SDave May PETSC_EXTERN PetscErrorCode DMSwarmRestoreField(DM dm,const char fieldname[],PetscInt *blocksize,PetscDataType *type,void **data);
17*b5bcf523SDave May 
18*b5bcf523SDave May PETSC_EXTERN PetscErrorCode DMSwarmVectorDefineField(DM dm,const char fieldname[]);
193d5c7219SDave May 
203d5c7219SDave May #endif
213d5c7219SDave May 
22