src/module/tri_croissant [ Modules ]
NAME
Module tri_croissant
USAGE
use tri_croissant
DESCRIPTION
This module is used to sort an integer array or shift its elements by certain amount
OUTPUT
This module exports: * tri_int -- a subroutine to sort out an integer array * shift_param -- a subroutine to shift (modulo n) the elements of an integer array
USES
* precision_golem (src/module/precision_golem.f90)
src/module/tri_croissant/exchange_param [ Functions ]
NAME
Subroutine exchange_param
USAGE
call exchange_param(z_param_ini,tab,modd,z_param_out)
DESCRIPTION
This routine exchanges in the array z_param_ini of Feynman parameters the label tab(1) with the label tab(2) the result is put into the array z_param_out
INPUTS
* z_param_ini -- an integer array of rank 1, the array to shift * tab -- an integer array of rank 1, the two labels to exchange * modd -- an integer, the shift is made modulo modd
SIDE EFFECTS
No side effect
RETURN VALUE
* z_param_out -- an integer array of rank 1, the shifted array
EXAMPLE
src/module/tri_croissant/shift_param [ Functions ]
NAME
Subroutine shift_param
USAGE
call shift_param(z_param_ini,shift,modd,z_param_out)
DESCRIPTION
This routine shifts the array z_param_ini of Feynman parameters the shift is done as following: z --> z+shift if z+shift <= modd else mod(z+shift-1,modd)+1 if z+shift > modd the result is put into the array z_param_out
INPUTS
* z_param_ini -- an integer array of rank 1, the array to shift * shift -- an integer, the value of the shift * modd -- an integer, the shift is made modulo modd
SIDE EFFECTS
No side effect
RETURN VALUE
* z_param_out -- an integer array of rank 1, the shifted array
EXAMPLE
src/module/tri_croissant/tri_int [ Functions ]
NAME
Subroutine tri_int
USAGE
call tri_int(t_in,t_out)
DESCRIPTION
This routine sorts in increasing order an integer array t_int and put the result in the integer array t_out
INPUTS
* t_int -- an integer array of rank 1, the array to sort
SIDE EFFECTS
NONE
RETURN VALUE
* t_out -- an integer array of rank 1, the sorted array
EXAMPLE