1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181
|
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<!-- Created by GNU Texinfo 5.1, http://www.gnu.org/software/texinfo/ -->
<head>
<title>Maxima 5.47.0 Manual: Random Numbers</title>
<meta name="description" content="Maxima 5.47.0 Manual: Random Numbers">
<meta name="keywords" content="Maxima 5.47.0 Manual: Random Numbers">
<meta name="resource-type" content="document">
<meta name="distribution" content="global">
<meta name="Generator" content="makeinfo">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link href="maxima_toc.html#Top" rel="start" title="Top">
<link href="maxima_423.html#Function-and-Variable-Index" rel="index" title="Function and Variable Index">
<link href="maxima_toc.html#SEC_Contents" rel="contents" title="Table of Contents">
<link href="maxima_47.html#Elementary-Functions" rel="up" title="Elementary Functions">
<link href="maxima_60.html#Maxima_0027s-Database" rel="next" title="Maxima's Database">
<link href="maxima_58.html#Additional-Functions" rel="previous" title="Additional Functions">
<style type="text/css">
<!--
a.summary-letter {text-decoration: none}
blockquote.smallquotation {font-size: smaller}
div.display {margin-left: 3.2em}
div.example {margin-left: 3.2em}
div.indentedblock {margin-left: 3.2em}
div.lisp {margin-left: 3.2em}
div.smalldisplay {margin-left: 3.2em}
div.smallexample {margin-left: 3.2em}
div.smallindentedblock {margin-left: 3.2em; font-size: smaller}
div.smalllisp {margin-left: 3.2em}
kbd {font-style:oblique}
pre.display {font-family: inherit}
pre.format {font-family: inherit}
pre.menu-comment {font-family: serif}
pre.menu-preformatted {font-family: serif}
pre.smalldisplay {font-family: inherit; font-size: smaller}
pre.smallexample {font-size: smaller}
pre.smallformat {font-family: inherit; font-size: smaller}
pre.smalllisp {font-size: smaller}
span.nocodebreak {white-space:nowrap}
span.nolinebreak {white-space:nowrap}
span.roman {font-family:serif; font-weight:normal}
span.sansserif {font-family:sans-serif; font-weight:normal}
ul.no-bullet {list-style: none}
body {color: black; background: white; margin-left: 8%; margin-right: 13%;
font-family: "FreeSans", sans-serif}
h1 {font-size: 150%; font-family: "FreeSans", sans-serif}
h2 {font-size: 125%; font-family: "FreeSans", sans-serif}
h3 {font-size: 100%; font-family: "FreeSans", sans-serif}
a[href] {color: rgb(0,0,255); text-decoration: none;}
a[href]:hover {background: rgb(220,220,220);}
div.textbox {border: solid; border-width: thin; padding-top: 1em;
padding-bottom: 1em; padding-left: 2em; padding-right: 2em}
div.titlebox {border: none; padding-top: 1em; padding-bottom: 1em;
padding-left: 2em; padding-right: 2em; background: rgb(200,255,255);
font-family: sans-serif}
div.synopsisbox {
border: none; padding-top: 1em; padding-bottom: 1em; padding-left: 2em;
padding-right: 2em; background: rgb(255,220,255);}
pre.example {border: 1px solid rgb(180,180,180); padding-top: 1em;
padding-bottom: 1em; padding-left: 1em; padding-right: 1em;
background-color: rgb(238,238,255)}
div.spacerbox {border: none; padding-top: 2em; padding-bottom: 2em}
div.image {margin: 0; padding: 1em; text-align: center}
div.categorybox {border: 1px solid gray; padding-top: 1em; padding-bottom: 1em;
padding-left: 1em; padding-right: 1em; background: rgb(247,242,220)}
img {max-width:80%; max-height: 80%; display: block; margin-left: auto; margin-right: auto}
-->
</style>
<link rel="icon" href="figures/favicon.ico">
<script src="https://polyfill.io/v3/polyfill.min.js?features=es6>"></script>
<script id="MathJax-script" async src="https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js"></script>
</head>
<body lang="en" bgcolor="#FFFFFF" text="#000000" link="#0000FF" vlink="#800080" alink="#FF0000">
<a name="Random-Numbers"></a>
<div class="header">
<p>
Previous: <a href="maxima_52.html#Trigonometric-Functions" accesskey="p" rel="previous">Trigonometric Functions</a>, Up: <a href="maxima_47.html#Elementary-Functions" accesskey="u" rel="up">Elementary Functions</a> [<a href="maxima_toc.html#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="maxima_423.html#Function-and-Variable-Index" title="Index" rel="index">Index</a>]</p>
</div>
<a name="Random-Numbers-1"></a>
<h3 class="section">10.6 Random Numbers</h3>
<a name="make_005frandom_005fstate"></a><a name="Item_003a-MathFunctions_002fdeffn_002fmake_005frandom_005fstate"></a><dl>
<dt><a name="index-make_005frandom_005fstate"></a>Function: <strong>make_random_state</strong> <em><br> <tt>make_random_state</tt> (<var>n</var>) <br> <tt>make_random_state</tt> (<var>s</var>) <br> <tt>make_random_state</tt> (true) <br> <tt>make_random_state</tt> (false)</em></dt>
<dd>
<p>A random state object represents the state of the random number generator.
The state comprises 627 32-bit words.
</p>
<p><code>make_random_state (<var>n</var>)</code> returns a new random state object
created from an integer seed value equal to <var>n</var> modulo 2^32.
<var>n</var> may be negative.
</p>
<p><code>make_random_state (<var>s</var>)</code> returns a copy of the random state <var>s</var>.
</p>
<p><code>make_random_state (true)</code> returns a new random state object,
using the current computer clock time as the seed.
</p>
<p><code>make_random_state (false)</code> returns a copy of the current state
of the random number generator.
</p>
<div class=categorybox>
Categories:<a href="maxima_424.html#Category_003a-Random-numbers">Random numbers</a>
·</div></dd></dl>
<a name="set_005frandom_005fstate"></a><a name="Item_003a-MathFunctions_002fdeffn_002fset_005frandom_005fstate"></a><dl>
<dt><a name="index-set_005frandom_005fstate"></a>Function: <strong>set_random_state</strong> <em>(<var>s</var>)</em></dt>
<dd>
<p>Copies <var>s</var> to the random number generator state.
</p>
<p><code>set_random_state</code> always returns <code>done</code>.
</p>
<div class=categorybox>
Categories:<a href="maxima_424.html#Category_003a-Random-numbers">Random numbers</a>
·</div></dd></dl>
<a name="random"></a><a name="Item_003a-MathFunctions_002fdeffn_002frandom"></a><dl>
<dt><a name="index-random"></a>Function: <strong>random</strong> <em>(<var>x</var>)</em></dt>
<dd>
<p>Returns a pseudorandom number. If <var>x</var> is an integer,
<code>random (<var>x</var>)</code> returns an integer from 0 through <code><var>x</var> - 1</code>
inclusive. If <var>x</var> is a floating point number, <code>random (<var>x</var>)</code>
returns a nonnegative floating point number less than <var>x</var>. <code>random</code>
complains with an error if <var>x</var> is neither an integer nor a float, or if
<var>x</var> is not positive.
</p>
<p>The functions <code>make_random_state</code> and <code>set_random_state</code>
maintain the state of the random number generator.
</p>
<p>The Maxima random number generator is an implementation of the Mersenne twister
MT 19937.
</p>
<p>Examples:
</p>
<div class="example">
<pre class="example">(%i1) s1: make_random_state (654321)$
</pre><pre class="example">(%i2) set_random_state (s1);
(%o2) done
</pre><pre class="example">(%i3) random (1000);
(%o3) 768
</pre><pre class="example">(%i4) random (9573684);
(%o4) 7657880
</pre><pre class="example">(%i5) random (2^75);
(%o5) 11804491615036831636390
</pre><pre class="example">(%i6) s2: make_random_state (false)$
</pre><pre class="example">(%i7) random (1.0);
(%o7) 0.2310127244107132
</pre><pre class="example">(%i8) random (10.0);
(%o8) 4.394553645870825
</pre><pre class="example">(%i9) random (100.0);
(%o9) 32.28666704056853
</pre><pre class="example">(%i10) set_random_state (s2);
(%o10) done
</pre><pre class="example">(%i11) random (1.0);
(%o11) 0.2310127244107132
</pre><pre class="example">(%i12) random (10.0);
(%o12) 4.394553645870825
</pre><pre class="example">(%i13) random (100.0);
(%o13) 32.28666704056853
</pre></div>
<div class=categorybox>
Categories:<a href="maxima_424.html#Category_003a-Random-numbers">Random numbers</a>
·<a href="maxima_424.html#Category_003a-Numerical-methods">Numerical methods</a>
·</div></dd></dl>
<hr>
<div class="header">
<p>
Previous: <a href="maxima_52.html#Trigonometric-Functions" accesskey="p" rel="previous">Trigonometric Functions</a>, Up: <a href="maxima_47.html#Elementary-Functions" accesskey="u" rel="up">Elementary Functions</a> [<a href="maxima_toc.html#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="maxima_423.html#Function-and-Variable-Index" title="Index" rel="index">Index</a>]</p>
</div>
</body>
</html>
|