MCTDH-X
v2.22
|
This module contains algorithms that are useful for the evaluation of combinatorial formulas, such as e.g. multinomial expansions. Where indicated by the header, they are written by John Burkardt. More...
Public Member Functions | |
subroutine | c16mat_permanent (n, a, perm) |
c16mat_permanent computes the permanent of a complex matrix. More... | |
subroutine | subset_gray_next (n, a, more, ncard, iadd) |
SUBSET_GRAY_NEXT generates all subsets of a set of order N, one at a time. More... | |
subroutine | perman2 (n, a, perm) |
perman2 computes the permanent of a complex matrix. More... | |
subroutine | nexsub2 (n, inn, mtc, ncard, j) |
nexsub2 computes the compositions of the integer N into K parts. More... | |
subroutine | comp_next (n, k, a, more, h, t) |
COMP_NEXT computes the compositions of the integer N into K parts. More... | |
subroutine | comp_enum (n, k, number) |
COMP_ENUM returns the number of compositions of the integer N into K parts. More... | |
subroutine | multinomial_coef1 (nfactor, factor, ncomb) |
MULTINOMIAL_COEF1 computes a multinomial coefficient. More... | |
integer(kind=4) function | i4_choose (n, k) |
I4_CHOOSE computes the binomial coefficient C(N,K). More... | |
real(kind=8) function | r8_gamma_log (x) |
R8_GAMMA_LOG calculates the natural logarithm of GAMMA ( X ) for positive X. More... | |
This module contains algorithms that are useful for the evaluation of combinatorial formulas, such as e.g. multinomial expansions. Where indicated by the header, they are written by John Burkardt.
subroutine combinatorial_algorithms::c16mat_permanent | ( | integer | n, |
complex*16, dimension(n,n) | a, | ||
complex*16 | perm | ||
) |
c16mat_permanent computes the permanent of a complex matrix.
References subset_gray_next().
subroutine combinatorial_algorithms::comp_enum | ( | integer ( kind = 4 ) | n, |
integer ( kind = 4 ) | k, | ||
integer ( kind = 4 ) | number | ||
) |
COMP_ENUM returns the number of compositions of the integer N into K parts.
References i4_choose().
subroutine combinatorial_algorithms::comp_next | ( | integer ( kind = 4 ) | n, |
integer ( kind = 4 ) | k, | ||
integer ( kind = 4 ), dimension(k) | a, | ||
logical | more, | ||
integer ( kind = 4 ) | h, | ||
integer ( kind = 4 ) | t | ||
) |
COMP_NEXT computes the compositions of the integer N into K parts.
Referenced by auxiliary_analysis_routines::loopy_permanent(), and auxiliary_analysis_routines::u_trans().
integer ( kind = 4 ) function combinatorial_algorithms::i4_choose | ( | integer ( kind = 4 ) | n, |
integer ( kind = 4 ) | k | ||
) |
I4_CHOOSE computes the binomial coefficient C(N,K).
Referenced by comp_enum().
subroutine combinatorial_algorithms::multinomial_coef1 | ( | integer ( kind = 4 ) | nfactor, |
integer ( kind = 4 ), dimension(nfactor) | factor, | ||
integer ( kind = 4 ) | ncomb | ||
) |
MULTINOMIAL_COEF1 computes a multinomial coefficient.
References r8_gamma_log().
subroutine combinatorial_algorithms::nexsub2 | ( | integer | n, |
integer, dimension(n) | inn, | ||
logical | mtc, | ||
integer | ncard, | ||
integer | j | ||
) |
nexsub2 computes the compositions of the integer N into K parts.
Referenced by perman2().
subroutine combinatorial_algorithms::perman2 | ( | integer | n, |
complex*16, dimension(n,n) | a, | ||
complex*16 | perm | ||
) |
perman2 computes the permanent of a complex matrix.
References nexsub2().
real ( kind = 8 ) function combinatorial_algorithms::r8_gamma_log | ( | real ( kind = 8 ) | x | ) |
R8_GAMMA_LOG calculates the natural logarithm of GAMMA ( X ) for positive X.
Referenced by multinomial_coef1().
subroutine combinatorial_algorithms::subset_gray_next | ( | integer ( kind = 4 ) | n, |
integer ( kind = 4 ), dimension(n) | a, | ||
logical | more, | ||
integer ( kind = 4 ) | ncard, | ||
integer ( kind = 4 ) | iadd | ||
) |
SUBSET_GRAY_NEXT generates all subsets of a set of order N, one at a time.
Referenced by c16mat_permanent().