Actual source code: dvecimpl.h

petsc-3.3-p5 2012-12-01
  1: /* 
  2:    This should not be included in users code.

  4:   Includes definition of structure for seqential vectors

  6:   These are shared by dvec1.c dvec2.c dvec3.c bvec1.c bvec2.c pvec.c pbvec.c 
  7: */

  9: #ifndef __DVECIMPL 

 12: #include <petsc-private/vecimpl.h>

 14: typedef struct {
 15:   VECHEADER
 16: } Vec_Seq;

 18: extern PetscErrorCode VecMDot_Seq(Vec,PetscInt,const Vec[],PetscScalar *);
 19: extern PetscErrorCode VecMTDot_Seq(Vec,PetscInt,const Vec[],PetscScalar *);
 20: extern PetscErrorCode VecMin_Seq(Vec,PetscInt*,PetscReal *);
 21: extern PetscErrorCode VecSet_Seq(Vec,PetscScalar);
 22: extern PetscErrorCode VecMAXPY_Seq(Vec,PetscInt,const PetscScalar *,Vec *);
 23: extern PetscErrorCode VecAYPX_Seq(Vec,PetscScalar,Vec);
 24: extern PetscErrorCode VecWAXPY_Seq(Vec,PetscScalar,Vec,Vec);
 25: extern PetscErrorCode VecAXPBYPCZ_Seq(Vec,PetscScalar,PetscScalar,PetscScalar,Vec,Vec);
 26: extern PetscErrorCode VecMaxPointwiseDivide_Seq(Vec,Vec,PetscReal*);
 27: extern PetscErrorCode VecPlaceArray_Seq(Vec,const PetscScalar *);
 28: extern PetscErrorCode VecResetArray_Seq(Vec);
 29: extern PetscErrorCode VecReplaceArray_Seq(Vec,const PetscScalar *);
 30: extern PetscErrorCode VecDot_Seq(Vec,Vec,PetscScalar *);
 31: extern PetscErrorCode VecTDot_Seq(Vec,Vec,PetscScalar *);
 32: extern PetscErrorCode VecScale_Seq(Vec,PetscScalar);
 33: extern PetscErrorCode VecAXPY_Seq(Vec,PetscScalar,Vec);
 34: extern PetscErrorCode VecAXPBY_Seq(Vec,PetscScalar,PetscScalar,Vec);
 35: extern PetscErrorCode VecMax_Seq(Vec,PetscInt*,PetscReal *);
 36: extern PetscErrorCode VecNorm_Seq(Vec,NormType,PetscReal*);
 37: extern PetscErrorCode VecDestroy_Seq(Vec);
 38: extern PetscErrorCode VecDuplicate_Seq(Vec,Vec*);
 39: extern PetscErrorCode VecSetOption_Seq(Vec,VecOption,PetscBool);
 40: extern PetscErrorCode VecGetValues_Seq(Vec,PetscInt,const PetscInt*,PetscScalar*);
 41: extern PetscErrorCode VecSetValues_Seq(Vec,PetscInt,const PetscInt*,const PetscScalar*,InsertMode);
 42: extern PetscErrorCode VecSetValuesBlocked_Seq(Vec,PetscInt,const PetscInt*,const PetscScalar*,InsertMode);
 43: extern PetscErrorCode VecView_Seq(Vec,PetscViewer);
 44: extern PetscErrorCode VecGetSize_Seq(Vec,PetscInt*);
 45: extern PetscErrorCode VecCopy_Seq(Vec,Vec);
 46: extern PetscErrorCode VecSwap_Seq(Vec,Vec);
 47: extern PetscErrorCode VecConjugate_Seq(Vec);
 48: extern PetscErrorCode VecSetRandom_Seq(Vec,PetscRandom);
 49: extern PetscErrorCode VecPointwiseMult_Seq(Vec,Vec,Vec);
 50: extern PetscErrorCode VecPointwiseMax_Seq(Vec,Vec,Vec);
 51: extern PetscErrorCode VecPointwiseMaxAbs_Seq(Vec,Vec,Vec);
 52: extern PetscErrorCode VecPointwiseMin_Seq(Vec,Vec,Vec);
 53: extern PetscErrorCode VecPointwiseDivide_Seq(Vec,Vec,Vec);

 55: EXTERN_C_BEGIN
 56: extern PetscErrorCode  VecCreate_Seq(Vec);
 57: EXTERN_C_END
 58: extern PetscErrorCode VecCreate_Seq_Private(Vec,const PetscScalar[]);

 60: #endif