Next:
Introduction
QLA Linear Algebra Interface for QCD
Version 1.2
SciDAC Software Coordinating Committee
Introduction
Datatypes
Generic Names
Specific Types for Color and Precision
Color and Precision Uniformity
Breaking Color and Precision Uniformity
Function Naming Conventions
Scalar Example
Vector Example
Indirect Addressing for Binary Operations
Constant Arguments
Indirect Addressing for Binary Operations with a Constant
Indirect Addressing for Unary Operations
Indirect Addressing for Unary Operations with a Constant
Color argument for SU(N)
Adjoint
Compilation with QLA
Generic header and macros
Libraries
Nonuniform color and precision
Auxiliary Features
Accessor macros
Complex functions
Complex variable macros
Complex macros with one argument
Complex macros with two arguments
Complex macros with three arguments
Complex macros with four arguments
Gamma matrices
Random numbers
Function Details
Unary Operations
Elementary unary functions on reals
Elementary unary functions real to complex
Elementary unary functions complex to real
Elementary unary functions on complex values
Elementary binary functions on reals
Elementary binary functions on integers
Copying and incrementing
Hermitian conjugate
Transpose
Complex conjugate
Local squared norm: uniform precision
Type conversion and component extraction and insertion
Convert float to double
Convert double to float
Convert long double to double
Convert real to complex (zero imaginary part)
Convert real and imaginary to complex
Real part of complex
Imaginary part of complex
Integer to real
Real to integer (truncate)
Real to integer (round)
Accessing a color matrix element
Inserting a color matrix element
Accessing a half fermion or Dirac fermion spinor element
Inserting a half fermion or Dirac fermion spinor element
Accessing a staggered fermion spinor element
Inserting a staggered fermion spinor element
Accessing a Dirac propagator matrix element
Inserting a Dirac propagator matrix element
Extracting a color column vector from a color matrix
Inserting a color vector into a color matrix
Extracting a color column vector from a half fermion or Dirac fermion spinor
Inserting a color column vector into a half fermion or Dirac fermion spinor
Extracting a Dirac column vector from a Dirac propagator matrix
Inserting a Dirac column vector into a Dirac propagator matrix
Trace of color matrix
Real trace of color matrix
Imaginary trace of color matrix
Traceless antihermitian part of color matrix
Spin trace of Dirac propagator
Dirac spin projection
Dirac spin reconstruction
Binary Operations with Constants
Multiplication by real constant
Multiplication by complex constant
Multiplication by i
Left multiplication by gamma matrix
Right multiplication by gamma matrix
Binary Operations with Fields
Division of real, complex, and integer fields
Addition
Subtraction
Multiplication: uniform types
Local inner product
Color matrix from outer product
Left multiplication by color matrix
Adjoint of color matrix times adjoint of color matrix
Left multiplication by adjoint of color matrix
Right multiplication by color matrix
Right multiplication by adjoint of color matrix
Ternary Operations with Fields
Addition with real scalar multiplication
Subtraction with real scalar multiplication
Addition with complex scalar multiplication
Subtraction with complex scalar multiplication
Boolean and Bit Operations
Comparisons of integers and reals
Boolean Operations
Copymask
Reductions
Global squared norm: uniform precision
Global squared norm: float to double
Global squared norm: double to long double
Global inner product
Global inner product: float to double
Global inner product: double to long double
Global sums
Global sums: float to double
Global sums: double to long double
Fills
Zero fills
Constant fills and random numbers
Uniform random number fills
Gaussian random number fills
Seeding the random number generator field from an integer field
About this document ...
James Osborn 2006-06-25