hmatrix-0.20.2: src/Numeric/LinearAlgebra/Data.hs
{-# LANGUAGE TypeOperators #-}
--------------------------------------------------------------------------------
{- |
Module : Numeric.LinearAlgebra.Data
Copyright : (c) Alberto Ruiz 2015
License : BSD3
Maintainer : Alberto Ruiz
Stability : provisional
This module provides functions for creation and manipulation of vectors and matrices, IO, and other utilities.
-}
--------------------------------------------------------------------------------
module Numeric.LinearAlgebra.Data(
-- * Elements
R,C,I,Z,type(./.),
-- * Vector
{- | 1D arrays are storable vectors directly reexported from the vector package.
-}
fromList, toList, (|>), vector, range, idxs,
-- * Matrix
{- | The main data type of hmatrix is a 2D dense array defined on top of
a storable vector. The internal representation is suitable for direct
interface with standard numeric libraries.
-}
(><), matrix, tr, tr',
-- * Dimensions
size, rows, cols,
-- * Conversion from\/to lists
fromLists, toLists,
row, col,
-- * Conversions vector\/matrix
flatten, reshape, asRow, asColumn,
fromRows, toRows, fromColumns, toColumns,
-- * Indexing
atIndex,
Indexable(..),
-- * Construction
scalar, Konst(..), Build(..), assoc, accum, linspace, -- ones, zeros,
-- * Diagonal
ident, diag, diagl, diagRect, takeDiag,
-- * Vector extraction
subVector, takesV, vjoin,
-- * Matrix extraction
Extractor(..), (??),
(?), (¿), fliprl, flipud,
subMatrix, takeRows, dropRows, takeColumns, dropColumns,
remap,
-- * Block matrix
fromBlocks, (|||), (===), diagBlock, repmat, toBlocks, toBlocksEvery,
-- * Mapping functions
conj, cmap, cmod,
step, cond,
-- * Find elements
find, maxIndex, minIndex, maxElement, minElement,
sortVector, sortIndex,
-- * Sparse
AssocMatrix, toDense,
mkSparse, mkDiagR, mkDense,
-- * IO
disp,
loadMatrix, loadMatrix', saveMatrix,
latexFormat,
dispf, disps, dispcf, format,
dispDots, dispBlanks, dispShort,
-- * Element conversion
Convert(..),
roundVector,
fromInt,toInt,fromZ,toZ,
-- * Misc
arctan2,
separable,
fromArray2D,
module Data.Complex,
Mod,
Vector, Matrix, GMatrix, nRows, nCols
) where
import Internal.Vector
import Internal.Vectorized
import Internal.Matrix hiding (size)
import Internal.Element
import Internal.IO
import Internal.Numeric
import Internal.Container
import Internal.Util hiding ((&))
import Data.Complex
import Internal.Sparse
import Internal.Modular