LinearAlgebraOperations<T>.RankUpdate Method

Definition

Namespace: Extreme.Mathematics.LinearAlgebra.Implementation
Assembly: Extreme.Numerics (in Extreme.Numerics.dll) Version: 8.1.23

Overload List

RankUpdate(Int32, Int32, T, ArraySlice<T>, ArraySlice<T>, Array2D<T>)

Performs the rank 1 operation A := alpha*x*y**T + A, where alpha is a scalar, x is an m element vector, y is an n element vector and A is an m by n matrix.

RankUpdate(Int32, Int32, Complex<T>, ArraySlice<Complex<T>>, ArraySlice<Complex<T>>, Array2D<Complex<T>>)

Performs the rank 1 operation A := alpha*x*y**T + A, where alpha is a scalar, x is an m element vector, y is an n element vector and A is an m by n matrix.

RankUpdate(Int32, Int32, T, ArraySlice<T>, ArraySlice<T>, Array2D<T>)

Performs the rank 1 operation A := alpha*x*y**T + A, where alpha is a scalar, x is an m element vector, y is an n element vector and A is an m by n matrix.

C#
public abstract void RankUpdate(
	int m,
	int n,
	T alpha,
	ArraySlice<T> x,
	ArraySlice<T> y,
	Array2D<T> a
)

Parameters

m  Int32
             On entry, M specifies the number of rows of the matrix A.
             M must be at least zero.
            
n  Int32
             On entry, N specifies the number of columns of the matrix A.
             N must be at least zero.
            
alpha  T
            ALPHA is DOUBLE PRECISION.
             On entry, ALPHA specifies the scalar alpha.
            
x  ArraySlice<T>
            X is DOUBLE PRECISION array of dimension at least
             ( 1 + ( m - 1 )*abs( INCX ) ).
             Before entry, the incremented array X must contain the m
             element vector x.
            
             On entry, INCX specifies the increment for the elements of
             X. INCX must not be zero.
            
y  ArraySlice<T>
            Y is DOUBLE PRECISION array of dimension at least
             ( 1 + ( n - 1 )*abs( INCY ) ).
             Before entry, the incremented array Y must contain the n
             element vector y.
            
             On entry, INCY specifies the increment for the elements of
             Y. INCY must not be zero.
            
a  Array2D<T>
            A is DOUBLE PRECISION array of DIMENSION ( LDA, n ).
             Before entry, the leading m by n part of the array A must
             contain the matrix of coefficients. On exit, A is
             overwritten by the updated matrix.
            
             On entry, LDA specifies the first dimension of A as declared
             in the calling (sub) program. LDA must be at least
             max( 1, m ).
            

Implements

ILinearAlgebraOperations<T>.RankUpdate(Int32, Int32, T, ArraySlice<T>, ArraySlice<T>, Array2D<T>)

Remarks

Further Details:

            Level 2 LinearAlgebra routine.
            -- Written on 22-October-1986.
               Jack Dongarra, Argonne National Lab.
               Jeremy Du Croz, Nag Central Office.
               Sven Hammarling, Nag Central Office.
               Richard Hanson, Sandia National Labs.
            

Authors: Univ. of Tennessee, Univ. of California Berkeley, Univ. of Colorado Denver, NAG Ltd.

Date: November 2011

RankUpdate(Int32, Int32, Complex<T>, ArraySlice<Complex<T>>, ArraySlice<Complex<T>>, Array2D<Complex<T>>)

Performs the rank 1 operation A := alpha*x*y**T + A, where alpha is a scalar, x is an m element vector, y is an n element vector and A is an m by n matrix.

C#
public abstract void RankUpdate(
	int m,
	int n,
	Complex<T> alpha,
	ArraySlice<Complex<T>> x,
	ArraySlice<Complex<T>> y,
	Array2D<Complex<T>> a
)

Parameters

m  Int32
             On entry, M specifies the number of rows of the matrix A.
             M must be at least zero.
            
n  Int32
             On entry, N specifies the number of columns of the matrix A.
             N must be at least zero.
            
alpha  Complex<T>
             On entry, ALPHA specifies the scalar alpha.
            
x  ArraySlice<Complex<T>>
            X is complex array of dimension at least
             ( 1 + ( m - 1 )*abs( INCX ) ).
             Before entry, the incremented array X must contain the m
             element vector x.
            
             On entry, INCX specifies the increment for the elements of
             X. INCX must not be zero.
            
y  ArraySlice<Complex<T>>
            Y is complex array of dimension at least
             ( 1 + ( n - 1 )*abs( INCY ) ).
             Before entry, the incremented array Y must contain the n
             element vector y.
            
             On entry, INCY specifies the increment for the elements of
             Y. INCY must not be zero.
            
a  Array2D<Complex<T>>
            A is complex array of DIMENSION ( LDA, n ).
             Before entry, the leading m by n part of the array A must
             contain the matrix of coefficients. On exit, A is
             overwritten by the updated matrix.
            
             On entry, LDA specifies the first dimension of A as declared
             in the calling (sub) program. LDA must be at least
             max( 1, m ).
            

Implements

ILinearAlgebraOperations<T>.RankUpdate(Int32, Int32, T, ArraySlice<T>, ArraySlice<T>, Array2D<T>)

Remarks

Further Details:

            Level 2 LinearAlgebra routine.
            -- Written on 22-October-1986.
               Jack Dongarra, Argonne National Lab.
               Jeremy Du Croz, Nag Central Office.
               Sven Hammarling, Nag Central Office.
               Richard Hanson, Sandia National Labs.
            

Authors: Univ. of Tennessee, Univ. of California Berkeley, Univ. of Colorado Denver, NAG Ltd.

Date: November 2011

See Also