| 31 |
|
/* Resolve data type based on two input types (returns 0 for mismatch) */ |
| 32 |
|
extern int rmx_newtype(int dtyp1, int dtyp2); |
| 33 |
|
|
| 34 |
< |
/* Load matrix from supported file type */ |
| 35 |
< |
extern RMATRIX *rmx_load(const char *fname); |
| 34 |
> |
/* Load matrix from supported file type (NULL for stdin, '!' with command) */ |
| 35 |
> |
extern RMATRIX *rmx_load(const char *inspec); |
| 36 |
|
|
| 37 |
|
/* Append header information associated with matrix data */ |
| 38 |
|
extern int rmx_addinfo(RMATRIX *rm, const char *info); |
| 51 |
|
|
| 52 |
|
/* Multiply (concatenate) two matrices and allocate the result */ |
| 53 |
|
extern RMATRIX *rmx_multiply(const RMATRIX *m1, const RMATRIX *m2); |
| 54 |
+ |
|
| 55 |
+ |
/* Element-wise multiplication (or division) of m2 into m1 */ |
| 56 |
+ |
extern int rmx_elemult(RMATRIX *m1, const RMATRIX *m2, int divide); |
| 57 |
|
|
| 58 |
|
/* Sum second matrix into first, applying scale factor beforehand */ |
| 59 |
|
extern int rmx_sum(RMATRIX *msum, const RMATRIX *madd, const double sf[]); |