Neko  0.9.0
A portable framework for high-order spectral element flow simulations
matrix::matrix_t Type Reference
Collaboration diagram for matrix::matrix_t:

Public Member Functions

procedure, pass(m) init => matrix_init
 Initialise a matrix of size nrows*ncols. More...
 
procedure, pass(m) free => matrix_free
 Deallocate a matrix. More...
 
procedure, pass(m) size => matrix_size
 Returns the number of entries in the matrix. More...
 
procedure, pass(m) matrix_assign_matrix
 Assignment \( m = w \). More...
 
procedure, pass(m) matrix_assign_scalar
 Assignment \( m = s \). More...
 
procedure, pass(m) matrix_add_matrix
 Matrix-matrix addition \( v = m + b \). More...
 
procedure, pass(m) matrix_add_scalar_left
 Matrix-scalar addition \( v = m + c \). More...
 
procedure, pass(m) matrix_add_scalar_right
 Scalar-matrix addition \( v = c + m \). More...
 
procedure, pass(m) matrix_sub_matrix
 Matrix-matrix subtraction \( v = m - b \). More...
 
procedure, pass(m) matrix_sub_scalar_left
 Matrix-scalar subtraction \( v = m - c \). More...
 
procedure, pass(m) matrix_sub_scalar_right
 Scalar-matrix subtraction \( v = c - m \). More...
 
procedure, pass(m) matrix_cmult_left
 Matrix-scalar multiplication \( v = m*c \). More...
 
procedure, pass(m) matrix_cmult_right
 Scalar-matrix multiplication \( v = c*m \). More...
 
procedure, pass(m) inverse => matrix_bcknd_inverse
 Inverse a matrix. More...
 
generic assignment => matrix_assign_matrix, matrix_assign_scalar
 
generic operator => matrix_add_matrix, matrix_add_scalar_left, matrix_add_scalar_right
 
generic operator => matrix_sub_matrix, matrix_sub_scalar_left, matrix_sub_scalar_right
 
generic operator => matrix_cmult_left, matrix_cmult_right
 

Public Attributes

real(kind=rp), dimension(:,:), allocatable x
 Matrix entries. More...
 
type(c_ptr) x_d = C_NULL_PTR
 Device pointer. More...
 
integer nrows = 0
 Number of matrix rows. More...
 
integer ncols = 0
 Number of matrix columns. More...
 
integer n = 0
 Total size nows*ncols. More...
 

Detailed Description

Definition at line 46 of file matrix.f90.

Member Function/Subroutine Documentation

◆ assignment()

generic matrix::matrix_t::assignment

Definition at line 82 of file matrix.f90.

Here is the call graph for this function:

◆ free()

procedure, pass(m) matrix::matrix_t::free

Definition at line 56 of file matrix.f90.

◆ init()

procedure, pass(m) matrix::matrix_t::init

Definition at line 54 of file matrix.f90.

◆ inverse()

procedure, pass(m) matrix::matrix_t::inverse

Definition at line 80 of file matrix.f90.

◆ matrix_add_matrix()

procedure, pass(m) matrix::matrix_t::matrix_add_matrix

Definition at line 64 of file matrix.f90.

◆ matrix_add_scalar_left()

procedure, pass(m) matrix::matrix_t::matrix_add_scalar_left

Definition at line 66 of file matrix.f90.

◆ matrix_add_scalar_right()

procedure, pass(m) matrix::matrix_t::matrix_add_scalar_right

Definition at line 68 of file matrix.f90.

◆ matrix_assign_matrix()

procedure, pass(m) matrix::matrix_t::matrix_assign_matrix

Definition at line 60 of file matrix.f90.

◆ matrix_assign_scalar()

procedure, pass(m) matrix::matrix_t::matrix_assign_scalar

Definition at line 62 of file matrix.f90.

◆ matrix_cmult_left()

procedure, pass(m) matrix::matrix_t::matrix_cmult_left

Definition at line 76 of file matrix.f90.

◆ matrix_cmult_right()

procedure, pass(m) matrix::matrix_t::matrix_cmult_right

Definition at line 78 of file matrix.f90.

◆ matrix_sub_matrix()

procedure, pass(m) matrix::matrix_t::matrix_sub_matrix

Definition at line 70 of file matrix.f90.

◆ matrix_sub_scalar_left()

procedure, pass(m) matrix::matrix_t::matrix_sub_scalar_left

Definition at line 72 of file matrix.f90.

◆ matrix_sub_scalar_right()

procedure, pass(m) matrix::matrix_t::matrix_sub_scalar_right

Definition at line 74 of file matrix.f90.

◆ operator() [1/3]

generic matrix::matrix_t::operator

Definition at line 84 of file matrix.f90.

Here is the call graph for this function:

◆ operator() [2/3]

generic matrix::matrix_t::operator

Definition at line 88 of file matrix.f90.

Here is the call graph for this function:

◆ operator() [3/3]

generic matrix::matrix_t::operator

Definition at line 86 of file matrix.f90.

Here is the call graph for this function:

◆ size()

procedure, pass(m) matrix::matrix_t::size

Definition at line 58 of file matrix.f90.

Member Data Documentation

◆ n

integer matrix::matrix_t::n = 0

Definition at line 51 of file matrix.f90.

◆ ncols

integer matrix::matrix_t::ncols = 0

Definition at line 50 of file matrix.f90.

◆ nrows

integer matrix::matrix_t::nrows = 0

Definition at line 49 of file matrix.f90.

◆ x

real(kind=rp), dimension(:,:), allocatable matrix::matrix_t::x

Definition at line 47 of file matrix.f90.

◆ x_d

type(c_ptr) matrix::matrix_t::x_d = C_NULL_PTR

Definition at line 48 of file matrix.f90.


The documentation for this type was generated from the following file: