Function

cblas_drotm(_:_:_:_:_:_:)

Applies a modified Givens transformation (single precision).

Declaration

func cblas_drotm(_ __N: Int32, _ __X: UnsafeMutablePointer<Double>!, _ __incX: Int32, _ __Y: UnsafeMutablePointer<Double>!, _ __incY: Int32, _ __P: UnsafePointer<Double>!)

Parameters

N

Number of elements in vectors.

X

Vector X. Modified on return.

incX

Stride within X. For example, if incX is 7, every 7th element is used.

Y

Vector Y. Modified on return.

incY

Stride within Y. For example, if incY is 7, every 7th element is used.

P

A 5-element vector:

P[0]

Flag value that defines the form of matrix H.

-2.0: matrix H contains the identity matrix.

-1.0: matrix H is identical to matrix SH (defined by the remaining values in the vector).

0.0: H[1,2] and H[2,1] are obtained from matrix SH. The remaining values are both 1.0.

1.0: H[1,1] and H[2,2] are obtained from matrix SH. H[1,2] is 1.0. H[2,1] is -1.0.

P[1]

Contains SH[1,1].

P[2]

Contains SH[2,1].

P[3]

Contains SH[1,2].

P[4]

Contains SH[2,2].

See Also

Double-Precision Float Matrix Functions

func cblas_dasum(Int32, UnsafePointer<Double>!, Int32) -> Double

Computes the sum of the absolute values of elements in a vector (double-precision).

func cblas_daxpy(Int32, Double, UnsafePointer<Double>!, Int32, UnsafeMutablePointer<Double>!, Int32)

Computes a constant times a vector plus a vector (double-precision).

func cblas_dnrm2(Int32, UnsafePointer<Double>!, Int32) -> Double

Computes the L2 norm (Euclidian length) of a vector (double precision).

func cblas_dscal(Int32, Double, UnsafeMutablePointer<Double>!, Int32)

Multiplies each element of a vector by a constant (double-precision).

func cblas_dspmv(CBLAS_ORDER, CBLAS_UPLO, Int32, Double, UnsafePointer<Double>!, UnsafePointer<Double>!, Int32, Double, UnsafeMutablePointer<Double>!, Int32)

Scales a packed symmetric matrix, then multiplies by a vector, then scales and adds another vector (double precision).

func cblas_dspr(CBLAS_ORDER, CBLAS_UPLO, Int32, Double, UnsafePointer<Double>!, Int32, UnsafeMutablePointer<Double>!)

Rank one update: adds a packed symmetric matrix to the product of a scaling factor, a vector, and its transpose (double precision).

func cblas_dsyr(CBLAS_ORDER, CBLAS_UPLO, Int32, Double, UnsafePointer<Double>!, Int32, UnsafeMutablePointer<Double>!, Int32)

Rank one update: adds a symmetric matrix to the product of a scaling factor, a vector, and its transpose (double precision).

func cblas_dsyrk(CBLAS_ORDER, CBLAS_UPLO, CBLAS_TRANSPOSE, Int32, Int32, Double, UnsafePointer<Double>!, Int32, Double, UnsafeMutablePointer<Double>!, Int32)

Rank-k update—multiplies a symmetric matrix by its transpose and adds a second matrix (double precision).