Report Typos and Errors    
Semi-Lagrangian Library
Modular library for kinetic and gyrokinetic simulations of plasmas in fusion energy devices.
List of all members
sll_c_vector_space Type Reference

Abstract base class for all vector spaces. More...

Inheritance diagram for sll_c_vector_space:

Private Member Functions

Basic operations (abstract methods)

Any non-abstract extended type MUST provide an implementation for these.

procedure(i_copy), deferred copy
 
procedure(i_incr), deferred incr
 
procedure(i_scal), deferred scal
 
Additional operations

We provide a standard implementation that uses the operations above and creates temporary objects where needed. The user should provide a more efficient implementation.

procedure add => s_vector_space__add
 
procedure mult => s_vector_space__mult
 
procedure mult_add => s_vector_space__mult_add
 
procedure incr_mult => s_vector_space__incr_mult
 
procedure lcmb => s_vector_space__lcmb
 
procedure incr_lcmb => s_vector_space__incr_lcmb
 
Optional subroutines and functions

Provide a norm to have a normed vector space. Provide an inner product to have an inner product space. Provide a show function for debugging purposes.

procedure norm => f_vector_space__norm
 norm(z) More...
 
procedure inner => f_vector_space__inner
 inner(z,x) More...
 
procedure show => s_vector_space__show
 
Constructors & destructors
generic source => source_scalar, source_array
 
Copy constructors (one vector or an array of vectors)
procedure, private source_scalar => s_vector_space__source_scalar
 
procedure, private source_array => s_vector_space__source_array
 

Detailed Description

Abstract base class for all vector spaces.

Definition at line 28 of file sll_m_vector_space_base.F90.

Member Function/Subroutine Documentation

◆ add()

procedure add
private

Definition at line 42 of file sll_m_vector_space_base.F90.

◆ copy()

procedure(i_copy), deferred copy
private

Definition at line 34 of file sll_m_vector_space_base.F90.

◆ incr()

procedure(i_incr), deferred incr
private

Definition at line 35 of file sll_m_vector_space_base.F90.

◆ incr_lcmb()

procedure incr_lcmb
private

Definition at line 47 of file sll_m_vector_space_base.F90.

◆ incr_mult()

procedure incr_mult
private

Definition at line 45 of file sll_m_vector_space_base.F90.

◆ inner()

procedure inner
private

inner(z,x)

Definition at line 54 of file sll_m_vector_space_base.F90.

◆ lcmb()

procedure lcmb
private

Definition at line 46 of file sll_m_vector_space_base.F90.

◆ mult()

procedure mult
private

Definition at line 43 of file sll_m_vector_space_base.F90.

◆ mult_add()

procedure mult_add
private

Definition at line 44 of file sll_m_vector_space_base.F90.

◆ norm()

procedure norm
private

norm(z)

Definition at line 53 of file sll_m_vector_space_base.F90.

◆ scal()

procedure(i_scal), deferred scal
private

Definition at line 36 of file sll_m_vector_space_base.F90.

◆ show()

procedure show
private

Definition at line 55 of file sll_m_vector_space_base.F90.

◆ source()

generic source
private

Definition at line 58 of file sll_m_vector_space_base.F90.

◆ source_array()

procedure, private source_array
private

Definition at line 63 of file sll_m_vector_space_base.F90.

◆ source_scalar()

procedure, private source_scalar
private

Definition at line 62 of file sll_m_vector_space_base.F90.

    Report Typos and Errors