| Signal Processing Blockset™ | ![]() |
Math Functions / Matrices and Linear Algebra / Linear System Solvers
dspsolvers
The Forward Substitution block solves the linear system LX=B by simple forward substitution of variables, where L is the lower triangular M-by-M matrix input to the L port, and B is the M-by-N matrix input to the B port. The output is the solution of the equations, the M-by-N matrix X, and is always sample based. The block does not check the rank of the inputs.
The block only uses the elements in the lower triangle of input L; the upper elements are ignored. When you select Input L is unit-lower triangular, the block replaces the elements on the diagonal of L with 1's. This is useful when matrix L is the result of another operation, such as an LDL decomposition, that uses the diagonal elements to represent the D matrix.
A length-M vector input at port B is treated as an M-by-1 matrix.
The following diagram shows the data types used within the Forward Substitution block for fixed-point signals.

You can set the product output, accumulator, and output data types in the block dialog as discussed below.
The output of the multiplier is in the product output data type when the input is real. When the input is complex, the result of the multiplication is in the accumulator data type. For details on the complex multiplication performed, see Multiplication Data Types.
The Main pane of the Forward Substitution block dialog appears as follows.

Select to replace the elements on the diagonal of L with 1's.
Select to optimize simulation speed when the diagonal elements of complex input L are real. This parameter is only visible when Input L is unit-upper triangular is not selected.
Note When L is a complex fixed-point signal, you must select either Input L is unit-lower triangular or Diagonal of complex input L is real. In such a case, any imaginary part of the diagonal of L is ignored. |
The Fixed-point pane of the Forward Substitution block dialog appears as follows.

Select the rounding mode for fixed-point operations.
Select the overflow mode for fixed-point operations.
Use this parameter to specify how you would like to designate the product output word and fraction lengths. See Fixed-Point Data Types and Multiplication Data Types for illustrations depicting the use of the product output data type in this block:
When you select Inherit via internal rule, the product output word length and fraction length are calculated automatically. For information about how the product output word and fraction lengths are calculated when an internal rule is used, see Inherit via Internal Rule.
When you select Same as first input, these characteristics match those of the input L to the block.
When you select Binary point scaling, you can enter the word length and the fraction length of the product output, in bits.
When you select Slope and bias scaling, you can enter the word length, in bits, and the slope of the product output. This block requires power-of-two slope and a bias of zero.
Use this parameter to specify how you would like to designate the accumulator word and fraction lengths. See Fixed-Point Data Types and Multiplication Data Types for illustrations depicting the use of the accumulator data type in this block.
When you select Inherit via internal rule, the accumulator word length and fraction length are calculated automatically. For information about how the accumulator word and fraction lengths are calculated when an internal rule is used, see Inherit via Internal Rule.
When you select Same as product output, these characteristics match those of the product output.
When you select Same as first input, these characteristics match those of the input L to the block.
When you select Binary point scaling, you can enter the word length and the fraction length of the accumulator, in bits.
When you select Slope and bias scaling, you can enter the word length, in bits, and the slope of the accumulator. This block requires power-of-two slope and a bias of zero.
Use this parameter to specify how you would like to designate the output word and fraction lengths. See Fixed-Point Data Types for an illustration depicting the use of the output data type in this block:
When you select Same as first input, these characteristics match those of the input L to the block.
When you select Binary point scaling, you can enter the word length and the fraction length of the output, in bits.
When you select Slope and bias scaling, you can enter the word length, in bits, and the slope of the output. This block requires power-of-two slope and a bias of zero.
Select this parameter to prevent any fixed-point scaling you specify in this block mask from being overridden by the autoscaling tool in the Fixed-Point Tool.
| Port | Supported Data Types |
|---|---|
L |
|
B |
|
X |
|
| Backward Substitution | Signal Processing Blockset |
| Cholesky Solver | Signal Processing Blockset |
| LDL Solver | Signal Processing Blockset |
| Levinson-Durbin | Signal Processing Blockset |
| LU Solver | Signal Processing Blockset |
| QR Solver | Signal Processing Blockset |
See Linear System Solvers for related information.
![]() | Flip | Fractional Delay Filter | ![]() |
| © 1984-2008- The MathWorks, Inc. - Site Help - Patents - Trademarks - Privacy Policy - Preventing Piracy - RSS |