quadratic_form: Computes quadratic form x' A x In ForeCA: Forecastable Component Analysis

Description

quadratic_form computes the quadratic form \mathbf{x}' \mathbf{A} \mathbf{x} for an n \times n matrix \mathbf{A} and an n-dimensional vector \mathbf{x}, i.e., a wrapper for t(x) %*% A %*% x.

fill_symmetric and quadratic_form work with real and complex valued matrices/vectors.

fill_hermitian fills up the lower triangular part (NA) of an upper triangular matrix to its Hermitian (symmetric if real matrix) version, such that it satisfies \mathbf{A} = \bar{\mathbf{A}}', where \bar{z} is the complex conjugate of z. If the matrix is real-valued this makes it simply symmetric.

Note that the input matrix must have a real-valued diagonal and NAs in the lower triangular part.

Usage

 1 2 3 quadratic_form(mat, vec) fill_hermitian(mat) 

Arguments

 mat numeric; n \times n matrix (real or complex). vec numeric; n \times 1 vector (real or complex).

Value

A real/complex value \mathbf{x}' \mathbf{A} \mathbf{x}.

Examples

  1 2 3 4 5 6 7 8 9 10 11 12 13  set.seed(1) AA <- matrix(1:4, ncol = 2) bb <- matrix(rnorm(2)) t(bb) %*% AA %*% bb quadratic_form(AA, bb) AA <- matrix(1:16, ncol = 4) AA[lower.tri(AA)] <- NA AA fill_hermitian(AA) 

ForeCA documentation built on May 29, 2017, 9:09 a.m.