NAME

verify_probability_matrix - (MACRO) Debug verification of a matrix

SYNOPSIS

#include "m/m_mat_basic.h"

Example compile flags (system dependent):
  -DLINUX_X86_64 -DLINUX_X86_64_OPTERON  -DGNU_COMPILER 
   -I/home/kobus/include
   -L/home/kobus/misc/load/linux_x86_64_opteron -L/usr/lib/x86_64-linux-gnu
  -lKJB                               -lfftw3  -lgsl -lgslcblas -ljpeg  -lSVM -lstdc++                    -lpthread -lSLATEC -lg2c    -lacml -lacml_mv -lblas -lg2c      -lncursesw 


void verify_probability_matrix
(
	const Matrix *mp,
	Bool *failed_ptr
);

DESCRIPTION

When TEST is defined (typically this is "development" mode), verify_probability_matrix checks that all elements of a matrix are valid numbers, and that they are in the range of [0,1]. NULL input is considered valid. If invalid numbers are found, then they are set to either zero or one (depending on which side of [0,1] they fall), and a warning is printed. Finally (new for 2017) we exit with EXIT_BUG. In addition, if the second argument is not NULL, then the Boolean variable pointed to it is set to either FALSE or TRUE depending on whether the verification passed or failed. When TEST is not defined (typically "production" mode), then verify_probability_matrix becomes a NOP.

DISCLAIMER

This software is not adequatedly tested. It is recomended that results are checked independantly where appropriate.

AUTHOR

Kobus Barnard

DOCUMENTER

Kobus Barnard

SEE ALSO

verify_matrix_vector , verify_non_negative_matrix_vector , verify_probability_matrix_vector , verify_probability_row_matrix_vector , verify_matrix , verify_non_negative_matrix , verify_probability_row_matrix , SWAP_MATRICES