6 #ifndef MYRAMATH_DENSE_DIAGONALMATRIX_H     7 #define MYRAMATH_DENSE_DIAGONALMATRIX_H    14 #include <myramath/MYRAMATH_EXPORT.h>    21 #ifdef MYRAMATH_ENABLE_CPP11    22 #include <initializer_list>    30 template<
int Arity, 
class Number> 
class Expression;
    31 template<
class Number> 
class DiagonalMatrix;
    32 template<
class Number> 
class Matrix;
    33 template<
class Number> 
class MatrixRange;
    34 template<
class Number> 
class Vector;
    35 template<
class Number> 
class VectorRange;
    38 template<
class Number> 
class MYRAMATH_EXPORT DiagonalMatrix
    62 #ifdef MYRAMATH_ENABLE_CPP11   114     const Number& operator() (
int n) 
const;
   116           Number& operator() (
int n)      ;
   120     const Number& at(
int n) 
const;
   143     template<
class Functor> 
void transform(
const Functor& f)
   144       { this->range().transform(f); }
   163     void operator *= (Number alpha);
   166     void operator /= (Number alpha);
   188 #ifdef MYRAMATH_ENABLE_CPP11   217     typedef std::vector<Number> Contents;
   223   { 
public: 
typedef Number type; };
 Number random()
Generate random real/complex Numbers, uniformly distributed over [-1,1]. 
Reflects Number trait for a Container, containers of Numbers (Matrix's, Vector's, etc) should special...
Definition: Number.h:55
Represents a const DiagonalMatrixRange. 
Definition: conjugate.h:35
Interface class for representing subranges of DiagonalMatrix's. 
Tabulates the values of a square NxN diagonal matrix. Allows random access, but only on the diagonal...
Definition: conjugate.h:23
ReflectPrecision< Number >::type Precision
Useful typedefs. 
Definition: DiagonalMatrix.h:43
Tabulates an IxJ matrix. Allows random access, has column major layout to be compatible with BLAS/LAP...
Definition: bdsqr.h:20
Represents a mutable VectorRange. 
Definition: axpy.h:21
Abstraction layer, serializable objects write themselves to these. 
Definition: Streams.h:39
Various utility functions/classes related to scalar Number types. 
void transform(const Functor &f)
Overwrites every D(n) in this DiagonalMatrix with f(D(n)). 
Definition: DiagonalMatrix.h:143
Represents a mutable MatrixRange. 
Definition: conjugate.h:26
Tabulates a vector of length N, allows random access. 
Definition: conjugate.h:21
Reflects Precision trait for a Number, scalar Number types should specialize it. 
Definition: Number.h:33
Expression< 1, NumberC > make_complex(const Expression< 1, NumberS > &A)
Promotes a real Expression into a complex one. 
Definition: functions_complex.cpp:122
Given an index (i,j,etc), returns a value. 
Definition: arithmetic.h:19
Represents a mutable DiagonalMatrixRange. 
Definition: conjugate.h:29
float NumberS
Useful typedefs. 
Definition: Number.h:21