LinearAlgebraOperations<T>.ConjugateRankUpdate Method

Definition

Namespace: Numerics.NET.LinearAlgebra.Implementation
Assembly: Numerics.NET (in Numerics.NET.dll) Version: 9.0.2

Overload List

ConjugateRankUpdate(Int32, Int32, T, ArraySlice<T>, ArraySlice<T>, Array2D<T>) Performs a rank one update of a matrix.
ConjugateRankUpdate(Int32, Int32, Complex<T>, ArraySlice<Complex<T>>, ArraySlice<Complex<T>>, Array2D<Complex<T>>)

Performs the rank 1 operation A := alpha*x*y**H + 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.

ConjugateRankUpdate(Int32, Int32, Complex<T>, ReadOnlySpanSlice<Complex<T>>, ReadOnlySpanSlice<Complex<T>>, Span2D<Complex<T>>)

Performs the rank 1 operation A := alpha*x*y**H + 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.

ConjugateRankUpdate(Int32, Int32, T, ReadOnlySpan<T>, Int32, ReadOnlySpan<T>, Int32, Span<T>, Int32) Performs a rank one update of a matrix.
ConjugateRankUpdate(Int32, Int32, Complex<T>, ReadOnlySpan<Complex<T>>, Int32, ReadOnlySpan<Complex<T>>, Int32, Span<Complex<T>>, Int32)

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

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

Performs a rank one update of a matrix.
C#
public void ConjugateRankUpdate(
	int m,
	int n,
	T alpha,
	ArraySlice<T> x,
	ArraySlice<T> y,
	Array2D<T> a
)

Parameters

m  Int32
The number of rows in the matrix a.
n  Int32
The number of columns in the matrix a.
alpha  T
The scalar used to multiply the outer product.
x  ArraySlice<T>
A reference to a one-dimensional array containing the elements of the vector x.
y  ArraySlice<T>
A reference to a one-dimensional array containing the elements of the vector y.
a  Array2D<T>
A span that contains the elements of the matrix.

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

Performs the rank 1 operation A := alpha*x*y**H + 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 void ConjugateRankUpdate(
	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 ).
            

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

ConjugateRankUpdate(Int32, Int32, Complex<T>, ReadOnlySpanSlice<Complex<T>>, ReadOnlySpanSlice<Complex<T>>, Span2D<Complex<T>>)

Performs the rank 1 operation A := alpha*x*y**H + 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 void ConjugateRankUpdate(
	int m,
	int n,
	Complex<T> alpha,
	ReadOnlySpanSlice<Complex<T>> x,
	ReadOnlySpanSlice<Complex<T>> y,
	Span2D<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  ReadOnlySpanSlice<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  ReadOnlySpanSlice<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  Span2D<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 ).
            

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

ConjugateRankUpdate(Int32, Int32, T, ReadOnlySpan<T>, Int32, ReadOnlySpan<T>, Int32, Span<T>, Int32)

Performs a rank one update of a matrix.
C#
public void ConjugateRankUpdate(
	int m,
	int n,
	T alpha,
	ReadOnlySpan<T> x,
	int incx,
	ReadOnlySpan<T> y,
	int incy,
	Span<T> a,
	int lda
)

Parameters

m  Int32
The number of rows in the matrix a.
n  Int32
The number of columns in the matrix a.
alpha  T
The scalar used to multiply the outer product.
x  ReadOnlySpan<T>
A reference to a one-dimensional array containing the elements of the vector x.
incx  Int32
The distance between elements in x.
y  ReadOnlySpan<T>
A reference to a one-dimensional array containing the elements of the vector y.
incy  Int32
The distance between elements in y.
a  Span<T>
A span that contains the elements of the matrix.
lda  Int32
The leading dimension of the matrix a.

ConjugateRankUpdate(Int32, Int32, Complex<T>, ReadOnlySpan<Complex<T>>, Int32, ReadOnlySpan<Complex<T>>, Int32, Span<Complex<T>>, Int32)

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

C#
public abstract void ConjugateRankUpdate(
	int m,
	int n,
	Complex<T> alpha,
	ReadOnlySpan<Complex<T>> x,
	int incx,
	ReadOnlySpan<Complex<T>> y,
	int incy,
	Span<Complex<T>> a,
	int lda
)

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  ReadOnlySpan<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.
            
incx  Int32
             On entry, INCX specifies the increment for the elements of
             X. INCX must not be zero.
            
y  ReadOnlySpan<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.
            
incy  Int32
             On entry, INCY specifies the increment for the elements of
             Y. INCY must not be zero.
            
a  Span<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.
            
lda  Int32
             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>.ConjugateRankUpdate(Int32, Int32, T, ReadOnlySpan<T>, Int32, ReadOnlySpan<T>, Int32, Span<T>, Int32)

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