GSTLALMatrixMixer

GSTLALMatrixMixer — Compute linear combinations of time series channels.

Synopsis

struct              GSTLALMatrixMixer;
struct              GSTLALMatrixMixerClass;
#define             GSTLAL_MATRIXMIXER_TYPE

Object Hierarchy

  GObject
   +----GstObject
         +----GstElement
               +----GstBaseTransform
                     +----GSTLALMatrixMixer

Properties

  "matrix"                   GValueArray*          : Read / Write

Description

Generates one or more time series channels as linear combinations of one or more input channels. The mixer is controlled using a matrix whose elements provide the mixing coefficients and whose size sets the number of input and output channels. The meaning of the coefficients is shown in the following diagram.

input channel 1 2 m A 11 A 12 A 1n A 21 A 22 A 2n A m1 A m2 A mn output channel 1 2 n matrix{"input channel " stack{1 rightarrow # 2 rightarrow # dotsvert # m rightarrow} # left [ matrix{A_{11} # A_{12} # dotsaxis # A_{1n} ## A_{21} # A_{22} # dotsaxis # A_{2n} ## dotsvert # dotsvert # dotsdown # dotsvert ## A_{m1} # A_{m2} # dotsaxis # A_{mn}} right ] ## "output channel" # binom{downarrow}{1} ~~~ binom{downarrow}{2} ~~~ dotsaxis ~~~ binom{downarrow}{n} }

The matrix is provided to the element via the "matrix" property as a GValueArray of rows, each row is a GValueArray containing double-precision floats (the rows must all be the same size).

The coefficient ordering and the manner in which they map input channels to output channels is chosen so that the transformation of an input buffer into an output buffer can be performed as a single matrix-matrix multiplication, to allow optimized platform-specific implementations of that operation to be employed.

Reviewed: d2dcd2d01c83be1f647a8713fef48e4249433218 2014-08-10 K. Cannon, J. Creighton, B. Sathyaprakash.

Details

struct GSTLALMatrixMixer

struct GSTLALMatrixMixer;

struct GSTLALMatrixMixerClass

struct GSTLALMatrixMixerClass {
	GstBaseTransformClass parent_class;
};

GstBaseTransformClass parent_class;

the parent class

GSTLAL_MATRIXMIXER_TYPE

#define             GSTLAL_MATRIXMIXER_TYPE

Property Details

The "matrix" property

  "matrix"                   GValueArray*          : Read / Write

Matrix of mixing coefficients. Number of rows in matrix sets number of input channels, number of columns sets number of output channels.