quick start:g++ [flags ...] file ... -l /isip/tools/lib/$ISIP_BINARY/lib_math_matrix.a #include <MatrixComplexLong.h> MatrixComplexLong(long nrows = DEF_SIZE, long ncols = DEF_SIZE, long type = DEF_TYPE); MatrixComplexLong(const MatrixComplexLong& matrix);
description:MatrixComplexLong val0(2, 3, L"1-6j, 2+5j, -3+4j, -4-4j, -5-8j, 6-4j"); MatrixComplexLong val1(3, 3, L"1-6j, 2+5j, -3+4j, -4-4j, -5-8j, 6-4j", Integral::LOWER_TRIANGULAR);
static const String CLASS_NAME = L"MatrixComplexLong";
static const long ERR = 25200;
static MemoryManager mgr_d;
static const String& name();
static boolean diagnose(Integral::DEBUG debug_level);
boolean debug(const unichar* message) const;
~MatrixComplexLong();
MatrixComplexLong(long nrows = DEF_SIZE, long ncols = DEF_SIZE, long type = DEF_TYPE);
MatrixComplexLong(const MatrixComplexLong& matrix);
these methods are inherited from the MMatrix template class
MatrixComplexLong& operator=(const MatrixComplexLong& matrix);
boolean read(Sof& sof, long tag, const String& name = CLASS_NAME);
boolean write(Sof& sof, long tag, const String& name = CLASS_NAME) const;
these methods are inherited from the MMatrix template class
static void* operator new(size_t size);
static void* operator new[](size_t size);
static void operator delete(void* ptr);
static void operator delete[](void* ptr);
static boolean setGrowSize(long grow_size);
MatrixComplexLong(long nrows, long ncols, const unichar* arg, long type = DEF_TYPE, const Char delim = DEF_DELIM);
MatrixComplexLong& operator=(complexlong value);
#include <MatrixComplexLong.h> #include <VectorComplexLong.h> // this example performs a basic operation with an integer complex matrix // int main() { // define the complex matrix A, complex vector b // and the resulting complex vector x // MatrixComplexLong A(3, 3, L"1, 2j, -9j, -7, 0, 6+8j, 1, 1, 1+1j", Integral::FULL); A.debug(L"matrix A"); // get the max element // ComplexLong max; max = A.max(); max.debug(L"max(A)"); // compute the determinant // ComplexLong det; det = A.determinant(); det.debug(L"det(A)"); // multiply matrix by b, put the result into x // VectorComplexLong b(L"-3-3j, -5+1j, 1+3j"); b.debug(L"vector b"); VectorComplexLong x; A.multv(x, b); x.debug(L"Ab"); // multiply matrix by diagonal matrix // MatrixComplexLong B(3, 3, L"1j, 1j, 1j", Integral::DIAGONAL); B.debug(L"matrix B"); A.mult(B); A.debug(L"AB"); return true; }