![]() |
kspaceFirstOrder3D-CUDA
1.1
The CUDA/C++ implementation of the k-wave toolbox for the time-domain simulation of acoustic wave fields in 3D
|
The class for complex matrices. More...
#include <ComplexMatrix.h>


Public Member Functions | |
| TComplexMatrix (const TDimensionSizes &dimensionSizes) | |
| Constructor. More... | |
| virtual | ~TComplexMatrix () |
| Destructor. More... | |
| TFloatComplex & | operator[] (const size_t &index) |
| Operator []. More... | |
| const TFloatComplex & | operator[] (const size_t &index) const |
| Operator [], constant version. More... | |
| virtual void | ReadDataFromHDF5File (THDF5_File &file, TMatrixName &matrixName) |
| Load data from the HDF5_File. More... | |
| virtual void | WriteDataToHDF5File (THDF5_File &file, TMatrixName &matrixName, const size_t compressionLevel) |
| Write data into the HDF5_File. More... | |
Public Member Functions inherited from TBaseFloatMatrix | |
| TBaseFloatMatrix () | |
| Default constructor. More... | |
| virtual TDimensionSizes | GetDimensionSizes () const |
| Get dimension sizes of the matrix. | |
| virtual size_t | GetElementCount () const |
| Get element count of the matrix. | |
| virtual size_t | GetAllocatedElementCount () const |
| Get total allocated element count (might differ from total element count used for the simulation because of padding). | |
| virtual void | ZeroMatrix () |
| Zero all elements of the matrix (NUMA first touch). More... | |
| virtual void | ScalarDividedBy (const float scalar) |
| Divide scalar/ matrix_element[i]. More... | |
| virtual float * | GetHostData () |
| Get raw CPU data out of the class (for direct CPU kernel access). | |
| virtual const float * | GetHostData () const |
| Get raw CPU data out of the class (for direct CPU kernel access). | |
| virtual float * | GetDeviceData () |
| Get raw GPU data out of the class (for direct GPU kernel access). | |
| virtual const float * | GetDeviceData () const |
| Get raw GPU data out of the class (for direct GPU kernel access). | |
| virtual void | CopyToDevice () |
| Copy data from CPU -> GPU (Host -> Device). More... | |
| virtual void | CopyFromDevice () |
| Copy data from GPU -> CPU (Device -> Host). More... | |
Public Member Functions inherited from TBaseMatrix | |
| TBaseMatrix () | |
| Default constructor. | |
| virtual | ~TBaseMatrix () |
| Destructor. | |
Protected Member Functions | |
| TComplexMatrix () | |
| Default constructor not allowed for public. | |
| TComplexMatrix (const TComplexMatrix &src) | |
| Copy constructor not allowed for public. | |
| TComplexMatrix & | operator= (const TComplexMatrix &src) |
| Operator not allowed for public. | |
| virtual void | InitDimensions (const TDimensionSizes &dimensionSizes) |
| Initialize dimension sizes and related structures. More... | |
Protected Member Functions inherited from TBaseFloatMatrix | |
| virtual void | AllocateMemory () |
| Memory allocation (both on CPU and GPU). More... | |
| virtual void | FreeMemory () |
| Memory allocation (both on CPU and GPU). More... | |
| TBaseFloatMatrix (const TBaseFloatMatrix &src) | |
| Copy constructor is not directly allowed. | |
| TBaseFloatMatrix & | operator= (const TBaseFloatMatrix &src) |
| Operator = is not directly allowed. | |
Additional Inherited Members | |
Protected Attributes inherited from TBaseFloatMatrix | |
| size_t | nElements |
| Total number of elements. | |
| size_t | nAllocatedElements |
| Total number of allocated elements (in terms of floats). | |
| struct TDimensionSizes | dimensionSizes |
| Dimension sizes. | |
| size_t | dataRowSize |
| Size of a 1D row in X dimension. | |
| size_t | dataSlabSize |
| Size of a 2D slab. | |
| float * | hostData |
| Raw CPU matrix data. | |
| float * | deviceData |
| Raw GPU matrix data. | |
The class for complex matrices.
Definition at line 54 of file ComplexMatrix.h.
| TComplexMatrix::TComplexMatrix | ( | const TDimensionSizes & | dimensionSizes | ) |
Constructor.
| [in] | dimensionSizes | - Dimension sizes of the matrix |
Definition at line 51 of file ComplexMatrix.cpp.

|
virtual |
Destructor.
Definition at line 62 of file ComplexMatrix.cpp.

|
protectedvirtual |
Initialize matrix dimension sizes.
| [in] | dimensionSizes | - Dimension sizes of the matrix |
Definition at line 147 of file ComplexMatrix.cpp.

|
inline |
Operator [].
| [in] | index | - 1D index into the array |
Definition at line 69 of file ComplexMatrix.h.
|
inline |
Operator [], constant version.
| [in] | index | - 1D index into the array |
Definition at line 80 of file ComplexMatrix.h.
|
virtual |
Read data from HDF5 file (do some basic checks). Only from the root group.
| [in] | file | - HDF5 file |
| [in] | matrixName | - HDF5 dataset name |
| ios::failure | when there is a problem |
Implements TBaseMatrix.
Definition at line 77 of file ComplexMatrix.cpp.

|
virtual |
Write data to HDF5 file (only from the root group).
| [in] | file | - HDF5 file handle |
| [in] | matrixName | - HDF5 dataset name |
| [in] | compressionLevel | - Compression level for the dataset |
| ios::failure | an exception what the operation fails |
Implements TBaseMatrix.
Definition at line 110 of file ComplexMatrix.cpp.
