Actual source code: pvecimpl.h

  2: #ifndef __PVECIMPL

 5:  #include vecimpl.h
 6:  #include src/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 VecNorm_Seq(Vec,NormType,PetscReal *work);
 22: EXTERN PetscErrorCode VecMDot_MPI(PetscInt,Vec,const Vec[],PetscScalar *);
 23: EXTERN PetscErrorCode VecMTDot_MPI(PetscInt,Vec,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_File(Vec,PetscViewer);
 29: EXTERN PetscErrorCode VecView_MPI_Files(Vec,PetscViewer);
 30: EXTERN PetscErrorCode VecView_MPI_Binary(Vec,PetscViewer);
 31: EXTERN PetscErrorCode VecView_MPI_Netcdf(Vec,PetscViewer);
 32: EXTERN PetscErrorCode VecView_MPI_Draw_LG(Vec,PetscViewer);
 33: EXTERN PetscErrorCode VecView_MPI_Socket(Vec,PetscViewer);
 34: EXTERN PetscErrorCode VecView_MPI(Vec,PetscViewer);
 35: EXTERN PetscErrorCode VecGetSize_MPI(Vec,PetscInt *);
 36: EXTERN PetscErrorCode VecSetValues_MPI(Vec,PetscInt,const PetscInt [],const PetscScalar[],InsertMode);
 37: EXTERN PetscErrorCode VecSetValuesBlocked_MPI(Vec,PetscInt,const PetscInt [],const PetscScalar[],InsertMode);
 38: EXTERN PetscErrorCode VecAssemblyBegin_MPI(Vec);
 39: EXTERN PetscErrorCode VecAssemblyEnd_MPI(Vec);

 41: EXTERN PetscErrorCode VecCreate_MPI_Private(Vec,PetscInt,const PetscScalar[],PetscMap);

 43: #endif