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