Skip to main content
`Ctrl`+`K`

# PetscSplitOwnershipBlock

Given a global (or local) length determines a local (or global) length via a simple formula. Splits so each processors local size is divisible by the block size.

## Synopsis

    #include "petscsys.h"
    PetscErrorCode PetscSplitOwnershipBlock(MPI_Comm comm, PetscInt bs, PetscInt *n, PetscInt *N)

Collective (if `N` is `PETSC_DECIDE`)

## Input Parameters

- comm - MPI communicator that shares the object being divided

- bs - block size

- n - local length (or `PETSC_DECIDE` to have it set)

- N - global length (or `PETSC_DECIDE`)

## Notes

`n` and `N` cannot be both `PETSC_DECIDE`

If one processor calls this with `N` of `PETSC_DECIDE` then all processors must, otherwise the program will hang.

## See Also

`PetscSplitOwnership()`, `PetscSplitOwnershipEqual()`

## Level

developer

## Location

src/sys/utils/psplit.c

Index of all Sys routines
Table of Contents for all manual pages
Index of all manual pages