:orphan:
# VecSetSizes
Sets the local and global sizes, and checks to determine compatibility of the sizes
## Synopsis
```
#include "petscvec.h"
PetscErrorCode VecSetSizes(Vec v, PetscInt n, PetscInt N)
```
Collective
## Input Parameters
- ***v -*** the vector
- ***n -*** the local size (or `PETSC_DECIDE` to have it set)
- ***N -*** the global size (or `PETSC_DETERMINE` to have it set)
## Notes
`N` cannot be `PETSC_DETERMINE` if `n` is `PETSC_DECIDE`
If one processor calls this with `N` of `PETSC_DETERMINE` then all processors must, otherwise the program will hang.
## See Also
[](ch_vectors), `Vec`, `VecGetSize()`, `PetscSplitOwnership()`
## Level
intermediate
## Location
src/vec/vec/interface/vector.c
## Examples
src/dm/tutorials/ex14.c
src/ksp/ksp/tutorials/bench_kspsolve.c
src/ksp/ksp/tutorials/ex1.c
src/ksp/ksp/tutorials/ex10.c
src/ksp/ksp/tutorials/ex11.c
src/ksp/ksp/tutorials/ex11f.F90
src/ksp/ksp/tutorials/ex12.c
src/ksp/ksp/tutorials/ex15.c
src/ksp/ksp/tutorials/ex16.c
src/ksp/ksp/tutorials/ex18.c
src/ksp/ksp/tutorials/ex1f.F90
---
[Edit on GitLab](https://gitlab.com/petsc/petsc/-/edit/release/src/vec/vec/interface/vector.c)
[Index of all Vec routines](index.md)
[Table of Contents for all manual pages](/manualpages/index.md)
[Index of all manual pages](/manualpages/singleindex.md)