Таблица 9.1
Представление формальных параметров векторных операций
Название процедуры Операция
VecAXPY(y, a, x, ierr)
VecAYPX(y, a, x, ierr)
VecWAXPY(w, a, x, y, ierr)
VecAXPBY(y, a, b, x, ierr)
VecScale(x, a, ierr)

VecNorm(x, normtype, r, ierr)

normtype принимает одно из следующих значений:

NORM_1 (), NORM_2 () или NORM_INFINITY ()

VecSum(x, r, ierr)
VecCopy(x, y, ierr) x=y
VecSwap(x, y, ierr)
VecPointwiseMult(x, y, w, ierr)
VecPointwiseDivide(x, y, w, ierr)
VecMax(x, PETSC_NULL, r, ierr)
VecMin(x, PETSC_NULL, r, ierr)
VecAbs(x, ierr)
VecReciprocal(x, ierr)
VecShift(s, x, ierr)

В табл. 9.1 используются следующие описания типов формальных переменных:

            Vec x, y, w

            DOUBLE PRECISION a, b, r, s

            INTEGER ierr

Для параллельных программ распределение вектора x по процессам можно  осуществить с помощью вызова процедуры

            Call VecGetOwnershipRange(x, istart, iend, ierr)

Аргумент istart  указывает на номер первой компоненты вектора, принадлежащий локальному процессу, а аргумент iend  показывает на единицу больший номер, чем номер последней размещенной компоненты, принадлежащей локальному процессу. Эта команда полезна, например, при сборке параллельных векторов.