# vech¶

## Purpose¶

Vectorizes a symmetric matrix by retaining only the lower triangular portion of the matrix.

## Format¶

v = vech(x)
Parameters

x (NxN symmetric matrix) – data

Returns

v ((N*(N+1)/2)x1 vector) – the lower triangular portion of the matrix x.

## Examples¶

// Add a 3x1 column vector containing 10, 20, 30 to a 1x3
// row vector containing 1, 2, 3, to create a 3x3 matrix
x = seqa(10, 10, 3) + seqa(1, 1, 3)';

// Turn the lower triangular portion of 'x' into a column
// vector in 'v'
v = vech(x);

// Expand the vector 'v' into a symmetric matrix in 'sx'
sx = xpnd(v);


After the code above:

                   11
11 12 13       21       11 21 31
x = 21 22 23   v = 22  sx = 21 22 32
31 32 33       31       31 32 33
32
33


## Remarks¶

As you can see from the example below, vech() will not check to see if x is symmetric. It just packs the lower triangular portion of the matrix into a column vector in row-wise order.

Functions xpnd()