;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;
;;; LUSH Lisp Universal Shell
;;;   Copyright (C) 2002 Leon Bottou, Yann Le Cun, AT&T Corp, NECI.
;;; Includes parts of TL3:
;;;   Copyright (C) 1987-1999 Leon Bottou and Neuristique.
;;; Includes selected parts of SN3.2:
;;;   Copyright (C) 1991-2001 AT&T Corp.
;;;
;;; Includes information derived from the GSL (Gnu Scientific Library)
;;;   header files which are copyrighted and distributed under the GPL
;;;   by their respective authors.
;;;
;;; This program is free software; you can redistribute it and/or modify
;;; it under the terms of the GNU General Public License as published by
;;; the Free Software Foundation; either version 2 of the License, or
;;; (at your option) any later version.
;;;
;;; This program is distributed in the hope that it will be useful,
;;; but WITHOUT ANY WARRANTY; without even the implied warranty of
;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
;;; GNU General Public License for more details.
;;;
;;; You should have received a copy of the GNU General Public License
;;; along with this program; if not, write to the Free Software
;;; Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111, USA
;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

(libload "gsl/gsl-config")



#? *** matrix

;; dummy function that adds GSL C header files in C file
(eval `(de dummy_matrix () ,gsl-cpheader-cmd ()))

#? * (dummy_matrix)
#? * (gsl_matrix_char_alloc <n1> <n2>)
#? * (gsl_matrix_char_calloc <n1> <n2>)
#? * (gsl_matrix_char_alloc_from_block <b> <offset> <n1> <n2> <d2>)
#? * (gsl_matrix_char_alloc_from_matrix <m> <k1> <k2> <n1> <n2>)
#? * (gsl_vector_char_alloc_row_from_matrix <m> <i>)
#? * (gsl_vector_char_alloc_col_from_matrix <m> <j>)
#? * (gsl_matrix_char_free <m>)
#? * (gsl_matrix_char_submatrix <m> <i> <j> <n1> <n2> <view>)
#? * (gsl_matrix_char_row <m> <i> <view>)
#? * (gsl_matrix_char_column <m> <j> <view>)
#? * (gsl_matrix_char_diagonal <m> <view>)
#? * (gsl_matrix_char_subdiagonal <m> <k> <view>)
#? * (gsl_matrix_char_superdiagonal <m> <k> <view>)
#? * (gsl_matrix_char_view_array <base> <n1> <n2> <view>)
#? * (gsl_matrix_char_view_array_with_tda <base> <n1> <n2> <tda> <view>)
#? * (gsl_matrix_char_view_vector <v> <n1> <n2> <view>)
#? * (gsl_matrix_char_view_vector_with_tda <v> <n1> <n2> <tda> <view>)
#? * (gsl_matrix_char_const_submatrix <m> <i> <j> <n1> <n2> <view>)
#? * (gsl_matrix_char_const_row <m> <i> <view>)
#? * (gsl_matrix_char_const_column <m> <j> <view>)
#? * (gsl_matrix_char_const_diagonal <m> <view>)
#? * (gsl_matrix_char_const_subdiagonal <m> <k> <view>)
#? * (gsl_matrix_char_const_superdiagonal <m> <k> <view>)
#? * (gsl_matrix_char_const_view_array <base> <n1> <n2> <view>)
#? * (gsl_matrix_char_const_view_array_with_tda <base> <n1> <n2> <tda> <view>)
#? * (gsl_matrix_char_const_view_vector <v> <n1> <n2> <view>)
#? * (gsl_matrix_char_const_view_vector_with_tda <v> <n1> <n2> <tda> <view>)
#? * (gsl_matrix_char_get <m> <i> <j>)
#? * (gsl_matrix_char_set <m> <i> <j> <x>)
#? * (gsl_matrix_char_ptr <m> <i> <j>)
#? * (gsl_matrix_char_const_ptr <m> <i> <j>)
#? * (gsl_matrix_char_set_zero <m>)
#? * (gsl_matrix_char_set_identity <m>)
#? * (gsl_matrix_char_set_all <m> <x>)
#? * (gsl_matrix_char_fread <stream> <m>)
#? * (gsl_matrix_char_fwrite <stream> <m>)
#? * (gsl_matrix_char_fscanf <stream> <m>)
#? * (gsl_matrix_char_fprintf <stream> <m> <format>)
#? * (gsl_matrix_char_memcpy <dest> <src>)
#? * (gsl_matrix_char_swap <m1> <m2>)
#? * (gsl_matrix_char_swap_rows <m> <i> <j>)
#? * (gsl_matrix_char_swap_columns <m> <i> <j>)
#? * (gsl_matrix_char_swap_rowcol <m> <i> <j>)
#? * (gsl_matrix_char_transpose <m>)
#? * (gsl_matrix_char_transpose_memcpy <dest> <src>)
#? * (gsl_matrix_char_max <m>)
#? * (gsl_matrix_char_min <m>)
#? * (gsl_matrix_char_minmax <m> <min_out> <max_out>)
#? * (gsl_matrix_char_max_index <m> <imax> <jmax>)
#? * (gsl_matrix_char_min_index <m> <imin> <jmin>)
#? * (gsl_matrix_char_minmax_index <m> <imin> <jmin> <imax> <jmax>)
#? * (gsl_matrix_char_isnull <m>)
#? * (gsl_matrix_char_add <a> <b>)
#? * (gsl_matrix_char_sub <a> <b>)
#? * (gsl_matrix_char_mul_elements <a> <b>)
#? * (gsl_matrix_char_div_elements <a> <b>)
#? * (gsl_matrix_char_scale <a> <x>)
#? * (gsl_matrix_char_add_constant <a> <x>)
#? * (gsl_matrix_char_add_diagonal <a> <x>)
#? * (gsl_matrix_char_get_row <v> <m> <i>)
#? * (gsl_matrix_char_get_col <v> <m> <j>)
#? * (gsl_matrix_char_set_row <m> <i> <v>)
#? * (gsl_matrix_char_set_col <m> <j> <v>)
#? * (gsl_matrix_complex_alloc <n1> <n2>)
#? * (gsl_matrix_complex_calloc <n1> <n2>)
#? * (gsl_matrix_complex_alloc_from_block <b> <offset> <n1> <n2> <d2>)
#? * (gsl_matrix_complex_alloc_from_matrix <b> <k1> <k2> <n1> <n2>)
#? * (gsl_vector_complex_alloc_row_from_matrix <m> <i>)
#? * (gsl_vector_complex_alloc_col_from_matrix <m> <j>)
#? * (gsl_matrix_complex_free <m>)
#? * (gsl_matrix_complex_submatrix <m> <i> <j> <n1> <n2> <view>)
#? * (gsl_matrix_complex_row <m> <i> <view>)
#? * (gsl_matrix_complex_column <m> <j> <view>)
#? * (gsl_matrix_complex_diagonal <m> <view>)
#? * (gsl_matrix_complex_subdiagonal <m> <k> <view>)
#? * (gsl_matrix_complex_superdiagonal <m> <k> <view>)
#? * (gsl_matrix_complex_view_array <base> <n1> <n2> <view>)
#? * (gsl_matrix_complex_view_array_with_tda <base> <n1> <n2> <tda> <view>)
#? * (gsl_matrix_complex_view_vector <v> <n1> <n2> <view>)
#? * (gsl_matrix_complex_view_vector_with_tda <v> <n1> <n2> <tda> <view>)
#? * (gsl_matrix_complex_const_submatrix <m> <i> <j> <n1> <n2> <view>)
#? * (gsl_matrix_complex_const_row <m> <i> <view>)
#? * (gsl_matrix_complex_const_column <m> <j> <view>)
#? * (gsl_matrix_complex_const_diagonal <m> <view>)
#? * (gsl_matrix_complex_const_subdiagonal <m> <k> <view>)
#? * (gsl_matrix_complex_const_superdiagonal <m> <k> <view>)
#? * (gsl_matrix_complex_const_view_array <base> <n1> <n2> <view>)
#? * (gsl_matrix_complex_const_view_array_with_tda <base> <n1> <n2> <tda> <view>)
#? * (gsl_matrix_complex_const_view_vector <v> <n1> <n2> <view>)
#? * (gsl_matrix_complex_const_view_vector_with_tda <v> <n1> <n2> <tda> <view>)
#? * (gsl_matrix_complex_get <m> <i> <j> <result>)
#? * (gsl_matrix_complex_set <m> <i> <j> <x>)
#? * (gsl_matrix_complex_ptr <m> <i> <j>)
#? * (gsl_matrix_complex_const_ptr <m> <i> <j>)
#? * (gsl_matrix_complex_set_zero <m>)
#? * (gsl_matrix_complex_set_identity <m>)
#? * (gsl_matrix_complex_set_all <m> <x>)
#? * (gsl_matrix_complex_fread <stream> <m>)
#? * (gsl_matrix_complex_fwrite <stream> <m>)
#? * (gsl_matrix_complex_fscanf <stream> <m>)
#? * (gsl_matrix_complex_fprintf <stream> <m> <format>)
#? * (gsl_matrix_complex_memcpy <dest> <src>)
#? * (gsl_matrix_complex_swap <m1> <m2>)
#? * (gsl_matrix_complex_swap_rows <m> <i> <j>)
#? * (gsl_matrix_complex_swap_columns <m> <i> <j>)
#? * (gsl_matrix_complex_swap_rowcol <m> <i> <j>)
#? * (gsl_matrix_complex_transpose <m>)
#? * (gsl_matrix_complex_transpose_memcpy <dest> <src>)
#? * (gsl_matrix_complex_isnull <m>)
#? * (gsl_matrix_complex_get_row <v> <m> <i>)
#? * (gsl_matrix_complex_get_col <v> <m> <j>)
#? * (gsl_matrix_complex_set_row <m> <i> <v>)
#? * (gsl_matrix_complex_set_col <m> <j> <v>)
#? * (gsl_matrix_complex_float_alloc <n1> <n2>)
#? * (gsl_matrix_complex_float_calloc <n1> <n2>)
#? * (gsl_matrix_complex_float_alloc_from_block <b> <offset> <n1> <n2> <d2>)
#? * (gsl_matrix_complex_float_alloc_from_matrix <b> <k1> <k2> <n1> <n2>)
#? * (gsl_vector_complex_float_alloc_row_from_matrix <m> <i>)
#? * (gsl_vector_complex_float_alloc_col_from_matrix <m> <j>)
#? * (gsl_matrix_complex_float_free <m>)
#? * (gsl_matrix_complex_float_submatrix <m> <i> <j> <n1> <n2> <view>)
#? * (gsl_matrix_complex_float_row <m> <i> <view>)
#? * (gsl_matrix_complex_float_column <m> <j> <view>)
#? * (gsl_matrix_complex_float_diagonal <m> <view>)
#? * (gsl_matrix_complex_float_subdiagonal <m> <k> <view>)
#? * (gsl_matrix_complex_float_superdiagonal <m> <k> <view>)
#? * (gsl_matrix_complex_float_view_array <base> <n1> <n2> <view>)
#? * (gsl_matrix_complex_float_view_array_with_tda <base> <n1> <n2> <tda> <view>)
#? * (gsl_matrix_complex_float_view_vector <v> <n1> <n2> <view>)
#? * (gsl_matrix_complex_float_view_vector_with_tda <v> <n1> <n2> <tda> <view>)
#? * (gsl_matrix_complex_float_const_submatrix <m> <i> <j> <n1> <n2> <view>)
#? * (gsl_matrix_complex_float_const_row <m> <i> <view>)
#? * (gsl_matrix_complex_float_const_column <m> <j> <view>)
#? * (gsl_matrix_complex_float_const_diagonal <m> <view>)
#? * (gsl_matrix_complex_float_const_subdiagonal <m> <k> <view>)
#? * (gsl_matrix_complex_float_const_superdiagonal <m> <k> <view>)
#? * (gsl_matrix_complex_float_const_view_array <base> <n1> <n2> <view>)
#? * (gsl_matrix_complex_float_const_view_array_with_tda <base> <n1> <n2> <tda> <view>)
#? * (gsl_matrix_complex_float_const_view_vector <v> <n1> <n2> <view>)
#? * (gsl_matrix_complex_float_const_view_vector_with_tda <v> <n1> <n2> <tda> <view>)
#? * (gsl_matrix_complex_float_get <m> <i> <j> <result>)
#? * (gsl_matrix_complex_float_set <m> <i> <j> <x>)
#? * (gsl_matrix_complex_float_ptr <m> <i> <j>)
#? * (gsl_matrix_complex_float_const_ptr <m> <i> <j>)
#? * (gsl_matrix_complex_float_set_zero <m>)
#? * (gsl_matrix_complex_float_set_identity <m>)
#? * (gsl_matrix_complex_float_set_all <m> <x>)
#? * (gsl_matrix_complex_float_fread <stream> <m>)
#? * (gsl_matrix_complex_float_fwrite <stream> <m>)
#? * (gsl_matrix_complex_float_fscanf <stream> <m>)
#? * (gsl_matrix_complex_float_fprintf <stream> <m> <format>)
#? * (gsl_matrix_complex_float_memcpy <dest> <src>)
#? * (gsl_matrix_complex_float_swap <m1> <m2>)
#? * (gsl_matrix_complex_float_swap_rows <m> <i> <j>)
#? * (gsl_matrix_complex_float_swap_columns <m> <i> <j>)
#? * (gsl_matrix_complex_float_swap_rowcol <m> <i> <j>)
#? * (gsl_matrix_complex_float_transpose <m>)
#? * (gsl_matrix_complex_float_transpose_memcpy <dest> <src>)
#? * (gsl_matrix_complex_float_isnull <m>)
#? * (gsl_matrix_complex_float_get_row <v> <m> <i>)
#? * (gsl_matrix_complex_float_get_col <v> <m> <j>)
#? * (gsl_matrix_complex_float_set_row <m> <i> <v>)
#? * (gsl_matrix_complex_float_set_col <m> <j> <v>)
#? * (gsl_matrix_complex_long_double_alloc <n1> <n2>)
#? * (gsl_matrix_complex_long_double_calloc <n1> <n2>)
#? * (gsl_matrix_complex_long_double_alloc_from_block <b> <offset> <n1> <n2> <d2>)
#? * (gsl_matrix_complex_long_double_alloc_from_matrix <b> <k1> <k2> <n1> <n2>)
#? * (gsl_vector_complex_long_double_alloc_row_from_matrix <m> <i>)
#? * (gsl_vector_complex_long_double_alloc_col_from_matrix <m> <j>)
#? * (gsl_matrix_complex_long_double_free <m>)
#? * (gsl_matrix_complex_long_double_submatrix <m> <i> <j> <n1> <n2> <view>)
#? * (gsl_matrix_complex_long_double_row <m> <i> <view>)
#? * (gsl_matrix_complex_long_double_column <m> <j> <view>)
#? * (gsl_matrix_complex_long_double_diagonal <m> <view>)
#? * (gsl_matrix_complex_long_double_subdiagonal <m> <k> <view>)
#? * (gsl_matrix_complex_long_double_superdiagonal <m> <k> <view>)
#? * (gsl_matrix_complex_long_double_view_array <base> <n1> <n2> <view>)
#? * (gsl_matrix_complex_long_double_view_array_with_tda <base> <n1> <n2> <tda> <view>)
#? * (gsl_matrix_complex_long_double_view_vector <v> <n1> <n2> <view>)
#? * (gsl_matrix_complex_long_double_view_vector_with_tda <v> <n1> <n2> <tda> <view>)
#? * (gsl_matrix_complex_long_double_const_submatrix <m> <i> <j> <n1> <n2> <view>)
#? * (gsl_matrix_complex_long_double_const_row <m> <i> <view>)
#? * (gsl_matrix_complex_long_double_const_column <m> <j> <view>)
#? * (gsl_matrix_complex_long_double_const_diagonal <m> <view>)
#? * (gsl_matrix_complex_long_double_const_subdiagonal <m> <k> <view>)
#? * (gsl_matrix_complex_long_double_const_superdiagonal <m> <k> <view>)
#? * (gsl_matrix_complex_long_double_const_view_array <base> <n1> <n2> <view>)
#? * (gsl_matrix_complex_long_double_const_view_array_with_tda <base> <n1> <n2> <tda> <view>)
#? * (gsl_matrix_complex_long_double_const_view_vector <v> <n1> <n2> <view>)
#? * (gsl_matrix_complex_long_double_const_view_vector_with_tda <v> <n1> <n2> <tda> <view>)
#? * (gsl_matrix_complex_long_double_get <m> <i> <j> <result>)
#? * (gsl_matrix_complex_long_double_set <m> <i> <j> <x>)
#? * (gsl_matrix_complex_long_double_ptr <m> <i> <j>)
#? * (gsl_matrix_complex_long_double_const_ptr <m> <i> <j>)
#? * (gsl_matrix_complex_long_double_set_zero <m>)
#? * (gsl_matrix_complex_long_double_set_identity <m>)
#? * (gsl_matrix_complex_long_double_set_all <m> <x>)
#? * (gsl_matrix_complex_long_double_fread <stream> <m>)
#? * (gsl_matrix_complex_long_double_fwrite <stream> <m>)
#? * (gsl_matrix_complex_long_double_fscanf <stream> <m>)
#? * (gsl_matrix_complex_long_double_fprintf <stream> <m> <format>)
#? * (gsl_matrix_complex_long_double_memcpy <dest> <src>)
#? * (gsl_matrix_complex_long_double_swap <m1> <m2>)
#? * (gsl_matrix_complex_long_double_swap_rows <m> <i> <j>)
#? * (gsl_matrix_complex_long_double_swap_columns <m> <i> <j>)
#? * (gsl_matrix_complex_long_double_swap_rowcol <m> <i> <j>)
#? * (gsl_matrix_complex_long_double_transpose <m>)
#? * (gsl_matrix_complex_long_double_transpose_memcpy <dest> <src>)
#? * (gsl_matrix_complex_long_double_isnull <m>)
#? * (gsl_matrix_complex_long_double_get_row <v> <m> <i>)
#? * (gsl_matrix_complex_long_double_get_col <v> <m> <j>)
#? * (gsl_matrix_complex_long_double_set_row <m> <i> <v>)
#? * (gsl_matrix_complex_long_double_set_col <m> <j> <v>)
#? * (gsl_matrix_alloc <n1> <n2>)
#? * (gsl_matrix_calloc <n1> <n2>)
#? * (gsl_matrix_alloc_from_block <b> <offset> <n1> <n2> <d2>)
#? * (gsl_matrix_alloc_from_matrix <m> <k1> <k2> <n1> <n2>)
#? * (gsl_vector_alloc_row_from_matrix <m> <i>)
#? * (gsl_vector_alloc_col_from_matrix <m> <j>)
#? * (gsl_matrix_free <m>)
#? * (gsl_matrix_submatrix <m> <i> <j> <n1> <n2> <view>)
#? * (gsl_matrix_row <m> <i> <view>)
#? * (gsl_matrix_column <m> <j> <view>)
#? * (gsl_matrix_diagonal <m> <view>)
#? * (gsl_matrix_subdiagonal <m> <k> <view>)
#? * (gsl_matrix_superdiagonal <m> <k> <view>)
#? * (gsl_matrix_view_array <base> <n1> <n2> <view>)
#? * (gsl_matrix_view_array_with_tda <base> <n1> <n2> <tda> <view>)
#? * (gsl_matrix_view_vector <v> <n1> <n2> <view>)
#? * (gsl_matrix_view_vector_with_tda <v> <n1> <n2> <tda> <view>)
#? * (gsl_matrix_const_submatrix <m> <i> <j> <n1> <n2> <view>)
#? * (gsl_matrix_const_row <m> <i> <view>)
#? * (gsl_matrix_const_column <m> <j> <view>)
#? * (gsl_matrix_const_diagonal <m> <view>)
#? * (gsl_matrix_const_subdiagonal <m> <k> <view>)
#? * (gsl_matrix_const_superdiagonal <m> <k> <view>)
#? * (gsl_matrix_const_view_array <base> <n1> <n2> <view>)
#? * (gsl_matrix_const_view_array_with_tda <base> <n1> <n2> <tda> <view>)
#? * (gsl_matrix_const_view_vector <v> <n1> <n2> <view>)
#? * (gsl_matrix_const_view_vector_with_tda <v> <n1> <n2> <tda> <view>)
#? * (gsl_matrix_get <m> <i> <j>)
#? * (gsl_matrix_set <m> <i> <j> <x>)
#? * (gsl_matrix_ptr <m> <i> <j>)
#? * (gsl_matrix_const_ptr <m> <i> <j>)
#? * (gsl_matrix_set_zero <m>)
#? * (gsl_matrix_set_identity <m>)
#? * (gsl_matrix_set_all <m> <x>)
#? * (gsl_matrix_fread <stream> <m>)
#? * (gsl_matrix_fwrite <stream> <m>)
#? * (gsl_matrix_fscanf <stream> <m>)
#? * (gsl_matrix_fprintf <stream> <m> <format>)
#? * (gsl_matrix_memcpy <dest> <src>)
#? * (gsl_matrix_swap <m1> <m2>)
#? * (gsl_matrix_swap_rows <m> <i> <j>)
#? * (gsl_matrix_swap_columns <m> <i> <j>)
#? * (gsl_matrix_swap_rowcol <m> <i> <j>)
#? * (gsl_matrix_transpose <m>)
#? * (gsl_matrix_transpose_memcpy <dest> <src>)
#? * (gsl_matrix_max <m>)
#? * (gsl_matrix_min <m>)
#? * (gsl_matrix_minmax <m> <min_out> <max_out>)
#? * (gsl_matrix_max_index <m> <imax> <jmax>)
#? * (gsl_matrix_min_index <m> <imin> <jmin>)
#? * (gsl_matrix_minmax_index <m> <imin> <jmin> <imax> <jmax>)
#? * (gsl_matrix_isnull <m>)
#? * (gsl_matrix_add <a> <b>)
#? * (gsl_matrix_sub <a> <b>)
#? * (gsl_matrix_mul_elements <a> <b>)
#? * (gsl_matrix_div_elements <a> <b>)
#? * (gsl_matrix_scale <a> <x>)
#? * (gsl_matrix_add_constant <a> <x>)
#? * (gsl_matrix_add_diagonal <a> <x>)
#? * (gsl_matrix_get_row <v> <m> <i>)
#? * (gsl_matrix_get_col <v> <m> <j>)
#? * (gsl_matrix_set_row <m> <i> <v>)
#? * (gsl_matrix_set_col <m> <j> <v>)
#? * (gsl_matrix_float_alloc <n1> <n2>)
#? * (gsl_matrix_float_calloc <n1> <n2>)
#? * (gsl_matrix_float_alloc_from_block <b> <offset> <n1> <n2> <d2>)
#? * (gsl_matrix_float_alloc_from_matrix <m> <k1> <k2> <n1> <n2>)
#? * (gsl_vector_float_alloc_row_from_matrix <m> <i>)
#? * (gsl_vector_float_alloc_col_from_matrix <m> <j>)
#? * (gsl_matrix_float_free <m>)
#? * (gsl_matrix_float_submatrix <m> <i> <j> <n1> <n2> <view>)
#? * (gsl_matrix_float_row <m> <i> <view>)
#? * (gsl_matrix_float_column <m> <j> <view>)
#? * (gsl_matrix_float_diagonal <m> <view>)
#? * (gsl_matrix_float_subdiagonal <m> <k> <view>)
#? * (gsl_matrix_float_superdiagonal <m> <k> <view>)
#? * (gsl_matrix_float_view_array <base> <n1> <n2> <view>)
#? * (gsl_matrix_float_view_array_with_tda <base> <n1> <n2> <tda> <view>)
#? * (gsl_matrix_float_view_vector <v> <n1> <n2> <view>)
#? * (gsl_matrix_float_view_vector_with_tda <v> <n1> <n2> <tda> <view>)
#? * (gsl_matrix_float_const_submatrix <m> <i> <j> <n1> <n2> <view>)
#? * (gsl_matrix_float_const_row <m> <i> <view>)
#? * (gsl_matrix_float_const_column <m> <j> <view>)
#? * (gsl_matrix_float_const_diagonal <m> <view>)
#? * (gsl_matrix_float_const_subdiagonal <m> <k> <view>)
#? * (gsl_matrix_float_const_superdiagonal <m> <k> <view>)
#? * (gsl_matrix_float_const_view_array <base> <n1> <n2> <view>)
#? * (gsl_matrix_float_const_view_array_with_tda <base> <n1> <n2> <tda> <view>)
#? * (gsl_matrix_float_const_view_vector <v> <n1> <n2> <view>)
#? * (gsl_matrix_float_const_view_vector_with_tda <v> <n1> <n2> <tda> <view>)
#? * (gsl_matrix_float_get <m> <i> <j>)
#? * (gsl_matrix_float_set <m> <i> <j> <x>)
#? * (gsl_matrix_float_ptr <m> <i> <j>)
#? * (gsl_matrix_float_const_ptr <m> <i> <j>)
#? * (gsl_matrix_float_set_zero <m>)
#? * (gsl_matrix_float_set_identity <m>)
#? * (gsl_matrix_float_set_all <m> <x>)
#? * (gsl_matrix_float_fread <stream> <m>)
#? * (gsl_matrix_float_fwrite <stream> <m>)
#? * (gsl_matrix_float_fscanf <stream> <m>)
#? * (gsl_matrix_float_fprintf <stream> <m> <format>)
#? * (gsl_matrix_float_memcpy <dest> <src>)
#? * (gsl_matrix_float_swap <m1> <m2>)
#? * (gsl_matrix_float_swap_rows <m> <i> <j>)
#? * (gsl_matrix_float_swap_columns <m> <i> <j>)
#? * (gsl_matrix_float_swap_rowcol <m> <i> <j>)
#? * (gsl_matrix_float_transpose <m>)
#? * (gsl_matrix_float_transpose_memcpy <dest> <src>)
#? * (gsl_matrix_float_max <m>)
#? * (gsl_matrix_float_min <m>)
#? * (gsl_matrix_float_minmax <m> <min_out> <max_out>)
#? * (gsl_matrix_float_max_index <m> <imax> <jmax>)
#? * (gsl_matrix_float_min_index <m> <imin> <jmin>)
#? * (gsl_matrix_float_minmax_index <m> <imin> <jmin> <imax> <jmax>)
#? * (gsl_matrix_float_isnull <m>)
#? * (gsl_matrix_float_add <a> <b>)
#? * (gsl_matrix_float_sub <a> <b>)
#? * (gsl_matrix_float_mul_elements <a> <b>)
#? * (gsl_matrix_float_div_elements <a> <b>)
#? * (gsl_matrix_float_scale <a> <x>)
#? * (gsl_matrix_float_add_constant <a> <x>)
#? * (gsl_matrix_float_add_diagonal <a> <x>)
#? * (gsl_matrix_float_get_row <v> <m> <i>)
#? * (gsl_matrix_float_get_col <v> <m> <j>)
#? * (gsl_matrix_float_set_row <m> <i> <v>)
#? * (gsl_matrix_float_set_col <m> <j> <v>)
#? * (gsl_matrix_int_alloc <n1> <n2>)
#? * (gsl_matrix_int_calloc <n1> <n2>)
#? * (gsl_matrix_int_alloc_from_block <b> <offset> <n1> <n2> <d2>)
#? * (gsl_matrix_int_alloc_from_matrix <m> <k1> <k2> <n1> <n2>)
#? * (gsl_vector_int_alloc_row_from_matrix <m> <i>)
#? * (gsl_vector_int_alloc_col_from_matrix <m> <j>)
#? * (gsl_matrix_int_free <m>)
#? * (gsl_matrix_int_submatrix <m> <i> <j> <n1> <n2> <view>)
#? * (gsl_matrix_int_row <m> <i> <view>)
#? * (gsl_matrix_int_column <m> <j> <view>)
#? * (gsl_matrix_int_diagonal <m> <view>)
#? * (gsl_matrix_int_subdiagonal <m> <k> <view>)
#? * (gsl_matrix_int_superdiagonal <m> <k> <view>)
#? * (gsl_matrix_int_view_array <base> <n1> <n2> <view>)
#? * (gsl_matrix_int_view_array_with_tda <base> <n1> <n2> <tda> <view>)
#? * (gsl_matrix_int_view_vector <v> <n1> <n2> <view>)
#? * (gsl_matrix_int_view_vector_with_tda <v> <n1> <n2> <tda> <view>)
#? * (gsl_matrix_int_const_submatrix <m> <i> <j> <n1> <n2> <view>)
#? * (gsl_matrix_int_const_row <m> <i> <view>)
#? * (gsl_matrix_int_const_column <m> <j> <view>)
#? * (gsl_matrix_int_const_diagonal <m> <view>)
#? * (gsl_matrix_int_const_subdiagonal <m> <k> <view>)
#? * (gsl_matrix_int_const_superdiagonal <m> <k> <view>)
#? * (gsl_matrix_int_const_view_array <base> <n1> <n2> <view>)
#? * (gsl_matrix_int_const_view_array_with_tda <base> <n1> <n2> <tda> <view>)
#? * (gsl_matrix_int_const_view_vector <v> <n1> <n2> <view>)
#? * (gsl_matrix_int_const_view_vector_with_tda <v> <n1> <n2> <tda> <view>)
#? * (gsl_matrix_int_get <m> <i> <j>)
#? * (gsl_matrix_int_set <m> <i> <j> <x>)
#? * (gsl_matrix_int_ptr <m> <i> <j>)
#? * (gsl_matrix_int_const_ptr <m> <i> <j>)
#? * (gsl_matrix_int_set_zero <m>)
#? * (gsl_matrix_int_set_identity <m>)
#? * (gsl_matrix_int_set_all <m> <x>)
#? * (gsl_matrix_int_fread <stream> <m>)
#? * (gsl_matrix_int_fwrite <stream> <m>)
#? * (gsl_matrix_int_fscanf <stream> <m>)
#? * (gsl_matrix_int_fprintf <stream> <m> <format>)
#? * (gsl_matrix_int_memcpy <dest> <src>)
#? * (gsl_matrix_int_swap <m1> <m2>)
#? * (gsl_matrix_int_swap_rows <m> <i> <j>)
#? * (gsl_matrix_int_swap_columns <m> <i> <j>)
#? * (gsl_matrix_int_swap_rowcol <m> <i> <j>)
#? * (gsl_matrix_int_transpose <m>)
#? * (gsl_matrix_int_transpose_memcpy <dest> <src>)
#? * (gsl_matrix_int_max <m>)
#? * (gsl_matrix_int_min <m>)
#? * (gsl_matrix_int_minmax <m> <min_out> <max_out>)
#? * (gsl_matrix_int_max_index <m> <imax> <jmax>)
#? * (gsl_matrix_int_min_index <m> <imin> <jmin>)
#? * (gsl_matrix_int_minmax_index <m> <imin> <jmin> <imax> <jmax>)
#? * (gsl_matrix_int_isnull <m>)
#? * (gsl_matrix_int_add <a> <b>)
#? * (gsl_matrix_int_sub <a> <b>)
#? * (gsl_matrix_int_mul_elements <a> <b>)
#? * (gsl_matrix_int_div_elements <a> <b>)
#? * (gsl_matrix_int_scale <a> <x>)
#? * (gsl_matrix_int_add_constant <a> <x>)
#? * (gsl_matrix_int_add_diagonal <a> <x>)
#? * (gsl_matrix_int_get_row <v> <m> <i>)
#? * (gsl_matrix_int_get_col <v> <m> <j>)
#? * (gsl_matrix_int_set_row <m> <i> <v>)
#? * (gsl_matrix_int_set_col <m> <j> <v>)
#? * (gsl_matrix_long_double_alloc <n1> <n2>)
#? * (gsl_matrix_long_double_calloc <n1> <n2>)
#? * (gsl_matrix_long_double_alloc_from_block <b> <offset> <n1> <n2> <d2>)
#? * (gsl_matrix_long_double_alloc_from_matrix <m> <k1> <k2> <n1> <n2>)
#? * (gsl_vector_long_double_alloc_row_from_matrix <m> <i>)
#? * (gsl_vector_long_double_alloc_col_from_matrix <m> <j>)
#? * (gsl_matrix_long_double_free <m>)
#? * (gsl_matrix_long_double_submatrix <m> <i> <j> <n1> <n2> <view>)
#? * (gsl_matrix_long_double_row <m> <i> <view>)
#? * (gsl_matrix_long_double_column <m> <j> <view>)
#? * (gsl_matrix_long_double_diagonal <m> <view>)
#? * (gsl_matrix_long_double_subdiagonal <m> <k> <view>)
#? * (gsl_matrix_long_double_superdiagonal <m> <k> <view>)
#? * (gsl_matrix_long_double_view_array <base> <n1> <n2> <view>)
#? * (gsl_matrix_long_double_view_array_with_tda <base> <n1> <n2> <tda> <view>)
#? * (gsl_matrix_long_double_view_vector <v> <n1> <n2> <view>)
#? * (gsl_matrix_long_double_view_vector_with_tda <v> <n1> <n2> <tda> <view>)
#? * (gsl_matrix_long_double_const_submatrix <m> <i> <j> <n1> <n2> <view>)
#? * (gsl_matrix_long_double_const_row <m> <i> <view>)
#? * (gsl_matrix_long_double_const_column <m> <j> <view>)
#? * (gsl_matrix_long_double_const_diagonal <m> <view>)
#? * (gsl_matrix_long_double_const_subdiagonal <m> <k> <view>)
#? * (gsl_matrix_long_double_const_superdiagonal <m> <k> <view>)
#? * (gsl_matrix_long_double_const_view_array <base> <n1> <n2> <view>)
#? * (gsl_matrix_long_double_const_view_array_with_tda <base> <n1> <n2> <tda> <view>)
#? * (gsl_matrix_long_double_const_view_vector <v> <n1> <n2> <view>)
#? * (gsl_matrix_long_double_const_view_vector_with_tda <v> <n1> <n2> <tda> <view>)
#? * (gsl_matrix_long_double_get <m> <i> <j>)
#? * (gsl_matrix_long_double_set <m> <i> <j> <x>)
#? * (gsl_matrix_long_double_ptr <m> <i> <j>)
#? * (gsl_matrix_long_double_const_ptr <m> <i> <j>)
#? * (gsl_matrix_long_double_set_zero <m>)
#? * (gsl_matrix_long_double_set_identity <m>)
#? * (gsl_matrix_long_double_set_all <m> <x>)
#? * (gsl_matrix_long_double_fread <stream> <m>)
#? * (gsl_matrix_long_double_fwrite <stream> <m>)
#? * (gsl_matrix_long_double_fscanf <stream> <m>)
#? * (gsl_matrix_long_double_fprintf <stream> <m> <format>)
#? * (gsl_matrix_long_double_memcpy <dest> <src>)
#? * (gsl_matrix_long_double_swap <m1> <m2>)
#? * (gsl_matrix_long_double_swap_rows <m> <i> <j>)
#? * (gsl_matrix_long_double_swap_columns <m> <i> <j>)
#? * (gsl_matrix_long_double_swap_rowcol <m> <i> <j>)
#? * (gsl_matrix_long_double_transpose <m>)
#? * (gsl_matrix_long_double_transpose_memcpy <dest> <src>)
#? * (gsl_matrix_long_double_max <m>)
#? * (gsl_matrix_long_double_min <m>)
#? * (gsl_matrix_long_double_minmax <m> <min_out> <max_out>)
#? * (gsl_matrix_long_double_max_index <m> <imax> <jmax>)
#? * (gsl_matrix_long_double_min_index <m> <imin> <jmin>)
#? * (gsl_matrix_long_double_minmax_index <m> <imin> <jmin> <imax> <jmax>)
#? * (gsl_matrix_long_double_isnull <m>)
#? * (gsl_matrix_long_double_add <a> <b>)
#? * (gsl_matrix_long_double_sub <a> <b>)
#? * (gsl_matrix_long_double_mul_elements <a> <b>)
#? * (gsl_matrix_long_double_div_elements <a> <b>)
#? * (gsl_matrix_long_double_scale <a> <x>)
#? * (gsl_matrix_long_double_add_constant <a> <x>)
#? * (gsl_matrix_long_double_add_diagonal <a> <x>)
#? * (gsl_matrix_long_double_get_row <v> <m> <i>)
#? * (gsl_matrix_long_double_get_col <v> <m> <j>)
#? * (gsl_matrix_long_double_set_row <m> <i> <v>)
#? * (gsl_matrix_long_double_set_col <m> <j> <v>)
#? * (gsl_matrix_long_alloc <n1> <n2>)
#? * (gsl_matrix_long_calloc <n1> <n2>)
#? * (gsl_matrix_long_alloc_from_block <b> <offset> <n1> <n2> <d2>)
#? * (gsl_matrix_long_alloc_from_matrix <m> <k1> <k2> <n1> <n2>)
#? * (gsl_vector_long_alloc_row_from_matrix <m> <i>)
#? * (gsl_vector_long_alloc_col_from_matrix <m> <j>)
#? * (gsl_matrix_long_free <m>)
#? * (gsl_matrix_long_submatrix <m> <i> <j> <n1> <n2> <view>)
#? * (gsl_matrix_long_row <m> <i> <view>)
#? * (gsl_matrix_long_column <m> <j> <view>)
#? * (gsl_matrix_long_diagonal <m> <view>)
#? * (gsl_matrix_long_subdiagonal <m> <k> <view>)
#? * (gsl_matrix_long_superdiagonal <m> <k> <view>)
#? * (gsl_matrix_long_view_array <base> <n1> <n2> <view>)
#? * (gsl_matrix_long_view_array_with_tda <base> <n1> <n2> <tda> <view>)
#? * (gsl_matrix_long_view_vector <v> <n1> <n2> <view>)
#? * (gsl_matrix_long_view_vector_with_tda <v> <n1> <n2> <tda> <view>)
#? * (gsl_matrix_long_const_submatrix <m> <i> <j> <n1> <n2> <view>)
#? * (gsl_matrix_long_const_row <m> <i> <view>)
#? * (gsl_matrix_long_const_column <m> <j> <view>)
#? * (gsl_matrix_long_const_diagonal <m> <view>)
#? * (gsl_matrix_long_const_subdiagonal <m> <k> <view>)
#? * (gsl_matrix_long_const_superdiagonal <m> <k> <view>)
#? * (gsl_matrix_long_const_view_array <base> <n1> <n2> <view>)
#? * (gsl_matrix_long_const_view_array_with_tda <base> <n1> <n2> <tda> <view>)
#? * (gsl_matrix_long_const_view_vector <v> <n1> <n2> <view>)
#? * (gsl_matrix_long_const_view_vector_with_tda <v> <n1> <n2> <tda> <view>)
#? * (gsl_matrix_long_get <m> <i> <j>)
#? * (gsl_matrix_long_set <m> <i> <j> <x>)
#? * (gsl_matrix_long_ptr <m> <i> <j>)
#? * (gsl_matrix_long_const_ptr <m> <i> <j>)
#? * (gsl_matrix_long_set_zero <m>)
#? * (gsl_matrix_long_set_identity <m>)
#? * (gsl_matrix_long_set_all <m> <x>)
#? * (gsl_matrix_long_fread <stream> <m>)
#? * (gsl_matrix_long_fwrite <stream> <m>)
#? * (gsl_matrix_long_fscanf <stream> <m>)
#? * (gsl_matrix_long_fprintf <stream> <m> <format>)
#? * (gsl_matrix_long_memcpy <dest> <src>)
#? * (gsl_matrix_long_swap <m1> <m2>)
#? * (gsl_matrix_long_swap_rows <m> <i> <j>)
#? * (gsl_matrix_long_swap_columns <m> <i> <j>)
#? * (gsl_matrix_long_swap_rowcol <m> <i> <j>)
#? * (gsl_matrix_long_transpose <m>)
#? * (gsl_matrix_long_transpose_memcpy <dest> <src>)
#? * (gsl_matrix_long_max <m>)
#? * (gsl_matrix_long_min <m>)
#? * (gsl_matrix_long_minmax <m> <min_out> <max_out>)
#? * (gsl_matrix_long_max_index <m> <imax> <jmax>)
#? * (gsl_matrix_long_min_index <m> <imin> <jmin>)
#? * (gsl_matrix_long_minmax_index <m> <imin> <jmin> <imax> <jmax>)
#? * (gsl_matrix_long_isnull <m>)
#? * (gsl_matrix_long_add <a> <b>)
#? * (gsl_matrix_long_sub <a> <b>)
#? * (gsl_matrix_long_mul_elements <a> <b>)
#? * (gsl_matrix_long_div_elements <a> <b>)
#? * (gsl_matrix_long_scale <a> <x>)
#? * (gsl_matrix_long_add_constant <a> <x>)
#? * (gsl_matrix_long_add_diagonal <a> <x>)
#? * (gsl_matrix_long_get_row <v> <m> <i>)
#? * (gsl_matrix_long_get_col <v> <m> <j>)
#? * (gsl_matrix_long_set_row <m> <i> <v>)
#? * (gsl_matrix_long_set_col <m> <j> <v>)
#? * (gsl_matrix_short_alloc <n1> <n2>)
#? * (gsl_matrix_short_calloc <n1> <n2>)
#? * (gsl_matrix_short_alloc_from_block <b> <offset> <n1> <n2> <d2>)
#? * (gsl_matrix_short_alloc_from_matrix <m> <k1> <k2> <n1> <n2>)
#? * (gsl_vector_short_alloc_row_from_matrix <m> <i>)
#? * (gsl_vector_short_alloc_col_from_matrix <m> <j>)
#? * (gsl_matrix_short_free <m>)
#? * (gsl_matrix_short_submatrix <m> <i> <j> <n1> <n2> <view>)
#? * (gsl_matrix_short_row <m> <i> <view>)
#? * (gsl_matrix_short_column <m> <j> <view>)
#? * (gsl_matrix_short_diagonal <m> <view>)
#? * (gsl_matrix_short_subdiagonal <m> <k> <view>)
#? * (gsl_matrix_short_superdiagonal <m> <k> <view>)
#? * (gsl_matrix_short_view_array <base> <n1> <n2> <view>)
#? * (gsl_matrix_short_view_array_with_tda <base> <n1> <n2> <tda> <view>)
#? * (gsl_matrix_short_view_vector <v> <n1> <n2> <view>)
#? * (gsl_matrix_short_view_vector_with_tda <v> <n1> <n2> <tda> <view>)
#? * (gsl_matrix_short_const_submatrix <m> <i> <j> <n1> <n2> <view>)
#? * (gsl_matrix_short_const_row <m> <i> <view>)
#? * (gsl_matrix_short_const_column <m> <j> <view>)
#? * (gsl_matrix_short_const_diagonal <m> <view>)
#? * (gsl_matrix_short_const_subdiagonal <m> <k> <view>)
#? * (gsl_matrix_short_const_superdiagonal <m> <k> <view>)
#? * (gsl_matrix_short_const_view_array <base> <n1> <n2> <view>)
#? * (gsl_matrix_short_const_view_array_with_tda <base> <n1> <n2> <tda> <view>)
#? * (gsl_matrix_short_const_view_vector <v> <n1> <n2> <view>)
#? * (gsl_matrix_short_const_view_vector_with_tda <v> <n1> <n2> <tda> <view>)
#? * (gsl_matrix_short_get <m> <i> <j>)
#? * (gsl_matrix_short_set <m> <i> <j> <x>)
#? * (gsl_matrix_short_ptr <m> <i> <j>)
#? * (gsl_matrix_short_const_ptr <m> <i> <j>)
#? * (gsl_matrix_short_set_zero <m>)
#? * (gsl_matrix_short_set_identity <m>)
#? * (gsl_matrix_short_set_all <m> <x>)
#? * (gsl_matrix_short_fread <stream> <m>)
#? * (gsl_matrix_short_fwrite <stream> <m>)
#? * (gsl_matrix_short_fscanf <stream> <m>)
#? * (gsl_matrix_short_fprintf <stream> <m> <format>)
#? * (gsl_matrix_short_memcpy <dest> <src>)
#? * (gsl_matrix_short_swap <m1> <m2>)
#? * (gsl_matrix_short_swap_rows <m> <i> <j>)
#? * (gsl_matrix_short_swap_columns <m> <i> <j>)
#? * (gsl_matrix_short_swap_rowcol <m> <i> <j>)
#? * (gsl_matrix_short_transpose <m>)
#? * (gsl_matrix_short_transpose_memcpy <dest> <src>)
#? * (gsl_matrix_short_max <m>)
#? * (gsl_matrix_short_min <m>)
#? * (gsl_matrix_short_minmax <m> <min_out> <max_out>)
#? * (gsl_matrix_short_max_index <m> <imax> <jmax>)
#? * (gsl_matrix_short_min_index <m> <imin> <jmin>)
#? * (gsl_matrix_short_minmax_index <m> <imin> <jmin> <imax> <jmax>)
#? * (gsl_matrix_short_isnull <m>)
#? * (gsl_matrix_short_add <a> <b>)
#? * (gsl_matrix_short_sub <a> <b>)
#? * (gsl_matrix_short_mul_elements <a> <b>)
#? * (gsl_matrix_short_div_elements <a> <b>)
#? * (gsl_matrix_short_scale <a> <x>)
#? * (gsl_matrix_short_add_constant <a> <x>)
#? * (gsl_matrix_short_add_diagonal <a> <x>)
#? * (gsl_matrix_short_get_row <v> <m> <i>)
#? * (gsl_matrix_short_get_col <v> <m> <j>)
#? * (gsl_matrix_short_set_row <m> <i> <v>)
#? * (gsl_matrix_short_set_col <m> <j> <v>)
#? * (gsl_matrix_uchar_alloc <n1> <n2>)
#? * (gsl_matrix_uchar_calloc <n1> <n2>)
#? * (gsl_matrix_uchar_alloc_from_block <b> <offset> <n1> <n2> <d2>)
#? * (gsl_matrix_uchar_alloc_from_matrix <m> <k1> <k2> <n1> <n2>)
#? * (gsl_vector_uchar_alloc_row_from_matrix <m> <i>)
#? * (gsl_vector_uchar_alloc_col_from_matrix <m> <j>)
#? * (gsl_matrix_uchar_free <m>)
#? * (gsl_matrix_uchar_submatrix <m> <i> <j> <n1> <n2> <view>)
#? * (gsl_matrix_uchar_row <m> <i> <view>)
#? * (gsl_matrix_uchar_column <m> <j> <view>)
#? * (gsl_matrix_uchar_diagonal <m> <view>)
#? * (gsl_matrix_uchar_subdiagonal <m> <k> <view>)
#? * (gsl_matrix_uchar_superdiagonal <m> <k> <view>)
#? * (gsl_matrix_uchar_view_array <base> <n1> <n2> <view>)
#? * (gsl_matrix_uchar_view_array_with_tda <base> <n1> <n2> <tda> <view>)
#? * (gsl_matrix_uchar_view_vector <v> <n1> <n2> <view>)
#? * (gsl_matrix_uchar_view_vector_with_tda <v> <n1> <n2> <tda> <view>)
#? * (gsl_matrix_uchar_const_submatrix <m> <i> <j> <n1> <n2> <view>)
#? * (gsl_matrix_uchar_const_row <m> <i> <view>)
#? * (gsl_matrix_uchar_const_column <m> <j> <view>)
#? * (gsl_matrix_uchar_const_diagonal <m> <view>)
#? * (gsl_matrix_uchar_const_subdiagonal <m> <k> <view>)
#? * (gsl_matrix_uchar_const_superdiagonal <m> <k> <view>)
#? * (gsl_matrix_uchar_const_view_array <base> <n1> <n2> <view>)
#? * (gsl_matrix_uchar_const_view_array_with_tda <base> <n1> <n2> <tda> <view>)
#? * (gsl_matrix_uchar_const_view_vector <v> <n1> <n2> <view>)
#? * (gsl_matrix_uchar_const_view_vector_with_tda <v> <n1> <n2> <tda> <view>)
#? * (gsl_matrix_uchar_get <m> <i> <j>)
#? * (gsl_matrix_uchar_set <m> <i> <j> <x>)
#? * (gsl_matrix_uchar_ptr <m> <i> <j>)
#? * (gsl_matrix_uchar_const_ptr <m> <i> <j>)
#? * (gsl_matrix_uchar_set_zero <m>)
#? * (gsl_matrix_uchar_set_identity <m>)
#? * (gsl_matrix_uchar_set_all <m> <x>)
#? * (gsl_matrix_uchar_fread <stream> <m>)
#? * (gsl_matrix_uchar_fwrite <stream> <m>)
#? * (gsl_matrix_uchar_fscanf <stream> <m>)
#? * (gsl_matrix_uchar_fprintf <stream> <m> <format>)
#? * (gsl_matrix_uchar_memcpy <dest> <src>)
#? * (gsl_matrix_uchar_swap <m1> <m2>)
#? * (gsl_matrix_uchar_swap_rows <m> <i> <j>)
#? * (gsl_matrix_uchar_swap_columns <m> <i> <j>)
#? * (gsl_matrix_uchar_swap_rowcol <m> <i> <j>)
#? * (gsl_matrix_uchar_transpose <m>)
#? * (gsl_matrix_uchar_transpose_memcpy <dest> <src>)
#? * (gsl_matrix_uchar_max <m>)
#? * (gsl_matrix_uchar_min <m>)
#? * (gsl_matrix_uchar_minmax <m> <min_out> <max_out>)
#? * (gsl_matrix_uchar_max_index <m> <imax> <jmax>)
#? * (gsl_matrix_uchar_min_index <m> <imin> <jmin>)
#? * (gsl_matrix_uchar_minmax_index <m> <imin> <jmin> <imax> <jmax>)
#? * (gsl_matrix_uchar_isnull <m>)
#? * (gsl_matrix_uchar_add <a> <b>)
#? * (gsl_matrix_uchar_sub <a> <b>)
#? * (gsl_matrix_uchar_mul_elements <a> <b>)
#? * (gsl_matrix_uchar_div_elements <a> <b>)
#? * (gsl_matrix_uchar_scale <a> <x>)
#? * (gsl_matrix_uchar_add_constant <a> <x>)
#? * (gsl_matrix_uchar_add_diagonal <a> <x>)
#? * (gsl_matrix_uchar_get_row <v> <m> <i>)
#? * (gsl_matrix_uchar_get_col <v> <m> <j>)
#? * (gsl_matrix_uchar_set_row <m> <i> <v>)
#? * (gsl_matrix_uchar_set_col <m> <j> <v>)
#? * (gsl_matrix_uint_alloc <n1> <n2>)
#? * (gsl_matrix_uint_calloc <n1> <n2>)
#? * (gsl_matrix_uint_alloc_from_block <b> <offset> <n1> <n2> <d2>)
#? * (gsl_matrix_uint_alloc_from_matrix <m> <k1> <k2> <n1> <n2>)
#? * (gsl_vector_uint_alloc_row_from_matrix <m> <i>)
#? * (gsl_vector_uint_alloc_col_from_matrix <m> <j>)
#? * (gsl_matrix_uint_free <m>)
#? * (gsl_matrix_uint_submatrix <m> <i> <j> <n1> <n2> <view>)
#? * (gsl_matrix_uint_row <m> <i> <view>)
#? * (gsl_matrix_uint_column <m> <j> <view>)
#? * (gsl_matrix_uint_diagonal <m> <view>)
#? * (gsl_matrix_uint_subdiagonal <m> <k> <view>)
#? * (gsl_matrix_uint_superdiagonal <m> <k> <view>)
#? * (gsl_matrix_uint_view_array <base> <n1> <n2> <view>)
#? * (gsl_matrix_uint_view_array_with_tda <base> <n1> <n2> <tda> <view>)
#? * (gsl_matrix_uint_view_vector <v> <n1> <n2> <view>)
#? * (gsl_matrix_uint_view_vector_with_tda <v> <n1> <n2> <tda> <view>)
#? * (gsl_matrix_uint_const_submatrix <m> <i> <j> <n1> <n2> <view>)
#? * (gsl_matrix_uint_const_row <m> <i> <view>)
#? * (gsl_matrix_uint_const_column <m> <j> <view>)
#? * (gsl_matrix_uint_const_diagonal <m> <view>)
#? * (gsl_matrix_uint_const_subdiagonal <m> <k> <view>)
#? * (gsl_matrix_uint_const_superdiagonal <m> <k> <view>)
#? * (gsl_matrix_uint_const_view_array <base> <n1> <n2> <view>)
#? * (gsl_matrix_uint_const_view_array_with_tda <base> <n1> <n2> <tda> <view>)
#? * (gsl_matrix_uint_const_view_vector <v> <n1> <n2> <view>)
#? * (gsl_matrix_uint_const_view_vector_with_tda <v> <n1> <n2> <tda> <view>)
#? * (gsl_matrix_uint_get <m> <i> <j>)
#? * (gsl_matrix_uint_set <m> <i> <j> <x>)
#? * (gsl_matrix_uint_ptr <m> <i> <j>)
#? * (gsl_matrix_uint_const_ptr <m> <i> <j>)
#? * (gsl_matrix_uint_set_zero <m>)
#? * (gsl_matrix_uint_set_identity <m>)
#? * (gsl_matrix_uint_set_all <m> <x>)
#? * (gsl_matrix_uint_fread <stream> <m>)
#? * (gsl_matrix_uint_fwrite <stream> <m>)
#? * (gsl_matrix_uint_fscanf <stream> <m>)
#? * (gsl_matrix_uint_fprintf <stream> <m> <format>)
#? * (gsl_matrix_uint_memcpy <dest> <src>)
#? * (gsl_matrix_uint_swap <m1> <m2>)
#? * (gsl_matrix_uint_swap_rows <m> <i> <j>)
#? * (gsl_matrix_uint_swap_columns <m> <i> <j>)
#? * (gsl_matrix_uint_swap_rowcol <m> <i> <j>)
#? * (gsl_matrix_uint_transpose <m>)
#? * (gsl_matrix_uint_transpose_memcpy <dest> <src>)
#? * (gsl_matrix_uint_max <m>)
#? * (gsl_matrix_uint_min <m>)
#? * (gsl_matrix_uint_minmax <m> <min_out> <max_out>)
#? * (gsl_matrix_uint_max_index <m> <imax> <jmax>)
#? * (gsl_matrix_uint_min_index <m> <imin> <jmin>)
#? * (gsl_matrix_uint_minmax_index <m> <imin> <jmin> <imax> <jmax>)
#? * (gsl_matrix_uint_isnull <m>)
#? * (gsl_matrix_uint_add <a> <b>)
#? * (gsl_matrix_uint_sub <a> <b>)
#? * (gsl_matrix_uint_mul_elements <a> <b>)
#? * (gsl_matrix_uint_div_elements <a> <b>)
#? * (gsl_matrix_uint_scale <a> <x>)
#? * (gsl_matrix_uint_add_constant <a> <x>)
#? * (gsl_matrix_uint_add_diagonal <a> <x>)
#? * (gsl_matrix_uint_get_row <v> <m> <i>)
#? * (gsl_matrix_uint_get_col <v> <m> <j>)
#? * (gsl_matrix_uint_set_row <m> <i> <v>)
#? * (gsl_matrix_uint_set_col <m> <j> <v>)
#? * (gsl_matrix_ulong_alloc <n1> <n2>)
#? * (gsl_matrix_ulong_calloc <n1> <n2>)
#? * (gsl_matrix_ulong_alloc_from_block <b> <offset> <n1> <n2> <d2>)
#? * (gsl_matrix_ulong_alloc_from_matrix <m> <k1> <k2> <n1> <n2>)
#? * (gsl_vector_ulong_alloc_row_from_matrix <m> <i>)
#? * (gsl_vector_ulong_alloc_col_from_matrix <m> <j>)
#? * (gsl_matrix_ulong_free <m>)
#? * (gsl_matrix_ulong_submatrix <m> <i> <j> <n1> <n2> <view>)
#? * (gsl_matrix_ulong_row <m> <i> <view>)
#? * (gsl_matrix_ulong_column <m> <j> <view>)
#? * (gsl_matrix_ulong_diagonal <m> <view>)
#? * (gsl_matrix_ulong_subdiagonal <m> <k> <view>)
#? * (gsl_matrix_ulong_superdiagonal <m> <k> <view>)
#? * (gsl_matrix_ulong_view_array <base> <n1> <n2> <view>)
#? * (gsl_matrix_ulong_view_array_with_tda <base> <n1> <n2> <tda> <view>)
#? * (gsl_matrix_ulong_view_vector <v> <n1> <n2> <view>)
#? * (gsl_matrix_ulong_view_vector_with_tda <v> <n1> <n2> <tda> <view>)
#? * (gsl_matrix_ulong_const_submatrix <m> <i> <j> <n1> <n2> <view>)
#? * (gsl_matrix_ulong_const_row <m> <i> <view>)
#? * (gsl_matrix_ulong_const_column <m> <j> <view>)
#? * (gsl_matrix_ulong_const_diagonal <m> <view>)
#? * (gsl_matrix_ulong_const_subdiagonal <m> <k> <view>)
#? * (gsl_matrix_ulong_const_superdiagonal <m> <k> <view>)
#? * (gsl_matrix_ulong_const_view_array <base> <n1> <n2> <view>)
#? * (gsl_matrix_ulong_const_view_array_with_tda <base> <n1> <n2> <tda> <view>)
#? * (gsl_matrix_ulong_const_view_vector <v> <n1> <n2> <view>)
#? * (gsl_matrix_ulong_const_view_vector_with_tda <v> <n1> <n2> <tda> <view>)
#? * (gsl_matrix_ulong_get <m> <i> <j>)
#? * (gsl_matrix_ulong_set <m> <i> <j> <x>)
#? * (gsl_matrix_ulong_ptr <m> <i> <j>)
#? * (gsl_matrix_ulong_const_ptr <m> <i> <j>)
#? * (gsl_matrix_ulong_set_zero <m>)
#? * (gsl_matrix_ulong_set_identity <m>)
#? * (gsl_matrix_ulong_set_all <m> <x>)
#? * (gsl_matrix_ulong_fread <stream> <m>)
#? * (gsl_matrix_ulong_fwrite <stream> <m>)
#? * (gsl_matrix_ulong_fscanf <stream> <m>)
#? * (gsl_matrix_ulong_fprintf <stream> <m> <format>)
#? * (gsl_matrix_ulong_memcpy <dest> <src>)
#? * (gsl_matrix_ulong_swap <m1> <m2>)
#? * (gsl_matrix_ulong_swap_rows <m> <i> <j>)
#? * (gsl_matrix_ulong_swap_columns <m> <i> <j>)
#? * (gsl_matrix_ulong_swap_rowcol <m> <i> <j>)
#? * (gsl_matrix_ulong_transpose <m>)
#? * (gsl_matrix_ulong_transpose_memcpy <dest> <src>)
#? * (gsl_matrix_ulong_max <m>)
#? * (gsl_matrix_ulong_min <m>)
#? * (gsl_matrix_ulong_minmax <m> <min_out> <max_out>)
#? * (gsl_matrix_ulong_max_index <m> <imax> <jmax>)
#? * (gsl_matrix_ulong_min_index <m> <imin> <jmin>)
#? * (gsl_matrix_ulong_minmax_index <m> <imin> <jmin> <imax> <jmax>)
#? * (gsl_matrix_ulong_isnull <m>)
#? * (gsl_matrix_ulong_add <a> <b>)
#? * (gsl_matrix_ulong_sub <a> <b>)
#? * (gsl_matrix_ulong_mul_elements <a> <b>)
#? * (gsl_matrix_ulong_div_elements <a> <b>)
#? * (gsl_matrix_ulong_scale <a> <x>)
#? * (gsl_matrix_ulong_add_constant <a> <x>)
#? * (gsl_matrix_ulong_add_diagonal <a> <x>)
#? * (gsl_matrix_ulong_get_row <v> <m> <i>)
#? * (gsl_matrix_ulong_get_col <v> <m> <j>)
#? * (gsl_matrix_ulong_set_row <m> <i> <v>)
#? * (gsl_matrix_ulong_set_col <m> <j> <v>)
#? * (gsl_matrix_ushort_alloc <n1> <n2>)
#? * (gsl_matrix_ushort_calloc <n1> <n2>)
#? * (gsl_matrix_ushort_alloc_from_block <b> <offset> <n1> <n2> <d2>)
#? * (gsl_matrix_ushort_alloc_from_matrix <m> <k1> <k2> <n1> <n2>)
#? * (gsl_vector_ushort_alloc_row_from_matrix <m> <i>)
#? * (gsl_vector_ushort_alloc_col_from_matrix <m> <j>)
#? * (gsl_matrix_ushort_free <m>)
#? * (gsl_matrix_ushort_submatrix <m> <i> <j> <n1> <n2> <view>)
#? * (gsl_matrix_ushort_row <m> <i> <view>)
#? * (gsl_matrix_ushort_column <m> <j> <view>)
#? * (gsl_matrix_ushort_diagonal <m> <view>)
#? * (gsl_matrix_ushort_subdiagonal <m> <k> <view>)
#? * (gsl_matrix_ushort_superdiagonal <m> <k> <view>)
#? * (gsl_matrix_ushort_view_array <base> <n1> <n2> <view>)
#? * (gsl_matrix_ushort_view_array_with_tda <base> <n1> <n2> <tda> <view>)
#? * (gsl_matrix_ushort_view_vector <v> <n1> <n2> <view>)
#? * (gsl_matrix_ushort_view_vector_with_tda <v> <n1> <n2> <tda> <view>)
#? * (gsl_matrix_ushort_const_submatrix <m> <i> <j> <n1> <n2> <view>)
#? * (gsl_matrix_ushort_const_row <m> <i> <view>)
#? * (gsl_matrix_ushort_const_column <m> <j> <view>)
#? * (gsl_matrix_ushort_const_diagonal <m> <view>)
#? * (gsl_matrix_ushort_const_subdiagonal <m> <k> <view>)
#? * (gsl_matrix_ushort_const_superdiagonal <m> <k> <view>)
#? * (gsl_matrix_ushort_const_view_array <base> <n1> <n2> <view>)
#? * (gsl_matrix_ushort_const_view_array_with_tda <base> <n1> <n2> <tda> <view>)
#? * (gsl_matrix_ushort_const_view_vector <v> <n1> <n2> <view>)
#? * (gsl_matrix_ushort_const_view_vector_with_tda <v> <n1> <n2> <tda> <view>)
#? * (gsl_matrix_ushort_get <m> <i> <j>)
#? * (gsl_matrix_ushort_set <m> <i> <j> <x>)
#? * (gsl_matrix_ushort_ptr <m> <i> <j>)
#? * (gsl_matrix_ushort_const_ptr <m> <i> <j>)
#? * (gsl_matrix_ushort_set_zero <m>)
#? * (gsl_matrix_ushort_set_identity <m>)
#? * (gsl_matrix_ushort_set_all <m> <x>)
#? * (gsl_matrix_ushort_fread <stream> <m>)
#? * (gsl_matrix_ushort_fwrite <stream> <m>)
#? * (gsl_matrix_ushort_fscanf <stream> <m>)
#? * (gsl_matrix_ushort_fprintf <stream> <m> <format>)
#? * (gsl_matrix_ushort_memcpy <dest> <src>)
#? * (gsl_matrix_ushort_swap <m1> <m2>)
#? * (gsl_matrix_ushort_swap_rows <m> <i> <j>)
#? * (gsl_matrix_ushort_swap_columns <m> <i> <j>)
#? * (gsl_matrix_ushort_swap_rowcol <m> <i> <j>)
#? * (gsl_matrix_ushort_transpose <m>)
#? * (gsl_matrix_ushort_transpose_memcpy <dest> <src>)
#? * (gsl_matrix_ushort_max <m>)
#? * (gsl_matrix_ushort_min <m>)
#? * (gsl_matrix_ushort_minmax <m> <min_out> <max_out>)
#? * (gsl_matrix_ushort_max_index <m> <imax> <jmax>)
#? * (gsl_matrix_ushort_min_index <m> <imin> <jmin>)
#? * (gsl_matrix_ushort_minmax_index <m> <imin> <jmin> <imax> <jmax>)
#? * (gsl_matrix_ushort_isnull <m>)
#? * (gsl_matrix_ushort_add <a> <b>)
#? * (gsl_matrix_ushort_sub <a> <b>)
#? * (gsl_matrix_ushort_mul_elements <a> <b>)
#? * (gsl_matrix_ushort_div_elements <a> <b>)
#? * (gsl_matrix_ushort_scale <a> <x>)
#? * (gsl_matrix_ushort_add_constant <a> <x>)
#? * (gsl_matrix_ushort_add_diagonal <a> <x>)
#? * (gsl_matrix_ushort_get_row <v> <m> <i>)
#? * (gsl_matrix_ushort_get_col <v> <m> <j>)
#? * (gsl_matrix_ushort_set_row <m> <i> <v>)
#? * (gsl_matrix_ushort_set_col <m> <j> <v>)

;; ********************************************************


;; whenever the c-function returns a structure,
;; the lush interface adds an additional parameter "view" which catches the return value

(de gsl_matrix_char_alloc (    n1 n2   )
    ((-int-) n1 )                         ;; const size_t -> int
    ((-int-) n2 )                         ;; const size_t -> int
    (gptr #{  gsl_matrix_char_alloc ( $n1 ,$n2 ) #} )   ;; gsl_matrix_char * -> gptr
    )


(de gsl_matrix_char_calloc (   n1 n2   )
    ((-int-) n1)                         ;; const size_t -> int
    ((-int-) n2 )                         ;; const size_t -> int
    (gptr #{  gsl_matrix_char_calloc ( $n1 ,$n2 )  #} )   ;; gsl_matrix_char * -> gptr
    )


(de gsl_matrix_char_alloc_from_block (   b  offset  n1  n2  d2  )
    ((-gptr- "gsl_block_char *") b)
    ((-int-) offset)                         ;; const size_t -> int
    ((-int-) n1)                         ;; const size_t -> int
    ((-int-) n2)                         ;; const size_t -> int
    ((-int-) d2 )                         ;; const size_t -> int
    (gptr #{  gsl_matrix_char_alloc_from_block ( $b ,$offset ,$n1 ,$n2 ,$d2 ) #} )   ;; gsl_matrix_char * -> gptr
    )


(de gsl_matrix_char_alloc_from_matrix (   m  k1  k2  n1  n2  )
    ((-gptr- "gsl_matrix_char *")  m)
    ((-int-)  k1)                         ;; const size_t -> int
    ((-int-)  k2)                         ;; const size_t -> int
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    (gptr #{  gsl_matrix_char_alloc_from_matrix ( $m ,$k1 ,$k2 ,$n1 ,$n2 )  #} )   ;; gsl_matrix_char * -> gptr
    )


(de gsl_vector_char_alloc_row_from_matrix (   m  i  )
    ((-gptr- "gsl_matrix_char *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    (gptr #{  gsl_vector_char_alloc_row_from_matrix ( $m ,$i ) #} )   ;; gsl_vector_char * -> gptr
    )


(de gsl_vector_char_alloc_col_from_matrix (   m  j  )
    ((-gptr- "gsl_matrix_char *")  m)
    ((-int-)  j)                         ;; const size_t -> int
    (gptr #{  gsl_vector_char_alloc_col_from_matrix ( $m ,$j )  #} )   ;; gsl_vector_char * -> gptr
    )


(de gsl_matrix_char_free (   m  )
    ((-gptr- "gsl_matrix_char *")  m)
    #{  gsl_matrix_char_free ( $m );  #} 
    ()
    )




(de gsl_matrix_char_submatrix (   m  i  j  n1  n2  view )
    ((-gptr- "gsl_matrix_char *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-int-)  j)                         ;; const size_t -> int
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-gptr- "_gsl_matrix_char_view *") view)
    #{
    { _gsl_matrix_char_view tmp;
    tmp = gsl_matrix_char_submatrix ( $m ,$i ,$j ,$n1 ,$n2 );
    memcpy($view,&tmp,sizeof(_gsl_matrix_char_view));
    } #} 
    ()
    )


(de gsl_matrix_char_row (   m  i  view )
    ((-gptr- "gsl_matrix_char *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-gptr- "_gsl_vector_char_view *") view)
    #{
    { _gsl_vector_char_view tmp;
    tmp = gsl_matrix_char_row ( $m ,$i );
    memcpy($view,&tmp,sizeof(_gsl_vector_char_view));
    } #} 
    ()
    )


(de gsl_matrix_char_column (   m  j  view )
    ((-gptr- "gsl_matrix_char *")  m)
    ((-int-)  j)                         ;; const size_t -> int
    ((-gptr- "_gsl_vector_char_view *") view)
    #{
    { _gsl_vector_char_view tmp;
    tmp = gsl_matrix_char_column ( $m ,$j );
    memcpy($view,&tmp,sizeof(_gsl_vector_char_view));
    } #} 
    ()
    )


(de gsl_matrix_char_diagonal (   m  view )
    ((-gptr- "gsl_matrix_char *")  m)
    ((-gptr- "_gsl_vector_char_view *") view)
    #{
    { _gsl_vector_char_view tmp;
    tmp = gsl_matrix_char_diagonal ( $m );
    memcpy($view,&tmp,sizeof(_gsl_vector_char_view));
    } #} 
    ()
    )


(de gsl_matrix_char_subdiagonal (   m  k  view )
    ((-gptr- "gsl_matrix_char *")  m)
    ((-int-)  k)                         ;; const size_t -> int
    ((-gptr- "_gsl_vector_char_view *") view)
    #{
    { _gsl_vector_char_view tmp;
    tmp = gsl_matrix_char_subdiagonal ( $m ,$k );
    memcpy($view,&tmp,sizeof(_gsl_vector_char_view));
    } #} 
    ()
    )


(de gsl_matrix_char_superdiagonal (   m  k  view )
    ((-gptr- "gsl_matrix_char *")  m)
    ((-int-)  k)                         ;; const size_t -> int
    ((-gptr- "_gsl_vector_char_view *") view)
    #{
    { _gsl_vector_char_view tmp;
    tmp = gsl_matrix_char_superdiagonal ( $m ,$k );
    memcpy($view,&tmp,sizeof(_gsl_vector_char_view));
    } #} 
    ()
    )


(de gsl_matrix_char_view_array (   base  n1  n2  view )
    ((-gptr- "char *")  base)
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-gptr- "_gsl_matrix_char_view *") view)
    #{
    { _gsl_matrix_char_view tmp;
    tmp = gsl_matrix_char_view_array ( $base ,$n1 ,$n2 );
    memcpy($view,&tmp,sizeof(_gsl_matrix_char_view));
    } #} 
    ()
    )


(de gsl_matrix_char_view_array_with_tda (   base  n1  n2  tda  view )
    ((-gptr- "char *")  base)
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-int-)  tda)                         ;; const size_t -> int
    ((-gptr- "_gsl_matrix_char_view *") view)
    #{
    { _gsl_matrix_char_view tmp;
    tmp = gsl_matrix_char_view_array_with_tda ( $base ,$n1 ,$n2 ,$tda );
    memcpy($view,&tmp,sizeof(_gsl_matrix_char_view));
    } #} 
    ()
    )



(de gsl_matrix_char_view_vector (   v  n1  n2  view )
    ((-gptr- "gsl_vector_char *")  v)
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-gptr- "_gsl_matrix_char_view *") view)
    #{
    { _gsl_matrix_char_view tmp;
    tmp = gsl_matrix_char_view_vector ( $v ,$n1 ,$n2 );
    memcpy($view,&tmp,sizeof(_gsl_matrix_char_view));
    } #} 
    ()
    )


(de gsl_matrix_char_view_vector_with_tda (   v  n1  n2  tda  view )
    ((-gptr- "gsl_vector_char *")  v)
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-int-)  tda)                         ;; const size_t -> int
    ((-gptr- "_gsl_matrix_char_view *") view)
    #{
    { _gsl_matrix_char_view tmp;
    tmp = gsl_matrix_char_view_vector_with_tda ( $v ,$n1 ,$n2 ,$tda );
    memcpy($view,&tmp,sizeof(_gsl_matrix_char_view));
    } #} 
    ()
    )



(de gsl_matrix_char_const_submatrix (   m  i  j  n1  n2  view )
    ((-gptr- "const gsl_matrix_char *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-int-)  j)                         ;; const size_t -> int
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-gptr- "_gsl_matrix_char_const_view *") view)
    #{
    { _gsl_matrix_char_const_view tmp;
    tmp = gsl_matrix_char_const_submatrix ( $m ,$i ,$j ,$n1 ,$n2 );
    memcpy($view,&tmp,sizeof(_gsl_matrix_char_const_view));
    } #} 
    ()
    )


(de gsl_matrix_char_const_row (   m  i  view )
    ((-gptr- "const gsl_matrix_char *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-gptr- "_gsl_vector_char_const_view *") view)
    #{
    { _gsl_vector_char_const_view tmp;
    tmp = gsl_matrix_char_const_row ( $m ,$i );
    memcpy($view,&tmp,sizeof(_gsl_vector_char_const_view));
    } #} 
    ()
    )


(de gsl_matrix_char_const_column (   m  j  view )
    ((-gptr- "const gsl_matrix_char *")  m)
    ((-int-)  j)                         ;; const size_t -> int
    ((-gptr- "_gsl_vector_char_const_view *") view)
    #{
    { _gsl_vector_char_const_view tmp;
    tmp = gsl_matrix_char_const_column ( $m ,$j );
    memcpy($view,&tmp,sizeof(_gsl_vector_char_const_view));
    } #} 
    ()
    )


(de gsl_matrix_char_const_diagonal (   m  view )
    ((-gptr- "const gsl_matrix_char *")  m)
    ((-gptr- "_gsl_vector_char_const_view *") view)
    #{
    { _gsl_vector_char_const_view tmp;
    tmp = gsl_matrix_char_const_diagonal ( $m );
    memcpy($view,&tmp,sizeof(_gsl_vector_char_const_view));
    } #} 
    ()
    )


(de gsl_matrix_char_const_subdiagonal (   m  k  view )
    ((-gptr- "const gsl_matrix_char *")  m)
    ((-int-)  k)                         ;; const size_t -> int
    ((-gptr- "_gsl_vector_char_const_view *") view)
    #{
    { _gsl_vector_char_const_view tmp;
    tmp = gsl_matrix_char_const_subdiagonal ( $m ,$k );
    memcpy($view,&tmp,sizeof(_gsl_vector_char_const_view));
    } #} 
    ()
    )


(de gsl_matrix_char_const_superdiagonal (   m  k  view )
    ((-gptr- "const gsl_matrix_char *")  m)
    ((-int-)  k)                         ;; const size_t -> int
    ((-gptr- "_gsl_vector_char_const_view *") view)
    #{
    { _gsl_vector_char_const_view tmp;
    tmp = gsl_matrix_char_const_superdiagonal ( $m ,$k );
    memcpy($view,&tmp,sizeof(_gsl_vector_char_const_view));
    } #} 
    ()
    )


(de gsl_matrix_char_const_view_array (   base  n1  n2  view )
    ((-gptr- "const char *")  base)
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-gptr- "_gsl_matrix_char_const_view *") view)
    #{
    { _gsl_matrix_char_const_view tmp;
    tmp = gsl_matrix_char_const_view_array ( $base ,$n1 ,$n2 );
    memcpy($view,&tmp,sizeof(_gsl_matrix_char_const_view));
    } #} 
    ()
    )


(de gsl_matrix_char_const_view_array_with_tda (   base  n1  n2  tda  view )
    ((-gptr- "const char *")  base)
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-int-)  tda)                         ;; const size_t -> int
    ((-gptr- "_gsl_matrix_char_const_view *") view)
    #{
    { _gsl_matrix_char_const_view tmp;
    tmp = gsl_matrix_char_const_view_array_with_tda ( $base ,$n1 ,$n2 ,$tda );
    memcpy($view,&tmp,sizeof(_gsl_matrix_char_const_view));
    } #} 
    ()
    )


(de gsl_matrix_char_const_view_vector (   v  n1  n2  view )
    ((-gptr- "const gsl_vector_char *")  v)
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-gptr- "_gsl_matrix_char_const_view *") view)
    #{
    { _gsl_matrix_char_const_view tmp;
    tmp = gsl_matrix_char_const_view_vector ( $v ,$n1 ,$n2 );
    memcpy($view,&tmp,sizeof(_gsl_matrix_char_const_view));
    } #} 
    ()
    )


(de gsl_matrix_char_const_view_vector_with_tda (   v  n1  n2  tda  view )
    ((-gptr- "const gsl_vector_char *")  v)
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-int-)  tda)                         ;; const size_t -> int
    ((-gptr- "_gsl_matrix_char_const_view *") view)
    #{
    { _gsl_matrix_char_const_view tmp;
    tmp = gsl_matrix_char_const_view_vector_with_tda ( $v ,$n1 ,$n2 ,$tda );
    memcpy($view,&tmp,sizeof(_gsl_matrix_char_const_view));
    } #} 
    ()
    )




(de gsl_matrix_char_get (   m  i  j  )
    ((-gptr- "const gsl_matrix_char *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-int-)  j)                         ;; const size_t -> int
    (int   #{  gsl_matrix_char_get( $m ,$i ,$j )  #} )         ;; char -> int
    )

(de gsl_matrix_char_set (   m  i  j  x  )
    ((-gptr- "gsl_matrix_char *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-int-)  j)                         ;; const size_t -> int
    ((-int-)  x)                         ;; char -> int
    #{  gsl_matrix_char_set( $m ,$i ,$j ,$x ); #} 
    ()
    )


(de gsl_matrix_char_ptr (   m  i  j  )
    ((-gptr- "gsl_matrix_char *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-int-)  j)                         ;; const size_t -> int
    (gptr #{  gsl_matrix_char_ptr( $m ,$i ,$j ) #} )   ;; char * -> gptr
    )

(de gsl_matrix_char_const_ptr (   m  i  j  )
    ((-gptr- "const gsl_matrix_char *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-int-)  j)                         ;; const size_t -> int
    (gptr #{  gsl_matrix_char_const_ptr( $m ,$i ,$j )  #} )   ;; const char * -> gptr
    )


(de gsl_matrix_char_set_zero (   m  )
    ((-gptr- "gsl_matrix_char *")  m)
    #{  gsl_matrix_char_set_zero ( $m );  #} 
    ()
    )

(de gsl_matrix_char_set_identity (   m  )
    ((-gptr- "gsl_matrix_char *")  m)
    #{  gsl_matrix_char_set_identity ( $m ); #} 
    ()
    )

(de gsl_matrix_char_set_all (   m  x  )
    ((-gptr- "gsl_matrix_char *")  m)
    ((-int-)  x)                            ;; char -> int
    #{  gsl_matrix_char_set_all ( $m ,$x );  #} 
    ()
    )


(de gsl_matrix_char_fread (   stream  m  )
    ((-gptr- "FILE *")  stream)
    ((-gptr- "gsl_matrix_char *")  m)
    (int #{  gsl_matrix_char_fread ( $stream ,$m )   #} )
    )

(de gsl_matrix_char_fwrite (   stream  m  )
    ((-gptr- "FILE *")  stream)
    ((-gptr- "const gsl_matrix_char *")  m)
    (int #{  gsl_matrix_char_fwrite ( $stream ,$m )  #} )
    )

(de gsl_matrix_char_fscanf (   stream  m  )
    ((-gptr- "FILE *")  stream)
    ((-gptr- "gsl_matrix_char *")  m)
    (int #{  gsl_matrix_char_fscanf ( $stream ,$m )  #} )
    )

(de gsl_matrix_char_fprintf (   stream  m  format  )
    ((-gptr- "FILE *")  stream)
    ((-gptr- "const gsl_matrix_char *")  m)
    ((-gptr- "const char *")  format)
    (int #{  gsl_matrix_char_fprintf ( $stream ,$m ,$format ) #} )
    )


(de gsl_matrix_char_memcpy (   dest  src  )
    ((-gptr- "gsl_matrix_char *")  dest)
    ((-gptr- "const gsl_matrix_char *")  src)
    (int #{  gsl_matrix_char_memcpy( $dest ,$src ) #} )
    )

(de gsl_matrix_char_swap (   m1  m2  )
    ((-gptr- "gsl_matrix_char *")  m1)
    ((-gptr- "gsl_matrix_char *")  m2)
    (int #{  gsl_matrix_char_swap( $m1 ,$m2 )  #} )
    )


(de gsl_matrix_char_swap_rows (   m  i  j  )
    ((-gptr- "gsl_matrix_char *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-int-)  j)                         ;; const size_t -> int
    (int #{  gsl_matrix_char_swap_rows( $m ,$i ,$j )  #} )
    )

(de gsl_matrix_char_swap_columns (   m  i  j  )
    ((-gptr- "gsl_matrix_char *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-int-)  j)                         ;; const size_t -> int
    (int #{  gsl_matrix_char_swap_columns( $m ,$i ,$j ) #} )
    )

(de gsl_matrix_char_swap_rowcol (   m  i  j  )
    ((-gptr- "gsl_matrix_char *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-int-)  j)                         ;; const size_t -> int
    (int #{  gsl_matrix_char_swap_rowcol( $m ,$i ,$j )  #} )
    )

(de gsl_matrix_char_transpose (   m  )
    ((-gptr- "gsl_matrix_char *")  m)
    (int #{  gsl_matrix_char_transpose ( $m ) #} )
    )

(de gsl_matrix_char_transpose_memcpy (   dest  src  )
    ((-gptr- "gsl_matrix_char *")  dest)
    ((-gptr- "const gsl_matrix_char *")  src)
    (int #{  gsl_matrix_char_transpose_memcpy ( $dest ,$src )  #} )
    )


(de gsl_matrix_char_max (   m  )
    ((-gptr- "const gsl_matrix_char *")  m)
    (int #{  gsl_matrix_char_max ( $m )  #} )           ;; char -> int
    )

(de gsl_matrix_char_min (   m  )
    ((-gptr- "const gsl_matrix_char *")  m)
    (int #{  gsl_matrix_char_min ( $m ) #} )            ;; char -> int
    )

(de gsl_matrix_char_minmax (   m  min_out  max_out  )
    ((-gptr- "const gsl_matrix_char *")  m)
    ((-gptr- "char *")  min_out)
    ((-gptr- "char *")  max_out)
    #{  gsl_matrix_char_minmax ( $m ,$min_out ,$max_out );  #} 
    ()
    )


(de gsl_matrix_char_max_index (   m  imax  jmax  )
    ((-gptr- "const gsl_matrix_char *")  m)
    ((-gptr- "size_t *")  imax)
    ((-gptr- "size_t *") jmax)
    #{  gsl_matrix_char_max_index ( $m ,$imax ,$jmax );  #} 
    ()
    )

(de gsl_matrix_char_min_index (   m  imin  jmin  )
    ((-gptr- "const gsl_matrix_char *")  m)
    ((-gptr- "size_t *")  imin)
    ((-gptr- "size_t *") jmin)
    #{  gsl_matrix_char_min_index ( $m ,$imin ,$jmin ); #} 
    ()
    )

(de gsl_matrix_char_minmax_index (   m  imin  jmin  imax  jmax  )
    ((-gptr- "const gsl_matrix_char *")  m)
    ((-gptr- "size_t *")  imin)
    ((-gptr- "size_t *")  jmin)
    ((-gptr- "size_t *")  imax)
    ((-gptr- "size_t *")  jmax)
    #{  gsl_matrix_char_minmax_index ( $m ,$imin ,$jmin ,$imax ,$jmax );  #} 
    ()
    )


(de gsl_matrix_char_isnull (   m  )
    ((-gptr- "const gsl_matrix_char *")  m)
    (int #{  gsl_matrix_char_isnull ( $m )  #} )
    )


(de gsl_matrix_char_add (   a  b  )
    ((-gptr- "gsl_matrix_char *")  a)
    ((-gptr- "const gsl_matrix_char *")  b)
    (int #{  gsl_matrix_char_add ( $a ,$b )  #} )
    )

(de gsl_matrix_char_sub (   a  b  )
    ((-gptr- "gsl_matrix_char *")  a)
    ((-gptr- "const gsl_matrix_char *")  b)
    (int #{  gsl_matrix_char_sub ( $a ,$b ) #} )
    )

(de gsl_matrix_char_mul_elements (   a  b  )
    ((-gptr- "gsl_matrix_char *")  a)
    ((-gptr- "const gsl_matrix_char *")  b)
    (int #{  gsl_matrix_char_mul_elements ( $a ,$b )  #} )
    )

(de gsl_matrix_char_div_elements (   a  b  )
    ((-gptr- "gsl_matrix_char *")  a)
    ((-gptr- "const gsl_matrix_char *")  b)
    (int #{  gsl_matrix_char_div_elements ( $a ,$b ) #} )
    )

(de gsl_matrix_char_scale (   a  x  )
    ((-gptr- "gsl_matrix_char *")  a)
    ((-double-)  x)
    (int #{  gsl_matrix_char_scale ( $a ,$x )  #} )
    )

(de gsl_matrix_char_add_constant (   a  x  )
    ((-gptr- "gsl_matrix_char *")  a)
    ((-double-)  x)
    (int #{  gsl_matrix_char_add_constant ( $a ,$x ) #} )
    )

(if (> gsl-libversion 1.0)
    (de gsl_matrix_char_add_diagonal (   a  x  )
      ((-gptr- "gsl_matrix_char *")  a)
      ((-double-)  x)
      (int #{  gsl_matrix_char_add_diagonal ( $a ,$x )  #} )
      )
  (de gsl_matrix_char_add_diagonal (   a  x  )
    ((-gptr- "gsl_matrix_char *")  a)
    ((-double-)  x)
    (error "not available in this version of GSL") ()))





(de gsl_matrix_char_get_row (   v  m  i  )
    ((-gptr- "gsl_vector_char *")  v)
    ((-gptr- "const gsl_matrix_char *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    (int #{  gsl_matrix_char_get_row( $v ,$m ,$i ) #} )
    )

(de gsl_matrix_char_get_col (   v  m  j  )
    ((-gptr- "gsl_vector_char *")  v)
    ((-gptr- "const gsl_matrix_char *")  m)
    ((-int-)  j)                         ;; const size_t -> int
    (int #{  gsl_matrix_char_get_col( $v ,$m ,$j )  #} )
    )

(de gsl_matrix_char_set_row (   m  i  v  )
    ((-gptr- "gsl_matrix_char *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-gptr- "const gsl_vector_char *")  v)
    (int #{  gsl_matrix_char_set_row( $m ,$i ,$v ) #} )
    )

(de gsl_matrix_char_set_col (   m  j  v  )
    ((-gptr- "gsl_matrix_char *")  m)
    ((-int-)  j)                         ;; const size_t -> int
    ((-gptr- "const gsl_vector_char *")  v)
    (int #{  gsl_matrix_char_set_col( $m ,$j ,$v )  #} )
    )





(de gsl_matrix_complex_alloc (   n1  n2  )
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    (gptr #{  gsl_matrix_complex_alloc ( $n1 ,$n2 )  #} )   ;; gsl_matrix_complex * -> gptr
    )


(de gsl_matrix_complex_calloc (   n1  n2  )
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    (gptr #{  gsl_matrix_complex_calloc ( $n1 ,$n2 ) #} )   ;; gsl_matrix_complex * -> gptr
    )


(de gsl_matrix_complex_alloc_from_block (   b  offset  n1  n2  d2  )
    ((-gptr- "gsl_block_complex *")  b)
    ((-int-)  offset)                         ;; const size_t -> int
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-int-)  d2)                         ;; const size_t -> int
    (gptr #{  gsl_matrix_complex_alloc_from_block ( $b ,$offset ,$n1 ,$n2 ,$d2 )  #} )   ;; gsl_matrix_complex * -> gptr
    )


(de gsl_matrix_complex_alloc_from_matrix (   b  k1  k2  n1  n2  )
    ((-gptr- "gsl_matrix_complex *")  b)
    ((-int-)  k1)                         ;; const size_t -> int
    ((-int-)  k2)                         ;; const size_t -> int
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    (gptr #{  gsl_matrix_complex_alloc_from_matrix ( $b ,$k1 ,$k2 ,$n1 ,$n2 ) #} )   ;; gsl_matrix_complex * -> gptr
    )


(de gsl_vector_complex_alloc_row_from_matrix (   m  i  )
    ((-gptr- "gsl_matrix_complex *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    (gptr #{  gsl_vector_complex_alloc_row_from_matrix ( $m ,$i )  #} )   ;; gsl_vector_complex * -> gptr
    )


(de gsl_vector_complex_alloc_col_from_matrix (   m  j  )
    ((-gptr- "gsl_matrix_complex *")  m)
    ((-int-)  j)                         ;; const size_t -> int
    (gptr #{  gsl_vector_complex_alloc_col_from_matrix ( $m ,$j ) #} )   ;; gsl_vector_complex * -> gptr
    )


(de gsl_matrix_complex_free (   m  )
    ((-gptr- "gsl_matrix_complex *")  m)
    #{  gsl_matrix_complex_free ( $m ); #} 
    ()
    )




(de gsl_matrix_complex_submatrix (   m  i  j  n1  n2  view )
    ((-gptr- "gsl_matrix_complex *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-int-)  j)                         ;; const size_t -> int
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-gptr- "_gsl_matrix_complex_view *") view)
    #{
    { _gsl_matrix_complex_view tmp;
    tmp = gsl_matrix_complex_submatrix ( $m ,$i ,$j ,$n1 ,$n2 );
    memcpy($view,&tmp,sizeof(_gsl_matrix_complex_view));
    } #} 
    ()
    )


(de gsl_matrix_complex_row (   m  i  view )
    ((-gptr- "gsl_matrix_complex *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-gptr- "_gsl_vector_complex_view *") view)
    #{
    { _gsl_vector_complex_view tmp;
    tmp = gsl_matrix_complex_row ( $m ,$i );
    memcpy($view,&tmp,sizeof(_gsl_vector_complex_view));
    } #} 
    ()
    )


(de gsl_matrix_complex_column (   m  j  view )
    ((-gptr- "gsl_matrix_complex *")  m)
    ((-int-)  j)                         ;; const size_t -> int
    ((-gptr- "_gsl_vector_complex_view *") view)
    #{
    { _gsl_vector_complex_view tmp;
    tmp = gsl_matrix_complex_column ( $m ,$j );
    memcpy($view,&tmp,sizeof(_gsl_vector_complex_view));
    } #} 
    ()
    )


(de gsl_matrix_complex_diagonal (   m  view )
    ((-gptr- "gsl_matrix_complex *")  m)
    ((-gptr- "_gsl_vector_complex_view *") view)
    #{
    { _gsl_vector_complex_view tmp;
    tmp = gsl_matrix_complex_diagonal ( $m );
    memcpy($view,&tmp,sizeof(_gsl_vector_complex_view));
    } #} 
    ()
    )


(de gsl_matrix_complex_subdiagonal (   m  k  view )
    ((-gptr- "gsl_matrix_complex *")  m)
    ((-int-)  k)                         ;; const size_t -> int
    ((-gptr- "_gsl_vector_complex_view *") view)
    #{
    { _gsl_vector_complex_view tmp;
    tmp = gsl_matrix_complex_subdiagonal ( $m ,$k );
    memcpy($view,&tmp,sizeof(_gsl_vector_complex_view));
    } #} 
    ()
    )


(de gsl_matrix_complex_superdiagonal (   m  k  view )
    ((-gptr- "gsl_matrix_complex *")  m)
    ((-int-)  k)                         ;; const size_t -> int
    ((-gptr- "_gsl_vector_complex_view *") view)
    #{
    { _gsl_vector_complex_view tmp;
    tmp = gsl_matrix_complex_superdiagonal ( $m ,$k );
    memcpy($view,&tmp,sizeof(_gsl_vector_complex_view));
    } #} 
    ()
    )


(de gsl_matrix_complex_view_array (   base  n1  n2  view )
    ((-gptr- "double *")  base)
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-gptr- "_gsl_matrix_complex_view *") view)
    #{
    { _gsl_matrix_complex_view tmp;
    tmp = gsl_matrix_complex_view_array ( $base ,$n1 ,$n2 );
    memcpy($view,&tmp,sizeof(_gsl_matrix_complex_view));
    } #} 
    ()
    )


(de gsl_matrix_complex_view_array_with_tda (   base  n1  n2  tda  view )
    ((-gptr- "double *")  base)
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-int-)  tda)                         ;; const size_t -> int
    ((-gptr- "_gsl_matrix_complex_view *") view)
    #{
    { _gsl_matrix_complex_view tmp;
    tmp = gsl_matrix_complex_view_array_with_tda ( $base ,$n1 ,$n2 ,$tda );
    memcpy($view,&tmp,sizeof(_gsl_matrix_complex_view));
    } #} 
    ()
    )


(de gsl_matrix_complex_view_vector (   v  n1  n2  view )
    ((-gptr- "gsl_vector_complex *")  v)
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-gptr- "_gsl_matrix_complex_view *") view)
    #{
    { _gsl_matrix_complex_view tmp;
    tmp = gsl_matrix_complex_view_vector ( $v ,$n1 ,$n2 );
    memcpy($view,&tmp,sizeof(_gsl_matrix_complex_view));
    } #} 
    ()
    )


(de gsl_matrix_complex_view_vector_with_tda (   v  n1  n2  tda  view )
    ((-gptr- "gsl_vector_complex *")  v)
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-int-)  tda)                         ;; const size_t -> int
    ((-gptr- "_gsl_matrix_complex_view *") view)
    #{
    { _gsl_matrix_complex_view tmp;
    tmp = gsl_matrix_complex_view_vector_with_tda ( $v ,$n1 ,$n2 ,$tda );
    memcpy($view,&tmp,sizeof(_gsl_matrix_complex_view));
    } #} 
    ()
    )



(de gsl_matrix_complex_const_submatrix (   m  i  j  n1  n2  view )
    ((-gptr- "const gsl_matrix_complex *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-int-)  j)                         ;; const size_t -> int
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-gptr- "_gsl_matrix_complex_const_view *") view)
    #{
    { _gsl_matrix_complex_const_view tmp;
    tmp = gsl_matrix_complex_const_submatrix ( $m ,$i ,$j ,$n1 ,$n2 );
    memcpy($view,&tmp,sizeof(_gsl_matrix_complex_const_view));
    } #} 
    ()
    )


(de gsl_matrix_complex_const_row (   m  i  view )
    ((-gptr- "const gsl_matrix_complex *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-gptr- "_gsl_vector_complex_const_view *") view)
    #{
    { _gsl_vector_complex_const_view tmp;
    tmp = gsl_matrix_complex_const_row ( $m ,$i );
    memcpy($view,&tmp,sizeof(_gsl_vector_complex_const_view));
    } #} 
    ()
    )


(de gsl_matrix_complex_const_column (   m  j  view )
    ((-gptr- "const gsl_matrix_complex *")  m)
    ((-int-)  j)                         ;; const size_t -> int
    ((-gptr- "_gsl_vector_complex_const_view *") view)
    #{
    { _gsl_vector_complex_const_view tmp;
    tmp = gsl_matrix_complex_const_column ( $m ,$j );
    memcpy($view,&tmp,sizeof(_gsl_vector_complex_const_view));
    } #} 
    ()
    )


(de gsl_matrix_complex_const_diagonal (   m  view )
    ((-gptr- "const gsl_matrix_complex *")  m)
    ((-gptr- "_gsl_vector_complex_const_view *") view)
    #{
    { _gsl_vector_complex_const_view tmp;
    tmp = gsl_matrix_complex_const_diagonal ( $m );
    memcpy($view,&tmp,sizeof(_gsl_vector_complex_const_view));
    } #} 
    ()
    )


(de gsl_matrix_complex_const_subdiagonal (   m  k  view )
    ((-gptr- "const gsl_matrix_complex *")  m)
    ((-int-)  k)                         ;; const size_t -> int
    ((-gptr- "_gsl_vector_complex_const_view *") view)
    #{
    { _gsl_vector_complex_const_view tmp;
    tmp = gsl_matrix_complex_const_subdiagonal ( $m ,$k );
    memcpy($view,&tmp,sizeof(_gsl_vector_complex_const_view));
    } #} 
    ()
    )


(de gsl_matrix_complex_const_superdiagonal (   m  k  view )
    ((-gptr- "const gsl_matrix_complex *")  m)
    ((-int-)  k)                         ;; const size_t -> int
    ((-gptr- "_gsl_vector_complex_const_view *") view)
    #{
    { _gsl_vector_complex_const_view tmp;
    tmp = gsl_matrix_complex_const_superdiagonal ( $m ,$k );
    memcpy($view,&tmp,sizeof(_gsl_vector_complex_const_view));
    } #} 
    ()
    )


(de gsl_matrix_complex_const_view_array (   base  n1  n2  view )
    ((-gptr- "const double *")  base)
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-gptr- "_gsl_matrix_complex_const_view *") view)
    #{
    { _gsl_matrix_complex_const_view tmp;
    tmp = gsl_matrix_complex_const_view_array ( $base ,$n1 ,$n2 );
    memcpy($view,&tmp,sizeof(_gsl_matrix_complex_const_view));
    } #} 
    ()
    )


(de gsl_matrix_complex_const_view_array_with_tda (   base  n1  n2  tda  view )
    ((-gptr- "const double *")  base)
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-int-)  tda)                         ;; const size_t -> int
    ((-gptr- "_gsl_matrix_complex_const_view *") view)
    #{
    { _gsl_matrix_complex_const_view tmp;
    tmp = gsl_matrix_complex_const_view_array_with_tda ( $base ,$n1 ,$n2 ,$tda );
    memcpy($view,&tmp,sizeof(_gsl_matrix_complex_const_view));
    } #} 
    ()
    )


(de gsl_matrix_complex_const_view_vector (   v  n1  n2  view )
    ((-gptr- "const gsl_vector_complex *")  v)
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-gptr- "_gsl_matrix_complex_const_view *") view)
    #{
    { _gsl_matrix_complex_const_view tmp;
    tmp = gsl_matrix_complex_const_view_vector ( $v ,$n1 ,$n2 );
    memcpy($view,&tmp,sizeof(_gsl_matrix_complex_const_view));
    } #} 
    ()
    )


(de gsl_matrix_complex_const_view_vector_with_tda (   v  n1  n2  tda  view )
    ((-gptr- "const gsl_vector_complex *")  v)
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-int-)  tda)                         ;; const size_t -> int
    ((-gptr- "_gsl_matrix_complex_const_view *") view)
    #{
    { _gsl_matrix_complex_const_view tmp;
    tmp = gsl_matrix_complex_const_view_vector_with_tda ( $v ,$n1 ,$n2 ,$tda );
    memcpy($view,&tmp,sizeof(_gsl_matrix_complex_const_view));
    } #} 
    ()
    )




(de gsl_matrix_complex_get (   m  i  j   result)
    ((-gptr- "const gsl_matrix_complex *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-int-)  j)                         ;; const size_t -> int
    ((-gptr- "gsl_complex *") result)
    #{ {
    gsl_complex tmp;
    tmp = gsl_matrix_complex_get( $m ,$i ,$j );
    memcpy($result, &tmp, sizeof(gsl_complex));
    } #} 
    ()
    )

(de gsl_matrix_complex_set (   m  i  j  x  )
    ((-gptr- "gsl_matrix_complex *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-int-)  j)                         ;; const size_t -> int
    ((-gptr- "gsl_complex *")  x)
    #{  gsl_matrix_complex_set( $m ,$i ,$j ,*$x ); #} 
    ()
    )


(de gsl_matrix_complex_ptr (   m  i  j  )
    ((-gptr- "gsl_matrix_complex *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-int-)  j)                         ;; const size_t -> int
    (gptr #{  gsl_matrix_complex_ptr( $m ,$i ,$j ) #} )   ;; gsl_complex * -> gptr
    )

(de gsl_matrix_complex_const_ptr (   m  i  j  )
    ((-gptr- "const gsl_matrix_complex *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-int-)  j)                         ;; const size_t -> int
    (gptr #{  gsl_matrix_complex_const_ptr( $m ,$i ,$j )  #} )   ;; const gsl_complex * -> gptr
    )


(de gsl_matrix_complex_set_zero (   m  )
    ((-gptr- "gsl_matrix_complex *")  m)
    #{  gsl_matrix_complex_set_zero ( $m );  #} 
    ()
    )

(de gsl_matrix_complex_set_identity (   m  )
    ((-gptr- "gsl_matrix_complex *")  m)
    #{  gsl_matrix_complex_set_identity ( $m ); #} 
    ()
    )

(de gsl_matrix_complex_set_all (   m  x  )
    ((-gptr- "gsl_matrix_complex *")  m)
    ((-gptr- "gsl_complex *")  x)
    #{  gsl_matrix_complex_set_all ( $m ,*$x );  #} 
    ()
    )


(de gsl_matrix_complex_fread (   stream  m  )
    ((-gptr- "FILE *")  stream)
    ((-gptr- "gsl_matrix_complex *")  m)
    (int #{  gsl_matrix_complex_fread ( $stream ,$m )   #} )
    )

(de gsl_matrix_complex_fwrite (   stream  m  )
    ((-gptr- "FILE *")  stream)
    ((-gptr- "const gsl_matrix_complex *")  m)
    (int #{  gsl_matrix_complex_fwrite ( $stream ,$m )  #} )
    )

(de gsl_matrix_complex_fscanf (   stream  m  )
    ((-gptr- "FILE *")  stream)
    ((-gptr- "gsl_matrix_complex *")  m)
    (int #{  gsl_matrix_complex_fscanf ( $stream ,$m )  #} )
    )

(de gsl_matrix_complex_fprintf (   stream  m  format  )
    ((-gptr- "FILE *")  stream)
    ((-gptr- "const gsl_matrix_complex *")  m)
    ((-gptr- "const char *")  format)
    (int #{  gsl_matrix_complex_fprintf ( $stream ,$m ,$format ) #} )
    )


(de gsl_matrix_complex_memcpy (   dest  src  )
    ((-gptr- "gsl_matrix_complex *")  dest)
    ((-gptr- "const gsl_matrix_complex *")  src)
    (int #{  gsl_matrix_complex_memcpy( $dest ,$src ) #} )
    )

(de gsl_matrix_complex_swap (   m1  m2  )
    ((-gptr- "gsl_matrix_complex *")  m1)
    ((-gptr- "gsl_matrix_complex *")  m2)
    (int #{  gsl_matrix_complex_swap( $m1 ,$m2 )  #} )
    )


(de gsl_matrix_complex_swap_rows (   m  i  j  )
    ((-gptr- "gsl_matrix_complex *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-int-)  j)                         ;; const size_t -> int
    (int #{  gsl_matrix_complex_swap_rows( $m ,$i ,$j )  #} )
    )

(de gsl_matrix_complex_swap_columns (   m  i  j  )
    ((-gptr- "gsl_matrix_complex *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-int-)  j)                         ;; const size_t -> int
    (int #{  gsl_matrix_complex_swap_columns( $m ,$i ,$j ) #} )
    )

(de gsl_matrix_complex_swap_rowcol (   m  i  j  )
    ((-gptr- "gsl_matrix_complex *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-int-)  j)                         ;; const size_t -> int
    (int #{  gsl_matrix_complex_swap_rowcol( $m ,$i ,$j )  #} )
    )


(de gsl_matrix_complex_transpose (   m  )
    ((-gptr- "gsl_matrix_complex *")  m)
    (int #{  gsl_matrix_complex_transpose ( $m )  #} )
    )

(de gsl_matrix_complex_transpose_memcpy (   dest  src  )
    ((-gptr- "gsl_matrix_complex *")  dest)
    ((-gptr- "const gsl_matrix_complex *")  src)
    (int #{  gsl_matrix_complex_transpose_memcpy ( $dest ,$src ) #} )
    )


(de gsl_matrix_complex_isnull (   m  )
    ((-gptr- "const gsl_matrix_complex *")  m)
    (int #{  gsl_matrix_complex_isnull ( $m ) #} )
    )





(de gsl_matrix_complex_get_row (   v  m  i  )
    ((-gptr- "gsl_vector_complex *")  v)
    ((-gptr- "const gsl_matrix_complex *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    (int #{  gsl_matrix_complex_get_row( $v ,$m ,$i )  #} )
    )

(de gsl_matrix_complex_get_col (   v  m  j  )
    ((-gptr- "gsl_vector_complex *")  v)
    ((-gptr- "const gsl_matrix_complex *")  m)
    ((-int-)  j)                         ;; const size_t -> int
    (int #{  gsl_matrix_complex_get_col( $v ,$m ,$j ) #} )
    )

(de gsl_matrix_complex_set_row (   m  i  v  )
    ((-gptr- "gsl_matrix_complex *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-gptr- "const gsl_vector_complex *")  v)
    (int #{  gsl_matrix_complex_set_row( $m ,$i ,$v )  #} )
    )

(de gsl_matrix_complex_set_col (   m  j  v  )
    ((-gptr- "gsl_matrix_complex *")  m)
    ((-int-)  j)                         ;; const size_t -> int
    ((-gptr- "const gsl_vector_complex *")  v)
    (int #{  gsl_matrix_complex_set_col( $m ,$j ,$v ) #} )
    )






(de gsl_matrix_complex_float_alloc (   n1  n2  )
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    (gptr #{  gsl_matrix_complex_float_alloc ( $n1 ,$n2 )  #} )   ;; gsl_matrix_complex_float * -> gptr
    )


(de gsl_matrix_complex_float_calloc (   n1  n2  )
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    (gptr #{  gsl_matrix_complex_float_calloc ( $n1 ,$n2 ) #} )   ;; gsl_matrix_complex_float * -> gptr
    )


(de gsl_matrix_complex_float_alloc_from_block (   b  offset  n1  n2  d2  )
    ((-gptr- "gsl_block_complex_float *")  b)
    ((-int-)  offset)                         ;; const size_t -> int
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-int-)  d2)                         ;; const size_t -> int
    (gptr #{  gsl_matrix_complex_float_alloc_from_block ( $b ,$offset ,$n1 ,$n2 ,$d2 )  #} )   ;; gsl_matrix_complex_float * -> gptr
    )


(de gsl_matrix_complex_float_alloc_from_matrix (   b  k1  k2  n1  n2  )
    ((-gptr- "gsl_matrix_complex_float *")  b)
    ((-int-)  k1)                         ;; const size_t -> int
    ((-int-)  k2)                         ;; const size_t -> int
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    (gptr #{  gsl_matrix_complex_float_alloc_from_matrix ( $b ,$k1 ,$k2 ,$n1 ,$n2 ) #} )   ;; gsl_matrix_complex_float * -> gptr
    )


(de gsl_vector_complex_float_alloc_row_from_matrix (   m  i  )
    ((-gptr- "gsl_matrix_complex_float *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    (gptr #{  gsl_vector_complex_float_alloc_row_from_matrix ( $m ,$i )  #} )   ;; gsl_vector_complex_float * -> gptr
    )


(de gsl_vector_complex_float_alloc_col_from_matrix (   m  j  )
    ((-gptr- "gsl_matrix_complex_float *")  m)
    ((-int-)  j)                         ;; const size_t -> int
    (gptr #{  gsl_vector_complex_float_alloc_col_from_matrix ( $m ,$j ) #} )   ;; gsl_vector_complex_float * -> gptr
    )


(de gsl_matrix_complex_float_free (   m  )
    ((-gptr- "gsl_matrix_complex_float *")  m)
    #{  gsl_matrix_complex_float_free ( $m ); #} 
    ()
    )




(de gsl_matrix_complex_float_submatrix (   m  i  j  n1  n2  view )
    ((-gptr- "gsl_matrix_complex_float *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-int-)  j)                         ;; const size_t -> int
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-gptr- "_gsl_matrix_complex_float_view *") view)
    #{
    { _gsl_matrix_complex_float_view tmp;
    tmp = gsl_matrix_complex_float_submatrix ( $m ,$i ,$j ,$n1 ,$n2 );
    memcpy($view,&tmp,sizeof(_gsl_matrix_complex_float_view));
    } #} 
    ()
    )


(de gsl_matrix_complex_float_row (   m  i  view )
    ((-gptr- "gsl_matrix_complex_float *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-gptr- "_gsl_vector_complex_float_view *") view)
    #{
    { _gsl_vector_complex_float_view tmp;
    tmp = gsl_matrix_complex_float_row ( $m ,$i );
    memcpy($view,&tmp,sizeof(_gsl_vector_complex_float_view));
    } #} 
    ()
    )


(de gsl_matrix_complex_float_column (   m  j  view )
    ((-gptr- "gsl_matrix_complex_float *")  m)
    ((-int-)  j)                         ;; const size_t -> int
    ((-gptr- "_gsl_vector_complex_float_view *") view)
    #{
    { _gsl_vector_complex_float_view tmp;
    tmp = gsl_matrix_complex_float_column ( $m ,$j );
    memcpy($view,&tmp,sizeof(_gsl_vector_complex_float_view));
    } #} 
    ()
    )


(de gsl_matrix_complex_float_diagonal (   m  view )
    ((-gptr- "gsl_matrix_complex_float *")  m)
    ((-gptr- "_gsl_vector_complex_float_view *") view)
    #{
    { _gsl_vector_complex_float_view tmp;
    tmp = gsl_matrix_complex_float_diagonal ( $m );
    memcpy($view,&tmp,sizeof(_gsl_vector_complex_float_view));
    } #} 
    ()
    )


(de gsl_matrix_complex_float_subdiagonal (   m  k  view )
    ((-gptr- "gsl_matrix_complex_float *")  m)
    ((-int-)  k)                         ;; const size_t -> int
    ((-gptr- "_gsl_vector_complex_float_view *") view)
    #{
    { _gsl_vector_complex_float_view tmp;
    tmp = gsl_matrix_complex_float_subdiagonal ( $m ,$k );
    memcpy($view,&tmp,sizeof(_gsl_vector_complex_float_view));
    } #} 
    ()
    )


(de gsl_matrix_complex_float_superdiagonal (   m  k  view )
    ((-gptr- "gsl_matrix_complex_float *")  m)
    ((-int-)  k)                         ;; const size_t -> int
    ((-gptr- "_gsl_vector_complex_float_view *") view)
    #{
    { _gsl_vector_complex_float_view tmp;
    tmp = gsl_matrix_complex_float_superdiagonal ( $m ,$k );
    memcpy($view,&tmp,sizeof(_gsl_vector_complex_float_view));
    } #} 
    ()
    )


(de gsl_matrix_complex_float_view_array (   base  n1  n2  view )
    ((-gptr- "float *")  base)
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-gptr- "_gsl_matrix_complex_float_view *") view)
    #{
    { _gsl_matrix_complex_float_view tmp;
    tmp = gsl_matrix_complex_float_view_array ( $base ,$n1 ,$n2 );
    memcpy($view,&tmp,sizeof(_gsl_matrix_complex_float_view));
    } #} 
    ()
    )


(de gsl_matrix_complex_float_view_array_with_tda (   base  n1  n2  tda  view )
    ((-gptr- "float *")  base)
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-int-)  tda)                         ;; const size_t -> int
    ((-gptr- "_gsl_matrix_complex_float_view *") view)
    #{
    { _gsl_matrix_complex_float_view tmp;
    tmp = gsl_matrix_complex_float_view_array_with_tda ( $base ,$n1 ,$n2 ,$tda );
    memcpy($view,&tmp,sizeof(_gsl_matrix_complex_float_view));
    } #} 
    ()
    )


(de gsl_matrix_complex_float_view_vector (   v  n1  n2  view )
    ((-gptr- "gsl_vector_complex_float *")  v)
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-gptr- "_gsl_matrix_complex_float_view *") view)
    #{
    { _gsl_matrix_complex_float_view tmp;
    tmp = gsl_matrix_complex_float_view_vector ( $v ,$n1 ,$n2 );
    memcpy($view,&tmp,sizeof(_gsl_matrix_complex_float_view));
    } #} 
    ()
    )


(de gsl_matrix_complex_float_view_vector_with_tda (   v  n1  n2  tda  view )
    ((-gptr- "gsl_vector_complex_float *")  v)
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-int-)  tda)                         ;; const size_t -> int
    ((-gptr- "_gsl_matrix_complex_float_view *") view)
    #{
    { _gsl_matrix_complex_float_view tmp;
    tmp = gsl_matrix_complex_float_view_vector_with_tda ( $v ,$n1 ,$n2 ,$tda );
    memcpy($view,&tmp,sizeof(_gsl_matrix_complex_float_view));
    } #} 
    ()
    )



(de gsl_matrix_complex_float_const_submatrix (   m  i  j  n1  n2  view )
    ((-gptr- "const gsl_matrix_complex_float *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-int-)  j)                         ;; const size_t -> int
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-gptr- "_gsl_matrix_complex_float_const_view *") view)
    #{
    { _gsl_matrix_complex_float_const_view tmp;
    tmp = gsl_matrix_complex_float_const_submatrix ( $m ,$i ,$j ,$n1 ,$n2 );
    memcpy($view,&tmp,sizeof(_gsl_matrix_complex_float_const_view));
    } #} 
    ()
    )


(de gsl_matrix_complex_float_const_row (   m  i  view )
    ((-gptr- "const gsl_matrix_complex_float *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-gptr- "_gsl_vector_complex_float_const_view *") view)
    #{
    { _gsl_vector_complex_float_const_view tmp;
    tmp = gsl_matrix_complex_float_const_row ( $m ,$i );
    memcpy($view,&tmp,sizeof(_gsl_vector_complex_float_const_view));
    } #} 
    ()
    )


(de gsl_matrix_complex_float_const_column (   m  j  view )
    ((-gptr- "const gsl_matrix_complex_float *")  m)
    ((-int-)  j)                         ;; const size_t -> int
    ((-gptr- "_gsl_vector_complex_float_const_view *") view)
    #{
    { _gsl_vector_complex_float_const_view tmp;
    tmp = gsl_matrix_complex_float_const_column ( $m ,$j );
    memcpy($view,&tmp,sizeof(_gsl_vector_complex_float_const_view));
    } #} 
    ()
    )


(de gsl_matrix_complex_float_const_diagonal (   m  view )
    ((-gptr- "const gsl_matrix_complex_float *")  m)
    ((-gptr- "_gsl_vector_complex_float_const_view *") view)
    #{
    { _gsl_vector_complex_float_const_view tmp;
    tmp = gsl_matrix_complex_float_const_diagonal ( $m );
    memcpy($view,&tmp,sizeof(_gsl_vector_complex_float_const_view));
    } #} 
    ()
    )


(de gsl_matrix_complex_float_const_subdiagonal (   m  k  view )
    ((-gptr- "const gsl_matrix_complex_float *")  m)
    ((-int-)  k)                         ;; const size_t -> int
    ((-gptr- "_gsl_vector_complex_float_const_view *") view)
    #{
    { _gsl_vector_complex_float_const_view tmp;
    tmp = gsl_matrix_complex_float_const_subdiagonal ( $m ,$k );
    memcpy($view,&tmp,sizeof(_gsl_vector_complex_float_const_view));
    } #} 
    ()
    )


(de gsl_matrix_complex_float_const_superdiagonal (   m  k  view )
    ((-gptr- "const gsl_matrix_complex_float *")  m)
    ((-int-)  k)                         ;; const size_t -> int
    ((-gptr- "_gsl_vector_complex_float_const_view *") view)
    #{
    { _gsl_vector_complex_float_const_view tmp;
    tmp = gsl_matrix_complex_float_const_superdiagonal ( $m ,$k );
    memcpy($view,&tmp,sizeof(_gsl_vector_complex_float_const_view));
    } #} 
    ()
    )


(de gsl_matrix_complex_float_const_view_array (   base  n1  n2  view )
    ((-gptr- "const float *")  base)
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-gptr- "_gsl_matrix_complex_float_const_view *") view)
    #{
    { _gsl_matrix_complex_float_const_view tmp;
    tmp = gsl_matrix_complex_float_const_view_array ( $base ,$n1 ,$n2 );
    memcpy($view,&tmp,sizeof(_gsl_matrix_complex_float_const_view));
    } #} 
    ()
    )


(de gsl_matrix_complex_float_const_view_array_with_tda (   base  n1  n2  tda  view )
    ((-gptr- "const float *")  base)
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-int-)  tda)                         ;; const size_t -> int
    ((-gptr- "_gsl_matrix_complex_float_const_view *") view)
    #{
    { _gsl_matrix_complex_float_const_view tmp;
    tmp = gsl_matrix_complex_float_const_view_array_with_tda ( $base ,$n1 ,$n2 ,$tda );
    memcpy($view,&tmp,sizeof(_gsl_matrix_complex_float_const_view));
    } #} 
    ()
    )


(de gsl_matrix_complex_float_const_view_vector (   v  n1  n2  view )
    ((-gptr- "const gsl_vector_complex_float *")  v)
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-gptr- "_gsl_matrix_complex_float_const_view *") view)
    #{
    { _gsl_matrix_complex_float_const_view tmp;
    tmp = gsl_matrix_complex_float_const_view_vector ( $v ,$n1 ,$n2 );
    memcpy($view,&tmp,sizeof(_gsl_matrix_complex_float_const_view));
    } #} 
    ()
    )


(de gsl_matrix_complex_float_const_view_vector_with_tda (   v  n1  n2  tda  view )
    ((-gptr- "const gsl_vector_complex_float *")  v)
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-int-)  tda)                         ;; const size_t -> int
    ((-gptr- "_gsl_matrix_complex_float_const_view *") view)
    #{
    { _gsl_matrix_complex_float_const_view tmp;
    tmp = gsl_matrix_complex_float_const_view_vector_with_tda ( $v ,$n1 ,$n2 ,$tda );
    memcpy($view,&tmp,sizeof(_gsl_matrix_complex_float_const_view));
    } #} 
    ()
    )




(de gsl_matrix_complex_float_get (   m  i  j  result)
    ((-gptr- "const gsl_matrix_complex_float *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-int-)  j)                         ;; const size_t -> int
    ((-gptr- "gsl_complex_float *") result)
    #{ {
    gsl_complex_float tmp;
    tmp = gsl_matrix_complex_float_get( $m ,$i ,$j );
    memcpy($result, &tmp, sizeof(gsl_complex_float));
    } #} 
    ()
    )

(de gsl_matrix_complex_float_set (   m  i  j  x  )
    ((-gptr- "gsl_matrix_complex_float *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-int-)  j)                         ;; const size_t -> int
    ((-gptr- "gsl_complex_float *")  x)
    #{  gsl_matrix_complex_float_set( $m ,$i ,$j ,*$x ); #} 
    ()
    )


(de gsl_matrix_complex_float_ptr (   m  i  j  )
    ((-gptr- "gsl_matrix_complex_float *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-int-)  j)                         ;; const size_t -> int
    (gptr #{  gsl_matrix_complex_float_ptr( $m ,$i ,$j ) #} )   ;; gsl_complex_float * -> gptr
    )

(de gsl_matrix_complex_float_const_ptr (   m  i  j  )
    ((-gptr- "const gsl_matrix_complex_float *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-int-)  j)                         ;; const size_t -> int
    (gptr #{  gsl_matrix_complex_float_const_ptr( $m ,$i ,$j )  #} )   ;; const gsl_complex_float * -> gptr
    )


(de gsl_matrix_complex_float_set_zero (   m  )
    ((-gptr- "gsl_matrix_complex_float *")  m)
    #{  gsl_matrix_complex_float_set_zero ( $m );  #} 
    ()
    )

(de gsl_matrix_complex_float_set_identity (   m  )
    ((-gptr- "gsl_matrix_complex_float *")  m)
    #{  gsl_matrix_complex_float_set_identity ( $m ); #} 
    ()
    )

(de gsl_matrix_complex_float_set_all (   m  x  )
    ((-gptr- "gsl_matrix_complex_float *")  m)
    ((-gptr- "gsl_complex_float *")  x)
    #{  gsl_matrix_complex_float_set_all ( $m ,*$x );  #} 
    ()
    )


(de gsl_matrix_complex_float_fread (   stream  m  )
    ((-gptr- "FILE *")  stream)
    ((-gptr- "gsl_matrix_complex_float *")  m)
    (int #{  gsl_matrix_complex_float_fread ( $stream ,$m )   #} )
    )

(de gsl_matrix_complex_float_fwrite (   stream  m  )
    ((-gptr- "FILE *")  stream)
    ((-gptr- "const gsl_matrix_complex_float *")  m)
    (int #{  gsl_matrix_complex_float_fwrite ( $stream ,$m )  #} )
    )

(de gsl_matrix_complex_float_fscanf (   stream  m  )
    ((-gptr- "FILE *")  stream)
    ((-gptr- "gsl_matrix_complex_float *")  m)
    (int #{  gsl_matrix_complex_float_fscanf ( $stream ,$m )  #} )
    )

(de gsl_matrix_complex_float_fprintf (   stream  m  format  )
    ((-gptr- "FILE *")  stream)
    ((-gptr- "const gsl_matrix_complex_float *")  m)
    ((-gptr- "const char *")  format)
    (int #{  gsl_matrix_complex_float_fprintf ( $stream ,$m ,$format ) #} )
    )


(de gsl_matrix_complex_float_memcpy (   dest  src  )
    ((-gptr- "gsl_matrix_complex_float *")  dest)
    ((-gptr- "const gsl_matrix_complex_float *")  src)
    (int #{  gsl_matrix_complex_float_memcpy( $dest ,$src ) #} )
    )

(de gsl_matrix_complex_float_swap (   m1  m2  )
    ((-gptr- "gsl_matrix_complex_float *")  m1)
    ((-gptr- "gsl_matrix_complex_float *")  m2)
    (int #{  gsl_matrix_complex_float_swap( $m1 ,$m2 )  #} )
    )


(de gsl_matrix_complex_float_swap_rows (   m  i  j  )
    ((-gptr- "gsl_matrix_complex_float *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-int-)  j)                         ;; const size_t -> int
    (int #{  gsl_matrix_complex_float_swap_rows( $m ,$i ,$j )  #} )
    )

(de gsl_matrix_complex_float_swap_columns (   m  i  j  )
    ((-gptr- "gsl_matrix_complex_float *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-int-)  j)                         ;; const size_t -> int
    (int #{  gsl_matrix_complex_float_swap_columns( $m ,$i ,$j ) #} )
    )

(de gsl_matrix_complex_float_swap_rowcol (   m  i  j  )
    ((-gptr- "gsl_matrix_complex_float *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-int-)  j)                         ;; const size_t -> int
    (int #{  gsl_matrix_complex_float_swap_rowcol( $m ,$i ,$j )  #} )
    )


(de gsl_matrix_complex_float_transpose (   m  )
    ((-gptr- "gsl_matrix_complex_float *")  m)
    (int #{  gsl_matrix_complex_float_transpose ( $m )  #} )
    )

(de gsl_matrix_complex_float_transpose_memcpy (   dest  src  )
    ((-gptr- "gsl_matrix_complex_float *")  dest)
    ((-gptr- "const gsl_matrix_complex_float *")  src)
    (int #{  gsl_matrix_complex_float_transpose_memcpy ( $dest ,$src ) #} )
    )


(de gsl_matrix_complex_float_isnull (   m  )
    ((-gptr- "const gsl_matrix_complex_float *")  m)
    (int #{  gsl_matrix_complex_float_isnull ( $m ) #} )
    )





(de gsl_matrix_complex_float_get_row (   v  m  i  )
    ((-gptr- "gsl_vector_complex_float *")  v)
    ((-gptr- "const gsl_matrix_complex_float *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    (int #{  gsl_matrix_complex_float_get_row( $v ,$m ,$i )  #} )
    )

(de gsl_matrix_complex_float_get_col (   v  m  j  )
    ((-gptr- "gsl_vector_complex_float *")  v)
    ((-gptr- "const gsl_matrix_complex_float *")  m)
    ((-int-)  j)                         ;; const size_t -> int
    (int #{  gsl_matrix_complex_float_get_col( $v ,$m ,$j ) #} )
    )

(de gsl_matrix_complex_float_set_row (   m  i  v  )
    ((-gptr- "gsl_matrix_complex_float *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-gptr- "const gsl_vector_complex_float *")  v)
    (int #{  gsl_matrix_complex_float_set_row( $m ,$i ,$v )  #} )
    )

(de gsl_matrix_complex_float_set_col (   m  j  v  )
    ((-gptr- "gsl_matrix_complex_float *")  m)
    ((-int-)  j)                         ;; const size_t -> int
    ((-gptr- "const gsl_vector_complex_float *")  v)
    (int #{  gsl_matrix_complex_float_set_col( $m ,$j ,$v ) #} )
    )





(de gsl_matrix_complex_long_double_alloc (   n1  n2  )
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    (gptr #{  gsl_matrix_complex_long_double_alloc ( $n1 ,$n2 ) #} )   ;; gsl_matrix_complex_long_double * -> gptr
    )


(de gsl_matrix_complex_long_double_calloc (   n1  n2  )
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    (gptr #{  gsl_matrix_complex_long_double_calloc ( $n1 ,$n2 )  #} )   ;; gsl_matrix_complex_long_double * -> gptr
    )


(de gsl_matrix_complex_long_double_alloc_from_block (   b  offset  n1  n2  d2  )
    ((-gptr- "gsl_block_complex_long_double *")  b)
    ((-int-)  offset)                         ;; const size_t -> int
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-int-)  d2)                         ;; const size_t -> int
    (gptr #{  gsl_matrix_complex_long_double_alloc_from_block ( $b ,$offset ,$n1 ,$n2 ,$d2 ) #} )   ;; gsl_matrix_complex_long_double * -> gptr
    )


(de gsl_matrix_complex_long_double_alloc_from_matrix (   b  k1  k2  n1  n2  )
    ((-gptr- "gsl_matrix_complex_long_double *")  b)
    ((-int-)  k1)                         ;; const size_t -> int
    ((-int-)  k2)                         ;; const size_t -> int
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    (gptr  #{  gsl_matrix_complex_long_double_alloc_from_matrix ( $b ,$k1 ,$k2 ,$n1 ,$n2 )  #} )   ;; gsl_matrix_complex_long_double * -> gptr
    )


(de gsl_vector_complex_long_double_alloc_row_from_matrix (   m  i  )
    ((-gptr- "gsl_matrix_complex_long_double *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    (gptr   #{  gsl_vector_complex_long_double_alloc_row_from_matrix ( $m ,$i ) #} )   ;; gsl_vector_complex_long_double * -> gptr
    )


(de gsl_vector_complex_long_double_alloc_col_from_matrix (   m  j  )
    ((-gptr- "gsl_matrix_complex_long_double *")  m)
    ((-int-)  j)                         ;; const size_t -> int
    (gptr  #{  gsl_vector_complex_long_double_alloc_col_from_matrix ( $m ,$j )  #} )   ;; gsl_vector_complex_long_double * -> gptr
    )


(de gsl_matrix_complex_long_double_free (   m  )
    ((-gptr- "gsl_matrix_complex_long_double *")  m)
    #{  gsl_matrix_complex_long_double_free ( $m );  #} 
    ()
    )




(de gsl_matrix_complex_long_double_submatrix (   m  i  j  n1  n2  view )
    ((-gptr- "gsl_matrix_complex_long_double *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-int-)  j)                         ;; const size_t -> int
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-gptr- "_gsl_matrix_complex_long_double_view *") view)
    #{
    { _gsl_matrix_complex_long_double_view tmp;
    tmp = gsl_matrix_complex_long_double_submatrix ( $m ,$i ,$j ,$n1 ,$n2 );
    memcpy($view,&tmp,sizeof(_gsl_matrix_complex_long_double_view));
    } #} 
    ()
    )


(de gsl_matrix_complex_long_double_row (   m  i  view )
    ((-gptr- "gsl_matrix_complex_long_double *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-gptr- "_gsl_vector_complex_long_double_view *") view)
    #{
    { _gsl_vector_complex_long_double_view tmp;
    tmp = gsl_matrix_complex_long_double_row ( $m ,$i );
    memcpy($view,&tmp,sizeof(_gsl_vector_complex_long_double_view));
    } #} 
    ()
    )


(de gsl_matrix_complex_long_double_column (   m  j  view )
    ((-gptr- "gsl_matrix_complex_long_double *")  m)
    ((-int-)  j)                         ;; const size_t -> int
    ((-gptr- "_gsl_vector_complex_long_double_view *") view)
    #{
    { _gsl_vector_complex_long_double_view tmp;
    tmp = gsl_matrix_complex_long_double_column ( $m ,$j );
    memcpy($view,&tmp,sizeof(_gsl_vector_complex_long_double_view));
    } #} 
    ()
    )


(de gsl_matrix_complex_long_double_diagonal (   m  view )
    ((-gptr- "gsl_matrix_complex_long_double *")  m)
    ((-gptr- "_gsl_vector_complex_long_double_view *") view)
    #{
    { _gsl_vector_complex_long_double_view tmp;
    tmp = gsl_matrix_complex_long_double_diagonal ( $m );
    memcpy($view,&tmp,sizeof(_gsl_vector_complex_long_double_view));
    } #} 
    ()
    )


(de gsl_matrix_complex_long_double_subdiagonal (   m  k  view )
    ((-gptr- "gsl_matrix_complex_long_double *")  m)
    ((-int-)  k)                         ;; const size_t -> int
    ((-gptr- "_gsl_vector_complex_long_double_view *") view)
    #{
    { _gsl_vector_complex_long_double_view tmp;
    tmp = gsl_matrix_complex_long_double_subdiagonal ( $m ,$k );
    memcpy($view,&tmp,sizeof(_gsl_vector_complex_long_double_view));
    } #} 
    ()
    )


(de gsl_matrix_complex_long_double_superdiagonal (   m  k  view )
    ((-gptr- "gsl_matrix_complex_long_double *")  m)
    ((-int-)  k)                         ;; const size_t -> int
    ((-gptr- "_gsl_vector_complex_long_double_view *") view)
    #{
    { _gsl_vector_complex_long_double_view tmp;
    tmp = gsl_matrix_complex_long_double_superdiagonal ( $m ,$k );
    memcpy($view,&tmp,sizeof(_gsl_vector_complex_long_double_view));
    } #} 
    ()
    )


(de gsl_matrix_complex_long_double_view_array (   base  n1  n2  view )
    ((-gptr- "long double *")  base)
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-gptr- "_gsl_matrix_complex_long_double_view *") view)
    #{
    { _gsl_matrix_complex_long_double_view tmp;
    tmp = gsl_matrix_complex_long_double_view_array ( $base ,$n1 ,$n2 );
    memcpy($view,&tmp,sizeof(_gsl_matrix_complex_long_double_view));
    } #} 
    ()
    )


(de gsl_matrix_complex_long_double_view_array_with_tda (   base  n1  n2  tda  view )
    ((-gptr- "long double *")  base)
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-int-)  tda)                         ;; const size_t -> int
    ((-gptr- "_gsl_matrix_complex_long_double_view *") view)
    #{
    { _gsl_matrix_complex_long_double_view tmp;
    tmp = gsl_matrix_complex_long_double_view_array_with_tda ( $base ,$n1 ,$n2 ,$tda );
    memcpy($view,&tmp,sizeof(_gsl_matrix_complex_long_double_view));
    } #} 
    ()
    )


(de gsl_matrix_complex_long_double_view_vector (   v  n1  n2  view )
    ((-gptr- "gsl_vector_complex_long_double *")  v)
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-gptr- "_gsl_matrix_complex_long_double_view *") view)
    #{
    { _gsl_matrix_complex_long_double_view tmp;
    tmp = gsl_matrix_complex_long_double_view_vector ( $v ,$n1 ,$n2 );
    memcpy($view,&tmp,sizeof(_gsl_matrix_complex_long_double_view));
    } #} 
    ()
    )


(de gsl_matrix_complex_long_double_view_vector_with_tda (   v  n1  n2  tda  view )
    ((-gptr- "gsl_vector_complex_long_double *")  v)
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-int-)  tda)                         ;; const size_t -> int
    ((-gptr- "_gsl_matrix_complex_long_double_view *") view)
    #{
    { _gsl_matrix_complex_long_double_view tmp;
    tmp = gsl_matrix_complex_long_double_view_vector_with_tda ( $v ,$n1 ,$n2 ,$tda );
    memcpy($view,&tmp,sizeof(_gsl_matrix_complex_long_double_view));
    } #} 
    ()
    )



(de gsl_matrix_complex_long_double_const_submatrix (   m  i  j  n1  n2  view )
    ((-gptr- "const gsl_matrix_complex_long_double *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-int-)  j)                         ;; const size_t -> int
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-gptr- "_gsl_matrix_complex_long_double_const_view *") view)
    #{
    { _gsl_matrix_complex_long_double_const_view tmp;
    tmp = gsl_matrix_complex_long_double_const_submatrix ( $m ,$i ,$j ,$n1 ,$n2 );
    memcpy($view,&tmp,sizeof(_gsl_matrix_complex_long_double_const_view));
    } #} 
    ()
    )


(de gsl_matrix_complex_long_double_const_row (   m  i  view )
    ((-gptr- "const gsl_matrix_complex_long_double *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-gptr- "_gsl_vector_complex_long_double_const_view *") view)
    #{
    { _gsl_vector_complex_long_double_const_view tmp;
    tmp = gsl_matrix_complex_long_double_const_row ( $m ,$i );
    memcpy($view,&tmp,sizeof(_gsl_vector_complex_long_double_const_view));
    } #} 
    ()
    )


(de gsl_matrix_complex_long_double_const_column (   m  j  view )
    ((-gptr- "const gsl_matrix_complex_long_double *")  m)
    ((-int-)  j)                         ;; const size_t -> int
    ((-gptr- "_gsl_vector_complex_long_double_const_view *") view)
    #{
    { _gsl_vector_complex_long_double_const_view tmp;
    tmp = gsl_matrix_complex_long_double_const_column ( $m ,$j );
    memcpy($view,&tmp,sizeof(_gsl_vector_complex_long_double_const_view));
    } #} 
    ()
    )


(de gsl_matrix_complex_long_double_const_diagonal (   m  view )
    ((-gptr- "const gsl_matrix_complex_long_double *")  m)
    ((-gptr- "_gsl_vector_complex_long_double_const_view *") view)
    #{
    { _gsl_vector_complex_long_double_const_view tmp;
    tmp = gsl_matrix_complex_long_double_const_diagonal ( $m );
    memcpy($view,&tmp,sizeof(_gsl_vector_complex_long_double_const_view));
    } #} 
    ()
    )


(de gsl_matrix_complex_long_double_const_subdiagonal (   m  k  view )
    ((-gptr- "const gsl_matrix_complex_long_double *")  m)
    ((-int-)  k)                         ;; const size_t -> int
    ((-gptr- "_gsl_vector_complex_long_double_const_view *") view)
    #{
    { _gsl_vector_complex_long_double_const_view tmp;
    tmp = gsl_matrix_complex_long_double_const_subdiagonal ( $m ,$k );
    memcpy($view,&tmp,sizeof(_gsl_vector_complex_long_double_const_view));
    } #} 
    ()
    )


(de gsl_matrix_complex_long_double_const_superdiagonal (   m  k  view )
    ((-gptr- "const gsl_matrix_complex_long_double *")  m)
    ((-int-)  k)                         ;; const size_t -> int
    ((-gptr- "_gsl_vector_complex_long_double_const_view *") view)
    #{
    { _gsl_vector_complex_long_double_const_view tmp;
    tmp = gsl_matrix_complex_long_double_const_superdiagonal ( $m ,$k );
    memcpy($view,&tmp,sizeof(_gsl_vector_complex_long_double_const_view));
    } #} 
    ()
    )


(de gsl_matrix_complex_long_double_const_view_array (   base  n1  n2  view )
    ((-gptr- "const long double *")  base)
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-gptr- "_gsl_matrix_complex_long_double_const_view *") view)
    #{
    { _gsl_matrix_complex_long_double_const_view tmp;
    tmp = gsl_matrix_complex_long_double_const_view_array ( $base ,$n1 ,$n2 );
    memcpy($view,&tmp,sizeof(_gsl_matrix_complex_long_double_const_view));
    } #} 
    ()
    )


(de gsl_matrix_complex_long_double_const_view_array_with_tda (   base  n1  n2  tda  view )
    ((-gptr- "const long double *")  base)
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-int-)  tda)                         ;; const size_t -> int
    ((-gptr- "_gsl_matrix_complex_long_double_const_view *") view)
    #{
    { _gsl_matrix_complex_long_double_const_view tmp;
    tmp = gsl_matrix_complex_long_double_const_view_array_with_tda ( $base ,$n1 ,$n2 ,$tda );
    memcpy($view,&tmp,sizeof(_gsl_matrix_complex_long_double_const_view));
    } #} 
    ()
    )


(de gsl_matrix_complex_long_double_const_view_vector (   v  n1  n2  view )
    ((-gptr- "const gsl_vector_complex_long_double *")  v)
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-gptr- "_gsl_matrix_complex_long_double_const_view *") view)
    #{
    { _gsl_matrix_complex_long_double_const_view tmp;
    tmp = gsl_matrix_complex_long_double_const_view_vector ( $v ,$n1 ,$n2 );
    memcpy($view,&tmp,sizeof(_gsl_matrix_complex_long_double_const_view));
    } #} 
    ()
    )


(de gsl_matrix_complex_long_double_const_view_vector_with_tda (   v  n1  n2  tda  view )
    ((-gptr- "const gsl_vector_complex_long_double *")  v)
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-int-)  tda)                         ;; const size_t -> int
    ((-gptr- "_gsl_matrix_complex_long_double_const_view *") view)
    #{
    { _gsl_matrix_complex_long_double_const_view tmp;
    tmp = gsl_matrix_complex_long_double_const_view_vector_with_tda ( $v ,$n1 ,$n2 ,$tda );
    memcpy($view,&tmp,sizeof(_gsl_matrix_complex_long_double_const_view));
    } #} 
    ()
    )




(de gsl_matrix_complex_long_double_get (   m  i  j  result)
    ((-gptr- "const gsl_matrix_complex_long_double *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-int-)  j)                         ;; const size_t -> int
    ((-gptr- "gsl_complex_long_double *") result)
    #{ {
    gsl_complex_long_double tmp;
    tmp = gsl_matrix_complex_long_double_get( $m ,$i ,$j );
    memcpy($result, &tmp, sizeof(gsl_complex_long_double));
    } #} 
    ()
    )

(de gsl_matrix_complex_long_double_set (   m  i  j  x  )
    ((-gptr- "gsl_matrix_complex_long_double *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-int-)  j)                         ;; const size_t -> int
    ((-gptr- "gsl_complex_long_double *")  x)
    #{  gsl_matrix_complex_long_double_set( $m ,$i ,$j ,*$x );  #} 
    ()
    )


(de gsl_matrix_complex_long_double_ptr (   m  i  j  )
    ((-gptr- "gsl_matrix_complex_long_double *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-int-)  j)                         ;; const size_t -> int
    (gptr #{  gsl_matrix_complex_long_double_ptr( $m ,$i ,$j )  #} )   ;; gsl_complex_long_double * -> gptr
    )

(de gsl_matrix_complex_long_double_const_ptr (   m  i  j  )
    ((-gptr- "const gsl_matrix_complex_long_double *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-int-)  j)                         ;; const size_t -> int
    (gptr #{  gsl_matrix_complex_long_double_const_ptr( $m ,$i ,$j ) #} )   ;; const gsl_complex_long_double * -> gptr
    )


(de gsl_matrix_complex_long_double_set_zero (   m  )
    ((-gptr- "gsl_matrix_complex_long_double *")  m)
    #{  gsl_matrix_complex_long_double_set_zero ( $m ); #} 
    ()
    )

(de gsl_matrix_complex_long_double_set_identity (   m  )
    ((-gptr- "gsl_matrix_complex_long_double *")  m)
    #{  gsl_matrix_complex_long_double_set_identity ( $m );  #} 
    ()
    )

(de gsl_matrix_complex_long_double_set_all (   m  x  )
    ((-gptr- "gsl_matrix_complex_long_double *")  m)
    ((-gptr- "gsl_complex_long_double *")  x)
    #{  gsl_matrix_complex_long_double_set_all ( $m ,*$x ); #} 
    ()
    )


(de gsl_matrix_complex_long_double_fread (   stream  m  )
    ((-gptr- "FILE *")  stream)
    ((-gptr- "gsl_matrix_complex_long_double *")  m)
    (int #{  gsl_matrix_complex_long_double_fread ( $stream ,$m )  #} )
    )

(de gsl_matrix_complex_long_double_fwrite (   stream  m  )
    ((-gptr- "FILE *")  stream)
    ((-gptr- "const gsl_matrix_complex_long_double *")  m)
    (int #{  gsl_matrix_complex_long_double_fwrite ( $stream ,$m )   #} )
    )

(de gsl_matrix_complex_long_double_fscanf (   stream  m  )
    ((-gptr- "FILE *")  stream)
    ((-gptr- "gsl_matrix_complex_long_double *")  m)
    (int #{  gsl_matrix_complex_long_double_fscanf ( $stream ,$m ) #} )
    )

(de gsl_matrix_complex_long_double_fprintf (   stream  m  format  )
    ((-gptr- "FILE *")  stream)
    ((-gptr- "const gsl_matrix_complex_long_double *")  m)
    ((-gptr- "const char *")  format)
    (int #{  gsl_matrix_complex_long_double_fprintf ( $stream ,$m ,$format )  #} )
    )


(de gsl_matrix_complex_long_double_memcpy (   dest  src  )
    ((-gptr- "gsl_matrix_complex_long_double *")  dest)
    ((-gptr- "const gsl_matrix_complex_long_double *")  src)
    (int #{  gsl_matrix_complex_long_double_memcpy( $dest ,$src )  #} )
    )

(de gsl_matrix_complex_long_double_swap (   m1  m2  )
    ((-gptr- "gsl_matrix_complex_long_double *")  m1)
    ((-gptr- "gsl_matrix_complex_long_double *")  m2)
    (int #{  gsl_matrix_complex_long_double_swap( $m1 ,$m2 ) #} )
    )


(de gsl_matrix_complex_long_double_swap_rows (   m  i  j  )
    ((-gptr- "gsl_matrix_complex_long_double *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-int-)  j)                         ;; const size_t -> int
    (int #{  gsl_matrix_complex_long_double_swap_rows( $m ,$i ,$j ) #} )
    )

(de gsl_matrix_complex_long_double_swap_columns (   m  i  j  )
    ((-gptr- "gsl_matrix_complex_long_double *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-int-)  j)                         ;; const size_t -> int
    (int #{  gsl_matrix_complex_long_double_swap_columns( $m ,$i ,$j )  #} )
    )

(de gsl_matrix_complex_long_double_swap_rowcol (   m  i  j  )
    ((-gptr- "gsl_matrix_complex_long_double *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-int-)  j)                         ;; const size_t -> int
    (int #{  gsl_matrix_complex_long_double_swap_rowcol( $m ,$i ,$j ) #} )
    )


(de gsl_matrix_complex_long_double_transpose (   m  )
    ((-gptr- "gsl_matrix_complex_long_double *")  m)
    (int #{  gsl_matrix_complex_long_double_transpose ( $m ) #} )
    )

(de gsl_matrix_complex_long_double_transpose_memcpy (   dest  src  )
    ((-gptr- "gsl_matrix_complex_long_double *")  dest)
    ((-gptr- "const gsl_matrix_complex_long_double *")  src)
    (int #{  gsl_matrix_complex_long_double_transpose_memcpy ( $dest ,$src )  #} )
    )


(de gsl_matrix_complex_long_double_isnull (   m  )
    ((-gptr- "const gsl_matrix_complex_long_double *")  m)
    (int #{  gsl_matrix_complex_long_double_isnull ( $m )  #} )
    )





(de gsl_matrix_complex_long_double_get_row (   v  m  i  )
    ((-gptr- "gsl_vector_complex_long_double *")  v)
    ((-gptr- "const gsl_matrix_complex_long_double *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    (int #{  gsl_matrix_complex_long_double_get_row( $v ,$m ,$i ) #} )
    )

(de gsl_matrix_complex_long_double_get_col (   v  m  j  )
    ((-gptr- "gsl_vector_complex_long_double *")  v)
    ((-gptr- "const gsl_matrix_complex_long_double *")  m)
    ((-int-)  j)                         ;; const size_t -> int
    (int #{  gsl_matrix_complex_long_double_get_col( $v ,$m ,$j )  #} )
    )

(de gsl_matrix_complex_long_double_set_row (   m  i  v  )
    ((-gptr- "gsl_matrix_complex_long_double *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-gptr- "const gsl_vector_complex_long_double *")  v)
    (int #{  gsl_matrix_complex_long_double_set_row( $m ,$i ,$v ) #} )
    )

(de gsl_matrix_complex_long_double_set_col (   m  j  v  )
    ((-gptr- "gsl_matrix_complex_long_double *")  m)
    ((-int-)  j)                         ;; const size_t -> int
    ((-gptr- "const gsl_vector_complex_long_double *")  v)
    (int #{  gsl_matrix_complex_long_double_set_col( $m ,$j ,$v )  #} )
    )




(de gsl_matrix_alloc (   n1  n2  )
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    (gptr   #{  gsl_matrix_alloc ( $n1 ,$n2 ) #} )   ;; gsl_matrix * -> gptr
    )


(de gsl_matrix_calloc (   n1  n2  )
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    (gptr  #{  gsl_matrix_calloc ( $n1 ,$n2 )  #} )   ;; gsl_matrix * -> gptr
    )


(de gsl_matrix_alloc_from_block (   b  offset  n1  n2  d2  )
    ((-gptr- "gsl_block *")  b)
    ((-int-)  offset)                         ;; const size_t -> int
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-int-)  d2)                         ;; const size_t -> int
    (gptr   #{  gsl_matrix_alloc_from_block ( $b ,$offset ,$n1 ,$n2 ,$d2 ) #} )   ;; gsl_matrix * -> gptr
    )


(de gsl_matrix_alloc_from_matrix (   m  k1  k2  n1  n2  )
    ((-gptr- "gsl_matrix *")  m)
    ((-int-)  k1)                         ;; const size_t -> int
    ((-int-)  k2)                         ;; const size_t -> int
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    (gptr  #{  gsl_matrix_alloc_from_matrix ( $m ,$k1 ,$k2 ,$n1 ,$n2 )  #} )   ;; gsl_matrix * -> gptr
    )


(de gsl_vector_alloc_row_from_matrix (   m  i  )
    ((-gptr- "gsl_matrix *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    (gptr   #{  gsl_vector_alloc_row_from_matrix ( $m ,$i ) #} )   ;; gsl_vector * -> gptr
    )


(de gsl_vector_alloc_col_from_matrix (   m  j  )
    ((-gptr- "gsl_matrix *")  m)
    ((-int-)  j)                         ;; const size_t -> int
    (gptr  #{  gsl_vector_alloc_col_from_matrix ( $m ,$j )  #} )   ;; gsl_vector * -> gptr
    )


(de gsl_matrix_free (   m  )
    ((-gptr- "gsl_matrix *")  m)
    #{  gsl_matrix_free ( $m );  #} 
    ()
    )




(de gsl_matrix_submatrix (   m  i  j  n1  n2  view )
    ((-gptr- "gsl_matrix *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-int-)  j)                         ;; const size_t -> int
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-gptr- "_gsl_matrix_view *") view)
    #{
    { _gsl_matrix_view tmp;
    tmp = gsl_matrix_submatrix ( $m ,$i ,$j ,$n1 ,$n2 );
    memcpy($view,&tmp,sizeof(_gsl_matrix_view));
    } #} 
    ()
    )


(de gsl_matrix_row (   m  i  view )
    ((-gptr- "gsl_matrix *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-gptr- "_gsl_vector_view *") view)
    #{
    { _gsl_vector_view tmp;
    tmp = gsl_matrix_row ( $m ,$i );
    memcpy($view,&tmp,sizeof(_gsl_vector_view));
    } #} 
    ()
    )


(de gsl_matrix_column (   m  j  view )
    ((-gptr- "gsl_matrix *")  m)
    ((-int-)  j)                         ;; const size_t -> int
    ((-gptr- "_gsl_vector_view *") view)
    #{
    { _gsl_vector_view tmp;
    tmp = gsl_matrix_column ( $m ,$j );
    memcpy($view,&tmp,sizeof(_gsl_vector_view));
    } #} 
    ()
    )


(de gsl_matrix_diagonal (   m  view )
    ((-gptr- "gsl_matrix *")  m)
    ((-gptr- "_gsl_vector_view *") view)
    #{
    { _gsl_vector_view tmp;
    tmp = gsl_matrix_diagonal ( $m );
    memcpy($view,&tmp,sizeof(_gsl_vector_view));
    } #} 
    ()
    )


(de gsl_matrix_subdiagonal (   m  k  view )
    ((-gptr- "gsl_matrix *")  m)
    ((-int-)  k)                         ;; const size_t -> int
    ((-gptr- "_gsl_vector_view *") view)
    #{
    { _gsl_vector_view tmp;
    tmp = gsl_matrix_subdiagonal ( $m ,$k );
    memcpy($view,&tmp,sizeof(_gsl_vector_view));
    } #} 
    ()
    )


(de gsl_matrix_superdiagonal (   m  k  view )
    ((-gptr- "gsl_matrix *")  m)
    ((-int-)  k)                         ;; const size_t -> int
    ((-gptr- "_gsl_vector_view *") view)
    #{
    { _gsl_vector_view tmp;
    tmp = gsl_matrix_superdiagonal ( $m ,$k );
    memcpy($view,&tmp,sizeof(_gsl_vector_view));
    } #} 
    ()
    )


(de gsl_matrix_view_array (   base  n1  n2  view )
    ((-gptr- "double *")  base)
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-gptr- "_gsl_matrix_view *") view)
    #{
    { _gsl_matrix_view tmp;
    tmp = gsl_matrix_view_array ( $base ,$n1 ,$n2 );
    memcpy($view,&tmp,sizeof(_gsl_matrix_view));
    } #} 
    ()
    )


(de gsl_matrix_view_array_with_tda (   base  n1  n2  tda  view )
    ((-gptr- "double *")  base)
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-int-)  tda)                         ;; const size_t -> int
    ((-gptr- "_gsl_matrix_view *") view)
    #{
    { _gsl_matrix_view tmp;
    tmp = gsl_matrix_view_array_with_tda ( $base ,$n1 ,$n2 ,$tda );
    memcpy($view,&tmp,sizeof(_gsl_matrix_view));
    } #} 
    ()
    )



(de gsl_matrix_view_vector (   v  n1  n2  view )
    ((-gptr- "gsl_vector *")  v)
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-gptr- "_gsl_matrix_view *") view)
    #{
    { _gsl_matrix_view tmp;
    tmp = gsl_matrix_view_vector ( $v ,$n1 ,$n2 );
    memcpy($view,&tmp,sizeof(_gsl_matrix_view));
    } #} 
    ()
    )


(de gsl_matrix_view_vector_with_tda (   v  n1  n2  tda  view )
    ((-gptr- "gsl_vector *")  v)
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-int-)  tda)                         ;; const size_t -> int
    ((-gptr- "_gsl_matrix_view *") view)
    #{
    { _gsl_matrix_view tmp;
    tmp = gsl_matrix_view_vector_with_tda ( $v ,$n1 ,$n2 ,$tda );
    memcpy($view,&tmp,sizeof(_gsl_matrix_view));
    } #} 
    ()
    )



(de gsl_matrix_const_submatrix (   m  i  j  n1  n2  view )
    ((-gptr- "const gsl_matrix *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-int-)  j)                         ;; const size_t -> int
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-gptr- "_gsl_matrix_const_view *") view)
    #{
    { _gsl_matrix_const_view tmp;
    tmp = gsl_matrix_const_submatrix ( $m ,$i ,$j ,$n1 ,$n2 );
    memcpy($view,&tmp,sizeof(_gsl_matrix_const_view));
    } #} 
    ()
    )


(de gsl_matrix_const_row (   m  i  view )
    ((-gptr- "const gsl_matrix *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-gptr- "_gsl_vector_const_view *") view)
    #{
    { _gsl_vector_const_view tmp;
    tmp = gsl_matrix_const_row ( $m ,$i );
    memcpy($view,&tmp,sizeof(_gsl_vector_const_view));
    } #} 
    ()
    )


(de gsl_matrix_const_column (   m  j  view )
    ((-gptr- "const gsl_matrix *")  m)
    ((-int-)  j)                         ;; const size_t -> int
    ((-gptr- "_gsl_vector_const_view *") view)
    #{
    { _gsl_vector_const_view tmp;
    tmp = gsl_matrix_const_column ( $m ,$j );
    memcpy($view,&tmp,sizeof(_gsl_vector_const_view));
    } #} 
    ()
    )


(de gsl_matrix_const_diagonal (   m  view )
    ((-gptr- "const gsl_matrix *")  m)
    ((-gptr- "_gsl_vector_const_view *") view)
    #{
    { _gsl_vector_const_view tmp;
    tmp = gsl_matrix_const_diagonal ( $m );
    memcpy($view,&tmp,sizeof(_gsl_vector_const_view));
    } #} 
    ()
    )


(de gsl_matrix_const_subdiagonal (   m  k  view )
    ((-gptr- "const gsl_matrix *")  m)
    ((-int-)  k)                         ;; const size_t -> int
    ((-gptr- "_gsl_vector_const_view *") view)
    #{
    { _gsl_vector_const_view tmp;
    tmp = gsl_matrix_const_subdiagonal ( $m ,$k );
    memcpy($view,&tmp,sizeof(_gsl_vector_const_view));
    } #} 
    ()
    )


(de gsl_matrix_const_superdiagonal (   m  k  view )
    ((-gptr- "const gsl_matrix *")  m)
    ((-int-)  k)                         ;; const size_t -> int
    ((-gptr- "_gsl_vector_const_view *") view)
    #{
    { _gsl_vector_const_view tmp;
    tmp = gsl_matrix_const_superdiagonal ( $m ,$k );
    memcpy($view,&tmp,sizeof(_gsl_vector_const_view));
    } #} 
    ()
    )


(de gsl_matrix_const_view_array (   base  n1  n2  view )
    ((-gptr- "const double *")  base)
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-gptr- "_gsl_matrix_const_view *") view)
    #{
    { _gsl_matrix_const_view tmp;
    tmp = gsl_matrix_const_view_array ( $base ,$n1 ,$n2 );
    memcpy($view,&tmp,sizeof(_gsl_matrix_const_view));
    } #} 
    ()
    )


(de gsl_matrix_const_view_array_with_tda (   base  n1  n2  tda  view )
    ((-gptr- "const double *")  base)
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-int-)  tda)                         ;; const size_t -> int
    ((-gptr- "_gsl_matrix_const_view *") view)
    #{
    { _gsl_matrix_const_view tmp;
    tmp = gsl_matrix_const_view_array_with_tda ( $base ,$n1 ,$n2 ,$tda );
    memcpy($view,&tmp,sizeof(_gsl_matrix_const_view));
    } #} 
    ()
    )


(de gsl_matrix_const_view_vector (   v  n1  n2  view )
    ((-gptr- "const gsl_vector *")  v)
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-gptr- "_gsl_matrix_const_view *") view)
    #{
    { _gsl_matrix_const_view tmp;
    tmp = gsl_matrix_const_view_vector ( $v ,$n1 ,$n2 );
    memcpy($view,&tmp,sizeof(_gsl_matrix_const_view));
    } #} 
    ()
    )


(de gsl_matrix_const_view_vector_with_tda (   v  n1  n2  tda  view )
    ((-gptr- "const gsl_vector *")  v)
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-int-)  tda)                         ;; const size_t -> int
    ((-gptr- "_gsl_matrix_const_view *") view)
    #{
    { _gsl_matrix_const_view tmp;
    tmp = gsl_matrix_const_view_vector_with_tda ( $v ,$n1 ,$n2 ,$tda );
    memcpy($view,&tmp,sizeof(_gsl_matrix_const_view));
    } #} 
    ()
    )




(de gsl_matrix_get (   m  i  j  )
    ((-gptr- "const gsl_matrix *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-int-)  j)                         ;; const size_t -> int
    (double   #{  gsl_matrix_get( $m ,$i ,$j )  #} )
    )

(de gsl_matrix_set (   m  i  j  x  )
    ((-gptr- "gsl_matrix *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-int-)  j)                         ;; const size_t -> int
    ((-double-)  x)
    #{  gsl_matrix_set( $m ,$i ,$j ,$x ); #} 
    ()
    )


(de gsl_matrix_ptr (   m  i  j  )
    ((-gptr- "gsl_matrix *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-int-)  j)                         ;; const size_t -> int
    (gptr #{  gsl_matrix_ptr( $m ,$i ,$j ) #} )   ;; double * -> gptr
    )

(de gsl_matrix_const_ptr (   m  i  j  )
    ((-gptr- "const gsl_matrix *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-int-)  j)                         ;; const size_t -> int
    (gptr #{  gsl_matrix_const_ptr( $m ,$i ,$j )  #} )   ;; const double * -> gptr
    )


(de gsl_matrix_set_zero (   m  )
    ((-gptr- "gsl_matrix *")  m)
    #{  gsl_matrix_set_zero ( $m );  #} 
    ()
    )

(de gsl_matrix_set_identity (   m  )
    ((-gptr- "gsl_matrix *")  m)
    #{  gsl_matrix_set_identity ( $m ); #} 
    ()
    )

(de gsl_matrix_set_all (   m  x  )
    ((-gptr- "gsl_matrix *")  m)
    ((-double-)  x)
    #{  gsl_matrix_set_all ( $m ,$x );  #} 
    ()
    )


(de gsl_matrix_fread (   stream  m  )
    ((-gptr- "FILE *")  stream)
    ((-gptr- "gsl_matrix *")  m)
    (int #{  gsl_matrix_fread ( $stream ,$m )   #} )
    )

(de gsl_matrix_fwrite (   stream  m  )
    ((-gptr- "FILE *")  stream)
    ((-gptr- "const gsl_matrix *")  m)
    (int #{  gsl_matrix_fwrite ( $stream ,$m )  #} )
    )

(de gsl_matrix_fscanf (   stream  m  )
    ((-gptr- "FILE *")  stream)
    ((-gptr- "gsl_matrix *")  m)
    (int #{  gsl_matrix_fscanf ( $stream ,$m )  #} )
    )

(de gsl_matrix_fprintf (   stream  m  format  )
    ((-gptr- "FILE *")  stream)
    ((-gptr- "const gsl_matrix *")  m)
    ((-gptr- "const char *")  format)
    (int #{  gsl_matrix_fprintf ( $stream ,$m ,$format ) #} )
    )


(de gsl_matrix_memcpy (   dest  src  )
    ((-gptr- "gsl_matrix *")  dest)
    ((-gptr- "const gsl_matrix *")  src)
    (int #{  gsl_matrix_memcpy( $dest ,$src ) #} )
    )

(de gsl_matrix_swap (   m1  m2  )
    ((-gptr- "gsl_matrix *")  m1)
    ((-gptr- "gsl_matrix *")  m2)
    (int #{  gsl_matrix_swap( $m1 ,$m2 )  #} )
    )


(de gsl_matrix_swap_rows (   m  i  j  )
    ((-gptr- "gsl_matrix *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-int-)  j)                         ;; const size_t -> int
    (int #{  gsl_matrix_swap_rows( $m ,$i ,$j )  #} )
    )

(de gsl_matrix_swap_columns (   m  i  j  )
    ((-gptr- "gsl_matrix *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-int-)  j)                         ;; const size_t -> int
    (int #{  gsl_matrix_swap_columns( $m ,$i ,$j ) #} )
    )

(de gsl_matrix_swap_rowcol (   m  i  j  )
    ((-gptr- "gsl_matrix *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-int-)  j)                         ;; const size_t -> int
    (int #{  gsl_matrix_swap_rowcol( $m ,$i ,$j )  #} )
    )

(de gsl_matrix_transpose (   m  )
    ((-gptr- "gsl_matrix *")  m)
    (int #{  gsl_matrix_transpose ( $m ) #} )
    )

(de gsl_matrix_transpose_memcpy (   dest  src  )
    ((-gptr- "gsl_matrix *")  dest)
    ((-gptr- "const gsl_matrix *")  src)
    (int #{  gsl_matrix_transpose_memcpy ( $dest ,$src )  #} )
    )


(de gsl_matrix_max (   m  )
    ((-gptr- "const gsl_matrix *")  m)
    (double #{  gsl_matrix_max ( $m )  #} )
    )

(de gsl_matrix_min (   m  )
    ((-gptr- "const gsl_matrix *")  m)
    (double #{  gsl_matrix_min ( $m ) #} )
    )

(de gsl_matrix_minmax (   m  min_out  max_out  )
    ((-gptr- "const gsl_matrix *")  m)
    ((-gptr- "double *")  min_out)
    ((-gptr- "double *")  max_out)
    #{  gsl_matrix_minmax ( $m ,$min_out ,$max_out );  #} 
    ()
    )


(de gsl_matrix_max_index (   m  imax  jmax  )
    ((-gptr- "const gsl_matrix *")  m)
    ((-gptr- "size_t *")  imax)
    ((-gptr- "size_t *") jmax)
    #{  gsl_matrix_max_index ( $m ,$imax ,$jmax );  #} 
    ()
    )

(de gsl_matrix_min_index (   m  imin  jmin  )
    ((-gptr- "const gsl_matrix *")  m)
    ((-gptr- "size_t *")  imin)
    ((-gptr- "size_t *") jmin)
    #{  gsl_matrix_min_index ( $m ,$imin ,$jmin ); #} 
    ()
    )

(de gsl_matrix_minmax_index (   m  imin  jmin  imax  jmax  )
    ((-gptr- "const gsl_matrix *")  m)
    ((-gptr- "size_t *")  imin)
    ((-gptr- "size_t *")  jmin)
    ((-gptr- "size_t *")  imax)
    ((-gptr- "size_t *")  jmax)
    #{  gsl_matrix_minmax_index ( $m ,$imin ,$jmin ,$imax ,$jmax );  #} 
    ()
    )


(de gsl_matrix_isnull (   m  )
    ((-gptr- "const gsl_matrix *")  m)
    (int #{  gsl_matrix_isnull ( $m )  #} )
    )


(de gsl_matrix_add (   a  b  )
    ((-gptr- "gsl_matrix *")  a)
    ((-gptr- "const gsl_matrix *")  b)
    (int #{  gsl_matrix_add ( $a ,$b )  #} )
    )

(de gsl_matrix_sub (   a  b  )
    ((-gptr- "gsl_matrix *")  a)
    ((-gptr- "const gsl_matrix *")  b)
    (int #{  gsl_matrix_sub ( $a ,$b ) #} )
    )

(de gsl_matrix_mul_elements (   a  b  )
    ((-gptr- "gsl_matrix *")  a)
    ((-gptr- "const gsl_matrix *")  b)
    (int #{  gsl_matrix_mul_elements ( $a ,$b )  #} )
    )

(de gsl_matrix_div_elements (   a  b  )
    ((-gptr- "gsl_matrix *")  a)
    ((-gptr- "const gsl_matrix *")  b)
    (int #{  gsl_matrix_div_elements ( $a ,$b ) #} )
    )

(de gsl_matrix_scale (   a  x  )
    ((-gptr- "gsl_matrix *")  a)
    ((-double-)  x)
    (int #{  gsl_matrix_scale ( $a ,$x )  #} )
    )

(de gsl_matrix_add_constant (   a  x  )
    ((-gptr- "gsl_matrix *")  a)
    ((-double-)  x)
    (int #{  gsl_matrix_add_constant ( $a ,$x ) #} )
    )

(if (> gsl-libversion 1.0)
    (de gsl_matrix_add_diagonal (   a  x  )
      ((-gptr- "gsl_matrix *")  a)
      ((-double-)  x)
      (int #{  gsl_matrix_add_diagonal ( $a ,$x )  #} )
      )
  (de gsl_matrix_add_diagonal (   a  x  )
    ((-gptr- "gsl_matrix *")  a)
    ((-double-)  x)
    (error "not available in this version of GSL") ()))






(de gsl_matrix_get_row (   v  m  i  )
    ((-gptr- "gsl_vector *")  v)
    ((-gptr- "const gsl_matrix *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    (int #{  gsl_matrix_get_row( $v ,$m ,$i ) #} )
    )

(de gsl_matrix_get_col (   v  m  j  )
    ((-gptr- "gsl_vector *")  v)
    ((-gptr- "const gsl_matrix *")  m)
    ((-int-)  j)                         ;; const size_t -> int
    (int #{  gsl_matrix_get_col( $v ,$m ,$j )  #} )
    )

(de gsl_matrix_set_row (   m  i  v  )
    ((-gptr- "gsl_matrix *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-gptr- "const gsl_vector *")  v)
    (int #{  gsl_matrix_set_row( $m ,$i ,$v ) #} )
    )

(de gsl_matrix_set_col (   m  j  v  )
    ((-gptr- "gsl_matrix *")  m)
    ((-int-)  j)                         ;; const size_t -> int
    ((-gptr- "const gsl_vector *")  v)
    (int #{  gsl_matrix_set_col( $m ,$j ,$v )  #} )
    )





(de gsl_matrix_float_alloc (   n1  n2  )
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    (gptr  #{  gsl_matrix_float_alloc ( $n1 ,$n2 )  #} )   ;; gsl_matrix_float * -> gptr
    )


(de gsl_matrix_float_calloc (   n1  n2  )
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    (gptr   #{  gsl_matrix_float_calloc ( $n1 ,$n2 ) #} )   ;; gsl_matrix_float * -> gptr
    )


(de gsl_matrix_float_alloc_from_block (   b  offset  n1  n2  d2  )
    ((-gptr- "gsl_block_float *")  b)
    ((-int-)  offset)                         ;; const size_t -> int
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-int-)  d2)                         ;; const size_t -> int
    (gptr  #{  gsl_matrix_float_alloc_from_block ( $b ,$offset ,$n1 ,$n2 ,$d2 )  #} )   ;; gsl_matrix_float * -> gptr
    )


(de gsl_matrix_float_alloc_from_matrix (   m  k1  k2  n1  n2  )
    ((-gptr- "gsl_matrix_float *")  m)
    ((-int-)  k1)                         ;; const size_t -> int
    ((-int-)  k2)                         ;; const size_t -> int
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    (gptr   #{  gsl_matrix_float_alloc_from_matrix ( $m ,$k1 ,$k2 ,$n1 ,$n2 ) #} )   ;; gsl_matrix_float * -> gptr
    )


(de gsl_vector_float_alloc_row_from_matrix (   m  i  )
    ((-gptr- "gsl_matrix_float *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    (gptr  #{  gsl_vector_float_alloc_row_from_matrix ( $m ,$i )  #} )   ;; gsl_vector_float * -> gptr
    )


(de gsl_vector_float_alloc_col_from_matrix (   m  j  )
    ((-gptr- "gsl_matrix_float *")  m)
    ((-int-)  j)                         ;; const size_t -> int
    (gptr   #{  gsl_vector_float_alloc_col_from_matrix ( $m ,$j ) #} )   ;; gsl_vector_float * -> gptr
    )


(de gsl_matrix_float_free (   m  )
    ((-gptr- "gsl_matrix_float *")  m)
    #{  gsl_matrix_float_free ( $m ); #} 
    ()
    )




(de gsl_matrix_float_submatrix (   m  i  j  n1  n2  view )
    ((-gptr- "gsl_matrix_float *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-int-)  j)                         ;; const size_t -> int
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-gptr- "_gsl_matrix_float_view *") view)
    #{
    { _gsl_matrix_float_view tmp;
    tmp = gsl_matrix_float_submatrix ( $m ,$i ,$j ,$n1 ,$n2 );
    memcpy($view,&tmp,sizeof(_gsl_matrix_float_view));
    } #} 
    ()
    )


(de gsl_matrix_float_row (   m  i  view )
    ((-gptr- "gsl_matrix_float *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-gptr- "_gsl_vector_float_view *") view)
    #{
    { _gsl_vector_float_view tmp;
    tmp = gsl_matrix_float_row ( $m ,$i );
    memcpy($view,&tmp,sizeof(_gsl_vector_float_view));
    } #} 
    ()
    )


(de gsl_matrix_float_column (   m  j  view )
    ((-gptr- "gsl_matrix_float *")  m)
    ((-int-)  j)                         ;; const size_t -> int
    ((-gptr- "_gsl_vector_float_view *") view)
    #{
    { _gsl_vector_float_view tmp;
    tmp = gsl_matrix_float_column ( $m ,$j );
    memcpy($view,&tmp,sizeof(_gsl_vector_float_view));
    } #} 
    ()
    )


(de gsl_matrix_float_diagonal (   m  view )
    ((-gptr- "gsl_matrix_float *")  m)
    ((-gptr- "_gsl_vector_float_view *") view)
    #{
    { _gsl_vector_float_view tmp;
    tmp = gsl_matrix_float_diagonal ( $m );
    memcpy($view,&tmp,sizeof(_gsl_vector_float_view));
    } #} 
    ()
    )


(de gsl_matrix_float_subdiagonal (   m  k  view )
    ((-gptr- "gsl_matrix_float *")  m)
    ((-int-)  k)                         ;; const size_t -> int
    ((-gptr- "_gsl_vector_float_view *") view)
    #{
    { _gsl_vector_float_view tmp;
    tmp = gsl_matrix_float_subdiagonal ( $m ,$k );
    memcpy($view,&tmp,sizeof(_gsl_vector_float_view));
    } #} 
    ()
    )


(de gsl_matrix_float_superdiagonal (   m  k  view )
    ((-gptr- "gsl_matrix_float *")  m)
    ((-int-)  k)                         ;; const size_t -> int
    ((-gptr- "_gsl_vector_float_view *") view)
    #{
    { _gsl_vector_float_view tmp;
    tmp = gsl_matrix_float_superdiagonal ( $m ,$k );
    memcpy($view,&tmp,sizeof(_gsl_vector_float_view));
    } #} 
    ()
    )


(de gsl_matrix_float_view_array (   base  n1  n2  view )
    ((-gptr- "float *")  base)
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-gptr- "_gsl_matrix_float_view *") view)
    #{
    { _gsl_matrix_float_view tmp;
    tmp = gsl_matrix_float_view_array ( $base ,$n1 ,$n2 );
    memcpy($view,&tmp,sizeof(_gsl_matrix_float_view));
    } #} 
    ()
    )


(de gsl_matrix_float_view_array_with_tda (   base  n1  n2  tda  view )
    ((-gptr- "float *")  base)
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-int-)  tda)                         ;; const size_t -> int
    ((-gptr- "_gsl_matrix_float_view *") view)
    #{
    { _gsl_matrix_float_view tmp;
    tmp = gsl_matrix_float_view_array_with_tda ( $base ,$n1 ,$n2 ,$tda );
    memcpy($view,&tmp,sizeof(_gsl_matrix_float_view));
    } #} 
    ()
    )



(de gsl_matrix_float_view_vector (   v  n1  n2  view )
    ((-gptr- "gsl_vector_float *")  v)
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-gptr- "_gsl_matrix_float_view *") view)
    #{
    { _gsl_matrix_float_view tmp;
    tmp = gsl_matrix_float_view_vector ( $v ,$n1 ,$n2 );
    memcpy($view,&tmp,sizeof(_gsl_matrix_float_view));
    } #} 
    ()
    )


(de gsl_matrix_float_view_vector_with_tda (   v  n1  n2  tda  view )
    ((-gptr- "gsl_vector_float *")  v)
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-int-)  tda)                         ;; const size_t -> int
    ((-gptr- "_gsl_matrix_float_view *") view)
    #{
    { _gsl_matrix_float_view tmp;
    tmp = gsl_matrix_float_view_vector_with_tda ( $v ,$n1 ,$n2 ,$tda );
    memcpy($view,&tmp,sizeof(_gsl_matrix_float_view));
    } #} 
    ()
    )



(de gsl_matrix_float_const_submatrix (   m  i  j  n1  n2  view )
    ((-gptr- "const gsl_matrix_float *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-int-)  j)                         ;; const size_t -> int
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-gptr- "_gsl_matrix_float_const_view *") view)
    #{
    { _gsl_matrix_float_const_view tmp;
    tmp = gsl_matrix_float_const_submatrix ( $m ,$i ,$j ,$n1 ,$n2 );
    memcpy($view,&tmp,sizeof(_gsl_matrix_float_const_view));
    } #} 
    ()
    )


(de gsl_matrix_float_const_row (   m  i  view )
    ((-gptr- "const gsl_matrix_float *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-gptr- "_gsl_vector_float_const_view *") view)
    #{
    { _gsl_vector_float_const_view tmp;
    tmp = gsl_matrix_float_const_row ( $m ,$i );
    memcpy($view,&tmp,sizeof(_gsl_vector_float_const_view));
    } #} 
    ()
    )


(de gsl_matrix_float_const_column (   m  j  view )
    ((-gptr- "const gsl_matrix_float *")  m)
    ((-int-)  j)                         ;; const size_t -> int
    ((-gptr- "_gsl_vector_float_const_view *") view)
    #{
    { _gsl_vector_float_const_view tmp;
    tmp = gsl_matrix_float_const_column ( $m ,$j );
    memcpy($view,&tmp,sizeof(_gsl_vector_float_const_view));
    } #} 
    ()
    )


(de gsl_matrix_float_const_diagonal (   m  view )
    ((-gptr- "const gsl_matrix_float *")  m)
    ((-gptr- "_gsl_vector_float_const_view *") view)
    #{
    { _gsl_vector_float_const_view tmp;
    tmp = gsl_matrix_float_const_diagonal ( $m );
    memcpy($view,&tmp,sizeof(_gsl_vector_float_const_view));
    } #} 
    ()
    )


(de gsl_matrix_float_const_subdiagonal (   m  k  view )
    ((-gptr- "const gsl_matrix_float *")  m)
    ((-int-)  k)                         ;; const size_t -> int
    ((-gptr- "_gsl_vector_float_const_view *") view)
    #{
    { _gsl_vector_float_const_view tmp;
    tmp = gsl_matrix_float_const_subdiagonal ( $m ,$k );
    memcpy($view,&tmp,sizeof(_gsl_vector_float_const_view));
    } #} 
    ()
    )


(de gsl_matrix_float_const_superdiagonal (   m  k  view )
    ((-gptr- "const gsl_matrix_float *")  m)
    ((-int-)  k)                         ;; const size_t -> int
    ((-gptr- "_gsl_vector_float_const_view *") view)
    #{
    { _gsl_vector_float_const_view tmp;
    tmp = gsl_matrix_float_const_superdiagonal ( $m ,$k );
    memcpy($view,&tmp,sizeof(_gsl_vector_float_const_view));
    } #} 
    ()
    )


(de gsl_matrix_float_const_view_array (   base  n1  n2  view )
    ((-gptr- "const float *")  base)
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-gptr- "_gsl_matrix_float_const_view *") view)
    #{
    { _gsl_matrix_float_const_view tmp;
    tmp = gsl_matrix_float_const_view_array ( $base ,$n1 ,$n2 );
    memcpy($view,&tmp,sizeof(_gsl_matrix_float_const_view));
    } #} 
    ()
    )


(de gsl_matrix_float_const_view_array_with_tda (   base  n1  n2  tda  view )
    ((-gptr- "const float *")  base)
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-int-)  tda)                         ;; const size_t -> int
    ((-gptr- "_gsl_matrix_float_const_view *") view)
    #{
    { _gsl_matrix_float_const_view tmp;
    tmp = gsl_matrix_float_const_view_array_with_tda ( $base ,$n1 ,$n2 ,$tda );
    memcpy($view,&tmp,sizeof(_gsl_matrix_float_const_view));
    } #} 
    ()
    )


(de gsl_matrix_float_const_view_vector (   v  n1  n2  view )
    ((-gptr- "const gsl_vector_float *")  v)
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-gptr- "_gsl_matrix_float_const_view *") view)
    #{
    { _gsl_matrix_float_const_view tmp;
    tmp = gsl_matrix_float_const_view_vector ( $v ,$n1 ,$n2 );
    memcpy($view,&tmp,sizeof(_gsl_matrix_float_const_view));
    } #} 
    ()
    )


(de gsl_matrix_float_const_view_vector_with_tda (   v  n1  n2  tda  view )
    ((-gptr- "const gsl_vector_float *")  v)
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-int-)  tda)                         ;; const size_t -> int
    ((-gptr- "_gsl_matrix_float_const_view *") view)
    #{
    { _gsl_matrix_float_const_view tmp;
    tmp = gsl_matrix_float_const_view_vector_with_tda ( $v ,$n1 ,$n2 ,$tda );
    memcpy($view,&tmp,sizeof(_gsl_matrix_float_const_view));
    } #} 
    ()
    )




(de gsl_matrix_float_get (   m  i  j  )
    ((-gptr- "const gsl_matrix_float *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-int-)  j)                         ;; const size_t -> int
    (float   #{  gsl_matrix_float_get( $m ,$i ,$j ) #} )
    )

(de gsl_matrix_float_set (   m  i  j  x  )
    ((-gptr- "gsl_matrix_float *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-int-)  j)                         ;; const size_t -> int
    ((-double-)  x)                      ;; float -> double
    #{  gsl_matrix_float_set( $m ,$i ,$j ,$x );  #} 
    ()
    )


(de gsl_matrix_float_ptr (   m  i  j  )
    ((-gptr- "gsl_matrix_float *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-int-)  j)                         ;; const size_t -> int
    (gptr #{  gsl_matrix_float_ptr( $m ,$i ,$j )  #} )   ;; float * -> gptr
    )

(de gsl_matrix_float_const_ptr (   m  i  j  )
    ((-gptr- "const gsl_matrix_float *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-int-)  j)                         ;; const size_t -> int
    (gptr #{  gsl_matrix_float_const_ptr( $m ,$i ,$j ) #} )   ;; const float * -> gptr
    )


(de gsl_matrix_float_set_zero (   m  )
    ((-gptr- "gsl_matrix_float *")  m)
    #{  gsl_matrix_float_set_zero ( $m ); #} 
    ()
    )

(de gsl_matrix_float_set_identity (   m  )
    ((-gptr- "gsl_matrix_float *")  m)
    #{  gsl_matrix_float_set_identity ( $m );  #} 
    ()
    )

(de gsl_matrix_float_set_all (   m  x  )
    ((-gptr- "gsl_matrix_float *")  m)
    ((-float-)  x)
    #{  gsl_matrix_float_set_all ( $m ,$x ); #} 
    ()
    )


(de gsl_matrix_float_fread (   stream  m  )
    ((-gptr- "FILE *")  stream)
    ((-gptr- "gsl_matrix_float *")  m)
    (int #{  gsl_matrix_float_fread ( $stream ,$m )  #} )
    )

(de gsl_matrix_float_fwrite (   stream  m  )
    ((-gptr- "FILE *")  stream)
    ((-gptr- "const gsl_matrix_float *")  m)
    (int #{  gsl_matrix_float_fwrite ( $stream ,$m )   #} )
    )

(de gsl_matrix_float_fscanf (   stream  m  )
    ((-gptr- "FILE *")  stream)
    ((-gptr- "gsl_matrix_float *")  m)
    (int #{  gsl_matrix_float_fscanf ( $stream ,$m ) #} )
    )

(de gsl_matrix_float_fprintf (   stream  m  format  )
    ((-gptr- "FILE *")  stream)
    ((-gptr- "const gsl_matrix_float *")  m)
    ((-gptr- "const char *")  format)
    (int #{  gsl_matrix_float_fprintf ( $stream ,$m ,$format )  #} )
    )


(de gsl_matrix_float_memcpy (   dest  src  )
    ((-gptr- "gsl_matrix_float *")  dest)
    ((-gptr- "const gsl_matrix_float *")  src)
    (int #{  gsl_matrix_float_memcpy( $dest ,$src )  #} )
    )

(de gsl_matrix_float_swap (   m1  m2  )
    ((-gptr- "gsl_matrix_float *")  m1)
    ((-gptr- "gsl_matrix_float *")  m2)
    (int #{  gsl_matrix_float_swap( $m1 ,$m2 ) #} )
    )


(de gsl_matrix_float_swap_rows (   m  i  j  )
    ((-gptr- "gsl_matrix_float *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-int-)  j)                         ;; const size_t -> int
    (int #{  gsl_matrix_float_swap_rows( $m ,$i ,$j ) #} )
    )

(de gsl_matrix_float_swap_columns (   m  i  j  )
    ((-gptr- "gsl_matrix_float *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-int-)  j)                         ;; const size_t -> int
    (int #{  gsl_matrix_float_swap_columns( $m ,$i ,$j )  #} )
    )

(de gsl_matrix_float_swap_rowcol (   m  i  j  )
    ((-gptr- "gsl_matrix_float *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-int-)  j)                         ;; const size_t -> int
    (int #{  gsl_matrix_float_swap_rowcol( $m ,$i ,$j ) #} )
    )

(de gsl_matrix_float_transpose (   m  )
    ((-gptr- "gsl_matrix_float *")  m)
    (int #{  gsl_matrix_float_transpose ( $m )  #} )
    )

(de gsl_matrix_float_transpose_memcpy (   dest  src  )
    ((-gptr- "gsl_matrix_float *")  dest)
    ((-gptr- "const gsl_matrix_float *")  src)
    (int #{  gsl_matrix_float_transpose_memcpy ( $dest ,$src ) #} )
    )


(de gsl_matrix_float_max (   m  )
    ((-gptr- "const gsl_matrix_float *")  m)
    (float #{  gsl_matrix_float_max ( $m ) #} )
    )

(de gsl_matrix_float_min (   m  )
    ((-gptr- "const gsl_matrix_float *")  m)
    (float #{  gsl_matrix_float_min ( $m )  #} )
    )

(de gsl_matrix_float_minmax (   m  min_out  max_out  )
    ((-gptr- "const gsl_matrix_float *")  m)
    ((-gptr- "float *")  min_out)
    ((-gptr- "float *")  max_out)
    #{  gsl_matrix_float_minmax ( $m ,$min_out ,$max_out ); #} 
    ()
    )


(de gsl_matrix_float_max_index (   m  imax  jmax  )
    ((-gptr- "const gsl_matrix_float *")  m)
    ((-gptr- "size_t *")  imax)
    ((-gptr- "size_t *") jmax)
    #{  gsl_matrix_float_max_index ( $m ,$imax ,$jmax ); #} 
    ()
    )

(de gsl_matrix_float_min_index (   m  imin  jmin  )
    ((-gptr- "const gsl_matrix_float *")  m)
    ((-gptr- "size_t *")  imin)
    ((-gptr- "size_t *") jmin)
    #{  gsl_matrix_float_min_index ( $m ,$imin ,$jmin );  #} 
    ()
    )

(de gsl_matrix_float_minmax_index (   m  imin  jmin  imax  jmax  )
    ((-gptr- "const gsl_matrix_float *")  m)
    ((-gptr- "size_t *")  imin)
    ((-gptr- "size_t *")  jmin)
    ((-gptr- "size_t *")  imax)
    ((-gptr- "size_t *")  jmax)
    #{  gsl_matrix_float_minmax_index ( $m ,$imin ,$jmin ,$imax ,$jmax ); #} 
    ()
    )


(de gsl_matrix_float_isnull (   m  )
    ((-gptr- "const gsl_matrix_float *")  m)
    (int #{  gsl_matrix_float_isnull ( $m ) #} )
    )


(de gsl_matrix_float_add (   a  b  )
    ((-gptr- "gsl_matrix_float *")  a)
    ((-gptr- "const gsl_matrix_float *")  b)
    (int #{  gsl_matrix_float_add ( $a ,$b ) #} )
    )

(de gsl_matrix_float_sub (   a  b  )
    ((-gptr- "gsl_matrix_float *")  a)
    ((-gptr- "const gsl_matrix_float *")  b)
    (int #{  gsl_matrix_float_sub ( $a ,$b )  #} )
    )

(de gsl_matrix_float_mul_elements (   a  b  )
    ((-gptr- "gsl_matrix_float *")  a)
    ((-gptr- "const gsl_matrix_float *")  b)
    (int #{  gsl_matrix_float_mul_elements ( $a ,$b ) #} )
    )

(de gsl_matrix_float_div_elements (   a  b  )
    ((-gptr- "gsl_matrix_float *")  a)
    ((-gptr- "const gsl_matrix_float *")  b)
    (int #{  gsl_matrix_float_div_elements ( $a ,$b )  #} )
    )

(de gsl_matrix_float_scale (   a  x  )
    ((-gptr- "gsl_matrix_float *")  a)
    ((-double-)  x)
    (int #{  gsl_matrix_float_scale ( $a ,$x ) #} )
    )

(de gsl_matrix_float_add_constant (   a  x  )
    ((-gptr- "gsl_matrix_float *")  a)
    ((-double-)  x)
    (int #{  gsl_matrix_float_add_constant ( $a ,$x )  #} )
    )

(if (> gsl-libversion 1.0)
    (de gsl_matrix_float_add_diagonal (   a  x  )
      ((-gptr- "gsl_matrix_float *")  a)
      ((-double-)  x)
      (int #{  gsl_matrix_float_add_diagonal ( $a ,$x ) #} )
      )
  (de gsl_matrix_float_add_diagonal (   a  x  )
    ((-gptr- "gsl_matrix_float *")  a)
    ((-double-)  x)
    (error "not available in this version of GSL") ()))





(de gsl_matrix_float_get_row (   v  m  i  )
    ((-gptr- "gsl_vector_float *")  v)
    ((-gptr- "const gsl_matrix_float *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    (int #{  gsl_matrix_float_get_row( $v ,$m ,$i )  #} )
    )

(de gsl_matrix_float_get_col (   v  m  j  )
    ((-gptr- "gsl_vector_float *")  v)
    ((-gptr- "const gsl_matrix_float *")  m)
    ((-int-)  j)                         ;; const size_t -> int
    (int #{  gsl_matrix_float_get_col( $v ,$m ,$j ) #} )
    )

(de gsl_matrix_float_set_row (   m  i  v  )
    ((-gptr- "gsl_matrix_float *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-gptr- "const gsl_vector_float *")  v)
    (int #{  gsl_matrix_float_set_row( $m ,$i ,$v )  #} )
    )

(de gsl_matrix_float_set_col (   m  j  v  )
    ((-gptr- "gsl_matrix_float *")  m)
    ((-int-)  j)                         ;; const size_t -> int
    ((-gptr- "const gsl_vector_float *")  v)
    (int #{  gsl_matrix_float_set_col( $m ,$j ,$v ) #} )
    )




(de gsl_matrix_int_alloc (   n1  n2  )
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    (gptr  #{  gsl_matrix_int_alloc ( $n1 ,$n2 )  #} )   ;; gsl_matrix_int * -> gptr
    )


(de gsl_matrix_int_calloc (   n1  n2  )
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    (gptr   #{  gsl_matrix_int_calloc ( $n1 ,$n2 ) #} )   ;; gsl_matrix_int * -> gptr
    )


(de gsl_matrix_int_alloc_from_block (   b  offset  n1  n2  d2  )
    ((-gptr- "gsl_block_int *")  b)
    ((-int-)  offset)                         ;; const size_t -> int
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-int-)  d2)                         ;; const size_t -> int
    (gptr  #{  gsl_matrix_int_alloc_from_block ( $b ,$offset ,$n1 ,$n2 ,$d2 )  #} )   ;; gsl_matrix_int * -> gptr
    )


(de gsl_matrix_int_alloc_from_matrix (   m  k1  k2  n1  n2  )
    ((-gptr- "gsl_matrix_int *")  m)
    ((-int-)  k1)                         ;; const size_t -> int
    ((-int-)  k2)                         ;; const size_t -> int
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    (gptr   #{  gsl_matrix_int_alloc_from_matrix ( $m ,$k1 ,$k2 ,$n1 ,$n2 ) #} )   ;; gsl_matrix_int * -> gptr
    )


(de gsl_vector_int_alloc_row_from_matrix (   m  i  )
    ((-gptr- "gsl_matrix_int *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    (gptr  #{  gsl_vector_int_alloc_row_from_matrix ( $m ,$i )  #} )   ;; gsl_vector_int * -> gptr
    )


(de gsl_vector_int_alloc_col_from_matrix (   m  j  )
    ((-gptr- "gsl_matrix_int *")  m)
    ((-int-)  j)                         ;; const size_t -> int
    (gptr   #{  gsl_vector_int_alloc_col_from_matrix ( $m ,$j ) #} )   ;; gsl_vector_int * -> gptr
    )


(de gsl_matrix_int_free (   m  )
    ((-gptr- "gsl_matrix_int *")  m)
    #{  gsl_matrix_int_free ( $m ); #} 
    ()
    )




(de gsl_matrix_int_submatrix (   m  i  j  n1  n2  view )
    ((-gptr- "gsl_matrix_int *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-int-)  j)                         ;; const size_t -> int
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-gptr- "_gsl_matrix_int_view *") view)
    #{
    { _gsl_matrix_int_view tmp;
    tmp = gsl_matrix_int_submatrix ( $m ,$i ,$j ,$n1 ,$n2 );
    memcpy($view,&tmp,sizeof(_gsl_matrix_int_view));
    } #} 
    ()
    )


(de gsl_matrix_int_row (   m  i  view )
    ((-gptr- "gsl_matrix_int *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-gptr- "_gsl_vector_int_view *") view)
    #{
    { _gsl_vector_int_view tmp;
    tmp = gsl_matrix_int_row ( $m ,$i );
    memcpy($view,&tmp,sizeof(_gsl_vector_int_view));
    } #} 
    ()
    )


(de gsl_matrix_int_column (   m  j  view )
    ((-gptr- "gsl_matrix_int *")  m)
    ((-int-)  j)                         ;; const size_t -> int
    ((-gptr- "_gsl_vector_int_view *") view)
    #{
    { _gsl_vector_int_view tmp;
    tmp = gsl_matrix_int_column ( $m ,$j );
    memcpy($view,&tmp,sizeof(_gsl_vector_int_view));
    } #} 
    ()
    )


(de gsl_matrix_int_diagonal (   m  view )
    ((-gptr- "gsl_matrix_int *")  m)
    ((-gptr- "_gsl_vector_int_view *") view)
    #{
    { _gsl_vector_int_view tmp;
    tmp = gsl_matrix_int_diagonal ( $m );
    memcpy($view,&tmp,sizeof(_gsl_vector_int_view));
    } #} 
    ()
    )


(de gsl_matrix_int_subdiagonal (   m  k  view )
    ((-gptr- "gsl_matrix_int *")  m)
    ((-int-)  k)                         ;; const size_t -> int
    ((-gptr- "_gsl_vector_int_view *") view)
    #{
    { _gsl_vector_int_view tmp;
    tmp = gsl_matrix_int_subdiagonal ( $m ,$k );
    memcpy($view,&tmp,sizeof(_gsl_vector_int_view));
    } #} 
    ()
    )


(de gsl_matrix_int_superdiagonal (   m  k  view )
    ((-gptr- "gsl_matrix_int *")  m)
    ((-int-)  k)                         ;; const size_t -> int
    ((-gptr- "_gsl_vector_int_view *") view)
    #{
    { _gsl_vector_int_view tmp;
    tmp = gsl_matrix_int_superdiagonal ( $m ,$k );
    memcpy($view,&tmp,sizeof(_gsl_vector_int_view));
    } #} 
    ()
    )


(de gsl_matrix_int_view_array (   base  n1  n2  view )
    ((-gptr- "int *")  base)
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-gptr- "_gsl_matrix_int_view *") view)
    #{
    { _gsl_matrix_int_view tmp;
    tmp = gsl_matrix_int_view_array ( $base ,$n1 ,$n2 );
    memcpy($view,&tmp,sizeof(_gsl_matrix_int_view));
    } #} 
    ()
    )


(de gsl_matrix_int_view_array_with_tda (   base  n1  n2  tda  view )
    ((-gptr- "int *")  base)
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-int-)  tda)                         ;; const size_t -> int
    ((-gptr- "_gsl_matrix_int_view *") view)
    #{
    { _gsl_matrix_int_view tmp;
    tmp = gsl_matrix_int_view_array_with_tda ( $base ,$n1 ,$n2 ,$tda );
    memcpy($view,&tmp,sizeof(_gsl_matrix_int_view));
    } #} 
    ()
    )



(de gsl_matrix_int_view_vector (   v  n1  n2  view )
    ((-gptr- "gsl_vector_int *")  v)
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-gptr- "_gsl_matrix_int_view *") view)
    #{
    { _gsl_matrix_int_view tmp;
    tmp = gsl_matrix_int_view_vector ( $v ,$n1 ,$n2 );
    memcpy($view,&tmp,sizeof(_gsl_matrix_int_view));
    } #} 
    ()
    )


(de gsl_matrix_int_view_vector_with_tda (   v  n1  n2  tda  view )
    ((-gptr- "gsl_vector_int *")  v)
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-int-)  tda)                         ;; const size_t -> int
    ((-gptr- "_gsl_matrix_int_view *") view)
    #{
    { _gsl_matrix_int_view tmp;
    tmp = gsl_matrix_int_view_vector_with_tda ( $v ,$n1 ,$n2 ,$tda );
    memcpy($view,&tmp,sizeof(_gsl_matrix_int_view));
    } #} 
    ()
    )



(de gsl_matrix_int_const_submatrix (   m  i  j  n1  n2  view )
    ((-gptr- "const gsl_matrix_int *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-int-)  j)                         ;; const size_t -> int
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-gptr- "_gsl_matrix_int_const_view *") view)
    #{
    { _gsl_matrix_int_const_view tmp;
    tmp = gsl_matrix_int_const_submatrix ( $m ,$i ,$j ,$n1 ,$n2 );
    memcpy($view,&tmp,sizeof(_gsl_matrix_int_const_view));
    } #} 
    ()
    )


(de gsl_matrix_int_const_row (   m  i  view )
    ((-gptr- "const gsl_matrix_int *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-gptr- "_gsl_vector_int_const_view *") view)
    #{
    { _gsl_vector_int_const_view tmp;
    tmp = gsl_matrix_int_const_row ( $m ,$i );
    memcpy($view,&tmp,sizeof(_gsl_vector_int_const_view));
    } #} 
    ()
    )


(de gsl_matrix_int_const_column (   m  j  view )
    ((-gptr- "const gsl_matrix_int *")  m)
    ((-int-)  j)                         ;; const size_t -> int
    ((-gptr- "_gsl_vector_int_const_view *") view)
    #{
    { _gsl_vector_int_const_view tmp;
    tmp = gsl_matrix_int_const_column ( $m ,$j );
    memcpy($view,&tmp,sizeof(_gsl_vector_int_const_view));
    } #} 
    ()
    )


(de gsl_matrix_int_const_diagonal (   m  view )
    ((-gptr- "const gsl_matrix_int *")  m)
    ((-gptr- "_gsl_vector_int_const_view *") view)
    #{
    { _gsl_vector_int_const_view tmp;
    tmp = gsl_matrix_int_const_diagonal ( $m );
    memcpy($view,&tmp,sizeof(_gsl_vector_int_const_view));
    } #} 
    ()
    )


(de gsl_matrix_int_const_subdiagonal (   m  k  view )
    ((-gptr- "const gsl_matrix_int *")  m)
    ((-int-)  k)                         ;; const size_t -> int
    ((-gptr- "_gsl_vector_int_const_view *") view)
    #{
    { _gsl_vector_int_const_view tmp;
    tmp = gsl_matrix_int_const_subdiagonal ( $m ,$k );
    memcpy($view,&tmp,sizeof(_gsl_vector_int_const_view));
    } #} 
    ()
    )


(de gsl_matrix_int_const_superdiagonal (   m  k  view )
    ((-gptr- "const gsl_matrix_int *")  m)
    ((-int-)  k)                         ;; const size_t -> int
    ((-gptr- "_gsl_vector_int_const_view *") view)
    #{
    { _gsl_vector_int_const_view tmp;
    tmp = gsl_matrix_int_const_superdiagonal ( $m ,$k );
    memcpy($view,&tmp,sizeof(_gsl_vector_int_const_view));
    } #} 
    ()
    )


(de gsl_matrix_int_const_view_array (   base  n1  n2  view )
    ((-gptr- "const int *")  base)
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-gptr- "_gsl_matrix_int_const_view *") view)
    #{
    { _gsl_matrix_int_const_view tmp;
    tmp = gsl_matrix_int_const_view_array ( $base ,$n1 ,$n2 );
    memcpy($view,&tmp,sizeof(_gsl_matrix_int_const_view));
    } #} 
    ()
    )


(de gsl_matrix_int_const_view_array_with_tda (   base  n1  n2  tda  view )
    ((-gptr- "const int *")  base)
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-int-)  tda)                         ;; const size_t -> int
    ((-gptr- "_gsl_matrix_int_const_view *") view)
    #{
    { _gsl_matrix_int_const_view tmp;
    tmp = gsl_matrix_int_const_view_array_with_tda ( $base ,$n1 ,$n2 ,$tda );
    memcpy($view,&tmp,sizeof(_gsl_matrix_int_const_view));
    } #} 
    ()
    )


(de gsl_matrix_int_const_view_vector (   v  n1  n2  view )
    ((-gptr- "const gsl_vector_int *")  v)
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-gptr- "_gsl_matrix_int_const_view *") view)
    #{
    { _gsl_matrix_int_const_view tmp;
    tmp = gsl_matrix_int_const_view_vector ( $v ,$n1 ,$n2 );
    memcpy($view,&tmp,sizeof(_gsl_matrix_int_const_view));
    } #} 
    ()
    )


(de gsl_matrix_int_const_view_vector_with_tda (   v  n1  n2  tda  view )
    ((-gptr- "const gsl_vector_int *")  v)
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-int-)  tda)                         ;; const size_t -> int
    ((-gptr- "_gsl_matrix_int_const_view *") view)
    #{
    { _gsl_matrix_int_const_view tmp;
    tmp = gsl_matrix_int_const_view_vector_with_tda ( $v ,$n1 ,$n2 ,$tda );
    memcpy($view,&tmp,sizeof(_gsl_matrix_int_const_view));
    } #} 
    ()
    )




(de gsl_matrix_int_get (   m  i  j  )
    ((-gptr- "const gsl_matrix_int *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-int-)  j)                         ;; const size_t -> int
    (int   #{  gsl_matrix_int_get( $m ,$i ,$j ) #} )
    )

(de gsl_matrix_int_set (   m  i  j  x  )
    ((-gptr- "gsl_matrix_int *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-int-)  j)                         ;; const size_t -> int
    ((-int-)  x)
    #{  gsl_matrix_int_set( $m ,$i ,$j ,$x );  #} 
    ()
    )


(de gsl_matrix_int_ptr (   m  i  j  )
    ((-gptr- "gsl_matrix_int *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-int-)  j)                         ;; const size_t -> int
    (gptr #{  gsl_matrix_int_ptr( $m ,$i ,$j )  #} )   ;; int * -> gptr
    )

(de gsl_matrix_int_const_ptr (   m  i  j  )
    ((-gptr- "const gsl_matrix_int *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-int-)  j)                         ;; const size_t -> int
    (gptr #{  gsl_matrix_int_const_ptr( $m ,$i ,$j ) #} )   ;; const int * -> gptr
    )


(de gsl_matrix_int_set_zero (   m  )
    ((-gptr- "gsl_matrix_int *")  m)
    #{  gsl_matrix_int_set_zero ( $m ); #} 
    ()
    )

(de gsl_matrix_int_set_identity (   m  )
    ((-gptr- "gsl_matrix_int *")  m)
    #{  gsl_matrix_int_set_identity ( $m );  #} 
    ()
    )

(de gsl_matrix_int_set_all (   m  x  )
    ((-gptr- "gsl_matrix_int *")  m)
    ((-int-)  x)
    #{  gsl_matrix_int_set_all ( $m ,$x ); #} 
    ()
    )


(de gsl_matrix_int_fread (   stream  m  )
    ((-gptr- "FILE *")  stream)
    ((-gptr- "gsl_matrix_int *")  m)
    (int #{  gsl_matrix_int_fread ( $stream ,$m )  #} )
    )

(de gsl_matrix_int_fwrite (   stream  m  )
    ((-gptr- "FILE *")  stream)
    ((-gptr- "const gsl_matrix_int *")  m)
    (int #{  gsl_matrix_int_fwrite ( $stream ,$m )   #} )
    )

(de gsl_matrix_int_fscanf (   stream  m  )
    ((-gptr- "FILE *")  stream)
    ((-gptr- "gsl_matrix_int *")  m)
    (int #{  gsl_matrix_int_fscanf ( $stream ,$m ) #} )
    )

(de gsl_matrix_int_fprintf (   stream  m  format  )
    ((-gptr- "FILE *")  stream)
    ((-gptr- "const gsl_matrix_int *")  m)
    ((-gptr- "const char *")  format)
    (int #{  gsl_matrix_int_fprintf ( $stream ,$m ,$format )  #} )
    )


(de gsl_matrix_int_memcpy (   dest  src  )
    ((-gptr- "gsl_matrix_int *")  dest)
    ((-gptr- "const gsl_matrix_int *")  src)
    (int #{  gsl_matrix_int_memcpy( $dest ,$src )  #} )
    )

(de gsl_matrix_int_swap (   m1  m2  )
    ((-gptr- "gsl_matrix_int *")  m1)
    ((-gptr- "gsl_matrix_int *")  m2)
    (int #{  gsl_matrix_int_swap( $m1 ,$m2 ) #} )
    )


(de gsl_matrix_int_swap_rows (   m  i  j  )
    ((-gptr- "gsl_matrix_int *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-int-)  j)                         ;; const size_t -> int
    (int #{  gsl_matrix_int_swap_rows( $m ,$i ,$j ) #} )
    )

(de gsl_matrix_int_swap_columns (   m  i  j  )
    ((-gptr- "gsl_matrix_int *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-int-)  j)                         ;; const size_t -> int
    (int #{  gsl_matrix_int_swap_columns( $m ,$i ,$j )  #} )
    )

(de gsl_matrix_int_swap_rowcol (   m  i  j  )
    ((-gptr- "gsl_matrix_int *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-int-)  j)                         ;; const size_t -> int
    (int #{  gsl_matrix_int_swap_rowcol( $m ,$i ,$j ) #} )
    )

(de gsl_matrix_int_transpose (   m  )
    ((-gptr- "gsl_matrix_int *")  m)
    (int #{  gsl_matrix_int_transpose ( $m )  #} )
    )

(de gsl_matrix_int_transpose_memcpy (   dest  src  )
    ((-gptr- "gsl_matrix_int *")  dest)
    ((-gptr- "const gsl_matrix_int *")  src)
    (int #{  gsl_matrix_int_transpose_memcpy ( $dest ,$src ) #} )
    )


(de gsl_matrix_int_max (   m  )
    ((-gptr- "const gsl_matrix_int *")  m)
    (int #{  gsl_matrix_int_max ( $m ) #} )
    )

(de gsl_matrix_int_min (   m  )
    ((-gptr- "const gsl_matrix_int *")  m)
    (int #{  gsl_matrix_int_min ( $m )  #} )
    )

(de gsl_matrix_int_minmax (   m  min_out  max_out  )
    ((-gptr- "const gsl_matrix_int *")  m)
    ((-gptr- "int *")  min_out)
    ((-gptr- "int *")  max_out)
    #{  gsl_matrix_int_minmax ( $m ,$min_out ,$max_out ); #} 
    ()
    )


(de gsl_matrix_int_max_index (   m  imax  jmax  )
    ((-gptr- "const gsl_matrix_int *")  m)
    ((-gptr- "size_t *")  imax)
    ((-gptr- "size_t *") jmax)
    #{  gsl_matrix_int_max_index ( $m ,$imax ,$jmax ); #} 
    ()
    )

(de gsl_matrix_int_min_index (   m  imin  jmin  )
    ((-gptr- "const gsl_matrix_int *")  m)
    ((-gptr- "size_t *")  imin)
    ((-gptr- "size_t *") jmin)
    #{  gsl_matrix_int_min_index ( $m ,$imin ,$jmin );  #} 
    ()
    )

(de gsl_matrix_int_minmax_index (   m  imin  jmin  imax  jmax  )
    ((-gptr- "const gsl_matrix_int *")  m)
    ((-gptr- "size_t *")  imin)
    ((-gptr- "size_t *")  jmin)
    ((-gptr- "size_t *")  imax)
    ((-gptr- "size_t *")  jmax)
    #{  gsl_matrix_int_minmax_index ( $m ,$imin ,$jmin ,$imax ,$jmax ); #} 
    ()
    )


(de gsl_matrix_int_isnull (   m  )
    ((-gptr- "const gsl_matrix_int *")  m)
    (int #{  gsl_matrix_int_isnull ( $m ) #} )
    )


(de gsl_matrix_int_add (   a  b  )
    ((-gptr- "gsl_matrix_int *")  a)
    ((-gptr- "const gsl_matrix_int *")  b)
    (int #{  gsl_matrix_int_add ( $a ,$b ) #} )
    )

(de gsl_matrix_int_sub (   a  b  )
    ((-gptr- "gsl_matrix_int *")  a)
    ((-gptr- "const gsl_matrix_int *")  b)
    (int #{  gsl_matrix_int_sub ( $a ,$b )  #} )
    )

(de gsl_matrix_int_mul_elements (   a  b  )
    ((-gptr- "gsl_matrix_int *")  a)
    ((-gptr- "const gsl_matrix_int *")  b)
    (int #{  gsl_matrix_int_mul_elements ( $a ,$b ) #} )
    )

(de gsl_matrix_int_div_elements (   a  b  )
    ((-gptr- "gsl_matrix_int *")  a)
    ((-gptr- "const gsl_matrix_int *")  b)
    (int #{  gsl_matrix_int_div_elements ( $a ,$b )  #} )
    )

(de gsl_matrix_int_scale (   a  x  )
    ((-gptr- "gsl_matrix_int *")  a)
    ((-double-)  x)
    (int #{  gsl_matrix_int_scale ( $a ,$x ) #} )
    )

(de gsl_matrix_int_add_constant (   a  x  )
    ((-gptr- "gsl_matrix_int *")  a)
    ((-double-)  x)
    (int #{  gsl_matrix_int_add_constant ( $a ,$x )  #} )
    )

(if (> gsl-libversion 1.0)
    (de gsl_matrix_int_add_diagonal (   a  x  )
      ((-gptr- "gsl_matrix_int *")  a)
      ((-double-)  x)
      (int #{  gsl_matrix_int_add_diagonal ( $a ,$x ) #} )
      )
  (de gsl_matrix_int_add_diagonal (   a  x  )
    ((-gptr- "gsl_matrix_int *")  a)
    ((-double-)  x)
    (error "not available in this version of GSL") ()))




(de gsl_matrix_int_get_row (   v  m  i  )
    ((-gptr- "gsl_vector_int *")  v)
    ((-gptr- "const gsl_matrix_int *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    (int #{  gsl_matrix_int_get_row( $v ,$m ,$i )  #} )
    )

(de gsl_matrix_int_get_col (   v  m  j  )
    ((-gptr- "gsl_vector_int *")  v)
    ((-gptr- "const gsl_matrix_int *")  m)
    ((-int-)  j)                         ;; const size_t -> int
    (int #{  gsl_matrix_int_get_col( $v ,$m ,$j ) #} )
    )

(de gsl_matrix_int_set_row (   m  i  v  )
    ((-gptr- "gsl_matrix_int *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-gptr- "const gsl_vector_int *")  v)
    (int #{  gsl_matrix_int_set_row( $m ,$i ,$v )  #} )
    )

(de gsl_matrix_int_set_col (   m  j  v  )
    ((-gptr- "gsl_matrix_int *")  m)
    ((-int-)  j)                         ;; const size_t -> int
    ((-gptr- "const gsl_vector_int *")  v)
    (int #{  gsl_matrix_int_set_col( $m ,$j ,$v ) #} )
    )




(de gsl_matrix_long_double_alloc (   n1  n2  )
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    (gptr  #{  gsl_matrix_long_double_alloc ( $n1 ,$n2 )  #} )   ;; gsl_matrix_long_double * -> gptr
    )


(de gsl_matrix_long_double_calloc (   n1  n2  )
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    (gptr   #{  gsl_matrix_long_double_calloc ( $n1 ,$n2 ) #} )   ;; gsl_matrix_long_double * -> gptr
    )


(de gsl_matrix_long_double_alloc_from_block (   b  offset  n1  n2  d2  )
    ((-gptr- "gsl_block_long_double *")  b)
    ((-int-)  offset)                         ;; const size_t -> int
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-int-)  d2)                         ;; const size_t -> int
    (gptr  #{  gsl_matrix_long_double_alloc_from_block ( $b ,$offset ,$n1 ,$n2 ,$d2 )  #} )   ;; gsl_matrix_long_double * -> gptr
    )


(de gsl_matrix_long_double_alloc_from_matrix (   m  k1  k2  n1  n2  )
    ((-gptr- "gsl_matrix_long_double *")  m)
    ((-int-)  k1)                         ;; const size_t -> int
    ((-int-)  k2)                         ;; const size_t -> int
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    (gptr   #{  gsl_matrix_long_double_alloc_from_matrix ( $m ,$k1 ,$k2 ,$n1 ,$n2 ) #} )   ;; gsl_matrix_long_double * -> gptr
    )


(de gsl_vector_long_double_alloc_row_from_matrix (   m  i  )
    ((-gptr- "gsl_matrix_long_double *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    (gptr  #{  gsl_vector_long_double_alloc_row_from_matrix ( $m ,$i )  #} )   ;; gsl_vector_long_double * -> gptr
    )


(de gsl_vector_long_double_alloc_col_from_matrix (   m  j  )
    ((-gptr- "gsl_matrix_long_double *")  m)
    ((-int-)  j)                         ;; const size_t -> int
    (gptr   #{  gsl_vector_long_double_alloc_col_from_matrix ( $m ,$j ) #} )   ;; gsl_vector_long_double * -> gptr
    )


(de gsl_matrix_long_double_free (   m  )
    ((-gptr- "gsl_matrix_long_double *")  m)
    #{  gsl_matrix_long_double_free ( $m ); #} 
    ()
    )




(de gsl_matrix_long_double_submatrix (   m  i  j  n1  n2  view )
    ((-gptr- "gsl_matrix_long_double *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-int-)  j)                         ;; const size_t -> int
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-gptr- "_gsl_matrix_long_double_view *") view)
    #{
    { _gsl_matrix_long_double_view tmp;
    tmp = gsl_matrix_long_double_submatrix ( $m ,$i ,$j ,$n1 ,$n2 );
    memcpy($view,&tmp,sizeof(_gsl_matrix_long_double_view));
    } #} 
    ()
    )


(de gsl_matrix_long_double_row (   m  i  view )
    ((-gptr- "gsl_matrix_long_double *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-gptr- "_gsl_vector_long_double_view *") view)
    #{
    { _gsl_vector_long_double_view tmp;
    tmp = gsl_matrix_long_double_row ( $m ,$i );
    memcpy($view,&tmp,sizeof(_gsl_vector_long_double_view));
    } #} 
    ()
    )


(de gsl_matrix_long_double_column (   m  j  view )
    ((-gptr- "gsl_matrix_long_double *")  m)
    ((-int-)  j)                         ;; const size_t -> int
    ((-gptr- "_gsl_vector_long_double_view *") view)
    #{
    { _gsl_vector_long_double_view tmp;
    tmp = gsl_matrix_long_double_column ( $m ,$j );
    memcpy($view,&tmp,sizeof(_gsl_vector_long_double_view));
    } #} 
    ()
    )


(de gsl_matrix_long_double_diagonal (   m  view )
    ((-gptr- "gsl_matrix_long_double *")  m)
    ((-gptr- "_gsl_vector_long_double_view *") view)
    #{
    { _gsl_vector_long_double_view tmp;
    tmp = gsl_matrix_long_double_diagonal ( $m );
    memcpy($view,&tmp,sizeof(_gsl_vector_long_double_view));
    } #} 
    ()
    )


(de gsl_matrix_long_double_subdiagonal (   m  k  view )
    ((-gptr- "gsl_matrix_long_double *")  m)
    ((-int-)  k)                         ;; const size_t -> int
    ((-gptr- "_gsl_vector_long_double_view *") view)
    #{
    { _gsl_vector_long_double_view tmp;
    tmp = gsl_matrix_long_double_subdiagonal ( $m ,$k );
    memcpy($view,&tmp,sizeof(_gsl_vector_long_double_view));
    } #} 
    ()
    )


(de gsl_matrix_long_double_superdiagonal (   m  k  view )
    ((-gptr- "gsl_matrix_long_double *")  m)
    ((-int-)  k)                         ;; const size_t -> int
    ((-gptr- "_gsl_vector_long_double_view *") view)
    #{
    { _gsl_vector_long_double_view tmp;
    tmp = gsl_matrix_long_double_superdiagonal ( $m ,$k );
    memcpy($view,&tmp,sizeof(_gsl_vector_long_double_view));
    } #} 
    ()
    )


(de gsl_matrix_long_double_view_array (   base  n1  n2  view )
    ((-gptr- "long double *")  base)
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-gptr- "_gsl_matrix_long_double_view *") view)
    #{
    { _gsl_matrix_long_double_view tmp;
    tmp = gsl_matrix_long_double_view_array ( $base ,$n1 ,$n2 );
    memcpy($view,&tmp,sizeof(_gsl_matrix_long_double_view));
    } #} 
    ()
    )


(de gsl_matrix_long_double_view_array_with_tda (   base  n1  n2  tda  view )
    ((-gptr- "long double *")  base)
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-int-)  tda)                         ;; const size_t -> int
    ((-gptr- "_gsl_matrix_long_double_view *") view)
    #{
    { _gsl_matrix_long_double_view tmp;
    tmp = gsl_matrix_long_double_view_array_with_tda ( $base ,$n1 ,$n2 ,$tda );
    memcpy($view,&tmp,sizeof(_gsl_matrix_long_double_view));
    } #} 
    ()
    )



(de gsl_matrix_long_double_view_vector (   v  n1  n2  view )
    ((-gptr- "gsl_vector_long_double *")  v)
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-gptr- "_gsl_matrix_long_double_view *") view)
    #{
    { _gsl_matrix_long_double_view tmp;
    tmp = gsl_matrix_long_double_view_vector ( $v ,$n1 ,$n2 );
    memcpy($view,&tmp,sizeof(_gsl_matrix_long_double_view));
    } #} 
    ()
    )


(de gsl_matrix_long_double_view_vector_with_tda (   v  n1  n2  tda  view )
    ((-gptr- "gsl_vector_long_double *")  v)
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-int-)  tda)                         ;; const size_t -> int
    ((-gptr- "_gsl_matrix_long_double_view *") view)
    #{
    { _gsl_matrix_long_double_view tmp;
    tmp = gsl_matrix_long_double_view_vector_with_tda ( $v ,$n1 ,$n2 ,$tda );
    memcpy($view,&tmp,sizeof(_gsl_matrix_long_double_view));
    } #} 
    ()
    )



(de gsl_matrix_long_double_const_submatrix (   m  i  j  n1  n2  view )
    ((-gptr- "const gsl_matrix_long_double *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-int-)  j)                         ;; const size_t -> int
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-gptr- "_gsl_matrix_long_double_const_view *") view)
    #{
    { _gsl_matrix_long_double_const_view tmp;
    tmp = gsl_matrix_long_double_const_submatrix ( $m ,$i ,$j ,$n1 ,$n2 );
    memcpy($view,&tmp,sizeof(_gsl_matrix_long_double_const_view));
    } #} 
    ()
    )


(de gsl_matrix_long_double_const_row (   m  i  view )
    ((-gptr- "const gsl_matrix_long_double *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-gptr- "_gsl_vector_long_double_const_view *") view)
    #{
    { _gsl_vector_long_double_const_view tmp;
    tmp = gsl_matrix_long_double_const_row ( $m ,$i );
    memcpy($view,&tmp,sizeof(_gsl_vector_long_double_const_view));
    } #} 
    ()
    )


(de gsl_matrix_long_double_const_column (   m  j  view )
    ((-gptr- "const gsl_matrix_long_double *")  m)
    ((-int-)  j)                         ;; const size_t -> int
    ((-gptr- "_gsl_vector_long_double_const_view *") view)
    #{
    { _gsl_vector_long_double_const_view tmp;
    tmp = gsl_matrix_long_double_const_column ( $m ,$j );
    memcpy($view,&tmp,sizeof(_gsl_vector_long_double_const_view));
    } #} 
    ()
    )


(de gsl_matrix_long_double_const_diagonal (   m  view )
    ((-gptr- "const gsl_matrix_long_double *")  m)
    ((-gptr- "_gsl_vector_long_double_const_view *") view)
    #{
    { _gsl_vector_long_double_const_view tmp;
    tmp = gsl_matrix_long_double_const_diagonal ( $m );
    memcpy($view,&tmp,sizeof(_gsl_vector_long_double_const_view));
    } #} 
    ()
    )


(de gsl_matrix_long_double_const_subdiagonal (   m  k  view )
    ((-gptr- "const gsl_matrix_long_double *")  m)
    ((-int-)  k)                         ;; const size_t -> int
    ((-gptr- "_gsl_vector_long_double_const_view *") view)
    #{
    { _gsl_vector_long_double_const_view tmp;
    tmp = gsl_matrix_long_double_const_subdiagonal ( $m ,$k );
    memcpy($view,&tmp,sizeof(_gsl_vector_long_double_const_view));
    } #} 
    ()
    )


(de gsl_matrix_long_double_const_superdiagonal (   m  k  view )
    ((-gptr- "const gsl_matrix_long_double *")  m)
    ((-int-)  k)                         ;; const size_t -> int
    ((-gptr- "_gsl_vector_long_double_const_view *") view)
    #{
    { _gsl_vector_long_double_const_view tmp;
    tmp = gsl_matrix_long_double_const_superdiagonal ( $m ,$k );
    memcpy($view,&tmp,sizeof(_gsl_vector_long_double_const_view));
    } #} 
    ()
    )


(de gsl_matrix_long_double_const_view_array (   base  n1  n2  view )
    ((-gptr- "const long double *")  base)
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-gptr- "_gsl_matrix_long_double_const_view *") view)
    #{
    { _gsl_matrix_long_double_const_view tmp;
    tmp = gsl_matrix_long_double_const_view_array ( $base ,$n1 ,$n2 );
    memcpy($view,&tmp,sizeof(_gsl_matrix_long_double_const_view));
    } #} 
    ()
    )


(de gsl_matrix_long_double_const_view_array_with_tda (   base  n1  n2  tda  view )
    ((-gptr- "const long double *")  base)
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-int-)  tda)                         ;; const size_t -> int
    ((-gptr- "_gsl_matrix_long_double_const_view *") view)
    #{
    { _gsl_matrix_long_double_const_view tmp;
    tmp = gsl_matrix_long_double_const_view_array_with_tda ( $base ,$n1 ,$n2 ,$tda );
    memcpy($view,&tmp,sizeof(_gsl_matrix_long_double_const_view));
    } #} 
    ()
    )


(de gsl_matrix_long_double_const_view_vector (   v  n1  n2  view )
    ((-gptr- "const gsl_vector_long_double *")  v)
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-gptr- "_gsl_matrix_long_double_const_view *") view)
    #{
    { _gsl_matrix_long_double_const_view tmp;
    tmp = gsl_matrix_long_double_const_view_vector ( $v ,$n1 ,$n2 );
    memcpy($view,&tmp,sizeof(_gsl_matrix_long_double_const_view));
    } #} 
    ()
    )


(de gsl_matrix_long_double_const_view_vector_with_tda (   v  n1  n2  tda  view )
    ((-gptr- "const gsl_vector_long_double *")  v)
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-int-)  tda)                         ;; const size_t -> int
    ((-gptr- "_gsl_matrix_long_double_const_view *") view)
    #{
    { _gsl_matrix_long_double_const_view tmp;
    tmp = gsl_matrix_long_double_const_view_vector_with_tda ( $v ,$n1 ,$n2 ,$tda );
    memcpy($view,&tmp,sizeof(_gsl_matrix_long_double_const_view));
    } #} 
    ()
    )




(de gsl_matrix_long_double_get (   m  i  j  )
    ((-gptr- "const gsl_matrix_long_double *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-int-)  j)                         ;; const size_t -> int
    (double   #{  gsl_matrix_long_double_get( $m ,$i ,$j ) #} )             ;; long double -> double
    )

(de gsl_matrix_long_double_set (   m  i  j  x  )
    ((-gptr- "gsl_matrix_long_double *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-int-)  j)                         ;; const size_t -> int
    ((-double-)  x)                      ;; long double -> double
    #{  gsl_matrix_long_double_set( $m ,$i ,$j ,$x );  #} 
    ()
    )


(de gsl_matrix_long_double_ptr (   m  i  j  )
    ((-gptr- "gsl_matrix_long_double *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-int-)  j)                         ;; const size_t -> int
    (gptr #{  gsl_matrix_long_double_ptr( $m ,$i ,$j )  #} )   ;; long double * -> gptr
    )

(de gsl_matrix_long_double_const_ptr (   m  i  j  )
    ((-gptr- "const gsl_matrix_long_double *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-int-)  j)                         ;; const size_t -> int
    (gptr #{  gsl_matrix_long_double_const_ptr( $m ,$i ,$j ) #} )   ;; const long double * -> gptr
    )


(de gsl_matrix_long_double_set_zero (   m  )
    ((-gptr- "gsl_matrix_long_double *")  m)
    #{  gsl_matrix_long_double_set_zero ( $m ); #} 
    ()
    )

(de gsl_matrix_long_double_set_identity (   m  )
    ((-gptr- "gsl_matrix_long_double *")  m)
    #{  gsl_matrix_long_double_set_identity ( $m );  #} 
    ()
    )

(de gsl_matrix_long_double_set_all (   m  x  )
    ((-gptr- "gsl_matrix_long_double *")  m)
    ((-double-)  x)                             ;; long double -> double
    #{  gsl_matrix_long_double_set_all ( $m ,$x ); #} 
    ()
    )


(de gsl_matrix_long_double_fread (   stream  m  )
    ((-gptr- "FILE *")  stream)
    ((-gptr- "gsl_matrix_long_double *")  m)
    (int #{  gsl_matrix_long_double_fread ( $stream ,$m )  #} )
    )

(de gsl_matrix_long_double_fwrite (   stream  m  )
    ((-gptr- "FILE *")  stream)
    ((-gptr- "const gsl_matrix_long_double *")  m)
    (int #{  gsl_matrix_long_double_fwrite ( $stream ,$m )   #} )
    )

(de gsl_matrix_long_double_fscanf (   stream  m  )
    ((-gptr- "FILE *")  stream)
    ((-gptr- "gsl_matrix_long_double *")  m)
    (int #{  gsl_matrix_long_double_fscanf ( $stream ,$m ) #} )
    )

(de gsl_matrix_long_double_fprintf (   stream  m  format  )
    ((-gptr- "FILE *")  stream)
    ((-gptr- "const gsl_matrix_long_double *")  m)
    ((-gptr- "const char *")  format)
    (int #{  gsl_matrix_long_double_fprintf ( $stream ,$m ,$format )  #} )
    )


(de gsl_matrix_long_double_memcpy (   dest  src  )
    ((-gptr- "gsl_matrix_long_double *")  dest)
    ((-gptr- "const gsl_matrix_long_double *")  src)
    (int #{  gsl_matrix_long_double_memcpy( $dest ,$src )  #} )
    )

(de gsl_matrix_long_double_swap (   m1  m2  )
    ((-gptr- "gsl_matrix_long_double *")  m1)
    ((-gptr- "gsl_matrix_long_double *")  m2)
    (int #{  gsl_matrix_long_double_swap( $m1 ,$m2 ) #} )
    )


(de gsl_matrix_long_double_swap_rows (   m  i  j  )
    ((-gptr- "gsl_matrix_long_double *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-int-)  j)                         ;; const size_t -> int
    (int #{  gsl_matrix_long_double_swap_rows( $m ,$i ,$j ) #} )
    )

(de gsl_matrix_long_double_swap_columns (   m  i  j  )
    ((-gptr- "gsl_matrix_long_double *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-int-)  j)                         ;; const size_t -> int
    (int #{  gsl_matrix_long_double_swap_columns( $m ,$i ,$j )  #} )
    )

(de gsl_matrix_long_double_swap_rowcol (   m  i  j  )
    ((-gptr- "gsl_matrix_long_double *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-int-)  j)                         ;; const size_t -> int
    (int #{  gsl_matrix_long_double_swap_rowcol( $m ,$i ,$j ) #} )
    )

(de gsl_matrix_long_double_transpose (   m  )
    ((-gptr- "gsl_matrix_long_double *")  m)
    (int #{  gsl_matrix_long_double_transpose ( $m )  #} )
    )

(de gsl_matrix_long_double_transpose_memcpy (   dest  src  )
    ((-gptr- "gsl_matrix_long_double *")  dest)
    ((-gptr- "const gsl_matrix_long_double *")  src)
    (int #{  gsl_matrix_long_double_transpose_memcpy ( $dest ,$src ) #} )
    )


(de gsl_matrix_long_double_max (   m  )
    ((-gptr- "const gsl_matrix_long_double *")  m)
    (double #{  gsl_matrix_long_double_max ( $m ) #} )         ;; long double -> double 
    )

(de gsl_matrix_long_double_min (   m  )
    ((-gptr- "const gsl_matrix_long_double *")  m)
    (double #{  gsl_matrix_long_double_min ( $m )  #} )            ;; long double -> double
    )

(de gsl_matrix_long_double_minmax (   m  min_out  max_out  )
    ((-gptr- "const gsl_matrix_long_double *")  m)
    ((-gptr- "long double *")  min_out)
    ((-gptr- "long double *")  max_out)
    #{  gsl_matrix_long_double_minmax ( $m ,$min_out ,$max_out ); #} 
    ()
    )


(de gsl_matrix_long_double_max_index (   m  imax  jmax  )
    ((-gptr- "const gsl_matrix_long_double *")  m)
    ((-gptr- "size_t *")  imax)
    ((-gptr- "size_t *") jmax)
    #{  gsl_matrix_long_double_max_index ( $m ,$imax ,$jmax ); #} 
    ()
    )

(de gsl_matrix_long_double_min_index (   m  imin  jmin  )
    ((-gptr- "const gsl_matrix_long_double *")  m)
    ((-gptr- "size_t *")  imin)
    ((-gptr- "size_t *") jmin)
    #{  gsl_matrix_long_double_min_index ( $m ,$imin ,$jmin );  #} 
    ()
    )

(de gsl_matrix_long_double_minmax_index (   m  imin  jmin  imax  jmax  )
    ((-gptr- "const gsl_matrix_long_double *")  m)
    ((-gptr- "size_t *")  imin)
    ((-gptr- "size_t *")  jmin)
    ((-gptr- "size_t *")  imax)
    ((-gptr- "size_t *")  jmax)
    #{  gsl_matrix_long_double_minmax_index ( $m ,$imin ,$jmin ,$imax ,$jmax ); #} 
    ()
    )


(de gsl_matrix_long_double_isnull (   m  )
    ((-gptr- "const gsl_matrix_long_double *")  m)
    (int #{  gsl_matrix_long_double_isnull ( $m ) #} )
    )


(de gsl_matrix_long_double_add (   a  b  )
    ((-gptr- "gsl_matrix_long_double *")  a)
    ((-gptr- "const gsl_matrix_long_double *")  b)
    (int #{  gsl_matrix_long_double_add ( $a ,$b ) #} )
    )

(de gsl_matrix_long_double_sub (   a  b  )
    ((-gptr- "gsl_matrix_long_double *")  a)
    ((-gptr- "const gsl_matrix_long_double *")  b)
    (int #{  gsl_matrix_long_double_sub ( $a ,$b )  #} )
    )

(de gsl_matrix_long_double_mul_elements (   a  b  )
    ((-gptr- "gsl_matrix_long_double *")  a)
    ((-gptr- "const gsl_matrix_long_double *")  b)
    (int #{  gsl_matrix_long_double_mul_elements ( $a ,$b ) #} )
    )

(de gsl_matrix_long_double_div_elements (   a  b  )
    ((-gptr- "gsl_matrix_long_double *")  a)
    ((-gptr- "const gsl_matrix_long_double *")  b)
    (int #{  gsl_matrix_long_double_div_elements ( $a ,$b )  #} )
    )

(de gsl_matrix_long_double_scale (   a  x  )
    ((-gptr- "gsl_matrix_long_double *")  a)
    ((-double-)  x)
    (int #{  gsl_matrix_long_double_scale ( $a ,$x ) #} )
    )

(de gsl_matrix_long_double_add_constant (   a  x  )
    ((-gptr- "gsl_matrix_long_double *")  a)
    ((-double-)  x)
    (int #{  gsl_matrix_long_double_add_constant ( $a ,$x )  #} )
    )

(if (> gsl-libversion 1.0)
    (de gsl_matrix_long_double_add_diagonal (   a  x  )
      ((-gptr- "gsl_matrix_long_double *")  a)
      ((-double-)  x)
      (int #{  gsl_matrix_long_double_add_diagonal ( $a ,$x ) #} )
      )
  (de gsl_matrix_long_double_add_diagonal (   a  x  )
    ((-gptr- "gsl_matrix_long_double *")  a)
    ((-double-)  x)
    (error "not available in this version of GSL") ()))




(de gsl_matrix_long_double_get_row (   v  m  i  )
    ((-gptr- "gsl_vector_long_double *")  v)
    ((-gptr- "const gsl_matrix_long_double *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    (int #{  gsl_matrix_long_double_get_row( $v ,$m ,$i )  #} )
    )

(de gsl_matrix_long_double_get_col (   v  m  j  )
    ((-gptr- "gsl_vector_long_double *")  v)
    ((-gptr- "const gsl_matrix_long_double *")  m)
    ((-int-)  j)                         ;; const size_t -> int
    (int #{  gsl_matrix_long_double_get_col( $v ,$m ,$j ) #} )
    )

(de gsl_matrix_long_double_set_row (   m  i  v  )
    ((-gptr- "gsl_matrix_long_double *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-gptr- "const gsl_vector_long_double *")  v)
    (int #{  gsl_matrix_long_double_set_row( $m ,$i ,$v )  #} )
    )

(de gsl_matrix_long_double_set_col (   m  j  v  )
    ((-gptr- "gsl_matrix_long_double *")  m)
    ((-int-)  j)                         ;; const size_t -> int
    ((-gptr- "const gsl_vector_long_double *")  v)
    (int #{  gsl_matrix_long_double_set_col( $m ,$j ,$v ) #} )
    )





(de gsl_matrix_long_alloc (   n1  n2  )
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    (gptr   #{  gsl_matrix_long_alloc ( $n1 ,$n2 ) #} )   ;; gsl_matrix_long * -> gptr
    )


(de gsl_matrix_long_calloc (   n1  n2  )
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    (gptr  #{  gsl_matrix_long_calloc ( $n1 ,$n2 )  #} )   ;; gsl_matrix_long * -> gptr
    )


(de gsl_matrix_long_alloc_from_block (   b  offset  n1  n2  d2  )
    ((-gptr- "gsl_block_long *")  b)
    ((-int-)  offset)                         ;; const size_t -> int
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-int-)  d2)                         ;; const size_t -> int
    (gptr   #{  gsl_matrix_long_alloc_from_block ( $b ,$offset ,$n1 ,$n2 ,$d2 ) #} )   ;; gsl_matrix_long * -> gptr
    )


(de gsl_matrix_long_alloc_from_matrix (   m  k1  k2  n1  n2  )
    ((-gptr- "gsl_matrix_long *")  m)
    ((-int-)  k1)                         ;; const size_t -> int
    ((-int-)  k2)                         ;; const size_t -> int
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    (gptr  #{  gsl_matrix_long_alloc_from_matrix ( $m ,$k1 ,$k2 ,$n1 ,$n2 )  #} )   ;; gsl_matrix_long * -> gptr
    )


(de gsl_vector_long_alloc_row_from_matrix (   m  i  )
    ((-gptr- "gsl_matrix_long *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    (gptr   #{  gsl_vector_long_alloc_row_from_matrix ( $m ,$i ) #} )   ;; gsl_vector_long * -> gptr
    )


(de gsl_vector_long_alloc_col_from_matrix (   m  j  )
    ((-gptr- "gsl_matrix_long *")  m)
    ((-int-)  j)                         ;; const size_t -> int
    (gptr  #{  gsl_vector_long_alloc_col_from_matrix ( $m ,$j )  #} )   ;; gsl_vector_long * -> gptr
    )


(de gsl_matrix_long_free (   m  )
    ((-gptr- "gsl_matrix_long *")  m)
    #{  gsl_matrix_long_free ( $m );  #} 
    ()
    )




(de gsl_matrix_long_submatrix (   m  i  j  n1  n2  view )
    ((-gptr- "gsl_matrix_long *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-int-)  j)                         ;; const size_t -> int
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-gptr- "_gsl_matrix_long_view *") view)
    #{
    { _gsl_matrix_long_view tmp;
    tmp = gsl_matrix_long_submatrix ( $m ,$i ,$j ,$n1 ,$n2 );
    memcpy($view,&tmp,sizeof(_gsl_matrix_long_view));
    } #} 
    ()
    )


(de gsl_matrix_long_row (   m  i  view )
    ((-gptr- "gsl_matrix_long *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-gptr- "_gsl_vector_long_view *") view)
    #{
    { _gsl_vector_long_view tmp;
    tmp = gsl_matrix_long_row ( $m ,$i );
    memcpy($view,&tmp,sizeof(_gsl_vector_long_view));
    } #} 
    ()
    )


(de gsl_matrix_long_column (   m  j  view )
    ((-gptr- "gsl_matrix_long *")  m)
    ((-int-)  j)                         ;; const size_t -> int
    ((-gptr- "_gsl_vector_long_view *") view)
    #{
    { _gsl_vector_long_view tmp;
    tmp = gsl_matrix_long_column ( $m ,$j );
    memcpy($view,&tmp,sizeof(_gsl_vector_long_view));
    } #} 
    ()
    )


(de gsl_matrix_long_diagonal (   m  view )
    ((-gptr- "gsl_matrix_long *")  m)
    ((-gptr- "_gsl_vector_long_view *") view)
    #{
    { _gsl_vector_long_view tmp;
    tmp = gsl_matrix_long_diagonal ( $m );
    memcpy($view,&tmp,sizeof(_gsl_vector_long_view));
    } #} 
    ()
    )


(de gsl_matrix_long_subdiagonal (   m  k  view )
    ((-gptr- "gsl_matrix_long *")  m)
    ((-int-)  k)                         ;; const size_t -> int
    ((-gptr- "_gsl_vector_long_view *") view)
    #{
    { _gsl_vector_long_view tmp;
    tmp = gsl_matrix_long_subdiagonal ( $m ,$k );
    memcpy($view,&tmp,sizeof(_gsl_vector_long_view));
    } #} 
    ()
    )


(de gsl_matrix_long_superdiagonal (   m  k  view )
    ((-gptr- "gsl_matrix_long *")  m)
    ((-int-)  k)                         ;; const size_t -> int
    ((-gptr- "_gsl_vector_long_view *") view)
    #{
    { _gsl_vector_long_view tmp;
    tmp = gsl_matrix_long_superdiagonal ( $m ,$k );
    memcpy($view,&tmp,sizeof(_gsl_vector_long_view));
    } #} 
    ()
    )


(de gsl_matrix_long_view_array (   base  n1  n2  view )
    ((-gptr- "long *")  base)
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-gptr- "_gsl_matrix_long_view *") view)
    #{
    { _gsl_matrix_long_view tmp;
    tmp = gsl_matrix_long_view_array ( $base ,$n1 ,$n2 );
    memcpy($view,&tmp,sizeof(_gsl_matrix_long_view));
    } #} 
    ()
    )


(de gsl_matrix_long_view_array_with_tda (   base  n1  n2  tda  view )
    ((-gptr- "long *")  base)
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-int-)  tda)                         ;; const size_t -> int
    ((-gptr- "_gsl_matrix_long_view *") view)
    #{
    { _gsl_matrix_long_view tmp;
    tmp = gsl_matrix_long_view_array_with_tda ( $base ,$n1 ,$n2 ,$tda );
    memcpy($view,&tmp,sizeof(_gsl_matrix_long_view));
    } #} 
    ()
    )



(de gsl_matrix_long_view_vector (   v  n1  n2  view )
    ((-gptr- "gsl_vector_long *")  v)
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-gptr- "_gsl_matrix_long_view *") view)
    #{
    { _gsl_matrix_long_view tmp;
    tmp = gsl_matrix_long_view_vector ( $v ,$n1 ,$n2 );
    memcpy($view,&tmp,sizeof(_gsl_matrix_long_view));
    } #} 
    ()
    )


(de gsl_matrix_long_view_vector_with_tda (   v  n1  n2  tda  view )
    ((-gptr- "gsl_vector_long *")  v)
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-int-)  tda)                         ;; const size_t -> int
    ((-gptr- "_gsl_matrix_long_view *") view)
    #{
    { _gsl_matrix_long_view tmp;
    tmp = gsl_matrix_long_view_vector_with_tda ( $v ,$n1 ,$n2 ,$tda );
    memcpy($view,&tmp,sizeof(_gsl_matrix_long_view));
    } #} 
    ()
    )



(de gsl_matrix_long_const_submatrix (   m  i  j  n1  n2  view )
    ((-gptr- "const gsl_matrix_long *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-int-)  j)                         ;; const size_t -> int
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-gptr- "_gsl_matrix_long_const_view *") view)
    #{
    { _gsl_matrix_long_const_view tmp;
    tmp = gsl_matrix_long_const_submatrix ( $m ,$i ,$j ,$n1 ,$n2 );
    memcpy($view,&tmp,sizeof(_gsl_matrix_long_const_view));
    } #} 
    ()
    )


(de gsl_matrix_long_const_row (   m  i  view )
    ((-gptr- "const gsl_matrix_long *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-gptr- "_gsl_vector_long_const_view *") view)
    #{
    { _gsl_vector_long_const_view tmp;
    tmp = gsl_matrix_long_const_row ( $m ,$i );
    memcpy($view,&tmp,sizeof(_gsl_vector_long_const_view));
    } #} 
    ()
    )


(de gsl_matrix_long_const_column (   m  j  view )
    ((-gptr- "const gsl_matrix_long *")  m)
    ((-int-)  j)                         ;; const size_t -> int
    ((-gptr- "_gsl_vector_long_const_view *") view)
    #{
    { _gsl_vector_long_const_view tmp;
    tmp = gsl_matrix_long_const_column ( $m ,$j );
    memcpy($view,&tmp,sizeof(_gsl_vector_long_const_view));
    } #} 
    ()
    )


(de gsl_matrix_long_const_diagonal (   m  view )
    ((-gptr- "const gsl_matrix_long *")  m)
    ((-gptr- "_gsl_vector_long_const_view *") view)
    #{
    { _gsl_vector_long_const_view tmp;
    tmp = gsl_matrix_long_const_diagonal ( $m );
    memcpy($view,&tmp,sizeof(_gsl_vector_long_const_view));
    } #} 
    ()
    )


(de gsl_matrix_long_const_subdiagonal (   m  k  view )
    ((-gptr- "const gsl_matrix_long *")  m)
    ((-int-)  k)                         ;; const size_t -> int
    ((-gptr- "_gsl_vector_long_const_view *") view)
    #{
    { _gsl_vector_long_const_view tmp;
    tmp = gsl_matrix_long_const_subdiagonal ( $m ,$k );
    memcpy($view,&tmp,sizeof(_gsl_vector_long_const_view));
    } #} 
    ()
    )


(de gsl_matrix_long_const_superdiagonal (   m  k  view )
    ((-gptr- "const gsl_matrix_long *")  m)
    ((-int-)  k)                         ;; const size_t -> int
    ((-gptr- "_gsl_vector_long_const_view *") view)
    #{
    { _gsl_vector_long_const_view tmp;
    tmp = gsl_matrix_long_const_superdiagonal ( $m ,$k );
    memcpy($view,&tmp,sizeof(_gsl_vector_long_const_view));
    } #} 
    ()
    )


(de gsl_matrix_long_const_view_array (   base  n1  n2  view )
    ((-gptr- "const long *")  base)
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-gptr- "_gsl_matrix_long_const_view *") view)
    #{
    { _gsl_matrix_long_const_view tmp;
    tmp = gsl_matrix_long_const_view_array ( $base ,$n1 ,$n2 );
    memcpy($view,&tmp,sizeof(_gsl_matrix_long_const_view));
    } #} 
    ()
    )


(de gsl_matrix_long_const_view_array_with_tda (   base  n1  n2  tda  view )
    ((-gptr- "const long *")  base)
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-int-)  tda)                         ;; const size_t -> int
    ((-gptr- "_gsl_matrix_long_const_view *") view)
    #{
    { _gsl_matrix_long_const_view tmp;
    tmp = gsl_matrix_long_const_view_array_with_tda ( $base ,$n1 ,$n2 ,$tda );
    memcpy($view,&tmp,sizeof(_gsl_matrix_long_const_view));
    } #} 
    ()
    )


(de gsl_matrix_long_const_view_vector (   v  n1  n2  view )
    ((-gptr- "const gsl_vector_long *")  v)
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-gptr- "_gsl_matrix_long_const_view *") view)
    #{
    { _gsl_matrix_long_const_view tmp;
    tmp = gsl_matrix_long_const_view_vector ( $v ,$n1 ,$n2 );
    memcpy($view,&tmp,sizeof(_gsl_matrix_long_const_view));
    } #} 
    ()
    )


(de gsl_matrix_long_const_view_vector_with_tda (   v  n1  n2  tda  view )
    ((-gptr- "const gsl_vector_long *")  v)
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-int-)  tda)                         ;; const size_t -> int
    ((-gptr- "_gsl_matrix_long_const_view *") view)
    #{
    { _gsl_matrix_long_const_view tmp;
    tmp = gsl_matrix_long_const_view_vector_with_tda ( $v ,$n1 ,$n2 ,$tda );
    memcpy($view,&tmp,sizeof(_gsl_matrix_long_const_view));
    } #} 
    ()
    )




(de gsl_matrix_long_get (   m  i  j  )
    ((-gptr- "const gsl_matrix_long *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-int-)  j)                         ;; const size_t -> int
    (int   #{  gsl_matrix_long_get( $m ,$i ,$j )  #} )          ;; long -> int
    )

(de gsl_matrix_long_set (   m  i  j  x  )
    ((-gptr- "gsl_matrix_long *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-int-)  j)                         ;; const size_t -> int
    ((-int-)  x)                         ;; long -> int
    #{  gsl_matrix_long_set( $m ,$i ,$j ,$x ); #} 
    ()
    )


(de gsl_matrix_long_ptr (   m  i  j  )
    ((-gptr- "gsl_matrix_long *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-int-)  j)                         ;; const size_t -> int
    (gptr #{  gsl_matrix_long_ptr( $m ,$i ,$j ) #} )   ;; long * -> gptr
    )

(de gsl_matrix_long_const_ptr (   m  i  j  )
    ((-gptr- "const gsl_matrix_long *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-int-)  j)                         ;; const size_t -> int
    (gptr #{  gsl_matrix_long_const_ptr( $m ,$i ,$j )  #} )   ;; const long * -> gptr
    )


(de gsl_matrix_long_set_zero (   m  )
    ((-gptr- "gsl_matrix_long *")  m)
    #{  gsl_matrix_long_set_zero ( $m );  #} 
    ()
    )

(de gsl_matrix_long_set_identity (   m  )
    ((-gptr- "gsl_matrix_long *")  m)
    #{  gsl_matrix_long_set_identity ( $m ); #} 
    ()
    )

(de gsl_matrix_long_set_all (   m  x  )
    ((-gptr- "gsl_matrix_long *")  m)
    ((-int-)  x)                                    ;; long -> int
    #{  gsl_matrix_long_set_all ( $m ,$x );  #} 
    ()
    )


(de gsl_matrix_long_fread (   stream  m  )
    ((-gptr- "FILE *")  stream)
    ((-gptr- "gsl_matrix_long *")  m)
    (int #{  gsl_matrix_long_fread ( $stream ,$m )   #} )
    )

(de gsl_matrix_long_fwrite (   stream  m  )
    ((-gptr- "FILE *")  stream)
    ((-gptr- "const gsl_matrix_long *")  m)
    (int #{  gsl_matrix_long_fwrite ( $stream ,$m )  #} )
    )

(de gsl_matrix_long_fscanf (   stream  m  )
    ((-gptr- "FILE *")  stream)
    ((-gptr- "gsl_matrix_long *")  m)
    (int #{  gsl_matrix_long_fscanf ( $stream ,$m )  #} )
    )

(de gsl_matrix_long_fprintf (   stream  m  format  )
    ((-gptr- "FILE *")  stream)
    ((-gptr- "const gsl_matrix_long *")  m)
    ((-gptr- "const char *")  format)
    (int #{  gsl_matrix_long_fprintf ( $stream ,$m ,$format ) #} )
    )


(de gsl_matrix_long_memcpy (   dest  src  )
    ((-gptr- "gsl_matrix_long *")  dest)
    ((-gptr- "const gsl_matrix_long *")  src)
    (int #{  gsl_matrix_long_memcpy( $dest ,$src ) #} )
    )

(de gsl_matrix_long_swap (   m1  m2  )
    ((-gptr- "gsl_matrix_long *")  m1)
    ((-gptr- "gsl_matrix_long *")  m2)
    (int #{  gsl_matrix_long_swap( $m1 ,$m2 )  #} )
    )


(de gsl_matrix_long_swap_rows (   m  i  j  )
    ((-gptr- "gsl_matrix_long *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-int-)  j)                         ;; const size_t -> int
    (int #{  gsl_matrix_long_swap_rows( $m ,$i ,$j )  #} )
    )

(de gsl_matrix_long_swap_columns (   m  i  j  )
    ((-gptr- "gsl_matrix_long *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-int-)  j)                         ;; const size_t -> int
    (int #{  gsl_matrix_long_swap_columns( $m ,$i ,$j ) #} )
    )

(de gsl_matrix_long_swap_rowcol (   m  i  j  )
    ((-gptr- "gsl_matrix_long *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-int-)  j)                         ;; const size_t -> int
    (int #{  gsl_matrix_long_swap_rowcol( $m ,$i ,$j )  #} )
    )

(de gsl_matrix_long_transpose (   m  )
    ((-gptr- "gsl_matrix_long *")  m)
    (int #{  gsl_matrix_long_transpose ( $m ) #} )
    )

(de gsl_matrix_long_transpose_memcpy (   dest  src  )
    ((-gptr- "gsl_matrix_long *")  dest)
    ((-gptr- "const gsl_matrix_long *")  src)
    (int #{  gsl_matrix_long_transpose_memcpy ( $dest ,$src )  #} )
    )


(de gsl_matrix_long_max (   m  )
    ((-gptr- "const gsl_matrix_long *")  m)
    (int #{  gsl_matrix_long_max ( $m )  #} )       ;; long -> int
    )

(de gsl_matrix_long_min (   m  )
    ((-gptr- "const gsl_matrix_long *")  m)
    (int #{  gsl_matrix_long_min ( $m ) #} )          ;; long -> int
    )

(de gsl_matrix_long_minmax (   m  min_out  max_out  )
    ((-gptr- "const gsl_matrix_long *")  m)
    ((-gptr- "long *")  min_out)
    ((-gptr- "long *")  max_out)
    #{  gsl_matrix_long_minmax ( $m ,$min_out ,$max_out );  #} 
    ()
    )


(de gsl_matrix_long_max_index (   m  imax  jmax  )
    ((-gptr- "const gsl_matrix_long *")  m)
    ((-gptr- "size_t *")  imax)
    ((-gptr- "size_t *") jmax)
    #{  gsl_matrix_long_max_index ( $m ,$imax ,$jmax );  #} 
    ()
    )

(de gsl_matrix_long_min_index (   m  imin  jmin  )
    ((-gptr- "const gsl_matrix_long *")  m)
    ((-gptr- "size_t *")  imin)
    ((-gptr- "size_t *") jmin)
    #{  gsl_matrix_long_min_index ( $m ,$imin ,$jmin ); #} 
    ()
    )

(de gsl_matrix_long_minmax_index (   m  imin  jmin  imax  jmax  )
    ((-gptr- "const gsl_matrix_long *")  m)
    ((-gptr- "size_t *")  imin)
    ((-gptr- "size_t *")  jmin)
    ((-gptr- "size_t *")  imax)
    ((-gptr- "size_t *")  jmax)
    #{  gsl_matrix_long_minmax_index ( $m ,$imin ,$jmin ,$imax ,$jmax );  #} 
    ()
    )


(de gsl_matrix_long_isnull (   m  )
    ((-gptr- "const gsl_matrix_long *")  m)
    (int #{  gsl_matrix_long_isnull ( $m )  #} )
    )


(de gsl_matrix_long_add (   a  b  )
    ((-gptr- "gsl_matrix_long *")  a)
    ((-gptr- "const gsl_matrix_long *")  b)
    (int #{  gsl_matrix_long_add ( $a ,$b )  #} )
    )

(de gsl_matrix_long_sub (   a  b  )
    ((-gptr- "gsl_matrix_long *")  a)
    ((-gptr- "const gsl_matrix_long *")  b)
    (int #{  gsl_matrix_long_sub ( $a ,$b ) #} )
    )

(de gsl_matrix_long_mul_elements (   a  b  )
    ((-gptr- "gsl_matrix_long *")  a)
    ((-gptr- "const gsl_matrix_long *")  b)
    (int #{  gsl_matrix_long_mul_elements ( $a ,$b )  #} )
    )

(de gsl_matrix_long_div_elements (   a  b  )
    ((-gptr- "gsl_matrix_long *")  a)
    ((-gptr- "const gsl_matrix_long *")  b)
    (int #{  gsl_matrix_long_div_elements ( $a ,$b ) #} )
    )

(de gsl_matrix_long_scale (   a  x  )
    ((-gptr- "gsl_matrix_long *")  a)
    ((-double-)  x)
    (int #{  gsl_matrix_long_scale ( $a ,$x )  #} )
    )

(de gsl_matrix_long_add_constant (   a  x  )
    ((-gptr- "gsl_matrix_long *")  a)
    ((-double-)  x)
    (int #{  gsl_matrix_long_add_constant ( $a ,$x ) #} )
    )

(if (> gsl-libversion 1.0)
    (de gsl_matrix_long_add_diagonal (   a  x  )
      ((-gptr- "gsl_matrix_long *")  a)
      ((-double-)  x)
      (int #{  gsl_matrix_long_add_diagonal ( $a ,$x )  #} )
      )
  (de gsl_matrix_long_add_diagonal (   a  x  )
    ((-gptr- "gsl_matrix_long *")  a)
    ((-double-)  x)
    (error "not available in this version of GSL") ()))





(de gsl_matrix_long_get_row (   v  m  i  )
    ((-gptr- "gsl_vector_long *")  v)
    ((-gptr- "const gsl_matrix_long *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    (int #{  gsl_matrix_long_get_row( $v ,$m ,$i ) #} )
    )

(de gsl_matrix_long_get_col (   v  m  j  )
    ((-gptr- "gsl_vector_long *")  v)
    ((-gptr- "const gsl_matrix_long *")  m)
    ((-int-)  j)                         ;; const size_t -> int
    (int #{  gsl_matrix_long_get_col( $v ,$m ,$j )  #} )
    )

(de gsl_matrix_long_set_row (   m  i  v  )
    ((-gptr- "gsl_matrix_long *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-gptr- "const gsl_vector_long *")  v)
    (int #{  gsl_matrix_long_set_row( $m ,$i ,$v ) #} )
    )

(de gsl_matrix_long_set_col (   m  j  v  )
    ((-gptr- "gsl_matrix_long *")  m)
    ((-int-)  j)                         ;; const size_t -> int
    ((-gptr- "const gsl_vector_long *")  v)
    (int #{  gsl_matrix_long_set_col( $m ,$j ,$v )  #} )
    )



(de gsl_matrix_short_alloc (   n1  n2  )
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    (gptr  #{  gsl_matrix_short_alloc ( $n1 ,$n2 )  #} )   ;; gsl_matrix_short * -> gptr
    )


(de gsl_matrix_short_calloc (   n1  n2  )
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    (gptr   #{  gsl_matrix_short_calloc ( $n1 ,$n2 ) #} )   ;; gsl_matrix_short * -> gptr
    )


(de gsl_matrix_short_alloc_from_block (   b  offset  n1  n2  d2  )
    ((-gptr- "gsl_block_short *")  b)
    ((-int-)  offset)                         ;; const size_t -> int
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-int-)  d2)                         ;; const size_t -> int
    (gptr  #{  gsl_matrix_short_alloc_from_block ( $b ,$offset ,$n1 ,$n2 ,$d2 )  #} )   ;; gsl_matrix_short * -> gptr
    )


(de gsl_matrix_short_alloc_from_matrix (   m  k1  k2  n1  n2  )
    ((-gptr- "gsl_matrix_short *")  m)
    ((-int-)  k1)                         ;; const size_t -> int
    ((-int-)  k2)                         ;; const size_t -> int
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    (gptr   #{  gsl_matrix_short_alloc_from_matrix ( $m ,$k1 ,$k2 ,$n1 ,$n2 ) #} )   ;; gsl_matrix_short * -> gptr
    )


(de gsl_vector_short_alloc_row_from_matrix (   m  i  )
    ((-gptr- "gsl_matrix_short *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    (gptr  #{  gsl_vector_short_alloc_row_from_matrix ( $m ,$i )  #} )   ;; gsl_vector_short * -> gptr
    )


(de gsl_vector_short_alloc_col_from_matrix (   m  j  )
    ((-gptr- "gsl_matrix_short *")  m)
    ((-int-)  j)                         ;; const size_t -> int
    (gptr   #{  gsl_vector_short_alloc_col_from_matrix ( $m ,$j ) #} )   ;; gsl_vector_short * -> gptr
    )


(de gsl_matrix_short_free (   m  )
    ((-gptr- "gsl_matrix_short *")  m)
    #{  gsl_matrix_short_free ( $m ); #} 
    ()
    )




(de gsl_matrix_short_submatrix (   m  i  j  n1  n2  view )
    ((-gptr- "gsl_matrix_short *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-int-)  j)                         ;; const size_t -> int
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-gptr- "_gsl_matrix_short_view *") view)
    #{
    { _gsl_matrix_short_view tmp;
    tmp = gsl_matrix_short_submatrix ( $m ,$i ,$j ,$n1 ,$n2 );
    memcpy($view,&tmp,sizeof(_gsl_matrix_short_view));
    } #} 
    ()
    )


(de gsl_matrix_short_row (   m  i  view )
    ((-gptr- "gsl_matrix_short *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-gptr- "_gsl_vector_short_view *") view)
    #{
    { _gsl_vector_short_view tmp;
    tmp = gsl_matrix_short_row ( $m ,$i );
    memcpy($view,&tmp,sizeof(_gsl_vector_short_view));
    } #} 
    ()
    )


(de gsl_matrix_short_column (   m  j  view )
    ((-gptr- "gsl_matrix_short *")  m)
    ((-int-)  j)                         ;; const size_t -> int
    ((-gptr- "_gsl_vector_short_view *") view)
    #{
    { _gsl_vector_short_view tmp;
    tmp = gsl_matrix_short_column ( $m ,$j );
    memcpy($view,&tmp,sizeof(_gsl_vector_short_view));
    } #} 
    ()
    )


(de gsl_matrix_short_diagonal (   m  view )
    ((-gptr- "gsl_matrix_short *")  m)
    ((-gptr- "_gsl_vector_short_view *") view)
    #{
    { _gsl_vector_short_view tmp;
    tmp = gsl_matrix_short_diagonal ( $m );
    memcpy($view,&tmp,sizeof(_gsl_vector_short_view));
    } #} 
    ()
    )


(de gsl_matrix_short_subdiagonal (   m  k  view )
    ((-gptr- "gsl_matrix_short *")  m)
    ((-int-)  k)                         ;; const size_t -> int
    ((-gptr- "_gsl_vector_short_view *") view)
    #{
    { _gsl_vector_short_view tmp;
    tmp = gsl_matrix_short_subdiagonal ( $m ,$k );
    memcpy($view,&tmp,sizeof(_gsl_vector_short_view));
    } #} 
    ()
    )


(de gsl_matrix_short_superdiagonal (   m  k  view )
    ((-gptr- "gsl_matrix_short *")  m)
    ((-int-)  k)                         ;; const size_t -> int
    ((-gptr- "_gsl_vector_short_view *") view)
    #{
    { _gsl_vector_short_view tmp;
    tmp = gsl_matrix_short_superdiagonal ( $m ,$k );
    memcpy($view,&tmp,sizeof(_gsl_vector_short_view));
    } #} 
    ()
    )


(de gsl_matrix_short_view_array (   base  n1  n2  view )
    ((-gptr- "short *")  base)
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-gptr- "_gsl_matrix_short_view *") view)
    #{
    { _gsl_matrix_short_view tmp;
    tmp = gsl_matrix_short_view_array ( $base ,$n1 ,$n2 );
    memcpy($view,&tmp,sizeof(_gsl_matrix_short_view));
    } #} 
    ()
    )


(de gsl_matrix_short_view_array_with_tda (   base  n1  n2  tda  view )
    ((-gptr- "short *")  base)
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-int-)  tda)                         ;; const size_t -> int
    ((-gptr- "_gsl_matrix_short_view *") view)
    #{
    { _gsl_matrix_short_view tmp;
    tmp = gsl_matrix_short_view_array_with_tda ( $base ,$n1 ,$n2 ,$tda );
    memcpy($view,&tmp,sizeof(_gsl_matrix_short_view));
    } #} 
    ()
    )



(de gsl_matrix_short_view_vector (   v  n1  n2  view )
    ((-gptr- "gsl_vector_short *")  v)
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-gptr- "_gsl_matrix_short_view *") view)
    #{
    { _gsl_matrix_short_view tmp;
    tmp = gsl_matrix_short_view_vector ( $v ,$n1 ,$n2 );
    memcpy($view,&tmp,sizeof(_gsl_matrix_short_view));
    } #} 
    ()
    )


(de gsl_matrix_short_view_vector_with_tda (   v  n1  n2  tda  view )
    ((-gptr- "gsl_vector_short *")  v)
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-int-)  tda)                         ;; const size_t -> int
    ((-gptr- "_gsl_matrix_short_view *") view)
    #{
    { _gsl_matrix_short_view tmp;
    tmp = gsl_matrix_short_view_vector_with_tda ( $v ,$n1 ,$n2 ,$tda );
    memcpy($view,&tmp,sizeof(_gsl_matrix_short_view));
    } #} 
    ()
    )



(de gsl_matrix_short_const_submatrix (   m  i  j  n1  n2  view )
    ((-gptr- "const gsl_matrix_short *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-int-)  j)                         ;; const size_t -> int
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-gptr- "_gsl_matrix_short_const_view *") view)
    #{
    { _gsl_matrix_short_const_view tmp;
    tmp = gsl_matrix_short_const_submatrix ( $m ,$i ,$j ,$n1 ,$n2 );
    memcpy($view,&tmp,sizeof(_gsl_matrix_short_const_view));
    } #} 
    ()
    )


(de gsl_matrix_short_const_row (   m  i  view )
    ((-gptr- "const gsl_matrix_short *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-gptr- "_gsl_vector_short_const_view *") view)
    #{
    { _gsl_vector_short_const_view tmp;
    tmp = gsl_matrix_short_const_row ( $m ,$i );
    memcpy($view,&tmp,sizeof(_gsl_vector_short_const_view));
    } #} 
    ()
    )


(de gsl_matrix_short_const_column (   m  j  view )
    ((-gptr- "const gsl_matrix_short *")  m)
    ((-int-)  j)                         ;; const size_t -> int
    ((-gptr- "_gsl_vector_short_const_view *") view)
    #{
    { _gsl_vector_short_const_view tmp;
    tmp = gsl_matrix_short_const_column ( $m ,$j );
    memcpy($view,&tmp,sizeof(_gsl_vector_short_const_view));
    } #} 
    ()
    )


(de gsl_matrix_short_const_diagonal (   m  view )
    ((-gptr- "const gsl_matrix_short *")  m)
    ((-gptr- "_gsl_vector_short_const_view *") view)
    #{
    { _gsl_vector_short_const_view tmp;
    tmp = gsl_matrix_short_const_diagonal ( $m );
    memcpy($view,&tmp,sizeof(_gsl_vector_short_const_view));
    } #} 
    ()
    )


(de gsl_matrix_short_const_subdiagonal (   m  k  view )
    ((-gptr- "const gsl_matrix_short *")  m)
    ((-int-)  k)                         ;; const size_t -> int
    ((-gptr- "_gsl_vector_short_const_view *") view)
    #{
    { _gsl_vector_short_const_view tmp;
    tmp = gsl_matrix_short_const_subdiagonal ( $m ,$k );
    memcpy($view,&tmp,sizeof(_gsl_vector_short_const_view));
    } #} 
    ()
    )


(de gsl_matrix_short_const_superdiagonal (   m  k  view )
    ((-gptr- "const gsl_matrix_short *")  m)
    ((-int-)  k)                         ;; const size_t -> int
    ((-gptr- "_gsl_vector_short_const_view *") view)
    #{
    { _gsl_vector_short_const_view tmp;
    tmp = gsl_matrix_short_const_superdiagonal ( $m ,$k );
    memcpy($view,&tmp,sizeof(_gsl_vector_short_const_view));
    } #} 
    ()
    )


(de gsl_matrix_short_const_view_array (   base  n1  n2  view )
    ((-gptr- "const short *")  base)
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-gptr- "_gsl_matrix_short_const_view *") view)
    #{
    { _gsl_matrix_short_const_view tmp;
    tmp = gsl_matrix_short_const_view_array ( $base ,$n1 ,$n2 );
    memcpy($view,&tmp,sizeof(_gsl_matrix_short_const_view));
    } #} 
    ()
    )


(de gsl_matrix_short_const_view_array_with_tda (   base  n1  n2  tda  view )
    ((-gptr- "const short *")  base)
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-int-)  tda)                         ;; const size_t -> int
    ((-gptr- "_gsl_matrix_short_const_view *") view)
    #{
    { _gsl_matrix_short_const_view tmp;
    tmp = gsl_matrix_short_const_view_array_with_tda ( $base ,$n1 ,$n2 ,$tda );
    memcpy($view,&tmp,sizeof(_gsl_matrix_short_const_view));
    } #} 
    ()
    )


(de gsl_matrix_short_const_view_vector (   v  n1  n2  view )
    ((-gptr- "const gsl_vector_short *")  v)
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-gptr- "_gsl_matrix_short_const_view *") view)
    #{
    { _gsl_matrix_short_const_view tmp;
    tmp = gsl_matrix_short_const_view_vector ( $v ,$n1 ,$n2 );
    memcpy($view,&tmp,sizeof(_gsl_matrix_short_const_view));
    } #} 
    ()
    )


(de gsl_matrix_short_const_view_vector_with_tda (   v  n1  n2  tda  view )
    ((-gptr- "const gsl_vector_short *")  v)
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-int-)  tda)                         ;; const size_t -> int
    ((-gptr- "_gsl_matrix_short_const_view *") view)
    #{
    { _gsl_matrix_short_const_view tmp;
    tmp = gsl_matrix_short_const_view_vector_with_tda ( $v ,$n1 ,$n2 ,$tda );
    memcpy($view,&tmp,sizeof(_gsl_matrix_short_const_view));
    } #} 
    ()
    )




(de gsl_matrix_short_get (   m  i  j  )
    ((-gptr- "const gsl_matrix_short *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-int-)  j)                         ;; const size_t -> int
    (int   #{  gsl_matrix_short_get( $m ,$i ,$j ) #} )       ;; short -> int
    )

(de gsl_matrix_short_set (   m  i  j  x  )
    ((-gptr- "gsl_matrix_short *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-int-)  j)                         ;; const size_t -> int
    ((-int-)  x)                             ;; short -> int
    #{  gsl_matrix_short_set( $m ,$i ,$j ,$x );  #} 
    ()
    )


(de gsl_matrix_short_ptr (   m  i  j  )
    ((-gptr- "gsl_matrix_short *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-int-)  j)                         ;; const size_t -> int
    (gptr #{  gsl_matrix_short_ptr( $m ,$i ,$j )  #} )   ;; short * -> gptr
    )

(de gsl_matrix_short_const_ptr (   m  i  j  )
    ((-gptr- "const gsl_matrix_short *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-int-)  j)                         ;; const size_t -> int
    (gptr #{  gsl_matrix_short_const_ptr( $m ,$i ,$j ) #} )   ;; const short * -> gptr
    )


(de gsl_matrix_short_set_zero (   m  )
    ((-gptr- "gsl_matrix_short *")  m)
    #{  gsl_matrix_short_set_zero ( $m ); #} 
    ()
    )

(de gsl_matrix_short_set_identity (   m  )
    ((-gptr- "gsl_matrix_short *")  m)
    #{  gsl_matrix_short_set_identity ( $m );  #} 
    ()
    )

(de gsl_matrix_short_set_all (   m  x  )
    ((-gptr- "gsl_matrix_short *")  m)
    ((-int-)  x)                               ;; short -> int
    #{  gsl_matrix_short_set_all ( $m ,$x ); #} 
    ()
    )


(de gsl_matrix_short_fread (   stream  m  )
    ((-gptr- "FILE *")  stream)
    ((-gptr- "gsl_matrix_short *")  m)
    (int #{  gsl_matrix_short_fread ( $stream ,$m )  #} )
    )

(de gsl_matrix_short_fwrite (   stream  m  )
    ((-gptr- "FILE *")  stream)
    ((-gptr- "const gsl_matrix_short *")  m)
    (int #{  gsl_matrix_short_fwrite ( $stream ,$m )   #} )
    )

(de gsl_matrix_short_fscanf (   stream  m  )
    ((-gptr- "FILE *")  stream)
    ((-gptr- "gsl_matrix_short *")  m)
    (int #{  gsl_matrix_short_fscanf ( $stream ,$m ) #} )
    )

(de gsl_matrix_short_fprintf (   stream  m  format  )
    ((-gptr- "FILE *")  stream)
    ((-gptr- "const gsl_matrix_short *")  m)
    ((-gptr- "const char *")  format)
    (int #{  gsl_matrix_short_fprintf ( $stream ,$m ,$format )  #} )
    )


(de gsl_matrix_short_memcpy (   dest  src  )
    ((-gptr- "gsl_matrix_short *")  dest)
    ((-gptr- "const gsl_matrix_short *")  src)
    (int #{  gsl_matrix_short_memcpy( $dest ,$src )  #} )
    )

(de gsl_matrix_short_swap (   m1  m2  )
    ((-gptr- "gsl_matrix_short *")  m1)
    ((-gptr- "gsl_matrix_short *")  m2)
    (int #{  gsl_matrix_short_swap( $m1 ,$m2 ) #} )
    )


(de gsl_matrix_short_swap_rows (   m  i  j  )
    ((-gptr- "gsl_matrix_short *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-int-)  j)                         ;; const size_t -> int
    (int #{  gsl_matrix_short_swap_rows( $m ,$i ,$j ) #} )
    )

(de gsl_matrix_short_swap_columns (   m  i  j  )
    ((-gptr- "gsl_matrix_short *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-int-)  j)                         ;; const size_t -> int
    (int #{  gsl_matrix_short_swap_columns( $m ,$i ,$j )  #} )
    )

(de gsl_matrix_short_swap_rowcol (   m  i  j  )
    ((-gptr- "gsl_matrix_short *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-int-)  j)                         ;; const size_t -> int
    (int #{  gsl_matrix_short_swap_rowcol( $m ,$i ,$j ) #} )
    )

(de gsl_matrix_short_transpose (   m  )
    ((-gptr- "gsl_matrix_short *")  m)
    (int #{  gsl_matrix_short_transpose ( $m )  #} )
    )

(de gsl_matrix_short_transpose_memcpy (   dest  src  )
    ((-gptr- "gsl_matrix_short *")  dest)
    ((-gptr- "const gsl_matrix_short *")  src)
    (int #{  gsl_matrix_short_transpose_memcpy ( $dest ,$src ) #} )
    )


(de gsl_matrix_short_max (   m  )
    ((-gptr- "const gsl_matrix_short *")  m)
    (int #{  gsl_matrix_short_max ( $m ) #} )       ;; short -> int
    )

(de gsl_matrix_short_min (   m  )
    ((-gptr- "const gsl_matrix_short *")  m)
    (int #{  gsl_matrix_short_min ( $m )  #} )     ;; short -> int
    )

(de gsl_matrix_short_minmax (   m  min_out  max_out  )
    ((-gptr- "const gsl_matrix_short *")  m)
    ((-gptr- "short *")  min_out)
    ((-gptr- "short *")  max_out)
    #{  gsl_matrix_short_minmax ( $m ,$min_out ,$max_out ); #} 
    ()
    )


(de gsl_matrix_short_max_index (   m  imax  jmax  )
    ((-gptr- "const gsl_matrix_short *")  m)
    ((-gptr- "size_t *")  imax)
    ((-gptr- "size_t *") jmax)
    #{  gsl_matrix_short_max_index ( $m ,$imax ,$jmax ); #} 
    ()
    )

(de gsl_matrix_short_min_index (   m  imin  jmin  )
    ((-gptr- "const gsl_matrix_short *")  m)
    ((-gptr- "size_t *")  imin)
    ((-gptr- "size_t *") jmin)
    #{  gsl_matrix_short_min_index ( $m ,$imin ,$jmin );  #} 
    ()
    )

(de gsl_matrix_short_minmax_index (   m  imin  jmin  imax  jmax  )
    ((-gptr- "const gsl_matrix_short *")  m)
    ((-gptr- "size_t *")  imin)
    ((-gptr- "size_t *")  jmin)
    ((-gptr- "size_t *")  imax)
    ((-gptr- "size_t *")  jmax)
    #{  gsl_matrix_short_minmax_index ( $m ,$imin ,$jmin ,$imax ,$jmax ); #} 
    ()
    )


(de gsl_matrix_short_isnull (   m  )
    ((-gptr- "const gsl_matrix_short *")  m)
    (int #{  gsl_matrix_short_isnull ( $m ) #} )
    )


(de gsl_matrix_short_add (   a  b  )
    ((-gptr- "gsl_matrix_short *")  a)
    ((-gptr- "const gsl_matrix_short *")  b)
    (int #{  gsl_matrix_short_add ( $a ,$b ) #} )
    )

(de gsl_matrix_short_sub (   a  b  )
    ((-gptr- "gsl_matrix_short *")  a)
    ((-gptr- "const gsl_matrix_short *")  b)
    (int #{  gsl_matrix_short_sub ( $a ,$b )  #} )
    )

(de gsl_matrix_short_mul_elements (   a  b  )
    ((-gptr- "gsl_matrix_short *")  a)
    ((-gptr- "const gsl_matrix_short *")  b)
    (int #{  gsl_matrix_short_mul_elements ( $a ,$b ) #} )
    )

(de gsl_matrix_short_div_elements (   a  b  )
    ((-gptr- "gsl_matrix_short *")  a)
    ((-gptr- "const gsl_matrix_short *")  b)
    (int #{  gsl_matrix_short_div_elements ( $a ,$b )  #} )
    )

(de gsl_matrix_short_scale (   a  x  )
    ((-gptr- "gsl_matrix_short *")  a)
    ((-double-)  x)
    (int #{  gsl_matrix_short_scale ( $a ,$x ) #} )
    )

(de gsl_matrix_short_add_constant (   a  x  )
    ((-gptr- "gsl_matrix_short *")  a)
    ((-double-)  x)
    (int #{  gsl_matrix_short_add_constant ( $a ,$x )  #} )
    )

(if (> gsl-libversion 1.0)
    (de gsl_matrix_short_add_diagonal (   a  x  )
      ((-gptr- "gsl_matrix_short *")  a)
      ((-double-)  x)
      (int #{  gsl_matrix_short_add_diagonal ( $a ,$x ) #} )
      )
  (de gsl_matrix_short_add_diagonal (   a  x  )
    ((-gptr- "gsl_matrix_short *")  a)
    ((-double-)  x)
    (error "not available in this version of GSL") ()))





(de gsl_matrix_short_get_row (   v  m  i  )
    ((-gptr- "gsl_vector_short *")  v)
    ((-gptr- "const gsl_matrix_short *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    (int #{  gsl_matrix_short_get_row( $v ,$m ,$i )  #} )
    )

(de gsl_matrix_short_get_col (   v  m  j  )
    ((-gptr- "gsl_vector_short *")  v)
    ((-gptr- "const gsl_matrix_short *")  m)
    ((-int-)  j)                         ;; const size_t -> int
    (int #{  gsl_matrix_short_get_col( $v ,$m ,$j ) #} )
    )

(de gsl_matrix_short_set_row (   m  i  v  )
    ((-gptr- "gsl_matrix_short *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-gptr- "const gsl_vector_short *")  v)
    (int #{  gsl_matrix_short_set_row( $m ,$i ,$v )  #} )
    )

(de gsl_matrix_short_set_col (   m  j  v  )
    ((-gptr- "gsl_matrix_short *")  m)
    ((-int-)  j)                         ;; const size_t -> int
    ((-gptr- "const gsl_vector_short *")  v)
    (int #{  gsl_matrix_short_set_col( $m ,$j ,$v ) #} )
    )




(de gsl_matrix_uchar_alloc (   n1  n2  )
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    (gptr  #{  gsl_matrix_uchar_alloc ( $n1 ,$n2 )  #} )   ;; gsl_matrix_uchar * -> gptr
    )


(de gsl_matrix_uchar_calloc (   n1  n2  )
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    (gptr   #{  gsl_matrix_uchar_calloc ( $n1 ,$n2 ) #} )   ;; gsl_matrix_uchar * -> gptr
    )


(de gsl_matrix_uchar_alloc_from_block (   b  offset  n1  n2  d2  )
    ((-gptr- "gsl_block_uchar *")  b)
    ((-int-)  offset)                         ;; const size_t -> int
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-int-)  d2)                         ;; const size_t -> int
    (gptr  #{  gsl_matrix_uchar_alloc_from_block ( $b ,$offset ,$n1 ,$n2 ,$d2 )  #} )   ;; gsl_matrix_uchar * -> gptr
    )


(de gsl_matrix_uchar_alloc_from_matrix (   m  k1  k2  n1  n2  )
    ((-gptr- "gsl_matrix_uchar *")  m)
    ((-int-)  k1)                         ;; const size_t -> int
    ((-int-)  k2)                         ;; const size_t -> int
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    (gptr   #{  gsl_matrix_uchar_alloc_from_matrix ( $m ,$k1 ,$k2 ,$n1 ,$n2 ) #} )   ;; gsl_matrix_uchar * -> gptr
    )


(de gsl_vector_uchar_alloc_row_from_matrix (   m  i  )
    ((-gptr- "gsl_matrix_uchar *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    (gptr  #{  gsl_vector_uchar_alloc_row_from_matrix ( $m ,$i )  #} )   ;; gsl_vector_uchar * -> gptr
    )


(de gsl_vector_uchar_alloc_col_from_matrix (   m  j  )
    ((-gptr- "gsl_matrix_uchar *")  m)
    ((-int-)  j)                         ;; const size_t -> int
    (gptr   #{  gsl_vector_uchar_alloc_col_from_matrix ( $m ,$j ) #} )   ;; gsl_vector_uchar * -> gptr
    )


(de gsl_matrix_uchar_free (   m  )
    ((-gptr- "gsl_matrix_uchar *")  m)
    #{  gsl_matrix_uchar_free ( $m ); #} 
    ()
    )




(de gsl_matrix_uchar_submatrix (   m  i  j  n1  n2  view )
    ((-gptr- "gsl_matrix_uchar *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-int-)  j)                         ;; const size_t -> int
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-gptr- "_gsl_matrix_uchar_view *") view)
    #{
    { _gsl_matrix_uchar_view tmp;
    tmp = gsl_matrix_uchar_submatrix ( $m ,$i ,$j ,$n1 ,$n2 );
    memcpy($view,&tmp,sizeof(_gsl_matrix_uchar_view));
    } #} 
    ()
    )


(de gsl_matrix_uchar_row (   m  i  view )
    ((-gptr- "gsl_matrix_uchar *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-gptr- "_gsl_vector_uchar_view *") view)
    #{
    { _gsl_vector_uchar_view tmp;
    tmp = gsl_matrix_uchar_row ( $m ,$i );
    memcpy($view,&tmp,sizeof(_gsl_vector_uchar_view));
    } #} 
    ()
    )


(de gsl_matrix_uchar_column (   m  j  view )
    ((-gptr- "gsl_matrix_uchar *")  m)
    ((-int-)  j)                         ;; const size_t -> int
    ((-gptr- "_gsl_vector_uchar_view *") view)
    #{
    { _gsl_vector_uchar_view tmp;
    tmp = gsl_matrix_uchar_column ( $m ,$j );
    memcpy($view,&tmp,sizeof(_gsl_vector_uchar_view));
    } #} 
    ()
    )


(de gsl_matrix_uchar_diagonal (   m  view )
    ((-gptr- "gsl_matrix_uchar *")  m)
    ((-gptr- "_gsl_vector_uchar_view *") view)
    #{
    { _gsl_vector_uchar_view tmp;
    tmp = gsl_matrix_uchar_diagonal ( $m );
    memcpy($view,&tmp,sizeof(_gsl_vector_uchar_view));
    } #} 
    ()
    )


(de gsl_matrix_uchar_subdiagonal (   m  k  view )
    ((-gptr- "gsl_matrix_uchar *")  m)
    ((-int-)  k)                         ;; const size_t -> int
    ((-gptr- "_gsl_vector_uchar_view *") view)
    #{
    { _gsl_vector_uchar_view tmp;
    tmp = gsl_matrix_uchar_subdiagonal ( $m ,$k );
    memcpy($view,&tmp,sizeof(_gsl_vector_uchar_view));
    } #} 
    ()
    )


(de gsl_matrix_uchar_superdiagonal (   m  k  view )
    ((-gptr- "gsl_matrix_uchar *")  m)
    ((-int-)  k)                         ;; const size_t -> int
    ((-gptr- "_gsl_vector_uchar_view *") view)
    #{
    { _gsl_vector_uchar_view tmp;
    tmp = gsl_matrix_uchar_superdiagonal ( $m ,$k );
    memcpy($view,&tmp,sizeof(_gsl_vector_uchar_view));
    } #} 
    ()
    )


(de gsl_matrix_uchar_view_array (   base  n1  n2  view )
    ((-gptr- "unsigned char *")  base)
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-gptr- "_gsl_matrix_uchar_view *") view)
    #{
    { _gsl_matrix_uchar_view tmp;
    tmp = gsl_matrix_uchar_view_array ( $base ,$n1 ,$n2 );
    memcpy($view,&tmp,sizeof(_gsl_matrix_uchar_view));
    } #} 
    ()
    )


(de gsl_matrix_uchar_view_array_with_tda (   base  n1  n2  tda  view )
    ((-gptr- "unsigned char *")  base)
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-int-)  tda)                         ;; const size_t -> int
    ((-gptr- "_gsl_matrix_uchar_view *") view)
    #{
    { _gsl_matrix_uchar_view tmp;
    tmp = gsl_matrix_uchar_view_array_with_tda ( $base ,$n1 ,$n2 ,$tda );
    memcpy($view,&tmp,sizeof(_gsl_matrix_uchar_view));
    } #} 
    ()
    )



(de gsl_matrix_uchar_view_vector (   v  n1  n2  view )
    ((-gptr- "gsl_vector_uchar *")  v)
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-gptr- "_gsl_matrix_uchar_view *") view)
    #{
    { _gsl_matrix_uchar_view tmp;
    tmp = gsl_matrix_uchar_view_vector ( $v ,$n1 ,$n2 );
    memcpy($view,&tmp,sizeof(_gsl_matrix_uchar_view));
    } #} 
    ()
    )


(de gsl_matrix_uchar_view_vector_with_tda (   v  n1  n2  tda  view )
    ((-gptr- "gsl_vector_uchar *")  v)
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-int-)  tda)                         ;; const size_t -> int
    ((-gptr- "_gsl_matrix_uchar_view *") view)
    #{
    { _gsl_matrix_uchar_view tmp;
    tmp = gsl_matrix_uchar_view_vector_with_tda ( $v ,$n1 ,$n2 ,$tda );
    memcpy($view,&tmp,sizeof(_gsl_matrix_uchar_view));
    } #} 
    ()
    )



(de gsl_matrix_uchar_const_submatrix (   m  i  j  n1  n2  view )
    ((-gptr- "const gsl_matrix_uchar *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-int-)  j)                         ;; const size_t -> int
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-gptr- "_gsl_matrix_uchar_const_view *") view)
    #{
    { _gsl_matrix_uchar_const_view tmp;
    tmp = gsl_matrix_uchar_const_submatrix ( $m ,$i ,$j ,$n1 ,$n2 );
    memcpy($view,&tmp,sizeof(_gsl_matrix_uchar_const_view));
    } #} 
    ()
    )


(de gsl_matrix_uchar_const_row (   m  i  view )
    ((-gptr- "const gsl_matrix_uchar *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-gptr- "_gsl_vector_uchar_const_view *") view)
    #{
    { _gsl_vector_uchar_const_view tmp;
    tmp = gsl_matrix_uchar_const_row ( $m ,$i );
    memcpy($view,&tmp,sizeof(_gsl_vector_uchar_const_view));
    } #} 
    ()
    )


(de gsl_matrix_uchar_const_column (   m  j  view )
    ((-gptr- "const gsl_matrix_uchar *")  m)
    ((-int-)  j)                         ;; const size_t -> int
    ((-gptr- "_gsl_vector_uchar_const_view *") view)
    #{
    { _gsl_vector_uchar_const_view tmp;
    tmp = gsl_matrix_uchar_const_column ( $m ,$j );
    memcpy($view,&tmp,sizeof(_gsl_vector_uchar_const_view));
    } #} 
    ()
    )


(de gsl_matrix_uchar_const_diagonal (   m  view )
    ((-gptr- "const gsl_matrix_uchar *")  m)
    ((-gptr- "_gsl_vector_uchar_const_view *") view)
    #{
    { _gsl_vector_uchar_const_view tmp;
    tmp = gsl_matrix_uchar_const_diagonal ( $m );
    memcpy($view,&tmp,sizeof(_gsl_vector_uchar_const_view));
    } #} 
    ()
    )


(de gsl_matrix_uchar_const_subdiagonal (   m  k  view )
    ((-gptr- "const gsl_matrix_uchar *")  m)
    ((-int-)  k)                         ;; const size_t -> int
    ((-gptr- "_gsl_vector_uchar_const_view *") view)
    #{
    { _gsl_vector_uchar_const_view tmp;
    tmp = gsl_matrix_uchar_const_subdiagonal ( $m ,$k );
    memcpy($view,&tmp,sizeof(_gsl_vector_uchar_const_view));
    } #} 
    ()
    )


(de gsl_matrix_uchar_const_superdiagonal (   m  k  view )
    ((-gptr- "const gsl_matrix_uchar *")  m)
    ((-int-)  k)                         ;; const size_t -> int
    ((-gptr- "_gsl_vector_uchar_const_view *") view)
    #{
    { _gsl_vector_uchar_const_view tmp;
    tmp = gsl_matrix_uchar_const_superdiagonal ( $m ,$k );
    memcpy($view,&tmp,sizeof(_gsl_vector_uchar_const_view));
    } #} 
    ()
    )


(de gsl_matrix_uchar_const_view_array (   base  n1  n2  view )
    ((-gptr- "const unsigned char *")  base)
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-gptr- "_gsl_matrix_uchar_const_view *") view)
    #{
    { _gsl_matrix_uchar_const_view tmp;
    tmp = gsl_matrix_uchar_const_view_array ( $base ,$n1 ,$n2 );
    memcpy($view,&tmp,sizeof(_gsl_matrix_uchar_const_view));
    } #} 
    ()
    )


(de gsl_matrix_uchar_const_view_array_with_tda (   base  n1  n2  tda  view )
    ((-gptr- "const unsigned char *")  base)
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-int-)  tda)                         ;; const size_t -> int
    ((-gptr- "_gsl_matrix_uchar_const_view *") view)
    #{
    { _gsl_matrix_uchar_const_view tmp;
    tmp = gsl_matrix_uchar_const_view_array_with_tda ( $base ,$n1 ,$n2 ,$tda );
    memcpy($view,&tmp,sizeof(_gsl_matrix_uchar_const_view));
    } #} 
    ()
    )


(de gsl_matrix_uchar_const_view_vector (   v  n1  n2  view )
    ((-gptr- "const gsl_vector_uchar *")  v)
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-gptr- "_gsl_matrix_uchar_const_view *") view)
    #{
    { _gsl_matrix_uchar_const_view tmp;
    tmp = gsl_matrix_uchar_const_view_vector ( $v ,$n1 ,$n2 );
    memcpy($view,&tmp,sizeof(_gsl_matrix_uchar_const_view));
    } #} 
    ()
    )


(de gsl_matrix_uchar_const_view_vector_with_tda (   v  n1  n2  tda  view )
    ((-gptr- "const gsl_vector_uchar *")  v)
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-int-)  tda)                         ;; const size_t -> int
    ((-gptr- "_gsl_matrix_uchar_const_view *") view)
    #{
    { _gsl_matrix_uchar_const_view tmp;
    tmp = gsl_matrix_uchar_const_view_vector_with_tda ( $v ,$n1 ,$n2 ,$tda );
    memcpy($view,&tmp,sizeof(_gsl_matrix_uchar_const_view));
    } #} 
    ()
    )




(de gsl_matrix_uchar_get (   m  i  j  )
    ((-gptr- "const gsl_matrix_uchar *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-int-)  j)                         ;; const size_t -> int
    (int   #{  gsl_matrix_uchar_get( $m ,$i ,$j ) #} )        ;; unsigned char -> int
    )

(de gsl_matrix_uchar_set (   m  i  j  x  )
    ((-gptr- "gsl_matrix_uchar *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-int-)  j)                         ;; const size_t -> int
    ((-int-)  x)                         ;; const unsigned char -> int
    #{  gsl_matrix_uchar_set( $m ,$i ,$j ,$x );  #} 
    ()
    )


(de gsl_matrix_uchar_ptr (   m  i  j  )
    ((-gptr- "gsl_matrix_uchar *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-int-)  j)                         ;; const size_t -> int
    (gptr #{  gsl_matrix_uchar_ptr( $m ,$i ,$j )  #} )   ;; unsigned char * -> gptr
    )

(de gsl_matrix_uchar_const_ptr (   m  i  j  )
    ((-gptr- "const gsl_matrix_uchar *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-int-)  j)                         ;; const size_t -> int
    (gptr #{  gsl_matrix_uchar_const_ptr( $m ,$i ,$j ) #} )   ;; const unsigned char * -> gptr
    )


(de gsl_matrix_uchar_set_zero (   m  )
    ((-gptr- "gsl_matrix_uchar *")  m)
    #{  gsl_matrix_uchar_set_zero ( $m ); #} 
    ()
    )

(de gsl_matrix_uchar_set_identity (   m  )
    ((-gptr- "gsl_matrix_uchar *")  m)
    #{  gsl_matrix_uchar_set_identity ( $m );  #} 
    ()
    )

(de gsl_matrix_uchar_set_all (   m  x  )
    ((-gptr- "gsl_matrix_uchar *")  m)
    ((-int-)  x)                             ;; unsigned char -> int
    #{  gsl_matrix_uchar_set_all ( $m ,$x ); #} 
    ()
    )


(de gsl_matrix_uchar_fread (   stream  m  )
    ((-gptr- "FILE *")  stream)
    ((-gptr- "gsl_matrix_uchar *")  m)
    (int #{  gsl_matrix_uchar_fread ( $stream ,$m )  #} )
    )

(de gsl_matrix_uchar_fwrite (   stream  m  )
    ((-gptr- "FILE *")  stream)
    ((-gptr- "const gsl_matrix_uchar *")  m)
    (int #{  gsl_matrix_uchar_fwrite ( $stream ,$m )   #} )
    )

(de gsl_matrix_uchar_fscanf (   stream  m  )
    ((-gptr- "FILE *")  stream)
    ((-gptr- "gsl_matrix_uchar *")  m)
    (int #{  gsl_matrix_uchar_fscanf ( $stream ,$m ) #} )
    )

(de gsl_matrix_uchar_fprintf (   stream  m  format  )
    ((-gptr- "FILE *")  stream)
    ((-gptr- "const gsl_matrix_uchar *")  m)
    ((-gptr- "const char *")  format)
    (int #{  gsl_matrix_uchar_fprintf ( $stream ,$m ,$format )  #} )
    )


(de gsl_matrix_uchar_memcpy (   dest  src  )
    ((-gptr- "gsl_matrix_uchar *")  dest)
    ((-gptr- "const gsl_matrix_uchar *")  src)
    (int #{  gsl_matrix_uchar_memcpy( $dest ,$src )  #} )
    )

(de gsl_matrix_uchar_swap (   m1  m2  )
    ((-gptr- "gsl_matrix_uchar *")  m1)
    ((-gptr- "gsl_matrix_uchar *")  m2)
    (int #{  gsl_matrix_uchar_swap( $m1 ,$m2 ) #} )
    )


(de gsl_matrix_uchar_swap_rows (   m  i  j  )
    ((-gptr- "gsl_matrix_uchar *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-int-)  j)                         ;; const size_t -> int
    (int #{  gsl_matrix_uchar_swap_rows( $m ,$i ,$j ) #} )
    )

(de gsl_matrix_uchar_swap_columns (   m  i  j  )
    ((-gptr- "gsl_matrix_uchar *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-int-)  j)                         ;; const size_t -> int
    (int #{  gsl_matrix_uchar_swap_columns( $m ,$i ,$j )  #} )
    )

(de gsl_matrix_uchar_swap_rowcol (   m  i  j  )
    ((-gptr- "gsl_matrix_uchar *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-int-)  j)                         ;; const size_t -> int
    (int #{  gsl_matrix_uchar_swap_rowcol( $m ,$i ,$j ) #} )
    )

(de gsl_matrix_uchar_transpose (   m  )
    ((-gptr- "gsl_matrix_uchar *")  m)
    (int #{  gsl_matrix_uchar_transpose ( $m )  #} )
    )

(de gsl_matrix_uchar_transpose_memcpy (   dest  src  )
    ((-gptr- "gsl_matrix_uchar *")  dest)
    ((-gptr- "const gsl_matrix_uchar *")  src)
    (int #{  gsl_matrix_uchar_transpose_memcpy ( $dest ,$src ) #} )
    )


(de gsl_matrix_uchar_max (   m  )
    ((-gptr- "const gsl_matrix_uchar *")  m)
    (int #{  gsl_matrix_uchar_max ( $m ) #} )       ;; unsigned char -> int
    )

(de gsl_matrix_uchar_min (   m  )
    ((-gptr- "const gsl_matrix_uchar *")  m)
    (int #{  gsl_matrix_uchar_min ( $m )  #} )      ;; unsigned char -> int
    )

(de gsl_matrix_uchar_minmax (   m  min_out  max_out  )
    ((-gptr- "const gsl_matrix_uchar *")  m)
    ((-gptr- "unsigned char *")  min_out)
    ((-gptr- "unsigned char *")  max_out)
    #{  gsl_matrix_uchar_minmax ( $m ,$min_out ,$max_out ); #} 
    ()
    )


(de gsl_matrix_uchar_max_index (   m  imax  jmax  )
    ((-gptr- "const gsl_matrix_uchar *")  m)
    ((-gptr- "size_t *")  imax)
    ((-gptr- "size_t *") jmax)
    #{  gsl_matrix_uchar_max_index ( $m ,$imax ,$jmax ); #} 
    ()
    )

(de gsl_matrix_uchar_min_index (   m  imin  jmin  )
    ((-gptr- "const gsl_matrix_uchar *")  m)
    ((-gptr- "size_t *")  imin)
    ((-gptr- "size_t *") jmin)
    #{  gsl_matrix_uchar_min_index ( $m ,$imin ,$jmin );  #} 
    ()
    )

(de gsl_matrix_uchar_minmax_index (   m  imin  jmin  imax  jmax  )
    ((-gptr- "const gsl_matrix_uchar *")  m)
    ((-gptr- "size_t *")  imin)
    ((-gptr- "size_t *")  jmin)
    ((-gptr- "size_t *")  imax)
    ((-gptr- "size_t *")  jmax)
    #{  gsl_matrix_uchar_minmax_index ( $m ,$imin ,$jmin ,$imax ,$jmax ); #} 
    ()
    )


(de gsl_matrix_uchar_isnull (   m  )
    ((-gptr- "const gsl_matrix_uchar *")  m)
    (int #{  gsl_matrix_uchar_isnull ( $m ) #} )
    )


(de gsl_matrix_uchar_add (   a  b  )
    ((-gptr- "gsl_matrix_uchar *")  a)
    ((-gptr- "const gsl_matrix_uchar *")  b)
    (int #{  gsl_matrix_uchar_add ( $a ,$b ) #} )
    )

(de gsl_matrix_uchar_sub (   a  b  )
    ((-gptr- "gsl_matrix_uchar *")  a)
    ((-gptr- "const gsl_matrix_uchar *")  b)
    (int #{  gsl_matrix_uchar_sub ( $a ,$b )  #} )
    )

(de gsl_matrix_uchar_mul_elements (   a  b  )
    ((-gptr- "gsl_matrix_uchar *")  a)
    ((-gptr- "const gsl_matrix_uchar *")  b)
    (int #{  gsl_matrix_uchar_mul_elements ( $a ,$b ) #} )
    )

(de gsl_matrix_uchar_div_elements (   a  b  )
    ((-gptr- "gsl_matrix_uchar *")  a)
    ((-gptr- "const gsl_matrix_uchar *")  b)
    (int #{  gsl_matrix_uchar_div_elements ( $a ,$b )  #} )
    )

(de gsl_matrix_uchar_scale (   a  x  )
    ((-gptr- "gsl_matrix_uchar *")  a)
    ((-double-)  x)
    (int #{  gsl_matrix_uchar_scale ( $a ,$x ) #} )
    )

(de gsl_matrix_uchar_add_constant (   a  x  )
    ((-gptr- "gsl_matrix_uchar *")  a)
    ((-double-)  x)
    (int #{  gsl_matrix_uchar_add_constant ( $a ,$x )  #} )
    )

(if (> gsl-libversion 1.0)
    (de gsl_matrix_uchar_add_diagonal (   a  x  )
      ((-gptr- "gsl_matrix_uchar *")  a)
      ((-double-)  x)
      (int #{  gsl_matrix_uchar_add_diagonal ( $a ,$x ) #} )
      )
  (de gsl_matrix_uchar_add_diagonal (   a  x  )
    ((-gptr- "gsl_matrix_uchar *")  a)
    ((-double-)  x)
    (error "not available in this version of GSL") ()))




(de gsl_matrix_uchar_get_row (   v  m  i  )
    ((-gptr- "gsl_vector_uchar *")  v)
    ((-gptr- "const gsl_matrix_uchar *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    (int #{  gsl_matrix_uchar_get_row( $v ,$m ,$i )  #} )
    )

(de gsl_matrix_uchar_get_col (   v  m  j  )
    ((-gptr- "gsl_vector_uchar *")  v)
    ((-gptr- "const gsl_matrix_uchar *")  m)
    ((-int-)  j)                         ;; const size_t -> int
    (int #{  gsl_matrix_uchar_get_col( $v ,$m ,$j ) #} )
    )

(de gsl_matrix_uchar_set_row (   m  i  v  )
    ((-gptr- "gsl_matrix_uchar *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-gptr- "const gsl_vector_uchar *")  v)
    (int #{  gsl_matrix_uchar_set_row( $m ,$i ,$v )  #} )
    )

(de gsl_matrix_uchar_set_col (   m  j  v  )
    ((-gptr- "gsl_matrix_uchar *")  m)
    ((-int-)  j)                         ;; const size_t -> int
    ((-gptr- "const gsl_vector_uchar *")  v)
    (int #{  gsl_matrix_uchar_set_col( $m ,$j ,$v ) #} )
    )




(de gsl_matrix_uint_alloc (   n1  n2  )
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    (gptr  #{  gsl_matrix_uint_alloc ( $n1 ,$n2 )  #} )   ;; gsl_matrix_uint * -> gptr
    )


(de gsl_matrix_uint_calloc (   n1  n2  )
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    (gptr   #{  gsl_matrix_uint_calloc ( $n1 ,$n2 ) #} )   ;; gsl_matrix_uint * -> gptr
    )


(de gsl_matrix_uint_alloc_from_block (   b  offset  n1  n2  d2  )
    ((-gptr- "gsl_block_uint *")  b)
    ((-int-)  offset)                         ;; const size_t -> int
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-int-)  d2)                         ;; const size_t -> int
    (gptr  #{  gsl_matrix_uint_alloc_from_block ( $b ,$offset ,$n1 ,$n2 ,$d2 )  #} )   ;; gsl_matrix_uint * -> gptr
    )


(de gsl_matrix_uint_alloc_from_matrix (   m  k1  k2  n1  n2  )
    ((-gptr- "gsl_matrix_uint *")  m)
    ((-int-)  k1)                         ;; const size_t -> int
    ((-int-)  k2)                         ;; const size_t -> int
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    (gptr   #{  gsl_matrix_uint_alloc_from_matrix ( $m ,$k1 ,$k2 ,$n1 ,$n2 ) #} )   ;; gsl_matrix_uint * -> gptr
    )


(de gsl_vector_uint_alloc_row_from_matrix (   m  i  )
    ((-gptr- "gsl_matrix_uint *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    (gptr  #{  gsl_vector_uint_alloc_row_from_matrix ( $m ,$i )  #} )   ;; gsl_vector_uint * -> gptr
    )


(de gsl_vector_uint_alloc_col_from_matrix (   m  j  )
    ((-gptr- "gsl_matrix_uint *")  m)
    ((-int-)  j)                         ;; const size_t -> int
    (gptr   #{  gsl_vector_uint_alloc_col_from_matrix ( $m ,$j ) #} )   ;; gsl_vector_uint * -> gptr
    )


(de gsl_matrix_uint_free (   m  )
    ((-gptr- "gsl_matrix_uint *")  m)
    #{  gsl_matrix_uint_free ( $m ); #} 
    ()
    )




(de gsl_matrix_uint_submatrix (   m  i  j  n1  n2  view )
    ((-gptr- "gsl_matrix_uint *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-int-)  j)                         ;; const size_t -> int
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-gptr- "_gsl_matrix_uint_view *") view)
    #{
    { _gsl_matrix_uint_view tmp;
    tmp = gsl_matrix_uint_submatrix ( $m ,$i ,$j ,$n1 ,$n2 );
    memcpy($view,&tmp,sizeof(_gsl_matrix_uint_view));
    } #} 
    ()
    )


(de gsl_matrix_uint_row (   m  i  view )
    ((-gptr- "gsl_matrix_uint *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-gptr- "_gsl_vector_uint_view *") view)
    #{
    { _gsl_vector_uint_view tmp;
    tmp = gsl_matrix_uint_row ( $m ,$i );
    memcpy($view,&tmp,sizeof(_gsl_vector_uint_view));
    } #} 
    ()
    )


(de gsl_matrix_uint_column (   m  j  view )
    ((-gptr- "gsl_matrix_uint *")  m)
    ((-int-)  j)                         ;; const size_t -> int
    ((-gptr- "_gsl_vector_uint_view *") view)
    #{
    { _gsl_vector_uint_view tmp;
    tmp = gsl_matrix_uint_column ( $m ,$j );
    memcpy($view,&tmp,sizeof(_gsl_vector_uint_view));
    } #} 
    ()
    )


(de gsl_matrix_uint_diagonal (   m  view )
    ((-gptr- "gsl_matrix_uint *")  m)
    ((-gptr- "_gsl_vector_uint_view *") view)
    #{
    { _gsl_vector_uint_view tmp;
    tmp = gsl_matrix_uint_diagonal ( $m );
    memcpy($view,&tmp,sizeof(_gsl_vector_uint_view));
    } #} 
    ()
    )


(de gsl_matrix_uint_subdiagonal (   m  k  view )
    ((-gptr- "gsl_matrix_uint *")  m)
    ((-int-)  k)                         ;; const size_t -> int
    ((-gptr- "_gsl_vector_uint_view *") view)
    #{
    { _gsl_vector_uint_view tmp;
    tmp = gsl_matrix_uint_subdiagonal ( $m ,$k );
    memcpy($view,&tmp,sizeof(_gsl_vector_uint_view));
    } #} 
    ()
    )


(de gsl_matrix_uint_superdiagonal (   m  k  view )
    ((-gptr- "gsl_matrix_uint *")  m)
    ((-int-)  k)                         ;; const size_t -> int
    ((-gptr- "_gsl_vector_uint_view *") view)
    #{
    { _gsl_vector_uint_view tmp;
    tmp = gsl_matrix_uint_superdiagonal ( $m ,$k );
    memcpy($view,&tmp,sizeof(_gsl_vector_uint_view));
    } #} 
    ()
    )


(de gsl_matrix_uint_view_array (   base  n1  n2  view )
    ((-gptr- "unsigned int *")  base)
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-gptr- "_gsl_matrix_uint_view *") view)
    #{
    { _gsl_matrix_uint_view tmp;
    tmp = gsl_matrix_uint_view_array ( $base ,$n1 ,$n2 );
    memcpy($view,&tmp,sizeof(_gsl_matrix_uint_view));
    } #} 
    ()
    )


(de gsl_matrix_uint_view_array_with_tda (   base  n1  n2  tda  view )
    ((-gptr- "unsigned int *")  base)
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-int-)  tda)                         ;; const size_t -> int
    ((-gptr- "_gsl_matrix_uint_view *") view)
    #{
    { _gsl_matrix_uint_view tmp;
    tmp = gsl_matrix_uint_view_array_with_tda ( $base ,$n1 ,$n2 ,$tda );
    memcpy($view,&tmp,sizeof(_gsl_matrix_uint_view));
    } #} 
    ()
    )



(de gsl_matrix_uint_view_vector (   v  n1  n2  view )
    ((-gptr- "gsl_vector_uint *")  v)
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-gptr- "_gsl_matrix_uint_view *") view)
    #{
    { _gsl_matrix_uint_view tmp;
    tmp = gsl_matrix_uint_view_vector ( $v ,$n1 ,$n2 );
    memcpy($view,&tmp,sizeof(_gsl_matrix_uint_view));
    } #} 
    ()
    )


(de gsl_matrix_uint_view_vector_with_tda (   v  n1  n2  tda  view )
    ((-gptr- "gsl_vector_uint *")  v)
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-int-)  tda)                         ;; const size_t -> int
    ((-gptr- "_gsl_matrix_uint_view *") view)
    #{
    { _gsl_matrix_uint_view tmp;
    tmp = gsl_matrix_uint_view_vector_with_tda ( $v ,$n1 ,$n2 ,$tda );
    memcpy($view,&tmp,sizeof(_gsl_matrix_uint_view));
    } #} 
    ()
    )



(de gsl_matrix_uint_const_submatrix (   m  i  j  n1  n2  view )
    ((-gptr- "const gsl_matrix_uint *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-int-)  j)                         ;; const size_t -> int
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-gptr- "_gsl_matrix_uint_const_view *") view)
    #{
    { _gsl_matrix_uint_const_view tmp;
    tmp = gsl_matrix_uint_const_submatrix ( $m ,$i ,$j ,$n1 ,$n2 );
    memcpy($view,&tmp,sizeof(_gsl_matrix_uint_const_view));
    } #} 
    ()
    )


(de gsl_matrix_uint_const_row (   m  i  view )
    ((-gptr- "const gsl_matrix_uint *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-gptr- "_gsl_vector_uint_const_view *") view)
    #{
    { _gsl_vector_uint_const_view tmp;
    tmp = gsl_matrix_uint_const_row ( $m ,$i );
    memcpy($view,&tmp,sizeof(_gsl_vector_uint_const_view));
    } #} 
    ()
    )


(de gsl_matrix_uint_const_column (   m  j  view )
    ((-gptr- "const gsl_matrix_uint *")  m)
    ((-int-)  j)                         ;; const size_t -> int
    ((-gptr- "_gsl_vector_uint_const_view *") view)
    #{
    { _gsl_vector_uint_const_view tmp;
    tmp = gsl_matrix_uint_const_column ( $m ,$j );
    memcpy($view,&tmp,sizeof(_gsl_vector_uint_const_view));
    } #} 
    ()
    )


(de gsl_matrix_uint_const_diagonal (   m  view )
    ((-gptr- "const gsl_matrix_uint *")  m)
    ((-gptr- "_gsl_vector_uint_const_view *") view)
    #{
    { _gsl_vector_uint_const_view tmp;
    tmp = gsl_matrix_uint_const_diagonal ( $m );
    memcpy($view,&tmp,sizeof(_gsl_vector_uint_const_view));
    } #} 
    ()
    )


(de gsl_matrix_uint_const_subdiagonal (   m  k  view )
    ((-gptr- "const gsl_matrix_uint *")  m)
    ((-int-)  k)                         ;; const size_t -> int
    ((-gptr- "_gsl_vector_uint_const_view *") view)
    #{
    { _gsl_vector_uint_const_view tmp;
    tmp = gsl_matrix_uint_const_subdiagonal ( $m ,$k );
    memcpy($view,&tmp,sizeof(_gsl_vector_uint_const_view));
    } #} 
    ()
    )


(de gsl_matrix_uint_const_superdiagonal (   m  k  view )
    ((-gptr- "const gsl_matrix_uint *")  m)
    ((-int-)  k)                         ;; const size_t -> int
    ((-gptr- "_gsl_vector_uint_const_view *") view)
    #{
    { _gsl_vector_uint_const_view tmp;
    tmp = gsl_matrix_uint_const_superdiagonal ( $m ,$k );
    memcpy($view,&tmp,sizeof(_gsl_vector_uint_const_view));
    } #} 
    ()
    )


(de gsl_matrix_uint_const_view_array (   base  n1  n2  view )
    ((-gptr- "const unsigned int *")  base)
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-gptr- "_gsl_matrix_uint_const_view *") view)
    #{
    { _gsl_matrix_uint_const_view tmp;
    tmp = gsl_matrix_uint_const_view_array ( $base ,$n1 ,$n2 );
    memcpy($view,&tmp,sizeof(_gsl_matrix_uint_const_view));
    } #} 
    ()
    )


(de gsl_matrix_uint_const_view_array_with_tda (   base  n1  n2  tda  view )
    ((-gptr- "const unsigned int *")  base)
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-int-)  tda)                         ;; const size_t -> int
    ((-gptr- "_gsl_matrix_uint_const_view *") view)
    #{
    { _gsl_matrix_uint_const_view tmp;
    tmp = gsl_matrix_uint_const_view_array_with_tda ( $base ,$n1 ,$n2 ,$tda );
    memcpy($view,&tmp,sizeof(_gsl_matrix_uint_const_view));
    } #} 
    ()
    )


(de gsl_matrix_uint_const_view_vector (   v  n1  n2  view )
    ((-gptr- "const gsl_vector_uint *")  v)
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-gptr- "_gsl_matrix_uint_const_view *") view)
    #{
    { _gsl_matrix_uint_const_view tmp;
    tmp = gsl_matrix_uint_const_view_vector ( $v ,$n1 ,$n2 );
    memcpy($view,&tmp,sizeof(_gsl_matrix_uint_const_view));
    } #} 
    ()
    )


(de gsl_matrix_uint_const_view_vector_with_tda (   v  n1  n2  tda  view )
    ((-gptr- "const gsl_vector_uint *")  v)
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-int-)  tda)                         ;; const size_t -> int
    ((-gptr- "_gsl_matrix_uint_const_view *") view)
    #{
    { _gsl_matrix_uint_const_view tmp;
    tmp = gsl_matrix_uint_const_view_vector_with_tda ( $v ,$n1 ,$n2 ,$tda );
    memcpy($view,&tmp,sizeof(_gsl_matrix_uint_const_view));
    } #} 
    ()
    )




(de gsl_matrix_uint_get (   m  i  j  )
    ((-gptr- "const gsl_matrix_uint *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-int-)  j)                         ;; const size_t -> int
    (int #{  gsl_matrix_uint_get( $m ,$i ,$j ) #} )       ;; unsigned int  ->   int
    )

(de gsl_matrix_uint_set (   m  i  j  x  )
    ((-gptr- "gsl_matrix_uint *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-int-)  j)                         ;; const size_t -> int
    ((-int-)  x)                                      ;; unsigned int -> int
    #{  gsl_matrix_uint_set( $m ,$i ,$j ,$x );  #} 
    ()
    )


(de gsl_matrix_uint_ptr (   m  i  j  )
    ((-gptr- "gsl_matrix_uint *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-int-)  j)                         ;; const size_t -> int
    (gptr #{  gsl_matrix_uint_ptr( $m ,$i ,$j )  #} )   ;; unsigned int * -> gptr
    )

(de gsl_matrix_uint_const_ptr (   m  i  j  )
    ((-gptr- "const gsl_matrix_uint *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-int-)  j)                         ;; const size_t -> int
    (gptr #{  gsl_matrix_uint_const_ptr( $m ,$i ,$j ) #} )   ;; const unsigned int * -> gptr
    )


(de gsl_matrix_uint_set_zero (   m  )
    ((-gptr- "gsl_matrix_uint *")  m)
    #{  gsl_matrix_uint_set_zero ( $m ); #} 
    ()
    )

(de gsl_matrix_uint_set_identity (   m  )
    ((-gptr- "gsl_matrix_uint *")  m)
    #{  gsl_matrix_uint_set_identity ( $m );  #} 
    ()
    )

(de gsl_matrix_uint_set_all (   m  x  )
    ((-gptr- "gsl_matrix_uint *")  m)
    ((-int-)  x)                                  ;; unsigned int -> int
    #{  gsl_matrix_uint_set_all ( $m ,$x ); #} 
    ()
    )


(de gsl_matrix_uint_fread (   stream  m  )
    ((-gptr- "FILE *")  stream)
    ((-gptr- "gsl_matrix_uint *")  m)
    (int #{  gsl_matrix_uint_fread ( $stream ,$m )  #} )
    )

(de gsl_matrix_uint_fwrite (   stream  m  )
    ((-gptr- "FILE *")  stream)
    ((-gptr- "const gsl_matrix_uint *")  m)
    (int #{  gsl_matrix_uint_fwrite ( $stream ,$m )   #} )
    )

(de gsl_matrix_uint_fscanf (   stream  m  )
    ((-gptr- "FILE *")  stream)
    ((-gptr- "gsl_matrix_uint *")  m)
    (int #{  gsl_matrix_uint_fscanf ( $stream ,$m ) #} )
    )

(de gsl_matrix_uint_fprintf (   stream  m  format  )
    ((-gptr- "FILE *")  stream)
    ((-gptr- "const gsl_matrix_uint *")  m)
    ((-gptr- "const char *")  format)
    (int #{  gsl_matrix_uint_fprintf ( $stream ,$m ,$format )  #} )
    )


(de gsl_matrix_uint_memcpy (   dest  src  )
    ((-gptr- "gsl_matrix_uint *")  dest)
    ((-gptr- "const gsl_matrix_uint *")  src)
    (int #{  gsl_matrix_uint_memcpy( $dest ,$src )  #} )
    )

(de gsl_matrix_uint_swap (   m1  m2  )
    ((-gptr- "gsl_matrix_uint *")  m1)
    ((-gptr- "gsl_matrix_uint *")  m2)
    (int #{  gsl_matrix_uint_swap( $m1 ,$m2 ) #} )
    )


(de gsl_matrix_uint_swap_rows (   m  i  j  )
    ((-gptr- "gsl_matrix_uint *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-int-)  j)                         ;; const size_t -> int
    (int #{  gsl_matrix_uint_swap_rows( $m ,$i ,$j ) #} )
    )

(de gsl_matrix_uint_swap_columns (   m  i  j  )
    ((-gptr- "gsl_matrix_uint *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-int-)  j)                         ;; const size_t -> int
    (int #{  gsl_matrix_uint_swap_columns( $m ,$i ,$j )  #} )
    )

(de gsl_matrix_uint_swap_rowcol (   m  i  j  )
    ((-gptr- "gsl_matrix_uint *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-int-)  j)                         ;; const size_t -> int
    (int #{  gsl_matrix_uint_swap_rowcol( $m ,$i ,$j ) #} )
    )

(de gsl_matrix_uint_transpose (   m  )
    ((-gptr- "gsl_matrix_uint *")  m)
    (int #{  gsl_matrix_uint_transpose ( $m )  #} )
    )

(de gsl_matrix_uint_transpose_memcpy (   dest  src  )
    ((-gptr- "gsl_matrix_uint *")  dest)
    ((-gptr- "const gsl_matrix_uint *")  src)
    (int #{  gsl_matrix_uint_transpose_memcpy ( $dest ,$src ) #} )
    )


(de gsl_matrix_uint_max (   m  )
    ((-gptr- "const gsl_matrix_uint *")  m)
    (int #{  gsl_matrix_uint_max ( $m ) #} )          ;; unsigned int -> int
    )

(de gsl_matrix_uint_min (   m  )
    ((-gptr- "const gsl_matrix_uint *")  m)
    (int #{  gsl_matrix_uint_min ( $m )  #} )          ;; unsigned int -> int
    )

(de gsl_matrix_uint_minmax (   m  min_out  max_out  )
    ((-gptr- "const gsl_matrix_uint *")  m)
    ((-gptr- "unsigned int *")  min_out)
    ((-gptr- "unsigned int *")  max_out)
    #{  gsl_matrix_uint_minmax ( $m ,$min_out ,$max_out ); #} 
    ()
    )


(de gsl_matrix_uint_max_index (   m  imax  jmax  )
    ((-gptr- "const gsl_matrix_uint *")  m)
    ((-gptr- "size_t *")  imax)
    ((-gptr- "size_t *") jmax)
    #{  gsl_matrix_uint_max_index ( $m ,$imax ,$jmax ); #} 
    ()
    )

(de gsl_matrix_uint_min_index (   m  imin  jmin  )
    ((-gptr- "const gsl_matrix_uint *")  m)
    ((-gptr- "size_t *")  imin)
    ((-gptr- "size_t *") jmin)
    #{  gsl_matrix_uint_min_index ( $m ,$imin ,$jmin );  #} 
    ()
    )

(de gsl_matrix_uint_minmax_index (   m  imin  jmin  imax  jmax  )
    ((-gptr- "const gsl_matrix_uint *")  m)
    ((-gptr- "size_t *")  imin)
    ((-gptr- "size_t *")  jmin)
    ((-gptr- "size_t *")  imax)
    ((-gptr- "size_t *")  jmax)
    #{  gsl_matrix_uint_minmax_index ( $m ,$imin ,$jmin ,$imax ,$jmax ); #} 
    ()
    )


(de gsl_matrix_uint_isnull (   m  )
    ((-gptr- "const gsl_matrix_uint *")  m)
    (int #{  gsl_matrix_uint_isnull ( $m ) #} )
    )


(de gsl_matrix_uint_add (   a  b  )
    ((-gptr- "gsl_matrix_uint *")  a)
    ((-gptr- "const gsl_matrix_uint *")  b)
    (int #{  gsl_matrix_uint_add ( $a ,$b ) #} )
    )

(de gsl_matrix_uint_sub (   a  b  )
    ((-gptr- "gsl_matrix_uint *")  a)
    ((-gptr- "const gsl_matrix_uint *")  b)
    (int #{  gsl_matrix_uint_sub ( $a ,$b )  #} )
    )

(de gsl_matrix_uint_mul_elements (   a  b  )
    ((-gptr- "gsl_matrix_uint *")  a)
    ((-gptr- "const gsl_matrix_uint *")  b)
    (int #{  gsl_matrix_uint_mul_elements ( $a ,$b ) #} )
    )

(de gsl_matrix_uint_div_elements (   a  b  )
    ((-gptr- "gsl_matrix_uint *")  a)
    ((-gptr- "const gsl_matrix_uint *")  b)
    (int #{  gsl_matrix_uint_div_elements ( $a ,$b )  #} )
    )

(de gsl_matrix_uint_scale (   a  x  )
    ((-gptr- "gsl_matrix_uint *")  a)
    ((-double-)  x)
    (int #{  gsl_matrix_uint_scale ( $a ,$x ) #} )
    )

(de gsl_matrix_uint_add_constant (   a  x  )
    ((-gptr- "gsl_matrix_uint *")  a)
    ((-double-)  x)
    (int #{  gsl_matrix_uint_add_constant ( $a ,$x )  #} )
    )

(if (> gsl-libversion 1.0)
    (de gsl_matrix_uint_add_diagonal (   a  x  )
      ((-gptr- "gsl_matrix_uint *")  a)
      ((-double-)  x)
      (int #{  gsl_matrix_uint_add_diagonal ( $a ,$x ) #} )
      )
  (de gsl_matrix_uint_add_diagonal (   a  x  )
    ((-gptr- "gsl_matrix_uint *")  a)
    ((-double-)  x)
    (error "not available in this version of GSL") ()))





(de gsl_matrix_uint_get_row (   v  m  i  )
    ((-gptr- "gsl_vector_uint *")  v)
    ((-gptr- "const gsl_matrix_uint *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    (int #{  gsl_matrix_uint_get_row( $v ,$m ,$i )  #} )
    )

(de gsl_matrix_uint_get_col (   v  m  j  )
    ((-gptr- "gsl_vector_uint *")  v)
    ((-gptr- "const gsl_matrix_uint *")  m)
    ((-int-)  j)                         ;; const size_t -> int
    (int #{  gsl_matrix_uint_get_col( $v ,$m ,$j ) #} )
    )

(de gsl_matrix_uint_set_row (   m  i  v  )
    ((-gptr- "gsl_matrix_uint *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-gptr- "const gsl_vector_uint *")  v)
    (int #{  gsl_matrix_uint_set_row( $m ,$i ,$v )  #} )
    )

(de gsl_matrix_uint_set_col (   m  j  v  )
    ((-gptr- "gsl_matrix_uint *")  m)
    ((-int-)  j)                         ;; const size_t -> int
    ((-gptr- "const gsl_vector_uint *")  v)
    (int #{  gsl_matrix_uint_set_col( $m ,$j ,$v ) #} )
    )




(de gsl_matrix_ulong_alloc (   n1  n2  )
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    (gptr  #{  gsl_matrix_ulong_alloc ( $n1 ,$n2 )  #} )   ;; gsl_matrix_ulong * -> gptr
    )


(de gsl_matrix_ulong_calloc (   n1  n2  )
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    (gptr   #{  gsl_matrix_ulong_calloc ( $n1 ,$n2 ) #} )   ;; gsl_matrix_ulong * -> gptr
    )


(de gsl_matrix_ulong_alloc_from_block (   b  offset  n1  n2  d2  )
    ((-gptr- "gsl_block_ulong *")  b)
    ((-int-)  offset)                         ;; const size_t -> int
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-int-)  d2)                         ;; const size_t -> int
    (gptr  #{  gsl_matrix_ulong_alloc_from_block ( $b ,$offset ,$n1 ,$n2 ,$d2 )  #} )   ;; gsl_matrix_ulong * -> gptr
    )


(de gsl_matrix_ulong_alloc_from_matrix (   m  k1  k2  n1  n2  )
    ((-gptr- "gsl_matrix_ulong *")  m)
    ((-int-)  k1)                         ;; const size_t -> int
    ((-int-)  k2)                         ;; const size_t -> int
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    (gptr   #{  gsl_matrix_ulong_alloc_from_matrix ( $m ,$k1 ,$k2 ,$n1 ,$n2 ) #} )   ;; gsl_matrix_ulong * -> gptr
    )


(de gsl_vector_ulong_alloc_row_from_matrix (   m  i  )
    ((-gptr- "gsl_matrix_ulong *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    (gptr  #{  gsl_vector_ulong_alloc_row_from_matrix ( $m ,$i )  #} )   ;; gsl_vector_ulong * -> gptr
    )


(de gsl_vector_ulong_alloc_col_from_matrix (   m  j  )
    ((-gptr- "gsl_matrix_ulong *")  m)
    ((-int-)  j)                         ;; const size_t -> int
    (gptr   #{  gsl_vector_ulong_alloc_col_from_matrix ( $m ,$j ) #} )   ;; gsl_vector_ulong * -> gptr
    )


(de gsl_matrix_ulong_free (   m  )
    ((-gptr- "gsl_matrix_ulong *")  m)
    #{  gsl_matrix_ulong_free ( $m ); #} 
    ()
    )




(de gsl_matrix_ulong_submatrix (   m  i  j  n1  n2  view )
    ((-gptr- "gsl_matrix_ulong *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-int-)  j)                         ;; const size_t -> int
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-gptr- "_gsl_matrix_ulong_view *") view)
    #{
    { _gsl_matrix_ulong_view tmp;
    tmp = gsl_matrix_ulong_submatrix ( $m ,$i ,$j ,$n1 ,$n2 );
    memcpy($view,&tmp,sizeof(_gsl_matrix_ulong_view));
    } #} 
    ()
    )


(de gsl_matrix_ulong_row (   m  i  view )
    ((-gptr- "gsl_matrix_ulong *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-gptr- "_gsl_vector_ulong_view *") view)
    #{
    { _gsl_vector_ulong_view tmp;
    tmp = gsl_matrix_ulong_row ( $m ,$i );
    memcpy($view,&tmp,sizeof(_gsl_vector_ulong_view));
    } #} 
    ()
    )


(de gsl_matrix_ulong_column (   m  j  view )
    ((-gptr- "gsl_matrix_ulong *")  m)
    ((-int-)  j)                         ;; const size_t -> int
    ((-gptr- "_gsl_vector_ulong_view *") view)
    #{
    { _gsl_vector_ulong_view tmp;
    tmp = gsl_matrix_ulong_column ( $m ,$j );
    memcpy($view,&tmp,sizeof(_gsl_vector_ulong_view));
    } #} 
    ()
    )


(de gsl_matrix_ulong_diagonal (   m  view )
    ((-gptr- "gsl_matrix_ulong *")  m)
    ((-gptr- "_gsl_vector_ulong_view *") view)
    #{
    { _gsl_vector_ulong_view tmp;
    tmp = gsl_matrix_ulong_diagonal ( $m );
    memcpy($view,&tmp,sizeof(_gsl_vector_ulong_view));
    } #} 
    ()
    )


(de gsl_matrix_ulong_subdiagonal (   m  k  view )
    ((-gptr- "gsl_matrix_ulong *")  m)
    ((-int-)  k)                         ;; const size_t -> int
    ((-gptr- "_gsl_vector_ulong_view *") view)
    #{
    { _gsl_vector_ulong_view tmp;
    tmp = gsl_matrix_ulong_subdiagonal ( $m ,$k );
    memcpy($view,&tmp,sizeof(_gsl_vector_ulong_view));
    } #} 
    ()
    )


(de gsl_matrix_ulong_superdiagonal (   m  k  view )
    ((-gptr- "gsl_matrix_ulong *")  m)
    ((-int-)  k)                         ;; const size_t -> int
    ((-gptr- "_gsl_vector_ulong_view *") view)
    #{
    { _gsl_vector_ulong_view tmp;
    tmp = gsl_matrix_ulong_superdiagonal ( $m ,$k );
    memcpy($view,&tmp,sizeof(_gsl_vector_ulong_view));
    } #} 
    ()
    )


(de gsl_matrix_ulong_view_array (   base  n1  n2  view )
    ((-gptr- "unsigned long *")  base)
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-gptr- "_gsl_matrix_ulong_view *") view)
    #{
    { _gsl_matrix_ulong_view tmp;
    tmp = gsl_matrix_ulong_view_array ( $base ,$n1 ,$n2 );
    memcpy($view,&tmp,sizeof(_gsl_matrix_ulong_view));
    } #} 
    ()
    )


(de gsl_matrix_ulong_view_array_with_tda (   base  n1  n2  tda  view )
    ((-gptr- "unsigned long *")  base)
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-int-)  tda)                         ;; const size_t -> int
    ((-gptr- "_gsl_matrix_ulong_view *") view)
    #{
    { _gsl_matrix_ulong_view tmp;
    tmp = gsl_matrix_ulong_view_array_with_tda ( $base ,$n1 ,$n2 ,$tda );
    memcpy($view,&tmp,sizeof(_gsl_matrix_ulong_view));
    } #} 
    ()
    )



(de gsl_matrix_ulong_view_vector (   v  n1  n2  view )
    ((-gptr- "gsl_vector_ulong *")  v)
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-gptr- "_gsl_matrix_ulong_view *") view)
    #{
    { _gsl_matrix_ulong_view tmp;
    tmp = gsl_matrix_ulong_view_vector ( $v ,$n1 ,$n2 );
    memcpy($view,&tmp,sizeof(_gsl_matrix_ulong_view));
    } #} 
    ()
    )


(de gsl_matrix_ulong_view_vector_with_tda (   v  n1  n2  tda  view )
    ((-gptr- "gsl_vector_ulong *")  v)
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-int-)  tda)                         ;; const size_t -> int
    ((-gptr- "_gsl_matrix_ulong_view *") view)
    #{
    { _gsl_matrix_ulong_view tmp;
    tmp = gsl_matrix_ulong_view_vector_with_tda ( $v ,$n1 ,$n2 ,$tda );
    memcpy($view,&tmp,sizeof(_gsl_matrix_ulong_view));
    } #} 
    ()
    )



(de gsl_matrix_ulong_const_submatrix (   m  i  j  n1  n2  view )
    ((-gptr- "const gsl_matrix_ulong *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-int-)  j)                         ;; const size_t -> int
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-gptr- "_gsl_matrix_ulong_const_view *") view)
    #{
    { _gsl_matrix_ulong_const_view tmp;
    tmp = gsl_matrix_ulong_const_submatrix ( $m ,$i ,$j ,$n1 ,$n2 );
    memcpy($view,&tmp,sizeof(_gsl_matrix_ulong_const_view));
    } #} 
    ()
    )


(de gsl_matrix_ulong_const_row (   m  i  view )
    ((-gptr- "const gsl_matrix_ulong *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-gptr- "_gsl_vector_ulong_const_view *") view)
    #{
    { _gsl_vector_ulong_const_view tmp;
    tmp = gsl_matrix_ulong_const_row ( $m ,$i );
    memcpy($view,&tmp,sizeof(_gsl_vector_ulong_const_view));
    } #} 
    ()
    )


(de gsl_matrix_ulong_const_column (   m  j  view )
    ((-gptr- "const gsl_matrix_ulong *")  m)
    ((-int-)  j)                         ;; const size_t -> int
    ((-gptr- "_gsl_vector_ulong_const_view *") view)
    #{
    { _gsl_vector_ulong_const_view tmp;
    tmp = gsl_matrix_ulong_const_column ( $m ,$j );
    memcpy($view,&tmp,sizeof(_gsl_vector_ulong_const_view));
    } #} 
    ()
    )


(de gsl_matrix_ulong_const_diagonal (   m  view )
    ((-gptr- "const gsl_matrix_ulong *")  m)
    ((-gptr- "_gsl_vector_ulong_const_view *") view)
    #{
    { _gsl_vector_ulong_const_view tmp;
    tmp = gsl_matrix_ulong_const_diagonal ( $m );
    memcpy($view,&tmp,sizeof(_gsl_vector_ulong_const_view));
    } #} 
    ()
    )


(de gsl_matrix_ulong_const_subdiagonal (   m  k  view )
    ((-gptr- "const gsl_matrix_ulong *")  m)
    ((-int-)  k)                         ;; const size_t -> int
    ((-gptr- "_gsl_vector_ulong_const_view *") view)
    #{
    { _gsl_vector_ulong_const_view tmp;
    tmp = gsl_matrix_ulong_const_subdiagonal ( $m ,$k );
    memcpy($view,&tmp,sizeof(_gsl_vector_ulong_const_view));
    } #} 
    ()
    )


(de gsl_matrix_ulong_const_superdiagonal (   m  k  view )
    ((-gptr- "const gsl_matrix_ulong *")  m)
    ((-int-)  k)                         ;; const size_t -> int
    ((-gptr- "_gsl_vector_ulong_const_view *") view)
    #{
    { _gsl_vector_ulong_const_view tmp;
    tmp = gsl_matrix_ulong_const_superdiagonal ( $m ,$k );
    memcpy($view,&tmp,sizeof(_gsl_vector_ulong_const_view));
    } #} 
    ()
    )


(de gsl_matrix_ulong_const_view_array (   base  n1  n2  view )
    ((-gptr- "const unsigned long *")  base)
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-gptr- "_gsl_matrix_ulong_const_view *") view)
    #{
    { _gsl_matrix_ulong_const_view tmp;
    tmp = gsl_matrix_ulong_const_view_array ( $base ,$n1 ,$n2 );
    memcpy($view,&tmp,sizeof(_gsl_matrix_ulong_const_view));
    } #} 
    ()
    )


(de gsl_matrix_ulong_const_view_array_with_tda (   base  n1  n2  tda  view )
    ((-gptr- "const unsigned long *")  base)
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-int-)  tda)                         ;; const size_t -> int
    ((-gptr- "_gsl_matrix_ulong_const_view *") view)
    #{
    { _gsl_matrix_ulong_const_view tmp;
    tmp = gsl_matrix_ulong_const_view_array_with_tda ( $base ,$n1 ,$n2 ,$tda );
    memcpy($view,&tmp,sizeof(_gsl_matrix_ulong_const_view));
    } #} 
    ()
    )


(de gsl_matrix_ulong_const_view_vector (   v  n1  n2  view )
    ((-gptr- "const gsl_vector_ulong *")  v)
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-gptr- "_gsl_matrix_ulong_const_view *") view)
    #{
    { _gsl_matrix_ulong_const_view tmp;
    tmp = gsl_matrix_ulong_const_view_vector ( $v ,$n1 ,$n2 );
    memcpy($view,&tmp,sizeof(_gsl_matrix_ulong_const_view));
    } #} 
    ()
    )


(de gsl_matrix_ulong_const_view_vector_with_tda (   v  n1  n2  tda  view )
    ((-gptr- "const gsl_vector_ulong *")  v)
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-int-)  tda)                         ;; const size_t -> int
    ((-gptr- "_gsl_matrix_ulong_const_view *") view)
    #{
    { _gsl_matrix_ulong_const_view tmp;
    tmp = gsl_matrix_ulong_const_view_vector_with_tda ( $v ,$n1 ,$n2 ,$tda );
    memcpy($view,&tmp,sizeof(_gsl_matrix_ulong_const_view));
    } #} 
    ()
    )




(de gsl_matrix_ulong_get (   m  i  j  )
    ((-gptr- "const gsl_matrix_ulong *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-int-)  j)                         ;; const size_t -> int
    (int   #{  gsl_matrix_ulong_get( $m ,$i ,$j ) #} )          ;; unsigned long -> int
    )

(de gsl_matrix_ulong_set (   m  i  j  x  )
    ((-gptr- "gsl_matrix_ulong *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-int-)  j)                         ;; const size_t -> int
    ((-int-)  x)                         ;; const unsigned long -> int
    #{  gsl_matrix_ulong_set( $m ,$i ,$j ,$x );  #} 
    ()
    )


(de gsl_matrix_ulong_ptr (   m  i  j  )
    ((-gptr- "gsl_matrix_ulong *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-int-)  j)                         ;; const size_t -> int
    (gptr #{  gsl_matrix_ulong_ptr( $m ,$i ,$j )  #} )   ;; unsigned long * -> gptr
    )

(de gsl_matrix_ulong_const_ptr (   m  i  j  )
    ((-gptr- "const gsl_matrix_ulong *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-int-)  j)                         ;; const size_t -> int
    (gptr #{  gsl_matrix_ulong_const_ptr( $m ,$i ,$j ) #} )   ;; const unsigned long * -> gptr
    )


(de gsl_matrix_ulong_set_zero (   m  )
    ((-gptr- "gsl_matrix_ulong *")  m)
    #{  gsl_matrix_ulong_set_zero ( $m ); #} 
    ()
    )

(de gsl_matrix_ulong_set_identity (   m  )
    ((-gptr- "gsl_matrix_ulong *")  m)
    #{  gsl_matrix_ulong_set_identity ( $m );  #} 
    ()
    )

(de gsl_matrix_ulong_set_all (   m  x  )
    ((-gptr- "gsl_matrix_ulong *")  m)
    ((-int-)  x)                                   ;; unsigned long -> int
    #{  gsl_matrix_ulong_set_all ( $m ,$x ); #} 
    ()
    )


(de gsl_matrix_ulong_fread (   stream  m  )
    ((-gptr- "FILE *")  stream)
    ((-gptr- "gsl_matrix_ulong *")  m)
    (int #{  gsl_matrix_ulong_fread ( $stream ,$m )  #} )
    )

(de gsl_matrix_ulong_fwrite (   stream  m  )
    ((-gptr- "FILE *")  stream)
    ((-gptr- "const gsl_matrix_ulong *")  m)
    (int #{  gsl_matrix_ulong_fwrite ( $stream ,$m )   #} )
    )

(de gsl_matrix_ulong_fscanf (   stream  m  )
    ((-gptr- "FILE *")  stream)
    ((-gptr- "gsl_matrix_ulong *")  m)
    (int #{  gsl_matrix_ulong_fscanf ( $stream ,$m ) #} )
    )

(de gsl_matrix_ulong_fprintf (   stream  m  format  )
    ((-gptr- "FILE *")  stream)
    ((-gptr- "const gsl_matrix_ulong *")  m)
    ((-gptr- "const char *")  format)
    (int #{  gsl_matrix_ulong_fprintf ( $stream ,$m ,$format )  #} )
    )


(de gsl_matrix_ulong_memcpy (   dest  src  )
    ((-gptr- "gsl_matrix_ulong *")  dest)
    ((-gptr- "const gsl_matrix_ulong *")  src)
    (int #{  gsl_matrix_ulong_memcpy( $dest ,$src )  #} )
    )

(de gsl_matrix_ulong_swap (   m1  m2  )
    ((-gptr- "gsl_matrix_ulong *")  m1)
    ((-gptr- "gsl_matrix_ulong *")  m2)
    (int #{  gsl_matrix_ulong_swap( $m1 ,$m2 ) #} )
    )


(de gsl_matrix_ulong_swap_rows (   m  i  j  )
    ((-gptr- "gsl_matrix_ulong *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-int-)  j)                         ;; const size_t -> int
    (int #{  gsl_matrix_ulong_swap_rows( $m ,$i ,$j ) #} )
    )

(de gsl_matrix_ulong_swap_columns (   m  i  j  )
    ((-gptr- "gsl_matrix_ulong *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-int-)  j)                         ;; const size_t -> int
    (int #{  gsl_matrix_ulong_swap_columns( $m ,$i ,$j )  #} )
    )

(de gsl_matrix_ulong_swap_rowcol (   m  i  j  )
    ((-gptr- "gsl_matrix_ulong *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-int-)  j)                         ;; const size_t -> int
    (int #{  gsl_matrix_ulong_swap_rowcol( $m ,$i ,$j ) #} )
    )

(de gsl_matrix_ulong_transpose (   m  )
    ((-gptr- "gsl_matrix_ulong *")  m)
    (int #{  gsl_matrix_ulong_transpose ( $m )  #} )
    )

(de gsl_matrix_ulong_transpose_memcpy (   dest  src  )
    ((-gptr- "gsl_matrix_ulong *")  dest)
    ((-gptr- "const gsl_matrix_ulong *")  src)
    (int #{  gsl_matrix_ulong_transpose_memcpy ( $dest ,$src ) #} )
    )


(de gsl_matrix_ulong_max (   m  )
    ((-gptr- "const gsl_matrix_ulong *")  m)
    (int #{  gsl_matrix_ulong_max ( $m ) #} )            ;; unsigned long -> int
    )

(de gsl_matrix_ulong_min (   m  )
    ((-gptr- "const gsl_matrix_ulong *")  m)
    (int #{  gsl_matrix_ulong_min ( $m )  #} )          ;; unsigned long -> int
    )

(de gsl_matrix_ulong_minmax (   m  min_out  max_out  )
    ((-gptr- "const gsl_matrix_ulong *")  m)
    ((-gptr- "unsigned long *")  min_out)
    ((-gptr- "unsigned long *")  max_out)
    #{  gsl_matrix_ulong_minmax ( $m ,$min_out ,$max_out ); #} 
    ()
    )


(de gsl_matrix_ulong_max_index (   m  imax  jmax  )
    ((-gptr- "const gsl_matrix_ulong *")  m)
    ((-gptr- "size_t *")  imax)
    ((-gptr- "size_t *") jmax)
    #{  gsl_matrix_ulong_max_index ( $m ,$imax ,$jmax ); #} 
    ()
    )

(de gsl_matrix_ulong_min_index (   m  imin  jmin  )
    ((-gptr- "const gsl_matrix_ulong *")  m)
    ((-gptr- "size_t *")  imin)
    ((-gptr- "size_t *") jmin)
    #{  gsl_matrix_ulong_min_index ( $m ,$imin ,$jmin );  #} 
    ()
    )

(de gsl_matrix_ulong_minmax_index (   m  imin  jmin  imax  jmax  )
    ((-gptr- "const gsl_matrix_ulong *")  m)
    ((-gptr- "size_t *")  imin)
    ((-gptr- "size_t *")  jmin)
    ((-gptr- "size_t *")  imax)
    ((-gptr- "size_t *")  jmax)
    #{  gsl_matrix_ulong_minmax_index ( $m ,$imin ,$jmin ,$imax ,$jmax ); #} 
    ()
    )


(de gsl_matrix_ulong_isnull (   m  )
    ((-gptr- "const gsl_matrix_ulong *")  m)
    (int #{  gsl_matrix_ulong_isnull ( $m ) #} )
    )


(de gsl_matrix_ulong_add (   a  b  )
    ((-gptr- "gsl_matrix_ulong *")  a)
    ((-gptr- "const gsl_matrix_ulong *")  b)
    (int #{  gsl_matrix_ulong_add ( $a ,$b ) #} )
    )

(de gsl_matrix_ulong_sub (   a  b  )
    ((-gptr- "gsl_matrix_ulong *")  a)
    ((-gptr- "const gsl_matrix_ulong *")  b)
    (int #{  gsl_matrix_ulong_sub ( $a ,$b )  #} )
    )

(de gsl_matrix_ulong_mul_elements (   a  b  )
    ((-gptr- "gsl_matrix_ulong *")  a)
    ((-gptr- "const gsl_matrix_ulong *")  b)
    (int #{  gsl_matrix_ulong_mul_elements ( $a ,$b ) #} )
    )

(de gsl_matrix_ulong_div_elements (   a  b  )
    ((-gptr- "gsl_matrix_ulong *")  a)
    ((-gptr- "const gsl_matrix_ulong *")  b)
    (int #{  gsl_matrix_ulong_div_elements ( $a ,$b )  #} )
    )

(de gsl_matrix_ulong_scale (   a  x  )
    ((-gptr- "gsl_matrix_ulong *")  a)
    ((-double-)  x)
    (int #{  gsl_matrix_ulong_scale ( $a ,$x ) #} )
    )

(de gsl_matrix_ulong_add_constant (   a  x  )
    ((-gptr- "gsl_matrix_ulong *")  a)
    ((-double-)  x)
    (int #{  gsl_matrix_ulong_add_constant ( $a ,$x )  #} )
    )

(if (> gsl-libversion 1.0)
    (de gsl_matrix_ulong_add_diagonal (   a  x  )
      ((-gptr- "gsl_matrix_ulong *")  a)
      ((-double-)  x)
      (int #{  gsl_matrix_ulong_add_diagonal ( $a ,$x ) #} )
      )
  (de gsl_matrix_ulong_add_diagonal (   a  x  )
    ((-gptr- "gsl_matrix_ulong *")  a)
    ((-double-)  x)
    (error "not available in this version of GSL") ()))




(de gsl_matrix_ulong_get_row (   v  m  i  )
    ((-gptr- "gsl_vector_ulong *")  v)
    ((-gptr- "const gsl_matrix_ulong *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    (int #{  gsl_matrix_ulong_get_row( $v ,$m ,$i )  #} )
    )

(de gsl_matrix_ulong_get_col (   v  m  j  )
    ((-gptr- "gsl_vector_ulong *")  v)
    ((-gptr- "const gsl_matrix_ulong *")  m)
    ((-int-)  j)                         ;; const size_t -> int
    (int #{  gsl_matrix_ulong_get_col( $v ,$m ,$j ) #} )
    )

(de gsl_matrix_ulong_set_row (   m  i  v  )
    ((-gptr- "gsl_matrix_ulong *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-gptr- "const gsl_vector_ulong *")  v)
    (int #{  gsl_matrix_ulong_set_row( $m ,$i ,$v )  #} )
    )

(de gsl_matrix_ulong_set_col (   m  j  v  )
    ((-gptr- "gsl_matrix_ulong *")  m)
    ((-int-)  j)                         ;; const size_t -> int
    ((-gptr- "const gsl_vector_ulong *")  v)
    (int #{  gsl_matrix_ulong_set_col( $m ,$j ,$v ) #} )
    )





(de gsl_matrix_ushort_alloc (   n1  n2  )
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    (gptr   #{  gsl_matrix_ushort_alloc ( $n1 ,$n2 ) #} )   ;; gsl_matrix_ushort * -> gptr
    )


(de gsl_matrix_ushort_calloc (   n1  n2  )
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    (gptr  #{  gsl_matrix_ushort_calloc ( $n1 ,$n2 )  #} )   ;; gsl_matrix_ushort * -> gptr
    )


(de gsl_matrix_ushort_alloc_from_block (   b  offset  n1  n2  d2  )
    ((-gptr- "gsl_block_ushort *")  b)
    ((-int-)  offset)                         ;; const size_t -> int
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-int-)  d2)                         ;; const size_t -> int
    (gptr   #{  gsl_matrix_ushort_alloc_from_block ( $b ,$offset ,$n1 ,$n2 ,$d2 ) #} )   ;; gsl_matrix_ushort * -> gptr
    )


(de gsl_matrix_ushort_alloc_from_matrix (   m  k1  k2  n1  n2  )
    ((-gptr- "gsl_matrix_ushort *")  m)
    ((-int-)  k1)                         ;; const size_t -> int
    ((-int-)  k2)                         ;; const size_t -> int
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    (gptr  #{  gsl_matrix_ushort_alloc_from_matrix ( $m ,$k1 ,$k2 ,$n1 ,$n2 )  #} )   ;; gsl_matrix_ushort * -> gptr
    )


(de gsl_vector_ushort_alloc_row_from_matrix (   m  i  )
    ((-gptr- "gsl_matrix_ushort *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    (gptr   #{  gsl_vector_ushort_alloc_row_from_matrix ( $m ,$i ) #} )   ;; gsl_vector_ushort * -> gptr
    )


(de gsl_vector_ushort_alloc_col_from_matrix (   m  j  )
    ((-gptr- "gsl_matrix_ushort *")  m)
    ((-int-)  j)                         ;; const size_t -> int
    (gptr  #{  gsl_vector_ushort_alloc_col_from_matrix ( $m ,$j )  #} )   ;; gsl_vector_ushort * -> gptr
    )


(de gsl_matrix_ushort_free (   m  )
    ((-gptr- "gsl_matrix_ushort *")  m)
    #{  gsl_matrix_ushort_free ( $m );  #} 
    ()
    )




(de gsl_matrix_ushort_submatrix (   m  i  j  n1  n2  view )
    ((-gptr- "gsl_matrix_ushort *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-int-)  j)                         ;; const size_t -> int
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-gptr- "_gsl_matrix_ushort_view *") view)
    #{
    { _gsl_matrix_ushort_view tmp;
    tmp = gsl_matrix_ushort_submatrix ( $m ,$i ,$j ,$n1 ,$n2 );
    memcpy($view,&tmp,sizeof(_gsl_matrix_ushort_view));
    } #} 
    ()
    )


(de gsl_matrix_ushort_row (   m  i  view )
    ((-gptr- "gsl_matrix_ushort *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-gptr- "_gsl_vector_ushort_view *") view)
    #{
    { _gsl_vector_ushort_view tmp;
    tmp = gsl_matrix_ushort_row ( $m ,$i );
    memcpy($view,&tmp,sizeof(_gsl_vector_ushort_view));
    } #} 
    ()
    )


(de gsl_matrix_ushort_column (   m  j  view )
    ((-gptr- "gsl_matrix_ushort *")  m)
    ((-int-)  j)                         ;; const size_t -> int
    ((-gptr- "_gsl_vector_ushort_view *") view)
    #{
    { _gsl_vector_ushort_view tmp;
    tmp = gsl_matrix_ushort_column ( $m ,$j );
    memcpy($view,&tmp,sizeof(_gsl_vector_ushort_view));
    } #} 
    ()
    )


(de gsl_matrix_ushort_diagonal (   m  view )
    ((-gptr- "gsl_matrix_ushort *")  m)
    ((-gptr- "_gsl_vector_ushort_view *") view)
    #{
    { _gsl_vector_ushort_view tmp;
    tmp = gsl_matrix_ushort_diagonal ( $m );
    memcpy($view,&tmp,sizeof(_gsl_vector_ushort_view));
    } #} 
    ()
    )


(de gsl_matrix_ushort_subdiagonal (   m  k  view )
    ((-gptr- "gsl_matrix_ushort *")  m)
    ((-int-)  k)                         ;; const size_t -> int
    ((-gptr- "_gsl_vector_ushort_view *") view)
    #{
    { _gsl_vector_ushort_view tmp;
    tmp = gsl_matrix_ushort_subdiagonal ( $m ,$k );
    memcpy($view,&tmp,sizeof(_gsl_vector_ushort_view));
    } #} 
    ()
    )


(de gsl_matrix_ushort_superdiagonal (   m  k  view )
    ((-gptr- "gsl_matrix_ushort *")  m)
    ((-int-)  k)                         ;; const size_t -> int
    ((-gptr- "_gsl_vector_ushort_view *") view)
    #{
    { _gsl_vector_ushort_view tmp;
    tmp = gsl_matrix_ushort_superdiagonal ( $m ,$k );
    memcpy($view,&tmp,sizeof(_gsl_vector_ushort_view));
    } #} 
    ()
    )


(de gsl_matrix_ushort_view_array (   base  n1  n2  view )
    ((-gptr- "unsigned short *")  base)
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-gptr- "_gsl_matrix_ushort_view *") view)
    #{
    { _gsl_matrix_ushort_view tmp;
    tmp = gsl_matrix_ushort_view_array ( $base ,$n1 ,$n2 );
    memcpy($view,&tmp,sizeof(_gsl_matrix_ushort_view));
    } #} 
    ()
    )


(de gsl_matrix_ushort_view_array_with_tda (   base  n1  n2  tda  view )
    ((-gptr- "unsigned short *")  base)
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-int-)  tda)                         ;; const size_t -> int
    ((-gptr- "_gsl_matrix_ushort_view *") view)
    #{
    { _gsl_matrix_ushort_view tmp;
    tmp = gsl_matrix_ushort_view_array_with_tda ( $base ,$n1 ,$n2 ,$tda );
    memcpy($view,&tmp,sizeof(_gsl_matrix_ushort_view));
    } #} 
    ()
    )



(de gsl_matrix_ushort_view_vector (   v  n1  n2  view )
    ((-gptr- "gsl_vector_ushort *")  v)
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-gptr- "_gsl_matrix_ushort_view *") view)
    #{
    { _gsl_matrix_ushort_view tmp;
    tmp = gsl_matrix_ushort_view_vector ( $v ,$n1 ,$n2 );
    memcpy($view,&tmp,sizeof(_gsl_matrix_ushort_view));
    } #} 
    ()
    )


(de gsl_matrix_ushort_view_vector_with_tda (   v  n1  n2  tda  view )
    ((-gptr- "gsl_vector_ushort *")  v)
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-int-)  tda)                         ;; const size_t -> int
    ((-gptr- "_gsl_matrix_ushort_view *") view)
    #{
    { _gsl_matrix_ushort_view tmp;
    tmp = gsl_matrix_ushort_view_vector_with_tda ( $v ,$n1 ,$n2 ,$tda );
    memcpy($view,&tmp,sizeof(_gsl_matrix_ushort_view));
    } #} 
    ()
    )



(de gsl_matrix_ushort_const_submatrix (   m  i  j  n1  n2  view )
    ((-gptr- "const gsl_matrix_ushort *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-int-)  j)                         ;; const size_t -> int
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-gptr- "_gsl_matrix_ushort_const_view *") view)
    #{
    { _gsl_matrix_ushort_const_view tmp;
    tmp = gsl_matrix_ushort_const_submatrix ( $m ,$i ,$j ,$n1 ,$n2 );
    memcpy($view,&tmp,sizeof(_gsl_matrix_ushort_const_view));
    } #} 
    ()
    )


(de gsl_matrix_ushort_const_row (   m  i  view )
    ((-gptr- "const gsl_matrix_ushort *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-gptr- "_gsl_vector_ushort_const_view *") view)
    #{
    { _gsl_vector_ushort_const_view tmp;
    tmp = gsl_matrix_ushort_const_row ( $m ,$i );
    memcpy($view,&tmp,sizeof(_gsl_vector_ushort_const_view));
    } #} 
    ()
    )


(de gsl_matrix_ushort_const_column (   m  j  view )
    ((-gptr- "const gsl_matrix_ushort *")  m)
    ((-int-)  j)                         ;; const size_t -> int
    ((-gptr- "_gsl_vector_ushort_const_view *") view)
    #{
    { _gsl_vector_ushort_const_view tmp;
    tmp = gsl_matrix_ushort_const_column ( $m ,$j );
    memcpy($view,&tmp,sizeof(_gsl_vector_ushort_const_view));
    } #} 
    ()
    )


(de gsl_matrix_ushort_const_diagonal (   m  view )
    ((-gptr- "const gsl_matrix_ushort *")  m)
    ((-gptr- "_gsl_vector_ushort_const_view *") view)
    #{
    { _gsl_vector_ushort_const_view tmp;
    tmp = gsl_matrix_ushort_const_diagonal ( $m );
    memcpy($view,&tmp,sizeof(_gsl_vector_ushort_const_view));
    } #} 
    ()
    )


(de gsl_matrix_ushort_const_subdiagonal (   m  k  view )
    ((-gptr- "const gsl_matrix_ushort *")  m)
    ((-int-)  k)                         ;; const size_t -> int
    ((-gptr- "_gsl_vector_ushort_const_view *") view)
    #{
    { _gsl_vector_ushort_const_view tmp;
    tmp = gsl_matrix_ushort_const_subdiagonal ( $m ,$k );
    memcpy($view,&tmp,sizeof(_gsl_vector_ushort_const_view));
    } #} 
    ()
    )


(de gsl_matrix_ushort_const_superdiagonal (   m  k  view )
    ((-gptr- "const gsl_matrix_ushort *")  m)
    ((-int-)  k)                         ;; const size_t -> int
    ((-gptr- "_gsl_vector_ushort_const_view *") view)
    #{
    { _gsl_vector_ushort_const_view tmp;
    tmp = gsl_matrix_ushort_const_superdiagonal ( $m ,$k );
    memcpy($view,&tmp,sizeof(_gsl_vector_ushort_const_view));
    } #} 
    ()
    )


(de gsl_matrix_ushort_const_view_array (   base  n1  n2  view )
    ((-gptr- "const unsigned short *")  base)
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-gptr- "_gsl_matrix_ushort_const_view *") view)
    #{
    { _gsl_matrix_ushort_const_view tmp;
    tmp = gsl_matrix_ushort_const_view_array ( $base ,$n1 ,$n2 );
    memcpy($view,&tmp,sizeof(_gsl_matrix_ushort_const_view));
    } #} 
    ()
    )


(de gsl_matrix_ushort_const_view_array_with_tda (   base  n1  n2  tda  view )
    ((-gptr- "const unsigned short *")  base)
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-int-)  tda)                         ;; const size_t -> int
    ((-gptr- "_gsl_matrix_ushort_const_view *") view)
    #{
    { _gsl_matrix_ushort_const_view tmp;
    tmp = gsl_matrix_ushort_const_view_array_with_tda ( $base ,$n1 ,$n2 ,$tda );
    memcpy($view,&tmp,sizeof(_gsl_matrix_ushort_const_view));
    } #} 
    ()
    )


(de gsl_matrix_ushort_const_view_vector (   v  n1  n2  view )
    ((-gptr- "const gsl_vector_ushort *")  v)
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-gptr- "_gsl_matrix_ushort_const_view *") view)
    #{
    { _gsl_matrix_ushort_const_view tmp;
    tmp = gsl_matrix_ushort_const_view_vector ( $v ,$n1 ,$n2 );
    memcpy($view,&tmp,sizeof(_gsl_matrix_ushort_const_view));
    } #} 
    ()
    )


(de gsl_matrix_ushort_const_view_vector_with_tda (   v  n1  n2  tda  view )
    ((-gptr- "const gsl_vector_ushort *")  v)
    ((-int-)  n1)                         ;; const size_t -> int
    ((-int-)  n2)                         ;; const size_t -> int
    ((-int-)  tda)                         ;; const size_t -> int
    ((-gptr- "_gsl_matrix_ushort_const_view *") view)
    #{
    { _gsl_matrix_ushort_const_view tmp;
    tmp = gsl_matrix_ushort_const_view_vector_with_tda ( $v ,$n1 ,$n2 ,$tda );
    memcpy($view,&tmp,sizeof(_gsl_matrix_ushort_const_view));
    } #} 
    ()
    )




(de gsl_matrix_ushort_get (   m  i  j  )
    ((-gptr- "const gsl_matrix_ushort *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-int-)  j)                         ;; const size_t -> int
    (int #{  gsl_matrix_ushort_get( $m ,$i ,$j )  #} )          ;; unsigned short  
    )

(de gsl_matrix_ushort_set (   m  i  j  x  )
    ((-gptr- "gsl_matrix_ushort *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-int-)  j)                         ;; const size_t -> int
    ((-int-)  x)                         ;; const unsigned short -> int
    #{  gsl_matrix_ushort_set( $m ,$i ,$j ,$x ); #} 
    ()
    )


(de gsl_matrix_ushort_ptr (   m  i  j  )
    ((-gptr- "gsl_matrix_ushort *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-int-)  j)                         ;; const size_t -> int
    (gptr #{  gsl_matrix_ushort_ptr( $m ,$i ,$j ) #} )   ;; unsigned short * -> gptr
    )

(de gsl_matrix_ushort_const_ptr (   m  i  j  )
    ((-gptr- "const gsl_matrix_ushort *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-int-)  j)                         ;; const size_t -> int
    (gptr #{  gsl_matrix_ushort_const_ptr( $m ,$i ,$j )  #} )   ;; const unsigned short * -> gptr
    )


(de gsl_matrix_ushort_set_zero (   m  )
    ((-gptr- "gsl_matrix_ushort *")  m)
    #{  gsl_matrix_ushort_set_zero ( $m );  #} 
    ()
    )

(de gsl_matrix_ushort_set_identity (   m  )
    ((-gptr- "gsl_matrix_ushort *")  m)
    #{  gsl_matrix_ushort_set_identity ( $m ); #} 
    ()
    )

(de gsl_matrix_ushort_set_all (   m  x  )
    ((-gptr- "gsl_matrix_ushort *")  m)
    ((-int-)  x)                                   ;; unsigned short -> int
    #{  gsl_matrix_ushort_set_all ( $m ,$x );  #} 
    ()
    )


(de gsl_matrix_ushort_fread (   stream  m  )
    ((-gptr- "FILE *")  stream)
    ((-gptr- "gsl_matrix_ushort *")  m)
    (int #{  gsl_matrix_ushort_fread ( $stream ,$m )   #} )
    )

(de gsl_matrix_ushort_fwrite (   stream  m  )
    ((-gptr- "FILE *")  stream)
    ((-gptr- "const gsl_matrix_ushort *")  m)
    (int #{  gsl_matrix_ushort_fwrite ( $stream ,$m )  #} )
    )

(de gsl_matrix_ushort_fscanf (   stream  m  )
    ((-gptr- "FILE *")  stream)
    ((-gptr- "gsl_matrix_ushort *")  m)
    (int #{  gsl_matrix_ushort_fscanf ( $stream ,$m )  #} )
    )

(de gsl_matrix_ushort_fprintf (   stream  m  format  )
    ((-gptr- "FILE *")  stream)
    ((-gptr- "const gsl_matrix_ushort *")  m)
    ((-gptr- "const char *")  format)
    (int #{  gsl_matrix_ushort_fprintf ( $stream ,$m ,$format ) #} )
    )


(de gsl_matrix_ushort_memcpy (   dest  src  )
    ((-gptr- "gsl_matrix_ushort *")  dest)
    ((-gptr- "const gsl_matrix_ushort *")  src)
    (int #{  gsl_matrix_ushort_memcpy( $dest ,$src ) #} )
    )

(de gsl_matrix_ushort_swap (   m1  m2  )
    ((-gptr- "gsl_matrix_ushort *")  m1)
    ((-gptr- "gsl_matrix_ushort *")  m2)
    (int #{  gsl_matrix_ushort_swap( $m1 ,$m2 )  #} )
    )


(de gsl_matrix_ushort_swap_rows (   m  i  j  )
    ((-gptr- "gsl_matrix_ushort *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-int-)  j)                         ;; const size_t -> int
    (int #{  gsl_matrix_ushort_swap_rows( $m ,$i ,$j )  #} )
    )

(de gsl_matrix_ushort_swap_columns (   m  i  j  )
    ((-gptr- "gsl_matrix_ushort *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-int-)  j)                         ;; const size_t -> int
    (int #{  gsl_matrix_ushort_swap_columns( $m ,$i ,$j ) #} )
    )

(de gsl_matrix_ushort_swap_rowcol (   m  i  j  )
    ((-gptr- "gsl_matrix_ushort *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-int-)  j)                         ;; const size_t -> int
    (int #{  gsl_matrix_ushort_swap_rowcol( $m ,$i ,$j )  #} )
    )

(de gsl_matrix_ushort_transpose (   m  )
    ((-gptr- "gsl_matrix_ushort *")  m)
    (int #{  gsl_matrix_ushort_transpose ( $m ) #} )
    )

(de gsl_matrix_ushort_transpose_memcpy (   dest  src  )
    ((-gptr- "gsl_matrix_ushort *")  dest)
    ((-gptr- "const gsl_matrix_ushort *")  src)
    (int #{  gsl_matrix_ushort_transpose_memcpy ( $dest ,$src )  #} )
    )


(de gsl_matrix_ushort_max (   m  )
    ((-gptr- "const gsl_matrix_ushort *")  m)
    (int #{  gsl_matrix_ushort_max ( $m )  #} )         ;; unsigned short -> int
    )

(de gsl_matrix_ushort_min (   m  )
    ((-gptr- "const gsl_matrix_ushort *")  m)
    (int #{  gsl_matrix_ushort_min ( $m ) #} )          ;; unsigned short -> int
    )

(de gsl_matrix_ushort_minmax (   m  min_out  max_out  )
    ((-gptr- "const gsl_matrix_ushort *")  m)
    ((-gptr- "unsigned short *")  min_out)
    ((-gptr- "unsigned short *")  max_out)
    #{  gsl_matrix_ushort_minmax ( $m ,$min_out ,$max_out );  #} 
    ()
    )


(de gsl_matrix_ushort_max_index (   m  imax  jmax  )
    ((-gptr- "const gsl_matrix_ushort *")  m)
    ((-gptr- "size_t *")  imax)
    ((-gptr- "size_t *") jmax)
    #{  gsl_matrix_ushort_max_index ( $m ,$imax ,$jmax );  #} 
    ()
    )

(de gsl_matrix_ushort_min_index (   m  imin  jmin  )
    ((-gptr- "const gsl_matrix_ushort *")  m)
    ((-gptr- "size_t *")  imin)
    ((-gptr- "size_t *") jmin)
    #{  gsl_matrix_ushort_min_index ( $m ,$imin ,$jmin ); #} 
    ()
    )

(de gsl_matrix_ushort_minmax_index (   m  imin  jmin  imax  jmax  )
    ((-gptr- "const gsl_matrix_ushort *")  m)
    ((-gptr- "size_t *")  imin)
    ((-gptr- "size_t *")  jmin)
    ((-gptr- "size_t *")  imax)
    ((-gptr- "size_t *")  jmax)
    #{  gsl_matrix_ushort_minmax_index ( $m ,$imin ,$jmin ,$imax ,$jmax );  #} 
    ()
    )


(de gsl_matrix_ushort_isnull (   m  )
    ((-gptr- "const gsl_matrix_ushort *")  m)
    (int #{  gsl_matrix_ushort_isnull ( $m )  #} )
    )


(de gsl_matrix_ushort_add (   a  b  )
    ((-gptr- "gsl_matrix_ushort *")  a)
    ((-gptr- "const gsl_matrix_ushort *")  b)
    (int #{  gsl_matrix_ushort_add ( $a ,$b )  #} )
    )

(de gsl_matrix_ushort_sub (   a  b  )
    ((-gptr- "gsl_matrix_ushort *")  a)
    ((-gptr- "const gsl_matrix_ushort *")  b)
    (int #{  gsl_matrix_ushort_sub ( $a ,$b ) #} )
    )

(de gsl_matrix_ushort_mul_elements (   a  b  )
    ((-gptr- "gsl_matrix_ushort *")  a)
    ((-gptr- "const gsl_matrix_ushort *")  b)
    (int #{  gsl_matrix_ushort_mul_elements ( $a ,$b )  #} )
    )

(de gsl_matrix_ushort_div_elements (   a  b  )
    ((-gptr- "gsl_matrix_ushort *")  a)
    ((-gptr- "const gsl_matrix_ushort *")  b)
    (int #{  gsl_matrix_ushort_div_elements ( $a ,$b ) #} )
    )

(de gsl_matrix_ushort_scale (   a  x  )
    ((-gptr- "gsl_matrix_ushort *")  a)
    ((-double-)  x)
    (int #{  gsl_matrix_ushort_scale ( $a ,$x )  #} )
    )

(de gsl_matrix_ushort_add_constant (   a  x  )
    ((-gptr- "gsl_matrix_ushort *")  a)
    ((-double-)  x)
    (int #{  gsl_matrix_ushort_add_constant ( $a ,$x ) #} )
    )

(if (> gsl-libversion 1.0)
    (de gsl_matrix_ushort_add_diagonal (   a  x  )
      ((-gptr- "gsl_matrix_ushort *")  a)
      ((-double-)  x)
      (int #{  gsl_matrix_ushort_add_diagonal ( $a ,$x )  #} )
      )
  (de gsl_matrix_ushort_add_diagonal (   a  x  )
    ((-gptr- "gsl_matrix_ushort *")  a)
    ((-double-)  x)
    (error "not available in this version of GSL") ()))





(de gsl_matrix_ushort_get_row (   v  m  i  )
    ((-gptr- "gsl_vector_ushort *")  v)
    ((-gptr- "const gsl_matrix_ushort *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    (int #{  gsl_matrix_ushort_get_row( $v ,$m ,$i ) #} )
    )

(de gsl_matrix_ushort_get_col (   v  m  j  )
    ((-gptr- "gsl_vector_ushort *")  v)
    ((-gptr- "const gsl_matrix_ushort *")  m)
    ((-int-)  j)                         ;; const size_t -> int
    (int #{  gsl_matrix_ushort_get_col( $v ,$m ,$j )  #} )
    )

(de gsl_matrix_ushort_set_row (   m  i  v  )
    ((-gptr- "gsl_matrix_ushort *")  m)
    ((-int-)  i)                         ;; const size_t -> int
    ((-gptr- "const gsl_vector_ushort *")  v)
    (int #{  gsl_matrix_ushort_set_row( $m ,$i ,$v ) #} )
    )

(de gsl_matrix_ushort_set_col (   m  j  v  )
    ((-gptr- "gsl_matrix_ushort *")  m)
    ((-int-)  j)                         ;; const size_t -> int
    ((-gptr- "const gsl_vector_ushort *")  v)
    (int #{  gsl_matrix_ushort_set_col( $m ,$j ,$v )  #} )
    )



;; ********************************************************

(dhc-make ()
  dummy_matrix
  gsl_matrix_char_alloc
  gsl_matrix_char_calloc
  gsl_matrix_char_alloc_from_block
  gsl_matrix_char_alloc_from_matrix
  gsl_vector_char_alloc_row_from_matrix
  gsl_vector_char_alloc_col_from_matrix
  gsl_matrix_char_free
  gsl_matrix_char_submatrix
  gsl_matrix_char_row
  gsl_matrix_char_column
  gsl_matrix_char_diagonal
  gsl_matrix_char_subdiagonal
  gsl_matrix_char_superdiagonal
  gsl_matrix_char_view_array
  gsl_matrix_char_view_array_with_tda
  gsl_matrix_char_view_vector
  gsl_matrix_char_view_vector_with_tda
  gsl_matrix_char_const_submatrix
  gsl_matrix_char_const_row
  gsl_matrix_char_const_column
  gsl_matrix_char_const_diagonal
  gsl_matrix_char_const_subdiagonal
  gsl_matrix_char_const_superdiagonal
  gsl_matrix_char_const_view_array
  gsl_matrix_char_const_view_array_with_tda
  gsl_matrix_char_const_view_vector
  gsl_matrix_char_const_view_vector_with_tda
  gsl_matrix_char_get
  gsl_matrix_char_set
  gsl_matrix_char_ptr
  gsl_matrix_char_const_ptr
  gsl_matrix_char_set_zero
  gsl_matrix_char_set_identity
  gsl_matrix_char_set_all
  gsl_matrix_char_fread
  gsl_matrix_char_fwrite
  gsl_matrix_char_fscanf
  gsl_matrix_char_fprintf
  gsl_matrix_char_memcpy
  gsl_matrix_char_swap
  gsl_matrix_char_swap_rows
  gsl_matrix_char_swap_columns
  gsl_matrix_char_swap_rowcol
  gsl_matrix_char_transpose
  gsl_matrix_char_transpose_memcpy
  gsl_matrix_char_max
  gsl_matrix_char_min
  gsl_matrix_char_minmax
  gsl_matrix_char_max_index
  gsl_matrix_char_min_index
  gsl_matrix_char_minmax_index
  gsl_matrix_char_isnull
  gsl_matrix_char_add
  gsl_matrix_char_sub
  gsl_matrix_char_mul_elements
  gsl_matrix_char_div_elements
  gsl_matrix_char_scale
  gsl_matrix_char_add_constant
  gsl_matrix_char_add_diagonal
  gsl_matrix_char_get_row
  gsl_matrix_char_get_col
  gsl_matrix_char_set_row
  gsl_matrix_char_set_col
  gsl_matrix_complex_alloc
  gsl_matrix_complex_calloc
  gsl_matrix_complex_alloc_from_block
  gsl_matrix_complex_alloc_from_matrix
  gsl_vector_complex_alloc_row_from_matrix
  gsl_vector_complex_alloc_col_from_matrix
  gsl_matrix_complex_free
  gsl_matrix_complex_submatrix
  gsl_matrix_complex_row
  gsl_matrix_complex_column
  gsl_matrix_complex_diagonal
  gsl_matrix_complex_subdiagonal
  gsl_matrix_complex_superdiagonal
  gsl_matrix_complex_view_array
  gsl_matrix_complex_view_array_with_tda
  gsl_matrix_complex_view_vector
  gsl_matrix_complex_view_vector_with_tda
  gsl_matrix_complex_const_submatrix
  gsl_matrix_complex_const_row
  gsl_matrix_complex_const_column
  gsl_matrix_complex_const_diagonal
  gsl_matrix_complex_const_subdiagonal
  gsl_matrix_complex_const_superdiagonal
  gsl_matrix_complex_const_view_array
  gsl_matrix_complex_const_view_array_with_tda
  gsl_matrix_complex_const_view_vector
  gsl_matrix_complex_const_view_vector_with_tda
  gsl_matrix_complex_get
  gsl_matrix_complex_set
  gsl_matrix_complex_ptr
  gsl_matrix_complex_const_ptr
  gsl_matrix_complex_set_zero
  gsl_matrix_complex_set_identity
  gsl_matrix_complex_set_all
  gsl_matrix_complex_fread
  gsl_matrix_complex_fwrite
  gsl_matrix_complex_fscanf
  gsl_matrix_complex_fprintf
  gsl_matrix_complex_memcpy
  gsl_matrix_complex_swap
  gsl_matrix_complex_swap_rows
  gsl_matrix_complex_swap_columns
  gsl_matrix_complex_swap_rowcol
  gsl_matrix_complex_transpose
  gsl_matrix_complex_transpose_memcpy
  gsl_matrix_complex_isnull
  gsl_matrix_complex_get_row
  gsl_matrix_complex_get_col
  gsl_matrix_complex_set_row
  gsl_matrix_complex_set_col
  gsl_matrix_complex_float_alloc
  gsl_matrix_complex_float_calloc
  gsl_matrix_complex_float_alloc_from_block
  gsl_matrix_complex_float_alloc_from_matrix
  gsl_vector_complex_float_alloc_row_from_matrix
  gsl_vector_complex_float_alloc_col_from_matrix
  gsl_matrix_complex_float_free
  gsl_matrix_complex_float_submatrix
  gsl_matrix_complex_float_row
  gsl_matrix_complex_float_column
  gsl_matrix_complex_float_diagonal
  gsl_matrix_complex_float_subdiagonal
  gsl_matrix_complex_float_superdiagonal
  gsl_matrix_complex_float_view_array
  gsl_matrix_complex_float_view_array_with_tda
  gsl_matrix_complex_float_view_vector
  gsl_matrix_complex_float_view_vector_with_tda
  gsl_matrix_complex_float_const_submatrix
  gsl_matrix_complex_float_const_row
  gsl_matrix_complex_float_const_column
  gsl_matrix_complex_float_const_diagonal
  gsl_matrix_complex_float_const_subdiagonal
  gsl_matrix_complex_float_const_superdiagonal
  gsl_matrix_complex_float_const_view_array
  gsl_matrix_complex_float_const_view_array_with_tda
  gsl_matrix_complex_float_const_view_vector
  gsl_matrix_complex_float_const_view_vector_with_tda
  gsl_matrix_complex_float_get
  gsl_matrix_complex_float_set
  gsl_matrix_complex_float_ptr
  gsl_matrix_complex_float_const_ptr
  gsl_matrix_complex_float_set_zero
  gsl_matrix_complex_float_set_identity
  gsl_matrix_complex_float_set_all
  gsl_matrix_complex_float_fread
  gsl_matrix_complex_float_fwrite
  gsl_matrix_complex_float_fscanf
  gsl_matrix_complex_float_fprintf
  gsl_matrix_complex_float_memcpy
  gsl_matrix_complex_float_swap
  gsl_matrix_complex_float_swap_rows
  gsl_matrix_complex_float_swap_columns
  gsl_matrix_complex_float_swap_rowcol
  gsl_matrix_complex_float_transpose
  gsl_matrix_complex_float_transpose_memcpy
  gsl_matrix_complex_float_isnull
  gsl_matrix_complex_float_get_row
  gsl_matrix_complex_float_get_col
  gsl_matrix_complex_float_set_row
  gsl_matrix_complex_float_set_col
  gsl_matrix_complex_long_double_alloc
  gsl_matrix_complex_long_double_calloc
  gsl_matrix_complex_long_double_alloc_from_block
  gsl_matrix_complex_long_double_alloc_from_matrix
  gsl_vector_complex_long_double_alloc_row_from_matrix
  gsl_vector_complex_long_double_alloc_col_from_matrix
  gsl_matrix_complex_long_double_free
  gsl_matrix_complex_long_double_submatrix
  gsl_matrix_complex_long_double_row
  gsl_matrix_complex_long_double_column
  gsl_matrix_complex_long_double_diagonal
  gsl_matrix_complex_long_double_subdiagonal
  gsl_matrix_complex_long_double_superdiagonal
  gsl_matrix_complex_long_double_view_array
  gsl_matrix_complex_long_double_view_array_with_tda
  gsl_matrix_complex_long_double_view_vector
  gsl_matrix_complex_long_double_view_vector_with_tda
  gsl_matrix_complex_long_double_const_submatrix
  gsl_matrix_complex_long_double_const_row
  gsl_matrix_complex_long_double_const_column
  gsl_matrix_complex_long_double_const_diagonal
  gsl_matrix_complex_long_double_const_subdiagonal
  gsl_matrix_complex_long_double_const_superdiagonal
  gsl_matrix_complex_long_double_const_view_array
  gsl_matrix_complex_long_double_const_view_array_with_tda
  gsl_matrix_complex_long_double_const_view_vector
  gsl_matrix_complex_long_double_const_view_vector_with_tda
  gsl_matrix_complex_long_double_get
  gsl_matrix_complex_long_double_set
  gsl_matrix_complex_long_double_ptr
  gsl_matrix_complex_long_double_const_ptr
  gsl_matrix_complex_long_double_set_zero
  gsl_matrix_complex_long_double_set_identity
  gsl_matrix_complex_long_double_set_all
  gsl_matrix_complex_long_double_fread
  gsl_matrix_complex_long_double_fwrite
  gsl_matrix_complex_long_double_fscanf
  gsl_matrix_complex_long_double_fprintf
  gsl_matrix_complex_long_double_memcpy
  gsl_matrix_complex_long_double_swap
  gsl_matrix_complex_long_double_swap_rows
  gsl_matrix_complex_long_double_swap_columns
  gsl_matrix_complex_long_double_swap_rowcol
  gsl_matrix_complex_long_double_transpose
  gsl_matrix_complex_long_double_transpose_memcpy
  gsl_matrix_complex_long_double_isnull
  gsl_matrix_complex_long_double_get_row
  gsl_matrix_complex_long_double_get_col
  gsl_matrix_complex_long_double_set_row
  gsl_matrix_complex_long_double_set_col
  gsl_matrix_alloc
  gsl_matrix_calloc
  gsl_matrix_alloc_from_block
  gsl_matrix_alloc_from_matrix
  gsl_vector_alloc_row_from_matrix
  gsl_vector_alloc_col_from_matrix
  gsl_matrix_free
  gsl_matrix_submatrix
  gsl_matrix_row
  gsl_matrix_column
  gsl_matrix_diagonal
  gsl_matrix_subdiagonal
  gsl_matrix_superdiagonal
  gsl_matrix_view_array
  gsl_matrix_view_array_with_tda
  gsl_matrix_view_vector
  gsl_matrix_view_vector_with_tda
  gsl_matrix_const_submatrix
  gsl_matrix_const_row
  gsl_matrix_const_column
  gsl_matrix_const_diagonal
  gsl_matrix_const_subdiagonal
  gsl_matrix_const_superdiagonal
  gsl_matrix_const_view_array
  gsl_matrix_const_view_array_with_tda
  gsl_matrix_const_view_vector
  gsl_matrix_const_view_vector_with_tda
  gsl_matrix_get
  gsl_matrix_set
  gsl_matrix_ptr
  gsl_matrix_const_ptr
  gsl_matrix_set_zero
  gsl_matrix_set_identity
  gsl_matrix_set_all
  gsl_matrix_fread
  gsl_matrix_fwrite
  gsl_matrix_fscanf
  gsl_matrix_fprintf
  gsl_matrix_memcpy
  gsl_matrix_swap
  gsl_matrix_swap_rows
  gsl_matrix_swap_columns
  gsl_matrix_swap_rowcol
  gsl_matrix_transpose
  gsl_matrix_transpose_memcpy
  gsl_matrix_max
  gsl_matrix_min
  gsl_matrix_minmax
  gsl_matrix_max_index
  gsl_matrix_min_index
  gsl_matrix_minmax_index
  gsl_matrix_isnull
  gsl_matrix_add
  gsl_matrix_sub
  gsl_matrix_mul_elements
  gsl_matrix_div_elements
  gsl_matrix_scale
  gsl_matrix_add_constant
  gsl_matrix_add_diagonal
  gsl_matrix_get_row
  gsl_matrix_get_col
  gsl_matrix_set_row
  gsl_matrix_set_col
  gsl_matrix_float_alloc
  gsl_matrix_float_calloc
  gsl_matrix_float_alloc_from_block
  gsl_matrix_float_alloc_from_matrix
  gsl_vector_float_alloc_row_from_matrix
  gsl_vector_float_alloc_col_from_matrix
  gsl_matrix_float_free
  gsl_matrix_float_submatrix
  gsl_matrix_float_row
  gsl_matrix_float_column
  gsl_matrix_float_diagonal
  gsl_matrix_float_subdiagonal
  gsl_matrix_float_superdiagonal
  gsl_matrix_float_view_array
  gsl_matrix_float_view_array_with_tda
  gsl_matrix_float_view_vector
  gsl_matrix_float_view_vector_with_tda
  gsl_matrix_float_const_submatrix
  gsl_matrix_float_const_row
  gsl_matrix_float_const_column
  gsl_matrix_float_const_diagonal
  gsl_matrix_float_const_subdiagonal
  gsl_matrix_float_const_superdiagonal
  gsl_matrix_float_const_view_array
  gsl_matrix_float_const_view_array_with_tda
  gsl_matrix_float_const_view_vector
  gsl_matrix_float_const_view_vector_with_tda
  gsl_matrix_float_get
  gsl_matrix_float_set
  gsl_matrix_float_ptr
  gsl_matrix_float_const_ptr
  gsl_matrix_float_set_zero
  gsl_matrix_float_set_identity
  gsl_matrix_float_set_all
  gsl_matrix_float_fread
  gsl_matrix_float_fwrite
  gsl_matrix_float_fscanf
  gsl_matrix_float_fprintf
  gsl_matrix_float_memcpy
  gsl_matrix_float_swap
  gsl_matrix_float_swap_rows
  gsl_matrix_float_swap_columns
  gsl_matrix_float_swap_rowcol
  gsl_matrix_float_transpose
  gsl_matrix_float_transpose_memcpy
  gsl_matrix_float_max
  gsl_matrix_float_min
  gsl_matrix_float_minmax
  gsl_matrix_float_max_index
  gsl_matrix_float_min_index
  gsl_matrix_float_minmax_index
  gsl_matrix_float_isnull
  gsl_matrix_float_add
  gsl_matrix_float_sub
  gsl_matrix_float_mul_elements
  gsl_matrix_float_div_elements
  gsl_matrix_float_scale
  gsl_matrix_float_add_constant
  gsl_matrix_float_add_diagonal
  gsl_matrix_float_get_row
  gsl_matrix_float_get_col
  gsl_matrix_float_set_row
  gsl_matrix_float_set_col
  gsl_matrix_int_alloc
  gsl_matrix_int_calloc
  gsl_matrix_int_alloc_from_block
  gsl_matrix_int_alloc_from_matrix
  gsl_vector_int_alloc_row_from_matrix
  gsl_vector_int_alloc_col_from_matrix
  gsl_matrix_int_free
  gsl_matrix_int_submatrix
  gsl_matrix_int_row
  gsl_matrix_int_column
  gsl_matrix_int_diagonal
  gsl_matrix_int_subdiagonal
  gsl_matrix_int_superdiagonal
  gsl_matrix_int_view_array
  gsl_matrix_int_view_array_with_tda
  gsl_matrix_int_view_vector
  gsl_matrix_int_view_vector_with_tda
  gsl_matrix_int_const_submatrix
  gsl_matrix_int_const_row
  gsl_matrix_int_const_column
  gsl_matrix_int_const_diagonal
  gsl_matrix_int_const_subdiagonal
  gsl_matrix_int_const_superdiagonal
  gsl_matrix_int_const_view_array
  gsl_matrix_int_const_view_array_with_tda
  gsl_matrix_int_const_view_vector
  gsl_matrix_int_const_view_vector_with_tda
  gsl_matrix_int_get
  gsl_matrix_int_set
  gsl_matrix_int_ptr
  gsl_matrix_int_const_ptr
  gsl_matrix_int_set_zero
  gsl_matrix_int_set_identity
  gsl_matrix_int_set_all
  gsl_matrix_int_fread
  gsl_matrix_int_fwrite
  gsl_matrix_int_fscanf
  gsl_matrix_int_fprintf
  gsl_matrix_int_memcpy
  gsl_matrix_int_swap
  gsl_matrix_int_swap_rows
  gsl_matrix_int_swap_columns
  gsl_matrix_int_swap_rowcol
  gsl_matrix_int_transpose
  gsl_matrix_int_transpose_memcpy
  gsl_matrix_int_max
  gsl_matrix_int_min
  gsl_matrix_int_minmax
  gsl_matrix_int_max_index
  gsl_matrix_int_min_index
  gsl_matrix_int_minmax_index
  gsl_matrix_int_isnull
  gsl_matrix_int_add
  gsl_matrix_int_sub
  gsl_matrix_int_mul_elements
  gsl_matrix_int_div_elements
  gsl_matrix_int_scale
  gsl_matrix_int_add_constant
  gsl_matrix_int_add_diagonal
  gsl_matrix_int_get_row
  gsl_matrix_int_get_col
  gsl_matrix_int_set_row
  gsl_matrix_int_set_col
  gsl_matrix_long_double_alloc
  gsl_matrix_long_double_calloc
  gsl_matrix_long_double_alloc_from_block
  gsl_matrix_long_double_alloc_from_matrix
  gsl_vector_long_double_alloc_row_from_matrix
  gsl_vector_long_double_alloc_col_from_matrix
  gsl_matrix_long_double_free
  gsl_matrix_long_double_submatrix
  gsl_matrix_long_double_row
  gsl_matrix_long_double_column
  gsl_matrix_long_double_diagonal
  gsl_matrix_long_double_subdiagonal
  gsl_matrix_long_double_superdiagonal
  gsl_matrix_long_double_view_array
  gsl_matrix_long_double_view_array_with_tda
  gsl_matrix_long_double_view_vector
  gsl_matrix_long_double_view_vector_with_tda
  gsl_matrix_long_double_const_submatrix
  gsl_matrix_long_double_const_row
  gsl_matrix_long_double_const_column
  gsl_matrix_long_double_const_diagonal
  gsl_matrix_long_double_const_subdiagonal
  gsl_matrix_long_double_const_superdiagonal
  gsl_matrix_long_double_const_view_array
  gsl_matrix_long_double_const_view_array_with_tda
  gsl_matrix_long_double_const_view_vector
  gsl_matrix_long_double_const_view_vector_with_tda
  gsl_matrix_long_double_get
  gsl_matrix_long_double_set
  gsl_matrix_long_double_ptr
  gsl_matrix_long_double_const_ptr
  gsl_matrix_long_double_set_zero
  gsl_matrix_long_double_set_identity
  gsl_matrix_long_double_set_all
  gsl_matrix_long_double_fread
  gsl_matrix_long_double_fwrite
  gsl_matrix_long_double_fscanf
  gsl_matrix_long_double_fprintf
  gsl_matrix_long_double_memcpy
  gsl_matrix_long_double_swap
  gsl_matrix_long_double_swap_rows
  gsl_matrix_long_double_swap_columns
  gsl_matrix_long_double_swap_rowcol
  gsl_matrix_long_double_transpose
  gsl_matrix_long_double_transpose_memcpy
  gsl_matrix_long_double_max
  gsl_matrix_long_double_min
  gsl_matrix_long_double_minmax
  gsl_matrix_long_double_max_index
  gsl_matrix_long_double_min_index
  gsl_matrix_long_double_minmax_index
  gsl_matrix_long_double_isnull
  gsl_matrix_long_double_add
  gsl_matrix_long_double_sub
  gsl_matrix_long_double_mul_elements
  gsl_matrix_long_double_div_elements
  gsl_matrix_long_double_scale
  gsl_matrix_long_double_add_constant
  gsl_matrix_long_double_add_diagonal
  gsl_matrix_long_double_get_row
  gsl_matrix_long_double_get_col
  gsl_matrix_long_double_set_row
  gsl_matrix_long_double_set_col
  gsl_matrix_long_alloc
  gsl_matrix_long_calloc
  gsl_matrix_long_alloc_from_block
  gsl_matrix_long_alloc_from_matrix
  gsl_vector_long_alloc_row_from_matrix
  gsl_vector_long_alloc_col_from_matrix
  gsl_matrix_long_free
  gsl_matrix_long_submatrix
  gsl_matrix_long_row
  gsl_matrix_long_column
  gsl_matrix_long_diagonal
  gsl_matrix_long_subdiagonal
  gsl_matrix_long_superdiagonal
  gsl_matrix_long_view_array
  gsl_matrix_long_view_array_with_tda
  gsl_matrix_long_view_vector
  gsl_matrix_long_view_vector_with_tda
  gsl_matrix_long_const_submatrix
  gsl_matrix_long_const_row
  gsl_matrix_long_const_column
  gsl_matrix_long_const_diagonal
  gsl_matrix_long_const_subdiagonal
  gsl_matrix_long_const_superdiagonal
  gsl_matrix_long_const_view_array
  gsl_matrix_long_const_view_array_with_tda
  gsl_matrix_long_const_view_vector
  gsl_matrix_long_const_view_vector_with_tda
  gsl_matrix_long_get
  gsl_matrix_long_set
  gsl_matrix_long_ptr
  gsl_matrix_long_const_ptr
  gsl_matrix_long_set_zero
  gsl_matrix_long_set_identity
  gsl_matrix_long_set_all
  gsl_matrix_long_fread
  gsl_matrix_long_fwrite
  gsl_matrix_long_fscanf
  gsl_matrix_long_fprintf
  gsl_matrix_long_memcpy
  gsl_matrix_long_swap
  gsl_matrix_long_swap_rows
  gsl_matrix_long_swap_columns
  gsl_matrix_long_swap_rowcol
  gsl_matrix_long_transpose
  gsl_matrix_long_transpose_memcpy
  gsl_matrix_long_max
  gsl_matrix_long_min
  gsl_matrix_long_minmax
  gsl_matrix_long_max_index
  gsl_matrix_long_min_index
  gsl_matrix_long_minmax_index
  gsl_matrix_long_isnull
  gsl_matrix_long_add
  gsl_matrix_long_sub
  gsl_matrix_long_mul_elements
  gsl_matrix_long_div_elements
  gsl_matrix_long_scale
  gsl_matrix_long_add_constant
  gsl_matrix_long_add_diagonal
  gsl_matrix_long_get_row
  gsl_matrix_long_get_col
  gsl_matrix_long_set_row
  gsl_matrix_long_set_col
  gsl_matrix_short_alloc
  gsl_matrix_short_calloc
  gsl_matrix_short_alloc_from_block
  gsl_matrix_short_alloc_from_matrix
  gsl_vector_short_alloc_row_from_matrix
  gsl_vector_short_alloc_col_from_matrix
  gsl_matrix_short_free
  gsl_matrix_short_submatrix
  gsl_matrix_short_row
  gsl_matrix_short_column
  gsl_matrix_short_diagonal
  gsl_matrix_short_subdiagonal
  gsl_matrix_short_superdiagonal
  gsl_matrix_short_view_array
  gsl_matrix_short_view_array_with_tda
  gsl_matrix_short_view_vector
  gsl_matrix_short_view_vector_with_tda
  gsl_matrix_short_const_submatrix
  gsl_matrix_short_const_row
  gsl_matrix_short_const_column
  gsl_matrix_short_const_diagonal
  gsl_matrix_short_const_subdiagonal
  gsl_matrix_short_const_superdiagonal
  gsl_matrix_short_const_view_array
  gsl_matrix_short_const_view_array_with_tda
  gsl_matrix_short_const_view_vector
  gsl_matrix_short_const_view_vector_with_tda
  gsl_matrix_short_get
  gsl_matrix_short_set
  gsl_matrix_short_ptr
  gsl_matrix_short_const_ptr
  gsl_matrix_short_set_zero
  gsl_matrix_short_set_identity
  gsl_matrix_short_set_all
  gsl_matrix_short_fread
  gsl_matrix_short_fwrite
  gsl_matrix_short_fscanf
  gsl_matrix_short_fprintf
  gsl_matrix_short_memcpy
  gsl_matrix_short_swap
  gsl_matrix_short_swap_rows
  gsl_matrix_short_swap_columns
  gsl_matrix_short_swap_rowcol
  gsl_matrix_short_transpose
  gsl_matrix_short_transpose_memcpy
  gsl_matrix_short_max
  gsl_matrix_short_min
  gsl_matrix_short_minmax
  gsl_matrix_short_max_index
  gsl_matrix_short_min_index
  gsl_matrix_short_minmax_index
  gsl_matrix_short_isnull
  gsl_matrix_short_add
  gsl_matrix_short_sub
  gsl_matrix_short_mul_elements
  gsl_matrix_short_div_elements
  gsl_matrix_short_scale
  gsl_matrix_short_add_constant
  gsl_matrix_short_add_diagonal
  gsl_matrix_short_get_row
  gsl_matrix_short_get_col
  gsl_matrix_short_set_row
  gsl_matrix_short_set_col
  gsl_matrix_uchar_alloc
  gsl_matrix_uchar_calloc
  gsl_matrix_uchar_alloc_from_block
  gsl_matrix_uchar_alloc_from_matrix
  gsl_vector_uchar_alloc_row_from_matrix
  gsl_vector_uchar_alloc_col_from_matrix
  gsl_matrix_uchar_free
  gsl_matrix_uchar_submatrix
  gsl_matrix_uchar_row
  gsl_matrix_uchar_column
  gsl_matrix_uchar_diagonal
  gsl_matrix_uchar_subdiagonal
  gsl_matrix_uchar_superdiagonal
  gsl_matrix_uchar_view_array
  gsl_matrix_uchar_view_array_with_tda
  gsl_matrix_uchar_view_vector
  gsl_matrix_uchar_view_vector_with_tda
  gsl_matrix_uchar_const_submatrix
  gsl_matrix_uchar_const_row
  gsl_matrix_uchar_const_column
  gsl_matrix_uchar_const_diagonal
  gsl_matrix_uchar_const_subdiagonal
  gsl_matrix_uchar_const_superdiagonal
  gsl_matrix_uchar_const_view_array
  gsl_matrix_uchar_const_view_array_with_tda
  gsl_matrix_uchar_const_view_vector
  gsl_matrix_uchar_const_view_vector_with_tda
  gsl_matrix_uchar_get
  gsl_matrix_uchar_set
  gsl_matrix_uchar_ptr
  gsl_matrix_uchar_const_ptr
  gsl_matrix_uchar_set_zero
  gsl_matrix_uchar_set_identity
  gsl_matrix_uchar_set_all
  gsl_matrix_uchar_fread
  gsl_matrix_uchar_fwrite
  gsl_matrix_uchar_fscanf
  gsl_matrix_uchar_fprintf
  gsl_matrix_uchar_memcpy
  gsl_matrix_uchar_swap
  gsl_matrix_uchar_swap_rows
  gsl_matrix_uchar_swap_columns
  gsl_matrix_uchar_swap_rowcol
  gsl_matrix_uchar_transpose
  gsl_matrix_uchar_transpose_memcpy
  gsl_matrix_uchar_max
  gsl_matrix_uchar_min
  gsl_matrix_uchar_minmax
  gsl_matrix_uchar_max_index
  gsl_matrix_uchar_min_index
  gsl_matrix_uchar_minmax_index
  gsl_matrix_uchar_isnull
  gsl_matrix_uchar_add
  gsl_matrix_uchar_sub
  gsl_matrix_uchar_mul_elements
  gsl_matrix_uchar_div_elements
  gsl_matrix_uchar_scale
  gsl_matrix_uchar_add_constant
  gsl_matrix_uchar_add_diagonal
  gsl_matrix_uchar_get_row
  gsl_matrix_uchar_get_col
  gsl_matrix_uchar_set_row
  gsl_matrix_uchar_set_col
  gsl_matrix_uint_alloc
  gsl_matrix_uint_calloc
  gsl_matrix_uint_alloc_from_block
  gsl_matrix_uint_alloc_from_matrix
  gsl_vector_uint_alloc_row_from_matrix
  gsl_vector_uint_alloc_col_from_matrix
  gsl_matrix_uint_free
  gsl_matrix_uint_submatrix
  gsl_matrix_uint_row
  gsl_matrix_uint_column
  gsl_matrix_uint_diagonal
  gsl_matrix_uint_subdiagonal
  gsl_matrix_uint_superdiagonal
  gsl_matrix_uint_view_array
  gsl_matrix_uint_view_array_with_tda
  gsl_matrix_uint_view_vector
  gsl_matrix_uint_view_vector_with_tda
  gsl_matrix_uint_const_submatrix
  gsl_matrix_uint_const_row
  gsl_matrix_uint_const_column
  gsl_matrix_uint_const_diagonal
  gsl_matrix_uint_const_subdiagonal
  gsl_matrix_uint_const_superdiagonal
  gsl_matrix_uint_const_view_array
  gsl_matrix_uint_const_view_array_with_tda
  gsl_matrix_uint_const_view_vector
  gsl_matrix_uint_const_view_vector_with_tda
  gsl_matrix_uint_get
  gsl_matrix_uint_set
  gsl_matrix_uint_ptr
  gsl_matrix_uint_const_ptr
  gsl_matrix_uint_set_zero
  gsl_matrix_uint_set_identity
  gsl_matrix_uint_set_all
  gsl_matrix_uint_fread
  gsl_matrix_uint_fwrite
  gsl_matrix_uint_fscanf
  gsl_matrix_uint_fprintf
  gsl_matrix_uint_memcpy
  gsl_matrix_uint_swap
  gsl_matrix_uint_swap_rows
  gsl_matrix_uint_swap_columns
  gsl_matrix_uint_swap_rowcol
  gsl_matrix_uint_transpose
  gsl_matrix_uint_transpose_memcpy
  gsl_matrix_uint_max
  gsl_matrix_uint_min
  gsl_matrix_uint_minmax
  gsl_matrix_uint_max_index
  gsl_matrix_uint_min_index
  gsl_matrix_uint_minmax_index
  gsl_matrix_uint_isnull
  gsl_matrix_uint_add
  gsl_matrix_uint_sub
  gsl_matrix_uint_mul_elements
  gsl_matrix_uint_div_elements
  gsl_matrix_uint_scale
  gsl_matrix_uint_add_constant
  gsl_matrix_uint_add_diagonal
  gsl_matrix_uint_get_row
  gsl_matrix_uint_get_col
  gsl_matrix_uint_set_row
  gsl_matrix_uint_set_col
  gsl_matrix_ulong_alloc
  gsl_matrix_ulong_calloc
  gsl_matrix_ulong_alloc_from_block
  gsl_matrix_ulong_alloc_from_matrix
  gsl_vector_ulong_alloc_row_from_matrix
  gsl_vector_ulong_alloc_col_from_matrix
  gsl_matrix_ulong_free
  gsl_matrix_ulong_submatrix
  gsl_matrix_ulong_row
  gsl_matrix_ulong_column
  gsl_matrix_ulong_diagonal
  gsl_matrix_ulong_subdiagonal
  gsl_matrix_ulong_superdiagonal
  gsl_matrix_ulong_view_array
  gsl_matrix_ulong_view_array_with_tda
  gsl_matrix_ulong_view_vector
  gsl_matrix_ulong_view_vector_with_tda
  gsl_matrix_ulong_const_submatrix
  gsl_matrix_ulong_const_row
  gsl_matrix_ulong_const_column
  gsl_matrix_ulong_const_diagonal
  gsl_matrix_ulong_const_subdiagonal
  gsl_matrix_ulong_const_superdiagonal
  gsl_matrix_ulong_const_view_array
  gsl_matrix_ulong_const_view_array_with_tda
  gsl_matrix_ulong_const_view_vector
  gsl_matrix_ulong_const_view_vector_with_tda
  gsl_matrix_ulong_get
  gsl_matrix_ulong_set
  gsl_matrix_ulong_ptr
  gsl_matrix_ulong_const_ptr
  gsl_matrix_ulong_set_zero
  gsl_matrix_ulong_set_identity
  gsl_matrix_ulong_set_all
  gsl_matrix_ulong_fread
  gsl_matrix_ulong_fwrite
  gsl_matrix_ulong_fscanf
  gsl_matrix_ulong_fprintf
  gsl_matrix_ulong_memcpy
  gsl_matrix_ulong_swap
  gsl_matrix_ulong_swap_rows
  gsl_matrix_ulong_swap_columns
  gsl_matrix_ulong_swap_rowcol
  gsl_matrix_ulong_transpose
  gsl_matrix_ulong_transpose_memcpy
  gsl_matrix_ulong_max
  gsl_matrix_ulong_min
  gsl_matrix_ulong_minmax
  gsl_matrix_ulong_max_index
  gsl_matrix_ulong_min_index
  gsl_matrix_ulong_minmax_index
  gsl_matrix_ulong_isnull
  gsl_matrix_ulong_add
  gsl_matrix_ulong_sub
  gsl_matrix_ulong_mul_elements
  gsl_matrix_ulong_div_elements
  gsl_matrix_ulong_scale
  gsl_matrix_ulong_add_constant
  gsl_matrix_ulong_add_diagonal
  gsl_matrix_ulong_get_row
  gsl_matrix_ulong_get_col
  gsl_matrix_ulong_set_row
  gsl_matrix_ulong_set_col
  gsl_matrix_ushort_alloc
  gsl_matrix_ushort_calloc
  gsl_matrix_ushort_alloc_from_block
  gsl_matrix_ushort_alloc_from_matrix
  gsl_vector_ushort_alloc_row_from_matrix
  gsl_vector_ushort_alloc_col_from_matrix
  gsl_matrix_ushort_free
  gsl_matrix_ushort_submatrix
  gsl_matrix_ushort_row
  gsl_matrix_ushort_column
  gsl_matrix_ushort_diagonal
  gsl_matrix_ushort_subdiagonal
  gsl_matrix_ushort_superdiagonal
  gsl_matrix_ushort_view_array
  gsl_matrix_ushort_view_array_with_tda
  gsl_matrix_ushort_view_vector
  gsl_matrix_ushort_view_vector_with_tda
  gsl_matrix_ushort_const_submatrix
  gsl_matrix_ushort_const_row
  gsl_matrix_ushort_const_column
  gsl_matrix_ushort_const_diagonal
  gsl_matrix_ushort_const_subdiagonal
  gsl_matrix_ushort_const_superdiagonal
  gsl_matrix_ushort_const_view_array
  gsl_matrix_ushort_const_view_array_with_tda
  gsl_matrix_ushort_const_view_vector
  gsl_matrix_ushort_const_view_vector_with_tda
  gsl_matrix_ushort_get
  gsl_matrix_ushort_set
  gsl_matrix_ushort_ptr
  gsl_matrix_ushort_const_ptr
  gsl_matrix_ushort_set_zero
  gsl_matrix_ushort_set_identity
  gsl_matrix_ushort_set_all
  gsl_matrix_ushort_fread
  gsl_matrix_ushort_fwrite
  gsl_matrix_ushort_fscanf
  gsl_matrix_ushort_fprintf
  gsl_matrix_ushort_memcpy
  gsl_matrix_ushort_swap
  gsl_matrix_ushort_swap_rows
  gsl_matrix_ushort_swap_columns
  gsl_matrix_ushort_swap_rowcol
  gsl_matrix_ushort_transpose
  gsl_matrix_ushort_transpose_memcpy
  gsl_matrix_ushort_max
  gsl_matrix_ushort_min
  gsl_matrix_ushort_minmax
  gsl_matrix_ushort_max_index
  gsl_matrix_ushort_min_index
  gsl_matrix_ushort_minmax_index
  gsl_matrix_ushort_isnull
  gsl_matrix_ushort_add
  gsl_matrix_ushort_sub
  gsl_matrix_ushort_mul_elements
  gsl_matrix_ushort_div_elements
  gsl_matrix_ushort_scale
  gsl_matrix_ushort_add_constant
  gsl_matrix_ushort_add_diagonal
  gsl_matrix_ushort_get_row
  gsl_matrix_ushort_get_col
  gsl_matrix_ushort_set_row
  gsl_matrix_ushort_set_col
)
