Main Content

Complex Partial-Systolic Matrix Solve Using Q-less QR Decomposition with Forgetting Factor

Compute the value ofXin the equationA'AX=Bfor complex-valued matrices with infinite number of rows using Q-less QR decomposition

Since R2020b

  • Complex Partial-Systolic Matrix Solve Using Q-less QR Decomposition with Forgetting Factor block

Libraries:
Fixed-Point Designer HDL Support / Matrices and Linear Algebra / Linear System Solvers

Description

TheComplex Partial-Systolic Matrix Solve Using Q-less QR Decomposition with Forgetting Factorblock solves the system of linear equations,A'AX=B, using Q-less QR decomposition, whereAandBare complex-valued matrices.Ais an infinitely tall matrix representing streaming data.

When the regularization parameter is nonzero, theComplex Partial-Systolic Matrix Solve Using Q-less QR Decomposition with Forgetting Factorinitializes the first upper-triangular factorRtoλInbefore factoring in the rows ofA, whereλis the regularization parameter andIn=eye(n).

Ports

Input

expand all

Rows of matrixA, specified as a vector.Ais an infinitely tall matrix of streaming data. IfBis single or double,Amust be the same data type asB. IfAis a fixed-point data type,Amust be signed, use binary-point scaling, and have the same word length asB. Slope-bias representation is not supported for fixed-point data types.

Data Types:single|double|fixed point
Complex Number Support:Yes

MatrixB, specified as a vector or a matrix.Bis ann-by-pmatrix wheren≥ 2. IfAis single or double,Bmust be the same data type asA. IfBis a fixed-point data type,Bmust be signed, use binary-point scaling, and have the same word length asA. Slope-bias representation is not supported for fixed-point data types.

Data Types:single|double|fixed point

WhetherA(i, ;)input is valid, specified as a Boolean scalar. This control signal indicates when the data from theA(i,:)input port is valid. When this value is1(true) and thereadyAvalue is1(true), the block captures the values at theA(i,:)input port. When this value is0(false), the block ignores the input samples.

After sending atruevalidInAsignal, there may be some delay beforereadyAis set tofalse. To ensure all data is processed, you must wait untilreadyAis set tofalsebefore sending anothertruevalidInAsignal.

Data Types:Boolean

Whether inputBis valid, specified as a Boolean scalar. This control signal indicates when the data from theBinput port is valid. When this value is1(true) and thereadyBvalue is1(true), the block captures the values at theBinput port. When this value is0(false), the block ignores the input samples.

After sending atruevalidInBsignal, there may be some delay beforereadyBis set tofalse. To ensure all data is processed, you must wait untilreadyBis set tofalsebefore sending anothertruevalidInBsignal.

Data Types:Boolean

Whether to clear internal states, specified as a Boolean scalar. When this value is 1 (true), the block stops the current calculation and clears all internal states. When this value is 0 (false) and thevalidInAandvalidInBvalues are 1 (true), the block begins a new subframe.

Data Types:Boolean

Output

expand all

MatrixX,作为一个矩阵或向量返回。

Data Types:single|double|fixed point

Whether the output data is valid, returned as a Boolean scalar. This control signal indicates when the data at the output portXis valid. When this value is1(true), the block has successfully computed a row ofX. When this value is0(false), the output data is not valid.

Data Types:Boolean

Whether the block is ready for input A, returned as a Boolean scalar. This control signal indicates when the block is ready for new input data. When this value is 1 (true) andvalidInAvalue is 1 (true), the block accepts input data in the next time step. When this value is 0 (false), the block ignores input data in the next time step.

After sending atruevalidInAsignal, there may be some delay beforereadyAis set tofalse. To ensure all data is processed, you must wait untilreadyAis set tofalsebefore sending anothertruevalidInAsignal.

Data Types:Boolean

Whether the block is ready for input B, returned as a Boolean scalar. This control signal indicates when the block is ready for new input data. When this value is 1 (true) andvalidInBvalue is 1 (true), the block accepts input data in the next time step. When this value is 0 (false), the block ignores input data in the next time step.

After sending atruevalidInBsignal, there may be some delay beforereadyBis set tofalse. To ensure all data is processed, you must wait untilreadyBis set tofalsebefore sending anothertruevalidInBsignal.

Data Types:Boolean

Parameters

expand all

Number of columns in matrixAand rows in matrixB, specified as a positive integer-valued scalar.

公关ogrammatic Use

Block Parameter:n
Type:character vector
Values:positive integer-valued scalar
Default:4

Number of columns in matrixB, specified as a positive integer-valued scalar.

公关ogrammatic Use

Block Parameter:p
Type:character vector
Values:positive integer-valued scalar
Default:1

Forgetting factor applied after each row of the matrix is factored, specified as a real positive scalar. The output is updated as each row ofAis input indefinitely.

公关ogrammatic Use

Block Parameter:forgettingFactor
Type:character vector
Values:positive integer-valued scalar
Default:0.99

Regularization parameter, specified as a nonnegative scalar. Small, positive values of the regularization parameter can improve the conditioning of the problem and reduce the variance of the estimates. While biased, the reduced variance of the estimate often results in a smaller mean squared error when compared to least-squares estimates.

公关ogrammatic Use

Block Parameter:regularizationParameter
Type:character vector
Values:real nonnegative scalar
Default:0

Data type of the output matrixX, specified asfixdt(1,18,14),double,single,fixdt(1,16,0), or as a user-specified data type expression. The type can be specified directly, or expressed as a data type object such asSimulink.NumericType.

公关ogrammatic Use

Block Parameter:OutputType
Type:character vector
Values:'fixdt(1,18,14)'|'double'|'single'|'fixdt(1,16,0)'|''
Default:'fixdt(1,18,14)'

Tips

  • Usefixed.forgettingFactorto compute the forgetting factor,α, for an infinite number of rows with the equivalent gain of a matrix withmrows.

  • Usefixed.forgettingFactorInverseto compute the number of rows,m, of a matrix with equivalent gain corresponding to forgetting factorα

    .

Algorithms

expand all

Extended Capabilities

版本sion History

Introduced in R2020b

expand all