51# define ARMATRIX_EXTERN
54# define ARMATRIX_EXTERN __declspec(dllexport)
56# define ARMATRIX_EXTERN __declspec(dllimport)
60# define ARMATRIX_EXTERN
80#ifdef ARDOUBLE_IS_FLOAT
97#define ARELEM0(mat,r,c) ((mat)->m[(r)*((mat)->clm)+(c)])
99#define ARELEM1(mat,row,clm) ARELEM0(mat,row-1,clm-1)
105#ifdef ARDOUBLE_IS_FLOAT
106# define arMatrixAllocf arMatrixAlloc
107# define arMatrixFreef arMatrixFree
122#ifdef ARDOUBLE_IS_FLOAT
123# define arMatrixMulf arMatrixMul
124# define arMatrixAllocMulf arMatrixAllocMul
133#ifdef ARDOUBLE_IS_FLOAT
134# define arMatrixTransf arMatrixTrans
135# define arMatrixAllocTransf arMatrixAllocTrans
145#ifdef ARDOUBLE_IS_FLOAT
146# define arMatrixSelfInvf arMatrixSelfInv
double ARdouble
Definition: ar.h:99
int arVecTridiagonalize(ARMat *a, ARVec *d, ARVec *e)
Definition: vTridiag.c:54
int arVecFree(ARVec *v)
Definition: vFree.c:59
ARMATRIX_EXTERN ARMat * arMatrixAllocUnit(int dim)
Definition: mAllocUnit.c:59
ARMATRIX_EXTERN int arMatrixDisp(ARMat *m)
Definition: mDisp.c:54
ARMATRIX_EXTERN ARMatf * arMatrixAllocMulf(ARMatf *a, ARMatf *b)
Definition: mAllocMul.c:75
int arVecDisp(ARVec *v)
Definition: vDisp.c:54
ARdouble arVecHousehold(ARVec *x)
Definition: vHouse.c:60
ARMATRIX_EXTERN ARdouble arMatrixDet(ARMat *m)
Definition: mDet.c:58
ARVec * arVecAlloc(int clm)
Definition: vAlloc.c:59
ARMATRIX_EXTERN int arMatrixMul(ARMat *dest, ARMat *a, ARMat *b)
Definition: mMul.c:54
ARMATRIX_EXTERN int arMatrixInv(ARMat *dest, ARMat *source)
Definition: mInv.c:54
ARMATRIX_EXTERN ARMat * arMatrixAllocInv(ARMat *source)
Definition: mAllocInv.c:59
ARMATRIX_EXTERN int arMatrixTransf(ARMatf *dest, ARMatf *source)
Definition: mTrans.c:86
ARMATRIX_EXTERN int arMatrixPCA(ARMat *input, ARMat *evec, ARVec *ev, ARVec *mean)
Definition: mPCA.c:91
ARMATRIX_EXTERN int arMatrixUnit(ARMat *unit)
Definition: mUnit.c:54
ARMATRIX_EXTERN ARMatf * arMatrixAllocf(int row, int clm)
Definition: mAlloc.c:80
ARMATRIX_EXTERN ARMat * arMatrixAlloc(int row, int clm)
Definition: mAlloc.c:59
ARMATRIX_EXTERN int arMatrixMulf(ARMatf *dest, ARMatf *a, ARMatf *b)
Definition: mMul.c:95
ARMATRIX_EXTERN ARMat * arMatrixAllocTrans(ARMat *source)
Definition: mAllocTrans.c:59
ARMATRIX_EXTERN int arMatrixSelfInvf(ARMatf *m)
Definition: mSelfInv.c:151
ARMATRIX_EXTERN int arMatrixFree(ARMat *m)
Definition: mFree.c:59
ARMATRIX_EXTERN ARMat * arMatrixAllocDup(ARMat *source)
Definition: mAllocDup.c:59
ARMATRIX_EXTERN ARMatf * arMatrixAllocTransf(ARMatf *source)
Definition: mAllocTrans.c:75
ARMATRIX_EXTERN int arMatrixSelfInv(ARMat *m)
Definition: mSelfInv.c:67
ARMATRIX_EXTERN int arMatrixPCA2(ARMat *input, ARMat *evec, ARVec *ev)
Definition: mPCA.c:131
ARMATRIX_EXTERN int arMatrixDup(ARMat *dest, ARMat *source)
Definition: mDup.c:54
#define ARMATRIX_EXTERN
Definition: matrix.h:60
ARdouble arVecInnerproduct(ARVec *x, ARVec *y)
Definition: vInnerP.c:55
ARMATRIX_EXTERN int arMatrixTrans(ARMat *dest, ARMat *source)
Definition: mTrans.c:54
ARMATRIX_EXTERN ARMat * arMatrixAllocMul(ARMat *a, ARMat *b)
Definition: mAllocMul.c:59
int arMatrixFreef(ARMatf *m)
Definition: mFree.c:70
int row
Definition: matrix.h:76
int clm
Definition: matrix.h:77
ARdouble * m
Definition: matrix.h:75
int clm
Definition: matrix.h:86
float * m
Definition: matrix.h:84
int row
Definition: matrix.h:85
ARdouble * v
Definition: matrix.h:91
int clm
Definition: matrix.h:92