hmatrix- Linear algebra and numerical computation

Portabilityuses gnuplot and ImageMagick
MaintainerAlberto Ruiz (aruiz at um dot es)
Safe HaskellSafe-Infered



This module is deprecated. It can be replaced by improved drawing tools available in the plot\plot-gtk packages by Vivian McPhail or Gnuplot by Henning Thielemann.



mplot :: [Vector Double] -> IO ()Source

plots several vectors against the first one

 > let t = linspace 100 (-3,3) in mplot [t, sin t, exp (-t^2)]

plot :: [Vector Double -> Vector Double] -> (Double, Double) -> Int -> IO ()Source

Draws a list of functions over a desired range and with a desired number of points

 > plot [sin, cos, sin.(3*)] (0,2*pi) 1000

parametricPlot :: (Vector Double -> (Vector Double, Vector Double)) -> (Double, Double) -> Int -> IO ()Source

Draws a parametric curve. For instance, to draw a spiral we can do something like:

 > parametricPlot (\t->(t * sin t, t * cos t)) (0,10*pi) 1000

splot :: (Matrix Double -> Matrix Double -> Matrix Double) -> (Double, Double) -> (Double, Double) -> Int -> IO ()Source

Draws the surface represented by the function f in the desired ranges and number of points, internally using mesh.

 > let f x y = cos (x + y) 
 > splot f (0,pi) (0,2*pi) 50    

mesh :: Matrix Double -> IO ()Source

Draws a 3D surface representation of a real matrix.

 > mesh $ build (10,10) (\\i j -> i + (j-5)^2)

In certain versions you can interactively rotate the graphic using the mouse.

meshdom :: Vector Double -> Vector Double -> (Matrix Double, Matrix Double)Source

From vectors x and y, it generates a pair of matrices to be used as x and y arguments for matrix functions.

matrixToPGM :: Matrix Double -> StringSource

writes a matrix to pgm image file

imshow :: Matrix Double -> IO ()Source

imshow shows a representation of a matrix as a gray level image using ImageMagick's display.