Sophie

Sophie

distrib > Mageia > 6 > i586 > media > core-release > by-pkgid > 3d21bba46faba8ab8bc0569a35594b3e > files > 22

ocaml-gg-devel-0.8.0-6.mga6.i586.rpm

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<link rel="stylesheet" href="style.css" type="text/css">
<meta content="text/html; charset=utf-8" http-equiv="Content-Type">
<link rel="Start" href="index.html">
<link rel="previous" href="Gg.P.html">
<link rel="next" href="Gg.Size.html">
<link rel="Up" href="Gg.html">
<link title="Index of types" rel=Appendix href="index_types.html">
<link title="Index of values" rel=Appendix href="index_values.html">
<link title="Index of modules" rel=Appendix href="index_modules.html">
<link title="Index of module types" rel=Appendix href="index_module_types.html">
<link title="Gg" rel="Chapter" href="Gg.html"><link title="Constructors, accessors and constants" rel="Section" href="#cons">
<link title="Functions" rel="Section" href="#functions">
<link title="Traversal" rel="Section" href="#traversal">
<link title="Predicates and comparisons" rel="Section" href="#1_Predicatesandcomparisons">
<link title="Printers" rel="Section" href="#printers">
<title>Gg.M</title>
</head>
<body>
<div class="navbar"><a class="pre" href="Gg.P.html" title="Gg.P">Previous</a>
&nbsp;<a class="up" href="Gg.html" title="Gg">Up</a>
&nbsp;<a class="post" href="Gg.Size.html" title="Gg.Size">Next</a>
</div>
<h1>Module type <a href="type_Gg.M.html">Gg.M</a></h1>
<pre><span class="keyword">module type</span> M = <code class="code"><span class="keyword">sig</span></code> <a href="Gg.M.html">..</a> <code class="code"><span class="keyword">end</span></code></pre><div class="info">
Implemented by all (square) matrix types.<br>
</div>
<hr width="100%">
<pre><span id="TYPEt"><span class="keyword">type</span> <code class="type"></code>t</span> </pre>
<div class="info">
The type for matrices.<br>
</div>

<pre><span id="VALdim"><span class="keyword">val</span> dim</span> : <code class="type">int</code></pre><div class="info">
<code class="code">dim</code> is the dimension of rows and columns.<br>
</div>
<pre><span id="TYPEv"><span class="keyword">type</span> <code class="type"></code>v</span> </pre>
<div class="info">
The type for rows and columns as vectors.<br>
</div>

<br>
<h1 id="cons">Constructors, accessors and constants</h1><br>
<pre><span id="VALel"><span class="keyword">val</span> el</span> : <code class="type">int -> int -> <a href="Gg.M.html#TYPEt">t</a> -> float</code></pre><div class="info">
<code class="code">el i j a</code> is the element <code class="code">a</code><sub class="subscript"><code class="code">ij</code></sub>.<br>
<b>Raises</b> <code>Invalid_argument</code> if <code class="code">i</code> or <code class="code">j</code> is not in [<code class="code">0;</code><a href="Gg.M.html#VALdim"><code class="code"><span class="constructor">Gg</span>.<span class="constructor">M</span>.dim</code></a>[.<br>
</div>
<pre><span id="VALrow"><span class="keyword">val</span> row</span> : <code class="type">int -> <a href="Gg.M.html#TYPEt">t</a> -> <a href="Gg.M.html#TYPEv">v</a></code></pre><div class="info">
<code class="code">row i a</code> is the <code class="code">i</code>th row of <code class="code">a</code>.<br>
<b>Raises</b> <code>Invalid_argument</code> if <code class="code">i</code> is not in [<code class="code">0;</code><a href="Gg.M.html#VALdim"><code class="code"><span class="constructor">Gg</span>.<span class="constructor">M</span>.dim</code></a>[.<br>
</div>
<pre><span id="VALcol"><span class="keyword">val</span> col</span> : <code class="type">int -> <a href="Gg.M.html#TYPEt">t</a> -> <a href="Gg.M.html#TYPEv">v</a></code></pre><div class="info">
<code class="code">col j a</code> is the <code class="code">j</code>th column of <code class="code">a</code>.<br>
<b>Raises</b> <code>Invalid_argument</code> if <code class="code">j</code> is not in [<code class="code">0;</code><a href="Gg.M.html#VALdim"><code class="code"><span class="constructor">Gg</span>.<span class="constructor">M</span>.dim</code></a>[.<br>
</div>
<pre><span id="VALzero"><span class="keyword">val</span> zero</span> : <code class="type"><a href="Gg.M.html#TYPEt">t</a></code></pre><div class="info">
<code class="code">zero</code> is the neutral element for <a href="Gg.M.html#VALadd"><code class="code"><span class="constructor">Gg</span>.<span class="constructor">M</span>.add</code></a>.<br>
</div>
<pre><span id="VALid"><span class="keyword">val</span> id</span> : <code class="type"><a href="Gg.M.html#TYPEt">t</a></code></pre><div class="info">
<code class="code">id</code> is the identity matrix, the neutral element for <a href="Gg.M.html#VALmul"><code class="code"><span class="constructor">Gg</span>.<span class="constructor">M</span>.mul</code></a>.<br>
</div>
<br>
<h1 id="functions">Functions</h1><br>
<pre><span id="VALneg"><span class="keyword">val</span> neg</span> : <code class="type"><a href="Gg.M.html#TYPEt">t</a> -> <a href="Gg.M.html#TYPEt">t</a></code></pre><div class="info">
<code class="code">neg a</code> is the negated matrix <code class="code">-a</code>.<br>
</div>
<pre><span id="VALadd"><span class="keyword">val</span> add</span> : <code class="type"><a href="Gg.M.html#TYPEt">t</a> -> <a href="Gg.M.html#TYPEt">t</a> -> <a href="Gg.M.html#TYPEt">t</a></code></pre><div class="info">
<code class="code">add a b</code> is the matrix addition <code class="code">a + b</code>.<br>
</div>
<pre><span id="VALsub"><span class="keyword">val</span> sub</span> : <code class="type"><a href="Gg.M.html#TYPEt">t</a> -> <a href="Gg.M.html#TYPEt">t</a> -> <a href="Gg.M.html#TYPEt">t</a></code></pre><div class="info">
<code class="code">sub a b</code> is the matrix subtraction <code class="code">a - b</code>.<br>
</div>
<pre><span id="VALmul"><span class="keyword">val</span> mul</span> : <code class="type"><a href="Gg.M.html#TYPEt">t</a> -> <a href="Gg.M.html#TYPEt">t</a> -> <a href="Gg.M.html#TYPEt">t</a></code></pre><div class="info">
<code class="code">mul a b</code> is the 
      <a href="http://mathworld.wolfram.com/MatrixMultiplication.html">matrix 
      multiplication</a> <code class="code">a * b</code>.<br>
</div>
<pre><span id="VALemul"><span class="keyword">val</span> emul</span> : <code class="type"><a href="Gg.M.html#TYPEt">t</a> -> <a href="Gg.M.html#TYPEt">t</a> -> <a href="Gg.M.html#TYPEt">t</a></code></pre><div class="info">
<code class="code">emul a b</code> is the element wise multiplication of <code class="code">a</code> and <code class="code">b</code>.<br>
</div>
<pre><span id="VALediv"><span class="keyword">val</span> ediv</span> : <code class="type"><a href="Gg.M.html#TYPEt">t</a> -> <a href="Gg.M.html#TYPEt">t</a> -> <a href="Gg.M.html#TYPEt">t</a></code></pre><div class="info">
<code class="code">ediv a b</code> is the element wise division of <code class="code">a</code> and <code class="code">b</code>.<br>
</div>
<pre><span id="VALsmul"><span class="keyword">val</span> smul</span> : <code class="type">float -> <a href="Gg.M.html#TYPEt">t</a> -> <a href="Gg.M.html#TYPEt">t</a></code></pre><div class="info">
<code class="code">smul s a</code> is <code class="code">a</code>'s elements multiplied by the scalar <code class="code">s</code>.<br>
</div>
<pre><span id="VALtranspose"><span class="keyword">val</span> transpose</span> : <code class="type"><a href="Gg.M.html#TYPEt">t</a> -> <a href="Gg.M.html#TYPEt">t</a></code></pre><div class="info">
<code class="code">transpose a</code> is the 
      <a href="http://mathworld.wolfram.com/Transpose.html">transpose</a> <code class="code">a</code><sup class="superscript">T</sup>.<br>
</div>
<pre><span id="VALtrace"><span class="keyword">val</span> trace</span> : <code class="type"><a href="Gg.M.html#TYPEt">t</a> -> float</code></pre><div class="info">
<code class="code">trace a</code> is the 
      <a href="http://mathworld.wolfram.com/MatrixTrace.html">matrix trace</a> 
      <code class="code">trace(a)</code>.<br>
</div>
<pre><span id="VALdet"><span class="keyword">val</span> det</span> : <code class="type"><a href="Gg.M.html#TYPEt">t</a> -> float</code></pre><div class="info">
<code class="code">det a</code> is the 
      <a href="http://mathworld.wolfram.com/Determinant.html">determinant</a> <code class="code"><span class="keywordsign">|</span>a<span class="keywordsign">|</span></code>.<br>
</div>
<pre><span id="VALinv"><span class="keyword">val</span> inv</span> : <code class="type"><a href="Gg.M.html#TYPEt">t</a> -> <a href="Gg.M.html#TYPEt">t</a></code></pre><div class="info">
<code class="code">inv a</code> is the
      <a href="http://mathworld.wolfram.com/MatrixInverse.html">inverse matrix</a>
      <code class="code">a</code><sup class="superscript">-1</sup>.<br>
</div>
<br>
<h1 id="traversal">Traversal</h1><br>
<pre><span id="VALmap"><span class="keyword">val</span> map</span> : <code class="type">(float -> float) -> <a href="Gg.M.html#TYPEt">t</a> -> <a href="Gg.M.html#TYPEt">t</a></code></pre><div class="info">
<code class="code">map f a</code> is the element wise application of <code class="code">f</code> to <code class="code">a</code>.<br>
</div>
<pre><span id="VALmapi"><span class="keyword">val</span> mapi</span> : <code class="type">(int -> int -> float -> float) -> <a href="Gg.M.html#TYPEt">t</a> -> <a href="Gg.M.html#TYPEt">t</a></code></pre><div class="info">
<code class="code">mapi f a</code> is like <a href="Gg.M.html#VALmap"><code class="code"><span class="constructor">Gg</span>.<span class="constructor">M</span>.map</code></a> but the element indices are also given.<br>
</div>
<pre><span id="VALfold"><span class="keyword">val</span> fold</span> : <code class="type">('a -> float -> 'a) -> 'a -> <a href="Gg.M.html#TYPEt">t</a> -> 'a</code></pre><div class="info">
<code class="code">fold f acc a</code> is <code class="code">f (</code>...<code class="code">(f (f acc a</code><sub class="subscript">00</sub><code class="code">) a</code><sub class="subscript">10</sub><code class="code">)</code>...<code class="code">)</code>.<br>
</div>
<pre><span id="VALfoldi"><span class="keyword">val</span> foldi</span> : <code class="type">('a -> int -> int -> float -> 'a) -> 'a -> <a href="Gg.M.html#TYPEt">t</a> -> 'a</code></pre><div class="info">
<code class="code">foldi f acc a</code> is 
      <code class="code">f (</code>...<code class="code">(f (f acc 0 0 a</code><sub class="subscript">00</sub><code class="code">) 1 0 a</code><sub class="subscript">10</sub><code class="code">)</code>...<code class="code">)</code>.<br>
</div>
<pre><span id="VALiter"><span class="keyword">val</span> iter</span> : <code class="type">(float -> unit) -> <a href="Gg.M.html#TYPEt">t</a> -> unit</code></pre><div class="info">
<code class="code">iter f a</code> is <code class="code">f a</code><sub class="subscript">00</sub><code class="code">; f a</code><sub class="subscript">10</sub><code class="code">;</code> ...<br>
</div>
<pre><span id="VALiteri"><span class="keyword">val</span> iteri</span> : <code class="type">(int -> int -> float -> unit) -> <a href="Gg.M.html#TYPEt">t</a> -> unit</code></pre><div class="info">
<code class="code">iteri f a</code> is <code class="code">f 0 0 a</code><sub class="subscript">00</sub><code class="code">; f 1 0 a</code><sub class="subscript">10</sub><code class="code">;</code> ...<br>
</div>
<br>
<h1 id="1_Predicatesandcomparisons">Predicates and comparisons</h1><br>
<pre><span id="VALfor_all"><span class="keyword">val</span> for_all</span> : <code class="type">(float -> bool) -> <a href="Gg.M.html#TYPEt">t</a> -> bool</code></pre><div class="info">
<code class="code">for_all p a</code> is <code class="code">p a</code><sub class="subscript">00</sub><code class="code"> <span class="keywordsign">&amp;&amp;</span> p a</code><sub class="subscript">10</sub><code class="code"> <span class="keywordsign">&amp;&amp;</span></code> ...<br>
</div>
<pre><span id="VALexists"><span class="keyword">val</span> exists</span> : <code class="type">(float -> bool) -> <a href="Gg.M.html#TYPEt">t</a> -> bool</code></pre><div class="info">
<code class="code">exists p a</code> is <code class="code">p a</code><sub class="subscript">00</sub><code class="code"> <span class="keywordsign">||</span> p a</code><sub class="subscript">10</sub><code class="code"> <span class="keywordsign">||</span></code> ...<br>
</div>
<pre><span id="VALequal"><span class="keyword">val</span> equal</span> : <code class="type"><a href="Gg.M.html#TYPEt">t</a> -> <a href="Gg.M.html#TYPEt">t</a> -> bool</code></pre><div class="info">
<code class="code">equal a b</code> is <code class="code">a = b</code>.<br>
</div>
<pre><span id="VALequal_f"><span class="keyword">val</span> equal_f</span> : <code class="type">(float -> float -> bool) -> <a href="Gg.M.html#TYPEt">t</a> -> <a href="Gg.M.html#TYPEt">t</a> -> bool</code></pre><div class="info">
<code class="code">equal_f eq a b</code> tests <code class="code">a</code> and <code class="code">b</code> like <a href="Gg.M.html#VALequal"><code class="code"><span class="constructor">Gg</span>.<span class="constructor">M</span>.equal</code></a> but
      uses <code class="code">eq</code> to test floating point values.<br>
</div>
<pre><span id="VALcompare"><span class="keyword">val</span> compare</span> : <code class="type"><a href="Gg.M.html#TYPEt">t</a> -> <a href="Gg.M.html#TYPEt">t</a> -> int</code></pre><div class="info">
<code class="code">compare a b</code> is <code class="code"><span class="constructor">Pervasives</span>.compare a b</code>. That is
      lexicographic comparison in column-major order.<br>
</div>
<pre><span id="VALcompare_f"><span class="keyword">val</span> compare_f</span> : <code class="type">(float -> float -> int) -> <a href="Gg.M.html#TYPEt">t</a> -> <a href="Gg.M.html#TYPEt">t</a> -> int</code></pre><div class="info">
<code class="code">compare_f cmp a b</code> compares <code class="code">a</code> and <code class="code">b</code> like <a href="Gg.M.html#VALcompare"><code class="code"><span class="constructor">Gg</span>.<span class="constructor">M</span>.compare</code></a>
      but uses <code class="code">cmp</code> to compare floating point values.<br>
</div>
<br>
<h1 id="printers">Printers</h1><br>
<pre><span id="VALto_string"><span class="keyword">val</span> to_string</span> : <code class="type"><a href="Gg.M.html#TYPEt">t</a> -> string</code></pre><div class="info">
<code class="code">to_string a</code> is a textual representation of <code class="code">a</code>.<br>
</div>
<pre><span id="VALpp"><span class="keyword">val</span> pp</span> : <code class="type">Format.formatter -> <a href="Gg.M.html#TYPEt">t</a> -> unit</code></pre><div class="info">
<code class="code">pp ppf a</code> prints a textual representation of <code class="code">a</code> on <code class="code">ppf</code>.<br>
</div>
<pre><span id="VALpp_f"><span class="keyword">val</span> pp_f</span> : <code class="type">(Format.formatter -> float -> unit) -> Format.formatter -> <a href="Gg.M.html#TYPEt">t</a> -> unit</code></pre><div class="info">
<code class="code">pp_f pp_e ppf a</code> prints <code class="code">a</code> like <a href="Gg.M.html#VALpp"><code class="code"><span class="constructor">Gg</span>.<span class="constructor">M</span>.pp</code></a> but uses 
      <code class="code">pp_e</code> to print floating point values.<br>
</div>
</body></html>