Skip to main content
`Ctrl`+`K`

# MatPartitioningSetPartitionWeights

Sets the weights for each partition.

## Synopsis

    #include "petscmat.h"
    PetscErrorCode MatPartitioningSetPartitionWeights(MatPartitioning part, const PetscReal weights[])

Logically Collective

## Input Parameters

- part - the partitioning context

- weights - An array of size nparts that is used to specify the fraction of vertex weight that should be distributed to each sub-domain for the balance constraint. If all of the sub-domains are to be of the same size, then each of the nparts elements should be set to a value of 1/nparts. Note that the sum of all of the weights should be one.

## Note

The array weights is freed by PETSc so the user should not free the array. In C/C++ the array must be obtained with a call to `PetscMalloc()`, not malloc().

## Fortran Note

The array `weights` is copied during this function call.

## See Also

Matrices, `Mat`, `MatPartitioning`, `MatPartitioningSetVertexWeights()`, `MatPartitioningCreate()`, `MatPartitioningSetType()`

## Level

beginner

## Location

src/mat/graphops/partition/partition.c

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