module Bindings.Gsl.LinearAlgebra where
import Foreign.Ptr (Ptr,FunPtr,plusPtr)
import Foreign.Ptr (wordPtrToPtr,castPtrToFunPtr)
import Foreign.Storable
import Foreign.C.Types
import Foreign.C.String (CString,CStringLen,CWString,CWStringLen)
import Foreign.Marshal.Alloc (alloca)
import Foreign.Marshal.Array (peekArray,pokeArray)
import Data.Int
import Data.Word
import Bindings.Gsl.VectorsAndMatrices.DataTypes
import Bindings.Gsl.Permutations
import Bindings.Gsl.ComplexNumbers
import Bindings.Gsl.SpecialFunctions
type C'gsl_linalg_matrix_mod_t = CUInt
c'GSL_LINALG_MOD_NONE = 0
c'GSL_LINALG_MOD_NONE :: (Num a) => a
c'GSL_LINALG_MOD_TRANSPOSE = 1
c'GSL_LINALG_MOD_TRANSPOSE :: (Num a) => a
c'GSL_LINALG_MOD_CONJUGATE = 2
c'GSL_LINALG_MOD_CONJUGATE :: (Num a) => a
foreign import ccall "gsl_linalg_matmult" c'gsl_linalg_matmult
:: Ptr C'gsl_matrix -> Ptr C'gsl_matrix -> Ptr C'gsl_matrix -> IO CInt
foreign import ccall "&gsl_linalg_matmult" p'gsl_linalg_matmult
:: FunPtr (Ptr C'gsl_matrix -> Ptr C'gsl_matrix -> Ptr C'gsl_matrix -> IO CInt)
foreign import ccall "gsl_linalg_matmult_mod" c'gsl_linalg_matmult_mod
:: Ptr C'gsl_matrix -> C'gsl_linalg_matrix_mod_t -> Ptr C'gsl_matrix -> C'gsl_linalg_matrix_mod_t -> Ptr C'gsl_matrix -> IO CInt
foreign import ccall "&gsl_linalg_matmult_mod" p'gsl_linalg_matmult_mod
:: FunPtr (Ptr C'gsl_matrix -> C'gsl_linalg_matrix_mod_t -> Ptr C'gsl_matrix -> C'gsl_linalg_matrix_mod_t -> Ptr C'gsl_matrix -> IO CInt)
foreign import ccall "gsl_linalg_exponential_ss" c'gsl_linalg_exponential_ss
:: Ptr C'gsl_matrix -> Ptr C'gsl_matrix -> C'gsl_mode_t -> IO CInt
foreign import ccall "&gsl_linalg_exponential_ss" p'gsl_linalg_exponential_ss
:: FunPtr (Ptr C'gsl_matrix -> Ptr C'gsl_matrix -> C'gsl_mode_t -> IO CInt)
foreign import ccall "gsl_linalg_householder_transform" c'gsl_linalg_householder_transform
:: Ptr C'gsl_vector -> IO CDouble
foreign import ccall "&gsl_linalg_householder_transform" p'gsl_linalg_householder_transform
:: FunPtr (Ptr C'gsl_vector -> IO CDouble)
foreign import ccall "gsl_linalg_householder_hm" c'gsl_linalg_householder_hm
:: CDouble -> Ptr C'gsl_vector -> Ptr C'gsl_matrix -> IO CInt
foreign import ccall "&gsl_linalg_householder_hm" p'gsl_linalg_householder_hm
:: FunPtr (CDouble -> Ptr C'gsl_vector -> Ptr C'gsl_matrix -> IO CInt)
foreign import ccall "gsl_linalg_householder_mh" c'gsl_linalg_householder_mh
:: CDouble -> Ptr C'gsl_vector -> Ptr C'gsl_matrix -> IO CInt
foreign import ccall "&gsl_linalg_householder_mh" p'gsl_linalg_householder_mh
:: FunPtr (CDouble -> Ptr C'gsl_vector -> Ptr C'gsl_matrix -> IO CInt)
foreign import ccall "gsl_linalg_householder_hv" c'gsl_linalg_householder_hv
:: CDouble -> Ptr C'gsl_vector -> Ptr C'gsl_vector -> IO CInt
foreign import ccall "&gsl_linalg_householder_hv" p'gsl_linalg_householder_hv
:: FunPtr (CDouble -> Ptr C'gsl_vector -> Ptr C'gsl_vector -> IO CInt)
foreign import ccall "gsl_linalg_householder_hm1" c'gsl_linalg_householder_hm1
:: CDouble -> Ptr C'gsl_matrix -> IO CInt
foreign import ccall "&gsl_linalg_householder_hm1" p'gsl_linalg_householder_hm1
:: FunPtr (CDouble -> Ptr C'gsl_matrix -> IO CInt)
foreign import ccall "gsl_linalg_hessenberg_decomp" c'gsl_linalg_hessenberg_decomp
:: Ptr C'gsl_matrix -> Ptr C'gsl_vector -> IO CInt
foreign import ccall "&gsl_linalg_hessenberg_decomp" p'gsl_linalg_hessenberg_decomp
:: FunPtr (Ptr C'gsl_matrix -> Ptr C'gsl_vector -> IO CInt)
foreign import ccall "gsl_linalg_hessenberg_unpack" c'gsl_linalg_hessenberg_unpack
:: Ptr C'gsl_matrix -> Ptr C'gsl_vector -> Ptr C'gsl_matrix -> IO CInt
foreign import ccall "&gsl_linalg_hessenberg_unpack" p'gsl_linalg_hessenberg_unpack
:: FunPtr (Ptr C'gsl_matrix -> Ptr C'gsl_vector -> Ptr C'gsl_matrix -> IO CInt)
foreign import ccall "gsl_linalg_hessenberg_unpack_accum" c'gsl_linalg_hessenberg_unpack_accum
:: Ptr C'gsl_matrix -> Ptr C'gsl_vector -> Ptr C'gsl_matrix -> IO CInt
foreign import ccall "&gsl_linalg_hessenberg_unpack_accum" p'gsl_linalg_hessenberg_unpack_accum
:: FunPtr (Ptr C'gsl_matrix -> Ptr C'gsl_vector -> Ptr C'gsl_matrix -> IO CInt)
foreign import ccall "gsl_linalg_hessenberg_set_zero" c'gsl_linalg_hessenberg_set_zero
:: Ptr C'gsl_matrix -> IO CInt
foreign import ccall "&gsl_linalg_hessenberg_set_zero" p'gsl_linalg_hessenberg_set_zero
:: FunPtr (Ptr C'gsl_matrix -> IO CInt)
foreign import ccall "gsl_linalg_hessenberg_submatrix" c'gsl_linalg_hessenberg_submatrix
:: Ptr C'gsl_matrix -> Ptr C'gsl_matrix -> CSize -> Ptr C'gsl_vector -> IO CInt
foreign import ccall "&gsl_linalg_hessenberg_submatrix" p'gsl_linalg_hessenberg_submatrix
:: FunPtr (Ptr C'gsl_matrix -> Ptr C'gsl_matrix -> CSize -> Ptr C'gsl_vector -> IO CInt)
foreign import ccall "gsl_linalg_hesstri_decomp" c'gsl_linalg_hesstri_decomp
:: Ptr C'gsl_matrix -> Ptr C'gsl_matrix -> Ptr C'gsl_matrix -> Ptr C'gsl_matrix -> Ptr C'gsl_vector -> IO CInt
foreign import ccall "&gsl_linalg_hesstri_decomp" p'gsl_linalg_hesstri_decomp
:: FunPtr (Ptr C'gsl_matrix -> Ptr C'gsl_matrix -> Ptr C'gsl_matrix -> Ptr C'gsl_matrix -> Ptr C'gsl_vector -> IO CInt)
foreign import ccall "gsl_linalg_SV_decomp" c'gsl_linalg_SV_decomp
:: Ptr C'gsl_matrix -> Ptr C'gsl_matrix -> Ptr C'gsl_vector -> Ptr C'gsl_vector -> IO CInt
foreign import ccall "&gsl_linalg_SV_decomp" p'gsl_linalg_SV_decomp
:: FunPtr (Ptr C'gsl_matrix -> Ptr C'gsl_matrix -> Ptr C'gsl_vector -> Ptr C'gsl_vector -> IO CInt)
foreign import ccall "gsl_linalg_SV_decomp_mod" c'gsl_linalg_SV_decomp_mod
:: Ptr C'gsl_matrix -> Ptr C'gsl_matrix -> Ptr C'gsl_matrix -> Ptr C'gsl_vector -> Ptr C'gsl_vector -> IO CInt
foreign import ccall "&gsl_linalg_SV_decomp_mod" p'gsl_linalg_SV_decomp_mod
:: FunPtr (Ptr C'gsl_matrix -> Ptr C'gsl_matrix -> Ptr C'gsl_matrix -> Ptr C'gsl_vector -> Ptr C'gsl_vector -> IO CInt)
foreign import ccall "gsl_linalg_SV_decomp_jacobi" c'gsl_linalg_SV_decomp_jacobi
:: Ptr C'gsl_matrix -> Ptr C'gsl_matrix -> Ptr C'gsl_vector -> IO CInt
foreign import ccall "&gsl_linalg_SV_decomp_jacobi" p'gsl_linalg_SV_decomp_jacobi
:: FunPtr (Ptr C'gsl_matrix -> Ptr C'gsl_matrix -> Ptr C'gsl_vector -> IO CInt)
foreign import ccall "gsl_linalg_SV_solve" c'gsl_linalg_SV_solve
:: Ptr C'gsl_matrix -> Ptr C'gsl_matrix -> Ptr C'gsl_vector -> Ptr C'gsl_vector -> Ptr C'gsl_vector -> IO CInt
foreign import ccall "&gsl_linalg_SV_solve" p'gsl_linalg_SV_solve
:: FunPtr (Ptr C'gsl_matrix -> Ptr C'gsl_matrix -> Ptr C'gsl_vector -> Ptr C'gsl_vector -> Ptr C'gsl_vector -> IO CInt)
foreign import ccall "gsl_linalg_LU_decomp" c'gsl_linalg_LU_decomp
:: Ptr C'gsl_matrix -> Ptr C'gsl_permutation -> Ptr CInt -> IO CInt
foreign import ccall "&gsl_linalg_LU_decomp" p'gsl_linalg_LU_decomp
:: FunPtr (Ptr C'gsl_matrix -> Ptr C'gsl_permutation -> Ptr CInt -> IO CInt)
foreign import ccall "gsl_linalg_LU_solve" c'gsl_linalg_LU_solve
:: Ptr C'gsl_matrix -> Ptr C'gsl_permutation -> Ptr C'gsl_vector -> Ptr C'gsl_vector -> IO CInt
foreign import ccall "&gsl_linalg_LU_solve" p'gsl_linalg_LU_solve
:: FunPtr (Ptr C'gsl_matrix -> Ptr C'gsl_permutation -> Ptr C'gsl_vector -> Ptr C'gsl_vector -> IO CInt)
foreign import ccall "gsl_linalg_LU_svx" c'gsl_linalg_LU_svx
:: Ptr C'gsl_matrix -> Ptr C'gsl_permutation -> Ptr C'gsl_vector -> IO CInt
foreign import ccall "&gsl_linalg_LU_svx" p'gsl_linalg_LU_svx
:: FunPtr (Ptr C'gsl_matrix -> Ptr C'gsl_permutation -> Ptr C'gsl_vector -> IO CInt)
foreign import ccall "gsl_linalg_LU_refine" c'gsl_linalg_LU_refine
:: Ptr C'gsl_matrix -> Ptr C'gsl_matrix -> Ptr C'gsl_permutation -> Ptr C'gsl_vector -> Ptr C'gsl_vector -> Ptr C'gsl_vector -> IO CInt
foreign import ccall "&gsl_linalg_LU_refine" p'gsl_linalg_LU_refine
:: FunPtr (Ptr C'gsl_matrix -> Ptr C'gsl_matrix -> Ptr C'gsl_permutation -> Ptr C'gsl_vector -> Ptr C'gsl_vector -> Ptr C'gsl_vector -> IO CInt)
foreign import ccall "gsl_linalg_LU_invert" c'gsl_linalg_LU_invert
:: Ptr C'gsl_matrix -> Ptr C'gsl_permutation -> Ptr C'gsl_matrix -> IO CInt
foreign import ccall "&gsl_linalg_LU_invert" p'gsl_linalg_LU_invert
:: FunPtr (Ptr C'gsl_matrix -> Ptr C'gsl_permutation -> Ptr C'gsl_matrix -> IO CInt)
foreign import ccall "gsl_linalg_LU_det" c'gsl_linalg_LU_det
:: Ptr C'gsl_matrix -> CInt -> IO CDouble
foreign import ccall "&gsl_linalg_LU_det" p'gsl_linalg_LU_det
:: FunPtr (Ptr C'gsl_matrix -> CInt -> IO CDouble)
foreign import ccall "gsl_linalg_LU_lndet" c'gsl_linalg_LU_lndet
:: Ptr C'gsl_matrix -> IO CDouble
foreign import ccall "&gsl_linalg_LU_lndet" p'gsl_linalg_LU_lndet
:: FunPtr (Ptr C'gsl_matrix -> IO CDouble)
foreign import ccall "gsl_linalg_LU_sgndet" c'gsl_linalg_LU_sgndet
:: Ptr C'gsl_matrix -> CInt -> IO CInt
foreign import ccall "&gsl_linalg_LU_sgndet" p'gsl_linalg_LU_sgndet
:: FunPtr (Ptr C'gsl_matrix -> CInt -> IO CInt)
foreign import ccall "gsl_linalg_complex_LU_decomp" c'gsl_linalg_complex_LU_decomp
:: Ptr C'gsl_matrix_complex -> Ptr C'gsl_permutation -> Ptr CInt -> IO CInt
foreign import ccall "&gsl_linalg_complex_LU_decomp" p'gsl_linalg_complex_LU_decomp
:: FunPtr (Ptr C'gsl_matrix_complex -> Ptr C'gsl_permutation -> Ptr CInt -> IO CInt)
foreign import ccall "gsl_linalg_complex_LU_solve" c'gsl_linalg_complex_LU_solve
:: Ptr C'gsl_matrix_complex -> Ptr C'gsl_permutation -> Ptr C'gsl_vector_complex -> Ptr C'gsl_vector_complex -> IO CInt
foreign import ccall "&gsl_linalg_complex_LU_solve" p'gsl_linalg_complex_LU_solve
:: FunPtr (Ptr C'gsl_matrix_complex -> Ptr C'gsl_permutation -> Ptr C'gsl_vector_complex -> Ptr C'gsl_vector_complex -> IO CInt)
foreign import ccall "gsl_linalg_complex_LU_svx" c'gsl_linalg_complex_LU_svx
:: Ptr C'gsl_matrix_complex -> Ptr C'gsl_permutation -> Ptr C'gsl_vector_complex -> IO CInt
foreign import ccall "&gsl_linalg_complex_LU_svx" p'gsl_linalg_complex_LU_svx
:: FunPtr (Ptr C'gsl_matrix_complex -> Ptr C'gsl_permutation -> Ptr C'gsl_vector_complex -> IO CInt)
foreign import ccall "gsl_linalg_complex_LU_refine" c'gsl_linalg_complex_LU_refine
:: Ptr C'gsl_matrix_complex -> Ptr C'gsl_matrix_complex -> Ptr C'gsl_permutation -> Ptr C'gsl_vector_complex -> Ptr C'gsl_vector_complex -> Ptr C'gsl_vector_complex -> IO CInt
foreign import ccall "&gsl_linalg_complex_LU_refine" p'gsl_linalg_complex_LU_refine
:: FunPtr (Ptr C'gsl_matrix_complex -> Ptr C'gsl_matrix_complex -> Ptr C'gsl_permutation -> Ptr C'gsl_vector_complex -> Ptr C'gsl_vector_complex -> Ptr C'gsl_vector_complex -> IO CInt)
foreign import ccall "gsl_linalg_complex_LU_invert" c'gsl_linalg_complex_LU_invert
:: Ptr C'gsl_matrix_complex -> Ptr C'gsl_permutation -> Ptr C'gsl_matrix_complex -> IO CInt
foreign import ccall "&gsl_linalg_complex_LU_invert" p'gsl_linalg_complex_LU_invert
:: FunPtr (Ptr C'gsl_matrix_complex -> Ptr C'gsl_permutation -> Ptr C'gsl_matrix_complex -> IO CInt)
foreign import ccall "gsl_linalg_complex_LU_lndet" c'gsl_linalg_complex_LU_lndet
:: Ptr C'gsl_matrix_complex -> IO CDouble
foreign import ccall "&gsl_linalg_complex_LU_lndet" p'gsl_linalg_complex_LU_lndet
:: FunPtr (Ptr C'gsl_matrix_complex -> IO CDouble)
foreign import ccall "gsl_linalg_QR_decomp" c'gsl_linalg_QR_decomp
:: Ptr C'gsl_matrix -> Ptr C'gsl_vector -> IO CInt
foreign import ccall "&gsl_linalg_QR_decomp" p'gsl_linalg_QR_decomp
:: FunPtr (Ptr C'gsl_matrix -> Ptr C'gsl_vector -> IO CInt)
foreign import ccall "gsl_linalg_QR_solve" c'gsl_linalg_QR_solve
:: Ptr C'gsl_matrix -> Ptr C'gsl_vector -> Ptr C'gsl_vector -> Ptr C'gsl_vector -> IO CInt
foreign import ccall "&gsl_linalg_QR_solve" p'gsl_linalg_QR_solve
:: FunPtr (Ptr C'gsl_matrix -> Ptr C'gsl_vector -> Ptr C'gsl_vector -> Ptr C'gsl_vector -> IO CInt)
foreign import ccall "gsl_linalg_QR_svx" c'gsl_linalg_QR_svx
:: Ptr C'gsl_matrix -> Ptr C'gsl_vector -> Ptr C'gsl_vector -> IO CInt
foreign import ccall "&gsl_linalg_QR_svx" p'gsl_linalg_QR_svx
:: FunPtr (Ptr C'gsl_matrix -> Ptr C'gsl_vector -> Ptr C'gsl_vector -> IO CInt)
foreign import ccall "gsl_linalg_QR_lssolve" c'gsl_linalg_QR_lssolve
:: Ptr C'gsl_matrix -> Ptr C'gsl_vector -> Ptr C'gsl_vector -> Ptr C'gsl_vector -> Ptr C'gsl_vector -> IO CInt
foreign import ccall "&gsl_linalg_QR_lssolve" p'gsl_linalg_QR_lssolve
:: FunPtr (Ptr C'gsl_matrix -> Ptr C'gsl_vector -> Ptr C'gsl_vector -> Ptr C'gsl_vector -> Ptr C'gsl_vector -> IO CInt)
foreign import ccall "gsl_linalg_QR_QRsolve" c'gsl_linalg_QR_QRsolve
:: Ptr C'gsl_matrix -> Ptr C'gsl_matrix -> Ptr C'gsl_vector -> Ptr C'gsl_vector -> IO CInt
foreign import ccall "&gsl_linalg_QR_QRsolve" p'gsl_linalg_QR_QRsolve
:: FunPtr (Ptr C'gsl_matrix -> Ptr C'gsl_matrix -> Ptr C'gsl_vector -> Ptr C'gsl_vector -> IO CInt)
foreign import ccall "gsl_linalg_QR_Rsolve" c'gsl_linalg_QR_Rsolve
:: Ptr C'gsl_matrix -> Ptr C'gsl_vector -> Ptr C'gsl_vector -> IO CInt
foreign import ccall "&gsl_linalg_QR_Rsolve" p'gsl_linalg_QR_Rsolve
:: FunPtr (Ptr C'gsl_matrix -> Ptr C'gsl_vector -> Ptr C'gsl_vector -> IO CInt)
foreign import ccall "gsl_linalg_QR_Rsvx" c'gsl_linalg_QR_Rsvx
:: Ptr C'gsl_matrix -> Ptr C'gsl_vector -> IO CInt
foreign import ccall "&gsl_linalg_QR_Rsvx" p'gsl_linalg_QR_Rsvx
:: FunPtr (Ptr C'gsl_matrix -> Ptr C'gsl_vector -> IO CInt)
foreign import ccall "gsl_linalg_QR_update" c'gsl_linalg_QR_update
:: Ptr C'gsl_matrix -> Ptr C'gsl_matrix -> Ptr C'gsl_vector -> Ptr C'gsl_vector -> IO CInt
foreign import ccall "&gsl_linalg_QR_update" p'gsl_linalg_QR_update
:: FunPtr (Ptr C'gsl_matrix -> Ptr C'gsl_matrix -> Ptr C'gsl_vector -> Ptr C'gsl_vector -> IO CInt)
foreign import ccall "gsl_linalg_QR_QTvec" c'gsl_linalg_QR_QTvec
:: Ptr C'gsl_matrix -> Ptr C'gsl_vector -> Ptr C'gsl_vector -> IO CInt
foreign import ccall "&gsl_linalg_QR_QTvec" p'gsl_linalg_QR_QTvec
:: FunPtr (Ptr C'gsl_matrix -> Ptr C'gsl_vector -> Ptr C'gsl_vector -> IO CInt)
foreign import ccall "gsl_linalg_QR_Qvec" c'gsl_linalg_QR_Qvec
:: Ptr C'gsl_matrix -> Ptr C'gsl_vector -> Ptr C'gsl_vector -> IO CInt
foreign import ccall "&gsl_linalg_QR_Qvec" p'gsl_linalg_QR_Qvec
:: FunPtr (Ptr C'gsl_matrix -> Ptr C'gsl_vector -> Ptr C'gsl_vector -> IO CInt)
foreign import ccall "gsl_linalg_QR_QTmat" c'gsl_linalg_QR_QTmat
:: Ptr C'gsl_matrix -> Ptr C'gsl_vector -> Ptr C'gsl_matrix -> IO CInt
foreign import ccall "&gsl_linalg_QR_QTmat" p'gsl_linalg_QR_QTmat
:: FunPtr (Ptr C'gsl_matrix -> Ptr C'gsl_vector -> Ptr C'gsl_matrix -> IO CInt)
foreign import ccall "gsl_linalg_QR_unpack" c'gsl_linalg_QR_unpack
:: Ptr C'gsl_matrix -> Ptr C'gsl_vector -> Ptr C'gsl_matrix -> Ptr C'gsl_matrix -> IO CInt
foreign import ccall "&gsl_linalg_QR_unpack" p'gsl_linalg_QR_unpack
:: FunPtr (Ptr C'gsl_matrix -> Ptr C'gsl_vector -> Ptr C'gsl_matrix -> Ptr C'gsl_matrix -> IO CInt)
foreign import ccall "gsl_linalg_R_solve" c'gsl_linalg_R_solve
:: Ptr C'gsl_matrix -> Ptr C'gsl_vector -> Ptr C'gsl_vector -> IO CInt
foreign import ccall "&gsl_linalg_R_solve" p'gsl_linalg_R_solve
:: FunPtr (Ptr C'gsl_matrix -> Ptr C'gsl_vector -> Ptr C'gsl_vector -> IO CInt)
foreign import ccall "gsl_linalg_R_svx" c'gsl_linalg_R_svx
:: Ptr C'gsl_matrix -> Ptr C'gsl_vector -> IO CInt
foreign import ccall "&gsl_linalg_R_svx" p'gsl_linalg_R_svx
:: FunPtr (Ptr C'gsl_matrix -> Ptr C'gsl_vector -> IO CInt)
foreign import ccall "gsl_linalg_QRPT_decomp" c'gsl_linalg_QRPT_decomp
:: Ptr C'gsl_matrix -> Ptr C'gsl_vector -> Ptr C'gsl_permutation -> Ptr CInt -> Ptr C'gsl_vector -> IO CInt
foreign import ccall "&gsl_linalg_QRPT_decomp" p'gsl_linalg_QRPT_decomp
:: FunPtr (Ptr C'gsl_matrix -> Ptr C'gsl_vector -> Ptr C'gsl_permutation -> Ptr CInt -> Ptr C'gsl_vector -> IO CInt)
foreign import ccall "gsl_linalg_QRPT_decomp2" c'gsl_linalg_QRPT_decomp2
:: Ptr C'gsl_matrix -> Ptr C'gsl_matrix -> Ptr C'gsl_matrix -> Ptr C'gsl_vector -> Ptr C'gsl_permutation -> Ptr CInt -> Ptr C'gsl_vector -> IO CInt
foreign import ccall "&gsl_linalg_QRPT_decomp2" p'gsl_linalg_QRPT_decomp2
:: FunPtr (Ptr C'gsl_matrix -> Ptr C'gsl_matrix -> Ptr C'gsl_matrix -> Ptr C'gsl_vector -> Ptr C'gsl_permutation -> Ptr CInt -> Ptr C'gsl_vector -> IO CInt)
foreign import ccall "gsl_linalg_QRPT_solve" c'gsl_linalg_QRPT_solve
:: Ptr C'gsl_matrix -> Ptr C'gsl_vector -> Ptr C'gsl_permutation -> Ptr C'gsl_vector -> Ptr C'gsl_vector -> IO CInt
foreign import ccall "&gsl_linalg_QRPT_solve" p'gsl_linalg_QRPT_solve
:: FunPtr (Ptr C'gsl_matrix -> Ptr C'gsl_vector -> Ptr C'gsl_permutation -> Ptr C'gsl_vector -> Ptr C'gsl_vector -> IO CInt)
foreign import ccall "gsl_linalg_QRPT_svx" c'gsl_linalg_QRPT_svx
:: Ptr C'gsl_matrix -> Ptr C'gsl_vector -> Ptr C'gsl_permutation -> Ptr C'gsl_vector -> IO CInt
foreign import ccall "&gsl_linalg_QRPT_svx" p'gsl_linalg_QRPT_svx
:: FunPtr (Ptr C'gsl_matrix -> Ptr C'gsl_vector -> Ptr C'gsl_permutation -> Ptr C'gsl_vector -> IO CInt)
foreign import ccall "gsl_linalg_QRPT_QRsolve" c'gsl_linalg_QRPT_QRsolve
:: Ptr C'gsl_matrix -> Ptr C'gsl_matrix -> Ptr C'gsl_permutation -> Ptr C'gsl_vector -> Ptr C'gsl_vector -> IO CInt
foreign import ccall "&gsl_linalg_QRPT_QRsolve" p'gsl_linalg_QRPT_QRsolve
:: FunPtr (Ptr C'gsl_matrix -> Ptr C'gsl_matrix -> Ptr C'gsl_permutation -> Ptr C'gsl_vector -> Ptr C'gsl_vector -> IO CInt)
foreign import ccall "gsl_linalg_QRPT_Rsolve" c'gsl_linalg_QRPT_Rsolve
:: Ptr C'gsl_matrix -> Ptr C'gsl_permutation -> Ptr C'gsl_vector -> Ptr C'gsl_vector -> IO CInt
foreign import ccall "&gsl_linalg_QRPT_Rsolve" p'gsl_linalg_QRPT_Rsolve
:: FunPtr (Ptr C'gsl_matrix -> Ptr C'gsl_permutation -> Ptr C'gsl_vector -> Ptr C'gsl_vector -> IO CInt)
foreign import ccall "gsl_linalg_QRPT_Rsvx" c'gsl_linalg_QRPT_Rsvx
:: Ptr C'gsl_matrix -> Ptr C'gsl_permutation -> Ptr C'gsl_vector -> IO CInt
foreign import ccall "&gsl_linalg_QRPT_Rsvx" p'gsl_linalg_QRPT_Rsvx
:: FunPtr (Ptr C'gsl_matrix -> Ptr C'gsl_permutation -> Ptr C'gsl_vector -> IO CInt)
foreign import ccall "gsl_linalg_QRPT_update" c'gsl_linalg_QRPT_update
:: Ptr C'gsl_matrix -> Ptr C'gsl_matrix -> Ptr C'gsl_permutation -> Ptr C'gsl_vector -> Ptr C'gsl_vector -> IO CInt
foreign import ccall "&gsl_linalg_QRPT_update" p'gsl_linalg_QRPT_update
:: FunPtr (Ptr C'gsl_matrix -> Ptr C'gsl_matrix -> Ptr C'gsl_permutation -> Ptr C'gsl_vector -> Ptr C'gsl_vector -> IO CInt)
foreign import ccall "gsl_linalg_LQ_decomp" c'gsl_linalg_LQ_decomp
:: Ptr C'gsl_matrix -> Ptr C'gsl_vector -> IO CInt
foreign import ccall "&gsl_linalg_LQ_decomp" p'gsl_linalg_LQ_decomp
:: FunPtr (Ptr C'gsl_matrix -> Ptr C'gsl_vector -> IO CInt)
foreign import ccall "gsl_linalg_LQ_solve_T" c'gsl_linalg_LQ_solve_T
:: Ptr C'gsl_matrix -> Ptr C'gsl_vector -> Ptr C'gsl_vector -> Ptr C'gsl_vector -> IO CInt
foreign import ccall "&gsl_linalg_LQ_solve_T" p'gsl_linalg_LQ_solve_T
:: FunPtr (Ptr C'gsl_matrix -> Ptr C'gsl_vector -> Ptr C'gsl_vector -> Ptr C'gsl_vector -> IO CInt)
foreign import ccall "gsl_linalg_LQ_svx_T" c'gsl_linalg_LQ_svx_T
:: Ptr C'gsl_matrix -> Ptr C'gsl_vector -> Ptr C'gsl_vector -> IO CInt
foreign import ccall "&gsl_linalg_LQ_svx_T" p'gsl_linalg_LQ_svx_T
:: FunPtr (Ptr C'gsl_matrix -> Ptr C'gsl_vector -> Ptr C'gsl_vector -> IO CInt)
foreign import ccall "gsl_linalg_LQ_lssolve_T" c'gsl_linalg_LQ_lssolve_T
:: Ptr C'gsl_matrix -> Ptr C'gsl_vector -> Ptr C'gsl_vector -> Ptr C'gsl_vector -> Ptr C'gsl_vector -> IO CInt
foreign import ccall "&gsl_linalg_LQ_lssolve_T" p'gsl_linalg_LQ_lssolve_T
:: FunPtr (Ptr C'gsl_matrix -> Ptr C'gsl_vector -> Ptr C'gsl_vector -> Ptr C'gsl_vector -> Ptr C'gsl_vector -> IO CInt)
foreign import ccall "gsl_linalg_LQ_Lsolve_T" c'gsl_linalg_LQ_Lsolve_T
:: Ptr C'gsl_matrix -> Ptr C'gsl_vector -> Ptr C'gsl_vector -> IO CInt
foreign import ccall "&gsl_linalg_LQ_Lsolve_T" p'gsl_linalg_LQ_Lsolve_T
:: FunPtr (Ptr C'gsl_matrix -> Ptr C'gsl_vector -> Ptr C'gsl_vector -> IO CInt)
foreign import ccall "gsl_linalg_LQ_Lsvx_T" c'gsl_linalg_LQ_Lsvx_T
:: Ptr C'gsl_matrix -> Ptr C'gsl_vector -> IO CInt
foreign import ccall "&gsl_linalg_LQ_Lsvx_T" p'gsl_linalg_LQ_Lsvx_T
:: FunPtr (Ptr C'gsl_matrix -> Ptr C'gsl_vector -> IO CInt)
foreign import ccall "gsl_linalg_L_solve_T" c'gsl_linalg_L_solve_T
:: Ptr C'gsl_matrix -> Ptr C'gsl_vector -> Ptr C'gsl_vector -> IO CInt
foreign import ccall "&gsl_linalg_L_solve_T" p'gsl_linalg_L_solve_T
:: FunPtr (Ptr C'gsl_matrix -> Ptr C'gsl_vector -> Ptr C'gsl_vector -> IO CInt)
foreign import ccall "gsl_linalg_LQ_vecQ" c'gsl_linalg_LQ_vecQ
:: Ptr C'gsl_matrix -> Ptr C'gsl_vector -> Ptr C'gsl_vector -> IO CInt
foreign import ccall "&gsl_linalg_LQ_vecQ" p'gsl_linalg_LQ_vecQ
:: FunPtr (Ptr C'gsl_matrix -> Ptr C'gsl_vector -> Ptr C'gsl_vector -> IO CInt)
foreign import ccall "gsl_linalg_LQ_vecQT" c'gsl_linalg_LQ_vecQT
:: Ptr C'gsl_matrix -> Ptr C'gsl_vector -> Ptr C'gsl_vector -> IO CInt
foreign import ccall "&gsl_linalg_LQ_vecQT" p'gsl_linalg_LQ_vecQT
:: FunPtr (Ptr C'gsl_matrix -> Ptr C'gsl_vector -> Ptr C'gsl_vector -> IO CInt)
foreign import ccall "gsl_linalg_LQ_unpack" c'gsl_linalg_LQ_unpack
:: Ptr C'gsl_matrix -> Ptr C'gsl_vector -> Ptr C'gsl_matrix -> Ptr C'gsl_matrix -> IO CInt
foreign import ccall "&gsl_linalg_LQ_unpack" p'gsl_linalg_LQ_unpack
:: FunPtr (Ptr C'gsl_matrix -> Ptr C'gsl_vector -> Ptr C'gsl_matrix -> Ptr C'gsl_matrix -> IO CInt)
foreign import ccall "gsl_linalg_LQ_update" c'gsl_linalg_LQ_update
:: Ptr C'gsl_matrix -> Ptr C'gsl_matrix -> Ptr C'gsl_vector -> Ptr C'gsl_vector -> IO CInt
foreign import ccall "&gsl_linalg_LQ_update" p'gsl_linalg_LQ_update
:: FunPtr (Ptr C'gsl_matrix -> Ptr C'gsl_matrix -> Ptr C'gsl_vector -> Ptr C'gsl_vector -> IO CInt)
foreign import ccall "gsl_linalg_LQ_LQsolve" c'gsl_linalg_LQ_LQsolve
:: Ptr C'gsl_matrix -> Ptr C'gsl_matrix -> Ptr C'gsl_vector -> Ptr C'gsl_vector -> IO CInt
foreign import ccall "&gsl_linalg_LQ_LQsolve" p'gsl_linalg_LQ_LQsolve
:: FunPtr (Ptr C'gsl_matrix -> Ptr C'gsl_matrix -> Ptr C'gsl_vector -> Ptr C'gsl_vector -> IO CInt)
foreign import ccall "gsl_linalg_PTLQ_decomp" c'gsl_linalg_PTLQ_decomp
:: Ptr C'gsl_matrix -> Ptr C'gsl_vector -> Ptr C'gsl_permutation -> Ptr CInt -> Ptr C'gsl_vector -> IO CInt
foreign import ccall "&gsl_linalg_PTLQ_decomp" p'gsl_linalg_PTLQ_decomp
:: FunPtr (Ptr C'gsl_matrix -> Ptr C'gsl_vector -> Ptr C'gsl_permutation -> Ptr CInt -> Ptr C'gsl_vector -> IO CInt)
foreign import ccall "gsl_linalg_PTLQ_decomp2" c'gsl_linalg_PTLQ_decomp2
:: Ptr C'gsl_matrix -> Ptr C'gsl_matrix -> Ptr C'gsl_matrix -> Ptr C'gsl_vector -> Ptr C'gsl_permutation -> Ptr CInt -> Ptr C'gsl_vector -> IO CInt
foreign import ccall "&gsl_linalg_PTLQ_decomp2" p'gsl_linalg_PTLQ_decomp2
:: FunPtr (Ptr C'gsl_matrix -> Ptr C'gsl_matrix -> Ptr C'gsl_matrix -> Ptr C'gsl_vector -> Ptr C'gsl_permutation -> Ptr CInt -> Ptr C'gsl_vector -> IO CInt)
foreign import ccall "gsl_linalg_PTLQ_solve_T" c'gsl_linalg_PTLQ_solve_T
:: Ptr C'gsl_matrix -> Ptr C'gsl_vector -> Ptr C'gsl_permutation -> Ptr C'gsl_vector -> Ptr C'gsl_vector -> IO CInt
foreign import ccall "&gsl_linalg_PTLQ_solve_T" p'gsl_linalg_PTLQ_solve_T
:: FunPtr (Ptr C'gsl_matrix -> Ptr C'gsl_vector -> Ptr C'gsl_permutation -> Ptr C'gsl_vector -> Ptr C'gsl_vector -> IO CInt)
foreign import ccall "gsl_linalg_PTLQ_svx_T" c'gsl_linalg_PTLQ_svx_T
:: Ptr C'gsl_matrix -> Ptr C'gsl_vector -> Ptr C'gsl_permutation -> Ptr C'gsl_vector -> IO CInt
foreign import ccall "&gsl_linalg_PTLQ_svx_T" p'gsl_linalg_PTLQ_svx_T
:: FunPtr (Ptr C'gsl_matrix -> Ptr C'gsl_vector -> Ptr C'gsl_permutation -> Ptr C'gsl_vector -> IO CInt)
foreign import ccall "gsl_linalg_PTLQ_LQsolve_T" c'gsl_linalg_PTLQ_LQsolve_T
:: Ptr C'gsl_matrix -> Ptr C'gsl_matrix -> Ptr C'gsl_permutation -> Ptr C'gsl_vector -> Ptr C'gsl_vector -> IO CInt
foreign import ccall "&gsl_linalg_PTLQ_LQsolve_T" p'gsl_linalg_PTLQ_LQsolve_T
:: FunPtr (Ptr C'gsl_matrix -> Ptr C'gsl_matrix -> Ptr C'gsl_permutation -> Ptr C'gsl_vector -> Ptr C'gsl_vector -> IO CInt)
foreign import ccall "gsl_linalg_PTLQ_Lsolve_T" c'gsl_linalg_PTLQ_Lsolve_T
:: Ptr C'gsl_matrix -> Ptr C'gsl_permutation -> Ptr C'gsl_vector -> Ptr C'gsl_vector -> IO CInt
foreign import ccall "&gsl_linalg_PTLQ_Lsolve_T" p'gsl_linalg_PTLQ_Lsolve_T
:: FunPtr (Ptr C'gsl_matrix -> Ptr C'gsl_permutation -> Ptr C'gsl_vector -> Ptr C'gsl_vector -> IO CInt)
foreign import ccall "gsl_linalg_PTLQ_Lsvx_T" c'gsl_linalg_PTLQ_Lsvx_T
:: Ptr C'gsl_matrix -> Ptr C'gsl_permutation -> Ptr C'gsl_vector -> IO CInt
foreign import ccall "&gsl_linalg_PTLQ_Lsvx_T" p'gsl_linalg_PTLQ_Lsvx_T
:: FunPtr (Ptr C'gsl_matrix -> Ptr C'gsl_permutation -> Ptr C'gsl_vector -> IO CInt)
foreign import ccall "gsl_linalg_PTLQ_update" c'gsl_linalg_PTLQ_update
:: Ptr C'gsl_matrix -> Ptr C'gsl_matrix -> Ptr C'gsl_permutation -> Ptr C'gsl_vector -> Ptr C'gsl_vector -> IO CInt
foreign import ccall "&gsl_linalg_PTLQ_update" p'gsl_linalg_PTLQ_update
:: FunPtr (Ptr C'gsl_matrix -> Ptr C'gsl_matrix -> Ptr C'gsl_permutation -> Ptr C'gsl_vector -> Ptr C'gsl_vector -> IO CInt)
foreign import ccall "gsl_linalg_cholesky_decomp" c'gsl_linalg_cholesky_decomp
:: Ptr C'gsl_matrix -> IO CInt
foreign import ccall "&gsl_linalg_cholesky_decomp" p'gsl_linalg_cholesky_decomp
:: FunPtr (Ptr C'gsl_matrix -> IO CInt)
foreign import ccall "gsl_linalg_cholesky_solve" c'gsl_linalg_cholesky_solve
:: Ptr C'gsl_matrix -> Ptr C'gsl_vector -> Ptr C'gsl_vector -> IO CInt
foreign import ccall "&gsl_linalg_cholesky_solve" p'gsl_linalg_cholesky_solve
:: FunPtr (Ptr C'gsl_matrix -> Ptr C'gsl_vector -> Ptr C'gsl_vector -> IO CInt)
foreign import ccall "gsl_linalg_cholesky_svx" c'gsl_linalg_cholesky_svx
:: Ptr C'gsl_matrix -> Ptr C'gsl_vector -> IO CInt
foreign import ccall "&gsl_linalg_cholesky_svx" p'gsl_linalg_cholesky_svx
:: FunPtr (Ptr C'gsl_matrix -> Ptr C'gsl_vector -> IO CInt)
foreign import ccall "gsl_linalg_cholesky_invert" c'gsl_linalg_cholesky_invert
:: Ptr C'gsl_matrix -> IO CInt
foreign import ccall "&gsl_linalg_cholesky_invert" p'gsl_linalg_cholesky_invert
:: FunPtr (Ptr C'gsl_matrix -> IO CInt)
foreign import ccall "gsl_linalg_cholesky_decomp_unit" c'gsl_linalg_cholesky_decomp_unit
:: Ptr C'gsl_matrix -> Ptr C'gsl_vector -> IO CInt
foreign import ccall "&gsl_linalg_cholesky_decomp_unit" p'gsl_linalg_cholesky_decomp_unit
:: FunPtr (Ptr C'gsl_matrix -> Ptr C'gsl_vector -> IO CInt)
foreign import ccall "gsl_linalg_complex_cholesky_decomp" c'gsl_linalg_complex_cholesky_decomp
:: Ptr C'gsl_matrix_complex -> IO CInt
foreign import ccall "&gsl_linalg_complex_cholesky_decomp" p'gsl_linalg_complex_cholesky_decomp
:: FunPtr (Ptr C'gsl_matrix_complex -> IO CInt)
foreign import ccall "gsl_linalg_complex_cholesky_solve" c'gsl_linalg_complex_cholesky_solve
:: Ptr C'gsl_matrix_complex -> Ptr C'gsl_vector_complex -> Ptr C'gsl_vector_complex -> IO CInt
foreign import ccall "&gsl_linalg_complex_cholesky_solve" p'gsl_linalg_complex_cholesky_solve
:: FunPtr (Ptr C'gsl_matrix_complex -> Ptr C'gsl_vector_complex -> Ptr C'gsl_vector_complex -> IO CInt)
foreign import ccall "gsl_linalg_complex_cholesky_svx" c'gsl_linalg_complex_cholesky_svx
:: Ptr C'gsl_matrix_complex -> Ptr C'gsl_vector_complex -> IO CInt
foreign import ccall "&gsl_linalg_complex_cholesky_svx" p'gsl_linalg_complex_cholesky_svx
:: FunPtr (Ptr C'gsl_matrix_complex -> Ptr C'gsl_vector_complex -> IO CInt)
foreign import ccall "gsl_linalg_complex_cholesky_invert" c'gsl_linalg_complex_cholesky_invert
:: Ptr C'gsl_matrix_complex -> IO CInt
foreign import ccall "&gsl_linalg_complex_cholesky_invert" p'gsl_linalg_complex_cholesky_invert
:: FunPtr (Ptr C'gsl_matrix_complex -> IO CInt)
foreign import ccall "gsl_linalg_symmtd_decomp" c'gsl_linalg_symmtd_decomp
:: Ptr C'gsl_matrix -> Ptr C'gsl_vector -> IO CInt
foreign import ccall "&gsl_linalg_symmtd_decomp" p'gsl_linalg_symmtd_decomp
:: FunPtr (Ptr C'gsl_matrix -> Ptr C'gsl_vector -> IO CInt)
foreign import ccall "gsl_linalg_symmtd_unpack" c'gsl_linalg_symmtd_unpack
:: Ptr C'gsl_matrix -> Ptr C'gsl_vector -> Ptr C'gsl_matrix -> Ptr C'gsl_vector -> Ptr C'gsl_vector -> IO CInt
foreign import ccall "&gsl_linalg_symmtd_unpack" p'gsl_linalg_symmtd_unpack
:: FunPtr (Ptr C'gsl_matrix -> Ptr C'gsl_vector -> Ptr C'gsl_matrix -> Ptr C'gsl_vector -> Ptr C'gsl_vector -> IO CInt)
foreign import ccall "gsl_linalg_symmtd_unpack_T" c'gsl_linalg_symmtd_unpack_T
:: Ptr C'gsl_matrix -> Ptr C'gsl_vector -> Ptr C'gsl_vector -> IO CInt
foreign import ccall "&gsl_linalg_symmtd_unpack_T" p'gsl_linalg_symmtd_unpack_T
:: FunPtr (Ptr C'gsl_matrix -> Ptr C'gsl_vector -> Ptr C'gsl_vector -> IO CInt)
foreign import ccall "gsl_linalg_hermtd_decomp" c'gsl_linalg_hermtd_decomp
:: Ptr C'gsl_matrix_complex -> Ptr C'gsl_vector_complex -> IO CInt
foreign import ccall "&gsl_linalg_hermtd_decomp" p'gsl_linalg_hermtd_decomp
:: FunPtr (Ptr C'gsl_matrix_complex -> Ptr C'gsl_vector_complex -> IO CInt)
foreign import ccall "gsl_linalg_hermtd_unpack" c'gsl_linalg_hermtd_unpack
:: Ptr C'gsl_matrix_complex -> Ptr C'gsl_vector_complex -> Ptr C'gsl_matrix_complex -> Ptr C'gsl_vector -> Ptr C'gsl_vector -> IO CInt
foreign import ccall "&gsl_linalg_hermtd_unpack" p'gsl_linalg_hermtd_unpack
:: FunPtr (Ptr C'gsl_matrix_complex -> Ptr C'gsl_vector_complex -> Ptr C'gsl_matrix_complex -> Ptr C'gsl_vector -> Ptr C'gsl_vector -> IO CInt)
foreign import ccall "gsl_linalg_hermtd_unpack_T" c'gsl_linalg_hermtd_unpack_T
:: Ptr C'gsl_matrix_complex -> Ptr C'gsl_vector -> Ptr C'gsl_vector -> IO CInt
foreign import ccall "&gsl_linalg_hermtd_unpack_T" p'gsl_linalg_hermtd_unpack_T
:: FunPtr (Ptr C'gsl_matrix_complex -> Ptr C'gsl_vector -> Ptr C'gsl_vector -> IO CInt)
foreign import ccall "gsl_linalg_HH_solve" c'gsl_linalg_HH_solve
:: Ptr C'gsl_matrix -> Ptr C'gsl_vector -> Ptr C'gsl_vector -> IO CInt
foreign import ccall "&gsl_linalg_HH_solve" p'gsl_linalg_HH_solve
:: FunPtr (Ptr C'gsl_matrix -> Ptr C'gsl_vector -> Ptr C'gsl_vector -> IO CInt)
foreign import ccall "gsl_linalg_HH_svx" c'gsl_linalg_HH_svx
:: Ptr C'gsl_matrix -> Ptr C'gsl_vector -> IO CInt
foreign import ccall "&gsl_linalg_HH_svx" p'gsl_linalg_HH_svx
:: FunPtr (Ptr C'gsl_matrix -> Ptr C'gsl_vector -> IO CInt)
foreign import ccall "gsl_linalg_solve_symm_tridiag" c'gsl_linalg_solve_symm_tridiag
:: Ptr C'gsl_vector -> Ptr C'gsl_vector -> Ptr C'gsl_vector -> Ptr C'gsl_vector -> IO CInt
foreign import ccall "&gsl_linalg_solve_symm_tridiag" p'gsl_linalg_solve_symm_tridiag
:: FunPtr (Ptr C'gsl_vector -> Ptr C'gsl_vector -> Ptr C'gsl_vector -> Ptr C'gsl_vector -> IO CInt)
foreign import ccall "gsl_linalg_solve_tridiag" c'gsl_linalg_solve_tridiag
:: Ptr C'gsl_vector -> Ptr C'gsl_vector -> Ptr C'gsl_vector -> Ptr C'gsl_vector -> Ptr C'gsl_vector -> IO CInt
foreign import ccall "&gsl_linalg_solve_tridiag" p'gsl_linalg_solve_tridiag
:: FunPtr (Ptr C'gsl_vector -> Ptr C'gsl_vector -> Ptr C'gsl_vector -> Ptr C'gsl_vector -> Ptr C'gsl_vector -> IO CInt)
foreign import ccall "gsl_linalg_solve_symm_cyc_tridiag" c'gsl_linalg_solve_symm_cyc_tridiag
:: Ptr C'gsl_vector -> Ptr C'gsl_vector -> Ptr C'gsl_vector -> Ptr C'gsl_vector -> IO CInt
foreign import ccall "&gsl_linalg_solve_symm_cyc_tridiag" p'gsl_linalg_solve_symm_cyc_tridiag
:: FunPtr (Ptr C'gsl_vector -> Ptr C'gsl_vector -> Ptr C'gsl_vector -> Ptr C'gsl_vector -> IO CInt)
foreign import ccall "gsl_linalg_solve_cyc_tridiag" c'gsl_linalg_solve_cyc_tridiag
:: Ptr C'gsl_vector -> Ptr C'gsl_vector -> Ptr C'gsl_vector -> Ptr C'gsl_vector -> Ptr C'gsl_vector -> IO CInt
foreign import ccall "&gsl_linalg_solve_cyc_tridiag" p'gsl_linalg_solve_cyc_tridiag
:: FunPtr (Ptr C'gsl_vector -> Ptr C'gsl_vector -> Ptr C'gsl_vector -> Ptr C'gsl_vector -> Ptr C'gsl_vector -> IO CInt)
foreign import ccall "gsl_linalg_bidiag_decomp" c'gsl_linalg_bidiag_decomp
:: Ptr C'gsl_matrix -> Ptr C'gsl_vector -> Ptr C'gsl_vector -> IO CInt
foreign import ccall "&gsl_linalg_bidiag_decomp" p'gsl_linalg_bidiag_decomp
:: FunPtr (Ptr C'gsl_matrix -> Ptr C'gsl_vector -> Ptr C'gsl_vector -> IO CInt)
foreign import ccall "gsl_linalg_bidiag_unpack" c'gsl_linalg_bidiag_unpack
:: Ptr C'gsl_matrix -> Ptr C'gsl_vector -> Ptr C'gsl_matrix -> Ptr C'gsl_vector -> Ptr C'gsl_matrix -> Ptr C'gsl_vector -> Ptr C'gsl_vector -> IO CInt
foreign import ccall "&gsl_linalg_bidiag_unpack" p'gsl_linalg_bidiag_unpack
:: FunPtr (Ptr C'gsl_matrix -> Ptr C'gsl_vector -> Ptr C'gsl_matrix -> Ptr C'gsl_vector -> Ptr C'gsl_matrix -> Ptr C'gsl_vector -> Ptr C'gsl_vector -> IO CInt)
foreign import ccall "gsl_linalg_bidiag_unpack2" c'gsl_linalg_bidiag_unpack2
:: Ptr C'gsl_matrix -> Ptr C'gsl_vector -> Ptr C'gsl_vector -> Ptr C'gsl_matrix -> IO CInt
foreign import ccall "&gsl_linalg_bidiag_unpack2" p'gsl_linalg_bidiag_unpack2
:: FunPtr (Ptr C'gsl_matrix -> Ptr C'gsl_vector -> Ptr C'gsl_vector -> Ptr C'gsl_matrix -> IO CInt)
foreign import ccall "gsl_linalg_bidiag_unpack_B" c'gsl_linalg_bidiag_unpack_B
:: Ptr C'gsl_matrix -> Ptr C'gsl_vector -> Ptr C'gsl_vector -> IO CInt
foreign import ccall "&gsl_linalg_bidiag_unpack_B" p'gsl_linalg_bidiag_unpack_B
:: FunPtr (Ptr C'gsl_matrix -> Ptr C'gsl_vector -> Ptr C'gsl_vector -> IO CInt)
foreign import ccall "gsl_linalg_balance_matrix" c'gsl_linalg_balance_matrix
:: Ptr C'gsl_matrix -> Ptr C'gsl_vector -> IO CInt
foreign import ccall "&gsl_linalg_balance_matrix" p'gsl_linalg_balance_matrix
:: FunPtr (Ptr C'gsl_matrix -> Ptr C'gsl_vector -> IO CInt)
foreign import ccall "gsl_linalg_balance_accum" c'gsl_linalg_balance_accum
:: Ptr C'gsl_matrix -> Ptr C'gsl_vector -> IO CInt
foreign import ccall "&gsl_linalg_balance_accum" p'gsl_linalg_balance_accum
:: FunPtr (Ptr C'gsl_matrix -> Ptr C'gsl_vector -> IO CInt)
foreign import ccall "gsl_linalg_balance_columns" c'gsl_linalg_balance_columns
:: Ptr C'gsl_matrix -> Ptr C'gsl_vector -> IO CInt
foreign import ccall "&gsl_linalg_balance_columns" p'gsl_linalg_balance_columns
:: FunPtr (Ptr C'gsl_matrix -> Ptr C'gsl_vector -> IO CInt)