legolas Program

Main program for the Legolas finite element code. Matrices, eigenvalues and left/right eigenvectors are defined here and passed on to the different modules and submodules.

Legolas is currently being developed by Niels Claes, Jordi De Jonghe and Rony Keppens, at the Centre for mathematical Plasma-Astrophysics (CmPA), KU Leuven, Belgium.


Contents


Variables

TypeAttributesNameInitial
type(matrix_t) :: matrix_A

A matrix in eigenvalue problem wBX = AX

type(matrix_t) :: matrix_B

B matrix in eigenvalue problem wBX = AX

type(timer_t) :: timer

timer used by the whole program

type(settings_t) :: settings

dedicated settings type

type(grid_t) :: grid
type(background_t) :: background
type(eigenfunctions_t) :: eigenfunctions
type(physics_t) :: physics
complex(kind=dp), allocatable:: omega(:)

array with eigenvalues

complex(kind=dp), allocatable:: right_eigenvectors(:,:)

matrix with right eigenvectors, column indices correspond to omega indices


Subroutines

subroutine read_user_parfile()

Arguments

None

subroutine print_startup_info()

Arguments

None

Arguments

None

subroutine get_eigenfunctions()

Initialises and calculates the eigenfunctions if requested.

Arguments

None

subroutine cleanup()

Deallocates all main variables, then calls the cleanup routines of all relevant subroutines to do the same thing.

Arguments

None

subroutine print_timelog()

Arguments

None