src/module/s_matrix_type [ Modules ]
NAME
Module s_matrix_type
USAGE
use s_matrix_type
DESCRIPTION
This module contains a type definition for the kinematic s_matrix, intended to mimic a run-time polymorphism.
OUTPUT
This module exports the derived type: * s_matrix_poly One function: * assign_s_matrix -- associates the pointers in the s_matrix to a given real or complex matrix Subroutines: * nullify_s_matrix -- nullifies the pointers * set_s_matrix_bits -- sets an integer which describes the positions of complex masses in the s matrix. sets an integer which describes the positions of zero mass entries. * fill_s_matrix -- fills the real array associated with a complex array.
USES
* precision_golem (src/module/preci_double.f90) * sortie_erreur (src/module/sortie_erreur.f90) * equal (src/module/equal.f90) * constante (src/module/constante.f90)
src/module/s_matrix_type/assign_s_matrix [ Functions ]
NAME
assign_s_matrix
USAGE
assign_s_matrix(s_mat_r) assign_s_matrix(s_mat_c,s_mat_r)
DESCRIPTION
This function associates the global (type s_matrix_poly) s_mat_p with the given real or complex input matrix. In the case a complex matrix is given, a real matrix, which will contain the real part of the complex matrix, has also be given as an argument.
INPUTS
A real and a complex matrix. Or just a real matrix.
RETURN VALUE
a type (s_matrix_poly) is returned.
src/module/s_matrix_type/fill_s_matrix [ Functions ]
NAME
Subroutine fill_s_matrix
USAGE
call fill_s_matrix(s_mat_p)
DESCRIPTION
This procedure fills the associated real array with the real entries of a complex s_matrix if the corresponding pointer to the complex array is associated.
INPUTS
* a type (s_matrix_poly) object
RETURN VALUE
none
src/module/s_matrix_type/nullify_s_matrix [ Functions ]
NAME
Subroutine nullify_s_matrix
USAGE
nullify_s_matrix(s_mat_p)
DESCRIPTION
This procedure nullifies the pointers in the input object.
INPUTS
* type (s_matrix_poly) object
RETURN VALUE
none
src/module/s_matrix_type/s_matrix_poly [ Types ]
NAME
s_matrix_poly
SYNOPSIS
! type s_matrix_poly
SOURCE
type s_matrix_poly ! real(ki), dimension(:,:), pointer :: pt_real complex(ki), dimension(:,:), pointer :: pt_cmplx integer :: b_cmplx, b_zero ! end type s_matrix_poly
NOTES
* pt_real points to a real array (s_mat_r) if associated. * pt_cmplx points to a complex array (s_mat_c) if associated * b_cmplx is a bit-integer encoding the positions of complex mass entries in the S matrix. * b_zero is a bit-integer encoding the positions of vanishing masses.
src/module/s_matrix_type/set_s_matrix_bits [ Functions ]
NAME
Subroutine set_s_matrix_bits
USAGE
call set_s_matrix_bits(s_mat_p,set_ref)
DESCRIPTION
This procedure checks the diagonal of the given matrix for complex entries with non-vanishing imaginary part and vanishing masses as well. The results are encoded in bit-integers included in the derived type s_mat_p.
INPUTS
* a type (s_matrix_poly) object * a reference set of numbers associated with the diagonal entries. (typically an array (/1,2,...,n/) ).
RETURN VALUE
none