Version:

Last Modified: January 12, 2018

Calculates the rank-2k update of the upper or lower triangular component of a Hermitian matrix.

Operation this node performs on **A** and **B**.

Name | Value | Description |
---|---|---|

Direct | 0 | op(A) = A and op(B) = B |

Conjugated and Transposed | 1 | op(A) = conjugate transpose of A and op(B) = conjugate transpose of B |

Transposed | 2 | op(A) = transpose of A and op(B) = transpose of B |

**Default: **Direct

Matrix such that op(**A**) has dimensions *N* × *K*.

Matrix such that op(**B**) has the same dimensions as op(**A**).

Hermitian matrix.

**C** must have dimensions greater than or equal to *N* × *N*, where *N* is the number of rows in op(**A**). If **C** is an empty matrix, this node initializes **C** to be an *N* × *N* matrix with all elements set to 0.

Triangular component of **C** this node uses for the calculation.

Name | Value | Description |
---|---|---|

Lower Triangular | 2 | This node uses the lower triangular component of C for the calculation. |

Upper Triangular | 3 | This node uses the upper triangular component of C for the calculation. |

**Default: **Upper Triangular

Error conditions that occur before this node runs.

The node responds to this input according to standard error behavior.

Standard Error Behavior

Many nodes provide an **error in** input and an **error out** output so that the node can respond to and communicate errors that occur while code is running. The value of **error in** specifies whether an error occurred before the node runs. Most nodes respond to values of **error in** in a standard, predictable way.

**Default: **No error

Scalar that scales **A** * **B**^{H} and **A**^{H} * **B**, where **A**^{H} and **B**^{H} represent conjugate transpose of **A** and **B**, respectively.

**Default: **1+0i

Scalar that scales **C**.

**Default: **1

Matrix of the same dimensions as **C**.

For the first *N* rows and *N* columns in the triangular component you select in **matrix C type**, **zher2k** returns the result of the following equation:

**zher2k** = **alpha** * op(**A**) * op(**B**) ^{H} + (
$\stackrel{\xaf}{\mathrm{alpha}}$) * op(**B**) * op(**A**)^{H} + **beta** * **C**

where

op(**A**)^{H} represents the conjugate transpose of op(**A**)

op(**B**)^{H} represents the conjugate transpose of op(**B**)

$\stackrel{\xaf}{\mathrm{alpha}}$ represents the conjugate of **alpha**

For any remaining rows and columns, **zher2k** returns the element in **C** with the same index.

Error information.

The node produces this output according to standard error behavior.

Standard Error Behavior

**error in** input and an **error out** output so that the node can respond to and communicate errors that occur while code is running. The value of **error in** specifies whether an error occurred before the node runs. Most nodes respond to values of **error in** in a standard, predictable way.

**Where This Node Can Run: **

Desktop OS: Windows

FPGA: Not supported

Web Server: Not supported in VIs that run in a web application