Report Typos and Errors    
Semi-Lagrangian Library
Modular library for kinetic and gyrokinetic simulations of plasmas in fusion energy devices.
Private Member Functions | Private Attributes | List of all members
sll_t_matrix_abstract Type Reference

abstract class for matrix More...

Inheritance diagram for sll_t_matrix_abstract:
Collaboration diagram for sll_t_matrix_abstract:

Private Member Functions

generic get_diagonal => get_diagonal_default, get_diagonal_block
 
procedure(sll_p_add_values_matrix_abstract), deferred add_values
 
procedure(sll_p_set_values_matrix_abstract), deferred set_values
 
procedure(sll_p_get_diagonal_matrix_abstract), deferred get_diagonal_default
 
procedure(sll_p_get_diagonal_block_matrix_abstract), deferred get_diagonal_block
 
procedure(sll_p_multiply_matrix_abstract), deferred multiply
 
procedure initialize_abstract => initialize_linear_operator_abstract
 
procedure print_info_abstract => print_info_linear_operator_abstract
 
procedure(sll_p_dot_linear_operator_abstract), deferred dot
 
procedure(sll_p_print_info_linear_operator_abstract), deferred print_info
 
procedure(sll_p_free_linear_operator_abstract), deferred free
 

Private Attributes

integer(kind=i32) n_rows = 0
 number of rows local to the processor More...
 
integer(kind=i32) n_cols = 0
 number of columns local to the processor More...
 
integer(kind=i32) n_global_rows = 0
 global number of rows, different from n_rows for distributed linear operator More...
 
integer(kind=i32) n_global_cols = 0
 global number of columns, different from n_cols for distributed linear operator More...
 
integer(kind=i32) n_block_rows = 1
 number of rows blocks More...
 
integer(kind=i32) n_block_cols = 1
 number of columns blocks More...
 
integer(kind=i32) n_dof = 1
 number of degrees of freedom per node More...
 
logical is_allocated = .false.
 
integer(kind=i32), dimension(:), allocatable id_rows
 array of rows-vertices handled by the current proc More...
 
integer(kind=i32), dimension(:), allocatable id_cols
 array of cols-vertices handled by the current proc More...
 

Detailed Description

abstract class for matrix

Definition at line 27 of file sll_m_matrix_abstract.F90.

Member Function/Subroutine Documentation

◆ add_values()

procedure(sll_p_add_values_matrix_abstract), deferred add_values
private

Definition at line 33 of file sll_m_matrix_abstract.F90.

◆ dot()

procedure(sll_p_dot_linear_operator_abstract), deferred dot
privateinherited

Definition at line 44 of file sll_m_linear_operator_abstract.F90.

◆ free()

procedure(sll_p_free_linear_operator_abstract), deferred free
privateinherited

Definition at line 46 of file sll_m_linear_operator_abstract.F90.

◆ get_diagonal()

generic get_diagonal
private

Definition at line 30 of file sll_m_matrix_abstract.F90.

◆ get_diagonal_block()

procedure(sll_p_get_diagonal_block_matrix_abstract), deferred get_diagonal_block
private

Definition at line 36 of file sll_m_matrix_abstract.F90.

◆ get_diagonal_default()

procedure(sll_p_get_diagonal_matrix_abstract), deferred get_diagonal_default
private

Definition at line 35 of file sll_m_matrix_abstract.F90.

◆ initialize_abstract()

procedure initialize_abstract
privateinherited

Definition at line 41 of file sll_m_linear_operator_abstract.F90.

◆ multiply()

procedure(sll_p_multiply_matrix_abstract), deferred multiply
private

Definition at line 37 of file sll_m_matrix_abstract.F90.

◆ print_info()

procedure(sll_p_print_info_linear_operator_abstract), deferred print_info
privateinherited

Definition at line 45 of file sll_m_linear_operator_abstract.F90.

◆ print_info_abstract()

procedure print_info_abstract
privateinherited

Definition at line 42 of file sll_m_linear_operator_abstract.F90.

◆ set_values()

procedure(sll_p_set_values_matrix_abstract), deferred set_values
private

Definition at line 34 of file sll_m_matrix_abstract.F90.

Member Data Documentation

◆ id_cols

integer(kind=i32), dimension(:), allocatable id_cols
privateinherited

array of cols-vertices handled by the current proc

Definition at line 37 of file sll_m_linear_operator_abstract.F90.

◆ id_rows

integer(kind=i32), dimension(:), allocatable id_rows
privateinherited

array of rows-vertices handled by the current proc

Definition at line 36 of file sll_m_linear_operator_abstract.F90.

◆ is_allocated

logical is_allocated = .false.
privateinherited

Definition at line 34 of file sll_m_linear_operator_abstract.F90.

◆ n_block_cols

integer(kind=i32) n_block_cols = 1
privateinherited

number of columns blocks

Definition at line 32 of file sll_m_linear_operator_abstract.F90.

◆ n_block_rows

integer(kind=i32) n_block_rows = 1
privateinherited

number of rows blocks

Definition at line 31 of file sll_m_linear_operator_abstract.F90.

◆ n_cols

integer(kind=i32) n_cols = 0
privateinherited

number of columns local to the processor

Definition at line 28 of file sll_m_linear_operator_abstract.F90.

◆ n_dof

integer(kind=i32) n_dof = 1
privateinherited

number of degrees of freedom per node

Definition at line 33 of file sll_m_linear_operator_abstract.F90.

◆ n_global_cols

integer(kind=i32) n_global_cols = 0
privateinherited

global number of columns, different from n_cols for distributed linear operator

Definition at line 30 of file sll_m_linear_operator_abstract.F90.

◆ n_global_rows

integer(kind=i32) n_global_rows = 0
privateinherited

global number of rows, different from n_rows for distributed linear operator

Definition at line 29 of file sll_m_linear_operator_abstract.F90.

◆ n_rows

integer(kind=i32) n_rows = 0
privateinherited

number of rows local to the processor

Definition at line 27 of file sll_m_linear_operator_abstract.F90.

    Report Typos and Errors