| 1. Containers 
    2. IteratorsConcepts
      
  
  ColumnMatrix
A Column-Oriented MTL Matrix
  
  
  DiagonalMatrix
A Diagonally-Oriented Matrix
  
  
  
  
  
  
  
  
  
  
  
  Matrix
The MTL Matrix Concept
  
  
  
  
  
  
  
  
  
  
  
  RowMatrix
A Row-Oriented MTL Matrix
  
  
  TwoDStorage
The MTL TwoD Storage Concept
  
  
  Vector
The MTL Vector Concept
  
      Container type generators
      
  
  
  
  
  
  
  
  
  
  
  
  band_view
Band View Matrix Type Constructor
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  block_view
Block View Matrix Type Constructor
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  matrix
Matrix type generators class.
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  symmetric_view
Symmetric View Matrix Type Constructor
  
  
  
  tri_view
Triangle View Creation Helper Fuctor
  
  
  
  triangle_view
Triangle View Matrix Type Constructor
  
      Container type selectors
      
  
  
  
  
  
  
  
  
  array
Array storage type selectors
  
  
  
  banded
banded shape type selectors, also banded storage type selectors
  
  
  
  
  
  banded_view
Banded view storage type selectors
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  compressed
Compressed sparse storage type selectors (for both OneD and TwoD)
  
  
  
  
  
  
  
  
  
  
  
  dense
Dense storage type selectors (for both TwoD and OneD storage)
  
  
  
  
  
  diagonal
diagonal shape type selectors
  
  
  
  
  
  
  
  
  
  
  
  envelope
Envelope storage type selectors
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  hermitian
hermitian shape type selectors
  
  
  
  
  
  
  
  
  
  
  
  linked_list
Index-Value Pair Sparse Vector implemented with std::list
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  packed
Packed storage type selectors
  
  
  
  
  
  
  
  rectangle
rectangle shape type selector
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  sparse_pair
Index-Value Pair Sparse Vector implemented with mtl::dense1D
  
  
  
  
  
  
  
  
  
  
  symmetric
symmetric shape type selectors
  
  
  
  
  
  tree
Index-Value Pair Sparse Vector implemented with std::set
  
  triangle
triangle shape type selectors
  
  
  
  
      Container classes
      
  
  
  
  
  
  
  
  
  
  array2D
Array 2-D Container
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  compressed1D
Compressed Sparse Vector
  
  
  
  
  
  
  
  
  
  
  
  dense2D
Dense2D Storage Type
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  external2D
External2D Storage Type
  
  
  external_vec
External 1-D Container
  
  
  
  
  
  
  
  
  
  
  
  
  
  generic_comp2D
Compressed 2-D Container
  
  
  
  
  generic_dense2D
Generic Dense 2-D Container
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
      Container adaptors
      
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  block2D
Block View TwoD Storage
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  linalg_vec
Linalg Vector Adaptor
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  scaled1D
Scaled Container
  scaled2D
Scaled 2D container adaptor
  
  
  
  
  
  
  sparse1D
Sparse 1-D Container Adaptor
  
  
  
  
  
  
  
  strided1D
Strided Vector Adaptor
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
      Container functions
  
  scaled Shortcut for Creating a Scaled Argument
  strided Shortcut for Creating a Strided Argument
  blocked Blocked Matrix Generator
  blocked Blocked Matrix Generator
  rows Access the row-wise view of the matrix
  columns Access the column-wise view of the matrix
  trans Swap the orientation of a matrix.
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  Container tags
      
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  banded_tag
Identifies banded matrices
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  column_matrix_traits
Column Matrix Traits
  column_tag
Identifies a column-major Matrix
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  dense_tag
Identifies a dense Matrix or Vector
  
  
  
  
  diagonal_matrix_traits
Diagonal Matrix Traits
  diagonal_tag
Identifies diagonal matrices
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  external_tag
Identifies the Matrix as not owning its data
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  hermitian_tag
Identifies hermitian matrices
  
  
  internal_tag
Identifies the Matrix as owning its data
  
  
  
  linalg_traits
Linear Algebra Object (Matrix and Vector) Traits 
  
  
  
  
  
  
  
  
  
  
  matrix_traits
The "traits" class for MTL matrices.
  
  
  
  
  
  not_strideable
Identifies matrices that can not be used with the rows and columns functions
  
  
  
  
  oned_tag
Identifies linear algebra objects as 1D (Vector)
  
  
  
  
  
  
  
  
  
  rectangle_tag
Identifies rectangular matrices
  
  
  
  
  row_matrix_traits
Row Matrix Traits
  row_tag
Identifies a row-major Matrix
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  sparse_tag
Identifies a sparse Matrix or Vector
  
  
  
  strideable
Identifies matrices that can be used with the rows and columns functions
  
  
  
  
  
  
  
  
  
  symmetric_tag
Identifies symmetric matrices
  
  
  
  
  
  
  
  triangle_tag
Identifies triangular matrices
  
  twod_tag
Identifies linear algebra objects as 2D (Matrix)
  
  
  
       
    3. AlgorithmsConcepts
      
  
  
  
  
  
  
  
  IndexedIterator
IndexedIterator
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
      Iterator functions
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  trans_iter Helper function for creating a transforming iterator
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  Iterator classes
      
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  compressed_iter
Compressed Storage Iterator
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
      Iterator adaptors
      
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  dense_iterator
dense iterator
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  scale_iterator
scale iterator
  
  
  
  
  
  
  
  
  
  
  sparse_iterator
Sparse Vector Iterator
  
  
  
  
  
  
  
  
  
  strided_iterator
strided iterator
  
  
  
  
  
  
  
  transform_iterator
Tranforming Iterator
  
  
  
  
  
  
  
  
  
  
  
       
  
  
  
  
  
  
  
  4. Function Objectssum Sum:  s <- sum_i(x(i))
  scale Scale:  A <- alpha*A or x <- alpha x
  set_diagonal Set Diagonal:  A(i,i) <- alpha
  two_norm Two Norm: s <- sqrt(sum_i(|x(i)^2|))
  sum_squares Sum of the Squares
  
  
  
  
  one_norm One Norm:  s <- sum(|x_i|) or s <- max_i(sum_j(|A(i,j)|))
  
  
  infinity_norm Infinity Norm: s <- max_j(sum_i(|A(i,j)|)) or s <- max_i(|x(i)|)
  max_index Max Index:  i <- index of max(|x(i)|)
  max_abs_index Maximum Absolute Index:  i <- index of max(|x(i)|)
  min_index Minimum Index:  i <- index of min(x(i))
  min_abs_index Minimum Absolute Index:  i <- index of min(|x(i)|)
  max Max Value:  s <- max(x(i))
  min Min Value:  s <- min(x_i)
  
  transpose Transpose in Place:  A <- A^T
  transpose Transpose: B <- A^T
  mult Multiplication:  z <- A x + y
  __mult_dim Matrix Vector Multiplication:  y <- A x
  
  
  
  
  
  
  __mult_dim Matrix multiplication  C <- C + A * B
  
  
  
  tri_solve Triangular Solve:  x <- T^{-1} * x
  
  
  tri_solve Triangular Solve: B <- A^{-1} * B  or  B <- B * A^{-1}
  rank_one_update Rank One Update:   A <- A  +  x * y^T
  rank_two_update Rank Two Update:  A <- A  +  x * y^T  +  y * x^T
  scatter Scatter y <- x
  gather Gather y <- x
  copy Copy:  B <- A or y <- x
  add Add:  z <- x + y
  add Add:  w <- x + y + z
  add Add:  B <- A + B  or  y <- x + y
  ele_mult Element-wise Multiplication:  z <- x O* y
  ele_mult Element-wise Multiply:  B <- A O* B
  ele_div Element-wise Division:  z <- x O/ y
  swap Swap:   B <-> A or y <-> x
  dot Dot Product:  s <- x . y + s
  dot Dot Product:  s <- x . y
  dot Dot Product (extended precision):  s <- x . y + s
  dot_conj Dot Conjugate:  s <- x . conj(y) + s
  dot_conj Dot Conjugate:   s <- x . conj(y)
  
  
  
  
  
  
  
  
  
  lu_factor LU Factorization of a general (dense) matrix
  lu_solve LU Solve
  lu_inverse LU Inverse
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
   
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  5. Interval Classgivens_rotation
Givens Plane Rotation
  givens_rotation__2
The specialization for complex numbers.
  givens_rotation__3
The specialization for complex numbers.
  givens_rotation__4
The specialization for complex numbers.
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  modified_givens
Modified Givens Transformation
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
       
    6. Iterative Template Library (ITL)Interval Object
      	
	
  
	
  
	
  
	
	
	
	
	
	
	
	
	
	
	
  
	
  
	
	
	
	
	
	
	
  
	
	
	
  
	
  
	
  
	
  
	
  
	
  
	
  
	
  
	
  
	
  
	
  
	
  
	
  
	
  
	
  
	
  
	
  
	
  
	
  
	
  
	
  
	
  
	
  
	
  
	
  
	
  
	
  
	
  
	
  
	
  
	
  
	
  
	
  
	
  
	
  
	
  
	
  
	
	
  
	
  
	
  
	
  
	
  
	
  
	
  
	
  
	
	
  
	
  
	
  
	
  
	
  
	
  
	
  
	
  
	
  
	
  
	
  
	
  
	
	
	
	
	
  
	
	
	
  
	
  
	
  
	
	
  
	
  
	
  
	
  
	
  
	
  
	
  
	
  
	
  
	
  
	
	
	
  
	
	
  
	
	
  
	
	
	
	
  
	
	
  
	
	
	
	
  
	
	
  
	
	
  
	
	
  
	
	
  
	
	
  
	
	
  
	
  
	
	
	
	
	
	
	
	
	
	
	
	
  
	
  
	
  
	
  
	
  
	
  
	
  
	
  
	
  
	
  
	
  
	
  
	
  
	
  
	
  
	
  
	
  
	
  interval
Interval Class 
	
  
	
	
  
	
  
	
  
	
  
	
  
	
  
	
	
  
	
  
	
  
	
  
	
  
	
  
	
  
	
  
	
  
	
  
	
  
	
  
	
  
	
  
	
  numeric_limits
Interval Numeric Limits
	
  
	
  
	
  
	
  
	
  
	
  
	
  
	
  
	
  
	
  
	
  
	
	
  
	
  
	
  
	
  
	
  
	
  
	
  
	
  
	
  
	
  
	
  
	
	
  
	
  
	
	
  
	
  
	
  
	
  
	
  
	
	
	
  
	
  
	
  
	
  
	
  
	
  
	
  
	
  
	
  
	
  
	
  
	
  
	
  
	
  
	
  
	
  
	
  
	
  
	
  
	
  
	
  
	
  
	
	
	
      Utilities
      
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  isnan Is not a number
  empty Empty
  sign Sign
  left Left Constant Non-member Acessor
  right Right Constant Non-member Acessor
  inf Infinum Constant Non-member Acessor
  sup Suprenum Constant Non-member Acessor
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  pos_half Positive Half
  neg_half Negative Half
  pred Pred (Interval)
  pred Pred (Tnum)
  succ Succ (Interval)
  succ Succ (Tnum)
  hull Hull of 2 Intervals
  hull Hull of an Interval and a Tnum
  hull Hull of a Tnum and an Interval
  hull Hull of 2 Tnums
  hull Hull of a Tnum
  sym_hull Symmetric Hull
  
  
  
  
  
  
  
  intersection Intersection of 2 Intervals
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
      Operators
      
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  operator == Operator ==
  operator == Operator ==
  operator == Operator ==
  operator != Operator !=
  operator != Operator !=
  operator != Operator !=
  
  
  
  
  
  
  
  
  
  
  
  
  
  operator <= Operator <=
  operator <= Operator <=
  operator <  Operator <
  operator <  Operator <
  operator >= Operator >=
  operator >= Operator >=
  operator >  Operator >
  operator >  Operator >
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  operator +  Operator x+y ( x+y = [inf(x)+inf(y),sup(x)+sup(y)] )
  operator +  Operator x+b ( x+b = [inf(x)+b,sup(x)+b] )
  operator +  Operator a+x ( x = [inf(x)+a,sup(x)+a] )
  operator -  Operator x-y ( x-y = [inf(x)-inf(y),sup(x)-sup(y)] )
  operator -  Operator x-b ( x-b = [inf(x)-b,sup(x)-b] )
  operator -  Operator a-y ( a-y = [a-inf(y),a-sup(y)] )
  
  
  
  
  operator &  Operator &
  operator *  Operator *
  operator *  Operator x*y ( x*y = [inf(x)*y,sup(x)*y] )
  operator *  Operator x*y ( x*y = [x*inf(y),y*sup(y)] )
  operator /  Operator x/y
  operator /  Operator x/b ( x/b = [inf(x)/b,sup(x)/b] )
  operator /  Operator a/y 
  
  
  
  
  
  
  
  
  
      Math
      
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  subset interval-interval Subset Specialization
  subset Subset (Interval in Interval)
  subset Subset (Tnum in Interval)
  proper_subset Proper Subset (Interval in Interval)
  proper_subset Proper Subset (Tnum in Interval)
  poslte Possibly Less Than Or Equal To
  poslte Possibly Less Than Or Equal To
  poslt Possibly Less Than
  poslt Possibly Less Than
  posgte Possibly Greater Than Or Equal To
  posgte Possibly Greater Than Or Equal To
  posgt Possibly Greater Than 
  posgt Possibly Greater Than
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  midpoint Midpoint
  bisect Bisect an Interval
  diameter Diameter
  abs Absolute Value
  dist Distance between 2 Intervals
  dist Distance between a number and an Interval
  dist Distance between a number and an Interval
  
  
  
  
  
  
  
  sqrt Square Root  ( sqrt(x) = [sqrt(inf(x)),sqrt(sup(x))] )
  exp Exponent ( exp(x) = [exp(inf(x),exp(sup(x))] )
  log Log ( log(x) = [log(inf(x)),log(sup(c))] )
  ln ln ( ln(x) = [ln(inf(x)),ln(sup(c))] )
  
  
  
  
  
  
  
  sqr Square
  tan Tangent ( tan(x) = [tan(inf(x)),tan(sup(x))] )
  atan ArcTan ( arctan(x) = [arctan(inf(x)),arctan(sup(x))] )
  sin Sine
  asin ArcSin ( asin(x) = [asin(inf(x)),asin(sup(x))] )
  acos ArcCos ( acos(x) = [acos(inf(x)),acos(sup(x))] )
  cos Cosine
  pow Power (interval^Tnum)
  pow Power ( pow(x,p) = [inf(x)^inf(p),sup(x)^sup(p)] )
       
    7. Fixed Algorithm Size Template (FAST) LibraryConcepts
      
  
  
  
  
  
  
  
  
  
  
  
  
  
  Iteration
Iteration
  
  
  
  
  
  
  
  
  
  
  
  Preconditioner
Preconitioner
  
  
  
  
  
  
  
  
  
  
      Algorithms
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  cg Conjugate Gradient(CG)
  cgs Conjugate Gradient Squared
  bicg BiConjugate Gradient
  gmres Generalized Minimum Residual
  bicgstab BiConjugate Gradient Stabilized
  qmr Quasi-Minimal Residual
  tfqmr Transpose Free Quasi-Minimal Residual
  gcr Generalized Conjugate Residual
  cheby Chebyshev Iteration
  richardson Preconditioned Richardson
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  Preconditioners
      
  ILU
Incomplete LU without fill-in Preconditioner.
  ILUT
ILUT:  Incomplete LU with threshold and K fill-in Preconditioner.
  SSOR
SSOR preconditioner.
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  cholesky
Incomplete Cholesky Preconditioner.
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
       
  8. Basic Linear Algebra Instruction Set (BLAIS) LibraryFunctions
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  copy Copy
  transform Transform (one input iterator)
  transform Transform  (two input iterators)
  fill Fill
  swap_ranges Swap Ranges
  accumulate Accumulate (with default operation)
  accumulate Accumulate (with user-supplied operation)
  inner_product Inner Product (user supplied operators)
  inner_product Inner Product (with default operators)
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  Classes
      
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  count
The static size count class
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
       
  
  
  
  
  
  
  9. MTL to LAPACK Interfaceadd
Add y <- x + y
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  copy
Copy y <- x
  copy__2
Copy  B <- A
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  dot
Dot Product s <- x . y
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  mult
Multiplication y <- A x + y
  mult__2
Multiplication   C <- A * B
  
  
  
  
  
  
  
  
  
  
  rank_one
Rank One Update A <- A +  x * y^T
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  set
Set elements of vector x to alpha
  set__2
Set matrix A to alpha
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
       
  10. UtilitiesType Generators
      
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  lapack_matrix
Lapack Matrix
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
      Functions
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  gecon Estimate the reciprocal of the condition number of a general matrix.
  geev Compute the eigenvalues.
  geqpf QR Factorization with Column Pivoting.
  geqrf QR Factorization of a General Matrix
  gesv Solution to a linear system in a general matrix.
  getrf LU factorization of a general matrix A.  
  getrs Solution to a system using LU factorization 
  geequ Equilibrate and reduce condition number.
  gelqf Compute an LQ factorization.
  orglq Generate a matrix Q with orthonormal rows.
  orgqr Generate a matrix Q with orthonormal columns.
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
   
    11. BibliographyConcepts
      
  
  
  
  Indexer
Maps from Matrix coordinates to TwoD coordinates
  
  
  Offset
Maps from TwoD coordinates to linear memory
  
  
  
  
  
      Functions
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  read_dense_matlab Read a Dense Real Matrix from a Matlab file (.mat)
  write_dense_matlab Write a Dense Real Matrix to a Matlab file (.mat)
  read_sparse_matlab Read a Sparse Real Matrix from a Matlab file (.mat)
  write_sparse_matlab Write a Sparse Real Matrix to a Matlab file (.mat)
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  Classes
      
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  banded_offset
Banded Offset Class
  
  
  
  banded_view_offset
Banded View Offset Class
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  dimension
The Dimension Class
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  harwell_boeing_stream
A Matrix File Input Stream for Harwell-Boeing Matrix Files
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  matrix_market_stream
A Matrix File Input Stream for Matrix Market Files
  
  
  
  
  
  
  
  
  
  
  
  
  
  packed_offset
Packed Offset Class
  
  
  
  
  rect_offset
Rectangular Offset Class
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  strided_band_view_offset
Strided Band View Offset Class
  
  
  strided_offset
Strided Rectangular Offset Class
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
       
12. Categorized index
 |