# CxMatrixNorm

Advanced Analysis Library Only

AnalysisLibErrType CxMatrixNorm (void *inputMatrix, int numberOfRows, int numberOfColumns, int normType, double *norm);

## Purpose

Calculates the norm of the complex input matrix A. The input matrix can be square or rectangular. The norm of a matrix is a scalar that gives some measure of the size of the elements in the matrix. It is similar to the concept of magnitude or absolute value for scalar numbers.

There are different ways to calculate the norm of a matrix. The normType parameter indicates which type of norm to use to calculate the norm.

## Parameters

Input
Name | Type | Description
inputMatrix | numeric array | Input complex matrix. This matrix must be an array of ComplexNum. The following C typedef statement defines the ComplexNum structure: typedef struct { double real; double imaginary; } ComplexNum;
numberOfRows | integer | Number of rows in inputMatrix.
numberOfColumns | integer | Number of columns in inputMatrix.
normType | integer | Type of norm to calculate. The following table shows valid norm type values.
Norm Type | Value | Meaning
2-norm | 0 | Largest singular value of inputMatrix.
1-norm | 1 | Largest column sum of inputMatrix.
Frobenius-norm | 2 | Square root of the sum of the diagonal elements of ATA, where AT is the complex conjugate transpose of inputMatrix.
Infinite-norm | 3 | Largest row sum of inputMatrix.
Output
Name | Type | Description
norm | double-precision | Calculated norm of the input matrix.

## Return Value

Name | Type | Description
status | AnalysisLibErrType | A value that specifies the type of error that occurred. Refer to analysis.h for definitions of these constants.