![]() |
LifeV
|
A matrix class for interfacing with fortran. More...
#include <FortranWrapper.hpp>
Collaboration diagram for FortranMatrix< ScalarType >:Data Fields | |
| size_t | M_arrayDimensions [7] |
| ScalarType * | M_cppRepresentation |
| ScalarType * | M_fortranRepresentation |
| const size_t | M_numDimensions |
Public typedefs | |
| typedef ScalarType | scalar_Type |
Constructors and destructor | |
| FortranMatrix () | |
| FortranMatrix (size_t dim1, size_t dim2=1) | |
| FortranMatrix (ScalarType *cppArray, size_t dim1, size_t dim2=1) | |
| virtual | ~FortranMatrix () |
Operators | |
| operator ScalarType * () | |
| ScalarType & | operator() (size_t index1, size_t index2=0) |
A matrix class for interfacing with fortran.
A minimal class used when passing multi-dimensional array arguments from C++ to FORTRAN 77 (received as FORTRAN arrays), and subsequently returned back to C++ as properly aranged C++ arrays.
FORTRAN organises data in a "column-first" order, while C++ organises data in a "row-first" order.
(1) The FortranMatrix class can take a C++ array as a constructor parameter. A FORTRAN compatible copy of the array is then made. The destructor will then copy the result back to the original c++ array.
(2) The FortranMatrix class provides "subscript operators" allowing the programmer to read and write from the array, using FORTRAN-like syntax and indexing semantics.
/author Carsten A. Arnholm, 04-MAR-1996 (Modified by L. Formaggia MAR 2002)
Definition at line 95 of file FortranWrapper.hpp.
| typedef ScalarType scalar_Type |
Definition at line 100 of file FortranWrapper.hpp.
|
inline |
Definition at line 103 of file FortranWrapper.hpp.
| FortranMatrix | ( | size_t | dim1, |
| size_t | dim2 = 1 |
||
| ) |
Definition at line 189 of file FortranWrapper.hpp.
| FortranMatrix | ( | ScalarType * | cppArray, |
| size_t | dim1, | ||
| size_t | dim2 = 1 |
||
| ) |
Definition at line 204 of file FortranWrapper.hpp.
|
virtual |
Definition at line 231 of file FortranWrapper.hpp.
| operator ScalarType * | ( | ) |
Definition at line 257 of file FortranWrapper.hpp.
| ScalarType & operator() | ( | size_t | index1, |
| size_t | index2 = 0 |
||
| ) |
Definition at line 264 of file FortranWrapper.hpp.
| size_t M_arrayDimensions[7] |
Definition at line 116 of file FortranWrapper.hpp.
| ScalarType* M_cppRepresentation |
Definition at line 117 of file FortranWrapper.hpp.
| ScalarType* M_fortranRepresentation |
Definition at line 118 of file FortranWrapper.hpp.
| const size_t M_numDimensions |
Definition at line 119 of file FortranWrapper.hpp.