NAME

check_same_int_matrix_dimensions - Checks that two matrices have the same dimensions

SYNOPSIS

#include "l/l_int_matrix.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 


int check_same_int_matrix_dimensions
(
	const Int_matrix *first_mp,
	const Int_matrix *second_mp,
	const char *context_str
);

DESCRIPTION

This routine checks that two matrices have the same dimensions. It the matrices do not have the same dimension, then the an error message is set and ERROR is returned. The argument context_str can be used to add more information; typically, it is the name of the calling routine, but it could be some other string which works well as the sequal to the message "failed in". If context_str is NULL, then it is not used.

RETURNS

NO_ERROR if the matrices have the same dimensions, and ERROR otherwise. Depending on the bug handler in place, this routine may not return at all.

MACROS

If different matrix dimensions are likely due to a bug, then you may want to wrap this routine in the macro ESBRE(), which prints the error, calls set_bug(), (the "SB"), and then returns ERROR. If different matrix dimensions are simply an error that the calling routine should deal with, then wrapping the call to this routine in ERE() saves typing.

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

same_int_matrix_dimensions , get_zero_int_matrix , get_initialized_int_matrix , get_target_int_matrix , ra_get_target_int_matrix , get_diagonal_int_matrix , free_int_matrix , ow_zero_int_matrix , ow_set_int_matrix , ra_get_target_int_matrix_vector , get_target_int_matrix_vector , free_int_matrix_vector , get_target_int_vector_matrix , free_int_vector_matrix , concat_int_matrices_vertically , copy_int_matrix , ow_copy_int_matrix , copy_int_matrix_block , ow_copy_int_matrix_block , copy_int_matrix_row , copy_int_matrix_col , get_int_matrix_row , get_int_matrix_col , put_int_matrix_row , put_int_matrix_col , get_int_transpose , get_int_identity_matrix , swap_int_matrix_rows , min_int_matrix_element , max_int_matrix_element , max_abs_int_matrix_difference , sum_int_matrix_elements , sum_int_matrix_rows , ow_sum_int_matrix_rows , ow_add_col_int_vector_to_int_matrix , ow_add_row_int_vector_to_int_matrix , ow_add_int_scalar_to_int_matrix , subtract_int_matrices , ow_subtract_int_matrices , multiply_int_matrices , ow_get_abs_of_int_matrix , get_abs_of_int_matrix , multiply_int_matrix_by_int_scalar , ow_multiply_int_matrix_by_int_scalar , multiply_int_matrix_and_int_vector , multiply_int_vector_and_int_matrix , add_int_matrices , ow_add_int_matrices , get_target_int_matrix_vector_vector , free_int_matrix_vector_vector