#include <include/EST_FMatrix.h>
Public Member Functions | |
EST_FMatrix (int m, int n) | |
size constructor More... | |
EST_FMatrix (const EST_FMatrix &a) | |
copy constructor More... | |
EST_FMatrix (const EST_FMatrix &a, int b) | |
CHECK - what does this do??? More... | |
EST_FMatrix () | |
default constructor More... | |
EST_write_status | save (const EST_String &filename, const EST_String &type=EST_FMatrix::default_file_type) |
Save in file (ascii or binary) More... | |
EST_read_status | load (const EST_String &filename) |
Load from file (ascii or binary as defined in file) More... | |
EST_write_status | est_save (const EST_String &filename, const EST_String &type) |
Save in file in est format. More... | |
EST_read_status | est_load (const EST_String &filename) |
Load from file in est format (binary/ascii defined in file itself) More... | |
void | copyin (float **x, ssize_t rows, ssize_t cols) |
Copy 2-d array x of size rows x cols into matrix. More... | |
EST_FMatrix & | operator+= (const EST_FMatrix &a) |
Add elements of 2 same sized matrices. More... | |
EST_FMatrix & | operator-= (const EST_FMatrix &a) |
Subtract elements of 2 same sized matrices. More... | |
EST_FMatrix & | operator*= (const float f) |
elementwise multiply by scalar More... | |
EST_FMatrix & | operator/= (const float f) |
elementwise divide by scalar More... | |
Public Member Functions inherited from EST_TSimpleMatrix< float > | |
EST_TSimpleMatrix (void) | |
default constructor More... | |
EST_TSimpleMatrix (int m, int n) | |
size constructor More... | |
EST_TSimpleMatrix (const EST_TSimpleMatrix< float > &m) | |
copy constructor More... | |
void | copy (const EST_TSimpleMatrix< float > &a) |
copy one matrix into another More... | |
void | resize (int rows, int cols, int set=1) |
resize matrix More... | |
EST_TSimpleMatrix< float > & | operator= (const EST_TSimpleMatrix< float > &s) |
assignment operator More... | |
Public Member Functions inherited from EST_TMatrix< float > | |
EST_TMatrix () | |
default constructor More... | |
EST_TMatrix (const EST_TMatrix< float > &m) | |
copy constructor More... | |
EST_TMatrix (ssize_t rows, ssize_t cols) | |
"size" constructor More... | |
EST_TMatrix (ssize_t rows, ssize_t cols, float *memory, ptrdiff_t offset=0, int free_when_destroyed=0) | |
construct from memory supplied by caller More... | |
~EST_TMatrix () | |
EST_TMatrix. More... | |
bool | have_rows_before (ssize_t n) const |
bool | have_columns_before (ssize_t n) const |
void | resize (ssize_t rows, ssize_t cols, ssize_t set=1) |
void | fill (const float &v) |
fill matrix with value v More... | |
void | fill () |
EST_TMatrix & | operator= (const EST_TMatrix &s) |
assignment operator More... | |
EST_TMatrix & | add_rows (const EST_TMatrix &s) |
The two versions of what might have been operator +=. More... | |
EST_TMatrix & | add_columns (const EST_TMatrix &s) |
ssize_t | num_rows () const |
return number of rows More... | |
ssize_t | num_columns () const |
return number of columns More... | |
INLINE const float & | a_no_check (ssize_t row, ssize_t col) const |
const access with no bounds check, care recommend More... | |
INLINE float & | a_no_check (ssize_t row, ssize_t col) |
access with no bounds check, care recommend More... | |
INLINE const float & | a_no_check_1 (ssize_t row, ssize_t col) const |
INLINE float & | a_no_check_1 (ssize_t row, ssize_t col) |
const float & | a_check (ssize_t row, ssize_t col) const |
const element access function More... | |
float & | a_check (ssize_t row, ssize_t col) |
non-const element access function More... | |
const float & | a (ssize_t row, ssize_t col) const |
float & | a (ssize_t row, ssize_t col) |
const float & | operator() (ssize_t row, ssize_t col) const |
const element access operator More... | |
float & | operator() (ssize_t row, ssize_t col) |
non-const element access operator More... | |
void | row (EST_TVector< float > &rv, ssize_t r, ssize_t start_c=0, int len=-1) |
Make the vector rv a window onto row r More... | |
void | column (EST_TVector< float > &cv, ssize_t c, ssize_t start_r=0, int len=-1) |
Make the vector cv a window onto column c More... | |
void | sub_matrix (EST_TMatrix< float > &sm, ssize_t r=0, ptrdiff_t numr=EST_ALL, ssize_t c=0, ptrdiff_t numc=EST_ALL) |
Make the matrix sm a window into this matrix. More... | |
void | copy_row (ssize_t r, float *buf, ptrdiff_t offset=0, int num=-1) const |
void | copy_row (ssize_t r, EST_TVector< float > &t, ptrdiff_t offset=0, int num=-1) const |
void | copy_column (ssize_t c, float *buf, ptrdiff_t offset=0, int num=-1) const |
void | copy_column (ssize_t c, EST_TVector< float > &t, ptrdiff_t offset=0, int num=-1) const |
void | set_row (ssize_t n, const float *buf, ptrdiff_t offset=0, int num=-1) |
void | set_row (ssize_t n, const EST_TVector< float > &t, ptrdiff_t offset=0, int num=-1) |
void | set_row (ssize_t r, const EST_TMatrix< float > &from, ssize_t from_r, ssize_t from_offset=0, ptrdiff_t offset=0, int num=-1) |
void | set_column (ssize_t n, const float *buf, ptrdiff_t offset=0, int num=-1) |
void | set_column (ssize_t n, const EST_TVector< float > &t, ptrdiff_t offset=0, int num=-1) |
void | set_column (ssize_t c, const EST_TMatrix< float > &from, ssize_t from_c, ssize_t from_offset=0, ptrdiff_t offset=0, int num=-1) |
void | set_memory (float *buffer, ptrdiff_t offset, ssize_t rows, ssize_t columns, int free_when_destroyed=0) |
EST_read_status | load (const class EST_String &filename) |
load Matrix from file - Not currently implemented. More... | |
EST_write_status | save (const class EST_String &filename) const |
save Matrix to file filename More... | |
Public Member Functions inherited from EST_TVector< float > | |
INLINE ssize_t | vcell_pos (ssize_t c, ssize_t cs) const |
The memory access rule, in one place for easy reference. More... | |
INLINE ssize_t | vcell_pos (ssize_t c) const |
INLINE ssize_t | vcell_pos_1 (ssize_t c) const |
INLINE const float & | fast_a_v (int c) const |
quick method for returning (x[n]) More... | |
INLINE float & | fast_a_v (int c) |
INLINE const float & | fast_a_1 (int c) const |
INLINE float & | fast_a_1 (int c) |
void | set_values (const float *data, int step, int start_c, int num_c) |
Get and set values from array. More... | |
void | get_values (float *data, int step, int start_c, int num_c) const |
void | copy (const EST_TVector< float > &a) |
private copy function, called from all other copying functions. More... | |
void | copy_data (const EST_TVector< float > &a) |
just copy data, no resizing, no size check. More... | |
void | just_resize (int new_cols, float **old_vals) |
resize the memory and reset the bounds, but don't set values. More... | |
void | default_vals () |
sets data and length to default values (0 in both cases). More... | |
EST_TVector () | |
default constructor More... | |
EST_TVector (const EST_TVector< float > &v) | |
copy constructor More... | |
EST_TVector (ssize_t n) | |
"size" constructor - make vector of size n. More... | |
EST_TVector (int, float *memory, int offset=0, int free_when_destroyed=0) | |
construct from memory supplied by caller More... | |
~EST_TVector () | |
destructor. More... | |
void | resize (ssize_t n, int set=1) |
const float * | memory () const |
float * | memory () |
void | set_memory (float *buffer, int offset, ssize_t columns, int free_when_destroyed=0) |
EST_TVector & | operator= (const EST_TVector &s) |
assignment operator More... | |
void | fill (const float &v) |
Fill entire array will value v . More... | |
void | empty () |
Fill vector with default value. More... | |
int | operator== (const EST_TVector &v) const |
is true if vectors are equal size and all elements are equal. More... | |
int | operator!= (const EST_TVector &v) const |
is true if vectors are not equal size or a single elements isn't equal. More... | |
void | copy_section (float *dest, int offset=0, int num=-1) const |
Copy data in and out. Subclassed by SimpleVector for speed. More... | |
void | set_section (const float *src, int offset=0, int num=-1) |
void | sub_vector (EST_TVector< float > &sv, int start_c=0, int len=-1) |
Create a sub vector. More... | |
void | integrity () const |
INLINE ssize_t | num_columns () const |
number of items in vector. More... | |
INLINE ssize_t | length () const |
number of items in vector. More... | |
INLINE ssize_t | n () const |
number of items in vector. More... | |
INLINE const float & | a_no_check (ssize_t n) const |
read-only const access operator: without bounds checking More... | |
INLINE float & | a_no_check (ssize_t n) |
read/write non-const access operator: without bounds checking More... | |
INLINE const float & | a_no_check_1 (ssize_t n) const |
read-only const access operator: without bounds checking More... | |
INLINE float & | a_no_check_1 (ssize_t n) |
read/write non-const access operator: without bounds checking More... | |
const float & | a_check (ssize_t n) const |
read-only const access operator: with bounds checking More... | |
float & | a_check (ssize_t n) |
read/write non-const access operator: with bounds checking More... | |
const float & | a (ssize_t n) const |
float & | a (ssize_t n) |
const float & | operator() (ssize_t n) const |
read-only const access operator: return reference to nth member More... | |
float & | operator[] (ssize_t n) |
read/write non const access operator: return reference to nth member More... | |
Static Public Attributes | |
static EST_String | default_file_type = "est_ascii" |
Static Public Attributes inherited from EST_TVector< float > | |
static const float * | def_val |
default value, used for filling matrix after resizing More... | |
static float * | error_return |
Friends | |
EST_FMatrix | operator* (const EST_FMatrix &a, const float x) |
Multiply all elements of matrix by x . More... | |
EST_FVector | operator* (const EST_FMatrix &a, const EST_FVector &v) |
Multiply matrix by vector. More... | |
EST_FVector | operator* (const EST_FVector &v, const EST_FMatrix &a) |
Multiply vector by matrix. More... | |
EST_FMatrix | operator* (const EST_FMatrix &a, const EST_FMatrix &b) |
Multiply matrix by matrix. More... | |
Additional Inherited Members | |
Public Attributes inherited from EST_TVector< float > | |
float * | p_memory |
ssize_t | p_num_columns |
Visible shape. More... | |
ssize_t | p_offset |
How to access the memory. More... | |
ssize_t | p_column_step |
bool | p_sub_matrix |
Protected Member Functions inherited from EST_TSimpleMatrix< float > | |
void | copy_data (const EST_TSimpleMatrix< float > &a) |
Protected Member Functions inherited from EST_TMatrix< float > | |
INLINE ssize_t | mcell_pos (ssize_t r, ssize_t c, ssize_t rs, ssize_t cs) const |
INLINE ssize_t | mcell_pos (ssize_t r, ssize_t c) const |
INLINE ssize_t | mcell_pos_1 (ssize_t r, ssize_t c) const |
INLINE const float & | fast_a_m (ssize_t r, ssize_t c) const |
quick method for returning x[m][n] More... | |
INLINE float & | fast_a_m (ssize_t r, ssize_t c) |
INLINE const float & | fast_a_1 (ssize_t r, ssize_t c) const |
INLINE float & | fast_a_1 (ssize_t r, ssize_t c) |
void | set_values (const float *data, ssize_t r_step, ssize_t c_step, ssize_t start_r, ssize_t num_r, ssize_t start_c, ssize_t num_c) |
Get and set values from array. More... | |
void | get_values (float *data, ssize_t r_step, ssize_t c_step, ssize_t start_r, ssize_t num_r, ssize_t start_c, ssize_t num_c) const |
void | copy (const EST_TMatrix< float > &a) |
private resize and copy function. More... | |
void | copy_data (const EST_TMatrix< float > &a) |
just copy data, no resizing, no size check. More... | |
void | just_resize (ssize_t new_rows, ssize_t new_cols, float **old_vals) |
resize the memory and reset the bounds, but don't set values. More... | |
void | default_vals () |
sets data and length to default values (0 in both cases). More... | |
Protected Attributes inherited from EST_TMatrix< float > | |
ssize_t | p_num_rows |
Visible shape. More... | |
ssize_t | p_row_step |
How to access the memory. More... | |
A matrix class for floating point numbers. EST_FMatrix x should be used instead of float **x wherever possible.
Definition at line 59 of file EST_FMatrix.h.
size constructor
Definition at line 63 of file EST_FMatrix.h.
|
inline |
copy constructor
Definition at line 65 of file EST_FMatrix.h.
EST_FMatrix::EST_FMatrix | ( | const EST_FMatrix & | a, |
int | b | ||
) |
CHECK - what does this do???
Definition at line 65 of file EST_FMatrix.cc.
|
inline |
default constructor
Definition at line 71 of file EST_FMatrix.h.
EST_write_status EST_FMatrix::save | ( | const EST_String & | filename, |
const EST_String & | type = EST_FMatrix::default_file_type |
||
) |
Save in file (ascii or binary)
Definition at line 341 of file EST_FMatrix.cc.
EST_read_status EST_FMatrix::load | ( | const EST_String & | filename | ) |
Load from file (ascii or binary as defined in file)
Definition at line 523 of file EST_FMatrix.cc.
EST_write_status EST_FMatrix::est_save | ( | const EST_String & | filename, |
const EST_String & | type | ||
) |
Save in file in est format.
Definition at line 377 of file EST_FMatrix.cc.
EST_read_status EST_FMatrix::est_load | ( | const EST_String & | filename | ) |
Load from file in est format (binary/ascii defined in file itself)
Definition at line 446 of file EST_FMatrix.cc.
Copy 2-d array x
of size rows x cols
into matrix.
Definition at line 329 of file EST_FMatrix.cc.
EST_FMatrix & EST_FMatrix::operator+= | ( | const EST_FMatrix & | a | ) |
Add elements of 2 same sized matrices.
Definition at line 75 of file EST_FMatrix.cc.
EST_FMatrix & EST_FMatrix::operator-= | ( | const EST_FMatrix & | a | ) |
Subtract elements of 2 same sized matrices.
Definition at line 95 of file EST_FMatrix.cc.
EST_FMatrix & EST_FMatrix::operator*= | ( | const float | f | ) |
elementwise multiply by scalar
Definition at line 115 of file EST_FMatrix.cc.
EST_FMatrix & EST_FMatrix::operator/= | ( | const float | f | ) |
elementwise divide by scalar
Definition at line 126 of file EST_FMatrix.cc.
|
friend |
Multiply all elements of matrix by x
.
Definition at line 183 of file EST_FMatrix.cc.
|
friend |
Multiply matrix by vector.
Definition at line 208 of file EST_FMatrix.cc.
|
friend |
Multiply vector by matrix.
Definition at line 267 of file EST_FMatrix.cc.
|
friend |
Multiply matrix by matrix.
Definition at line 299 of file EST_FMatrix.cc.
|
static |
Definition at line 67 of file EST_FMatrix.h.