Developer Reference for Intel® oneAPI Math Kernel Library for Fortran

ID 766686
Date 3/31/2023
Public

A newer version of this document is available. Customers should click here to go to the newest version.

Document Table of Contents

p?sum1

Forms the 1-norm of a complex vector similar to Level 1 PBLAS p?asum, but using the true absolute value.

Syntax

call pscsum1(n, asum, x, ix, jx, descx, incx)

call pdzsum1(n, asum, x, ix, jx, descx, incx)

Description

The p?sum1routine returns the sum of absolute values of a complex distributed vector sub(x) in asum, where sub(x) denotes X(ix:ix+n-1, jx:jx), if incx = 1, X(ix:ix, jx:jx+n-1), if incx = m_x.

Based on p?asum from the Level 1 PBLAS. The change is to use the 'genuine' absolute value.

Input Parameters
n

(global) pointer to INTEGER. The number of components of the distributed vector sub(x). n 0.

x

(local ) COMPLEX for pscsum1

COMPLEX*16 for pdzsum1.

Pointer into the local memory to an array of size (lld_x, LOCc(jx+n-1)). This array contains the local pieces of the distributed vector sub(X).

ix

(global) INTEGER.The row index in the global matrix X indicating the first row of sub(X).

jx

(global) INTEGER. The column index in the global matrix X indicating the first column of sub(X)

descx

(local) INTEGER. Array of size dlen_=9. The array descriptor for the distributed matrix X.

incx

(global) INTEGER.The global increment for the elements of X. Only two values of incx are supported in this version, namely 1 and m_x.

Output Parameters
asum

(local)

Pointer to REAL. The sum of absolute values of the distributed vector sub(X) only in its scope.

See Also