Neko 1.99.1
A portable framework for high-order spectral element flow simulations
|
Public Member Functions | |
procedure, pass(m) | init (m, nrows, ncols) |
Initialise a matrix of size nrows*ncols . | |
procedure, pass(m) | free (m) |
Deallocate a matrix. | |
procedure, pass(m) | size (m) |
Returns the number of entries in the matrix. | |
procedure, pass(m) | copy_from (m, memdir, sync) |
Copy between host and device. | |
procedure, pass(m) | get_nrows (m) |
Returns the number of rows in the matrix. | |
procedure, pass(m) | get_ncols (m) |
Returns the number of columns in the matrix. | |
procedure, pass(m) | matrix_assign_matrix (m, w) |
Assignment \( m = w \). | |
procedure, pass(m) | matrix_assign_scalar (m, s) |
Assignment \( m = s \). | |
procedure, pass(m) | inverse (m, bcknd) |
Inverse a matrix. | |
procedure, pass(m) | inverse_on_host (m) |
generic | assignment (m, w) |
Assignment \( m = w \). | |
generic | assignment (m, s) |
Assignment \( m = s \). | |
Public Attributes | |
real(kind=rp), dimension(:,:), allocatable | x |
Matrix entries. | |
type(c_ptr) | x_d = C_NULL_PTR |
Device pointer. | |
Private Member Functions | |
procedure, pass, private | alloc (m, nrows, ncols) |
Allocate a matrix of size nrows*ncols . | |
Private Attributes | |
integer, private | nrows = 0 |
Number of matrix rows. | |
integer, private | ncols = 0 |
Number of matrix columns. | |
integer, private | n = 0 |
Total size nows*ncols. | |
Definition at line 47 of file matrix.f90.
|
private |
nrows | Number of rows. |
ncols | Number of columns. |
Definition at line 78 of file matrix.f90.
generic matrix::matrix_t::assignment | ( | class(matrix_t), intent(inout) | m, |
real(kind=rp), intent(in) | s | ||
) |
Definition at line 74 of file matrix.f90.
procedure, pass(m) matrix::matrix_t::copy_from | ( | class(matrix_t), intent(inout) | m, |
integer, intent(in) | memdir, | ||
logical, intent(in) | sync | ||
) |
m | matrix to copy to/from device/host @memdir direction to copy (HOST_TO_DEVICE or DEVICE_TO_HOST) @sync whether the memcopy to be blocking or not |
Definition at line 61 of file matrix.f90.
Definition at line 57 of file matrix.f90.
Definition at line 65 of file matrix.f90.
Definition at line 63 of file matrix.f90.
procedure, pass(m) matrix::matrix_t::init | ( | class(matrix_t), intent(inout) | m, |
integer, intent(in) | nrows, | ||
integer, intent(in) | ncols | ||
) |
nrows | Number of rows. |
ncols | Number of columns. |
Definition at line 55 of file matrix.f90.
procedure, pass(m) matrix::matrix_t::inverse | ( | class(matrix_t), intent(inout) | m, |
integer, optional | bcknd | ||
) |
Definition at line 71 of file matrix.f90.
Definition at line 72 of file matrix.f90.
procedure, pass(m) matrix::matrix_t::matrix_assign_matrix | ( | class(matrix_t), intent(inout) | m, |
type(matrix_t), intent(in) | w | ||
) |
Definition at line 67 of file matrix.f90.
procedure, pass(m) matrix::matrix_t::matrix_assign_scalar | ( | class(matrix_t), intent(inout) | m, |
real(kind=rp), intent(in) | s | ||
) |
Definition at line 69 of file matrix.f90.
Definition at line 59 of file matrix.f90.
Definition at line 52 of file matrix.f90.
Definition at line 51 of file matrix.f90.
Definition at line 50 of file matrix.f90.
real(kind=rp), dimension(:,:), allocatable matrix::matrix_t::x |
Definition at line 48 of file matrix.f90.
type(c_ptr) matrix::matrix_t::x_d = C_NULL_PTR |
Definition at line 49 of file matrix.f90.