Actual source code: pvecimpl.h

petsc-3.3-p5 2012-12-01
  2: #ifndef __PVECIMPL

  5: #include <petsc-private/vecimpl.h>
  6: #include <../src/vec/vec/impls/dvecimpl.h>

  8: typedef struct {
  9:   VECHEADER
 10:   MPI_Request *send_waits,*recv_waits;  /* for communication during VecAssembly() */
 11:   PetscInt    nsends,nrecvs;
 12:   PetscScalar *svalues,*rvalues;
 13:   PetscInt    rmax;
 14: 
 15:   PetscInt    nghost;                   /* length of local portion including ghost padding */
 16: 
 17:   Vec         localrep;                 /* local representation of vector */
 18:   VecScatter  localupdate;              /* scatter to update ghost values */
 19: } Vec_MPI;

 21: extern PetscErrorCode VecMDot_MPI(Vec,PetscInt,const Vec[],PetscScalar *);
 22: extern PetscErrorCode VecTDot_MPI(Vec,Vec,PetscScalar *);
 23: extern PetscErrorCode VecMTDot_MPI(Vec,PetscInt,const Vec[],PetscScalar *);
 24: extern PetscErrorCode VecNorm_MPI(Vec,NormType,PetscReal *);
 25: extern PetscErrorCode VecMax_MPI(Vec,PetscInt *,PetscReal *);
 26: extern PetscErrorCode VecMin_MPI(Vec,PetscInt *,PetscReal *);
 27: extern PetscErrorCode VecDestroy_MPI(Vec);
 28: extern PetscErrorCode VecView_MPI_Binary(Vec,PetscViewer);
 29: extern PetscErrorCode VecView_MPI_Netcdf(Vec,PetscViewer);
 30: extern PetscErrorCode VecView_MPI_Draw_LG(Vec,PetscViewer);
 31: extern PetscErrorCode VecView_MPI_Socket(Vec,PetscViewer);
 32: extern PetscErrorCode VecView_MPI_HDF5(Vec,PetscViewer);
 33: extern PetscErrorCode VecView_MPI(Vec,PetscViewer);
 34: extern PetscErrorCode VecGetSize_MPI(Vec,PetscInt *);
 35: extern PetscErrorCode VecPlaceArray_MPI(Vec,const PetscScalar []);
 36: extern PetscErrorCode VecGetValues_MPI(Vec,PetscInt,const PetscInt [], PetscScalar []);
 37: extern PetscErrorCode VecSetValues_MPI(Vec,PetscInt,const PetscInt [],const PetscScalar[],InsertMode);
 38: extern PetscErrorCode VecSetValuesBlocked_MPI(Vec,PetscInt,const PetscInt [],const PetscScalar[],InsertMode);
 39: extern PetscErrorCode VecAssemblyBegin_MPI(Vec);
 40: extern PetscErrorCode VecAssemblyEnd_MPI(Vec);

 42: extern PetscErrorCode VecCreate_MPI_Private(Vec,PetscBool ,PetscInt,const PetscScalar[]);

 44: #endif