<?xml version="1.0" encoding="UTF-8"?>
<commit>
  <added type="array"/>
  <modified type="array">
    <modified>
      <diff>@@ -1,6 +1,6 @@
 (in-package :randist)
 
-(declaim (optimize (speed 0) (safety 3) (debug 3)))
+(declaim (optimize (speed 3) (safety 1) (debug 0)))
 
 
 #| The multinomial distribution has the form
@@ -81,7 +81,10 @@ gsl_ran_multinomial (const gsl_rng * r, const size_t K,
 	 sum (aref n i) into sum-n)))
 		    
 
-(defun random-multinomial (NN p)
+(defun convert-to-double-float-vector (x)
+  (map 'vector (lambda (x) (coerce x 'double-float)) x))
+
+(defun random-multinomial% (NN p)
 &quot;  The multinomial distribution has the form
 
                                       N!           n_1  n_2      n_K
@@ -105,6 +108,9 @@ gsl_ran_multinomial (const gsl_rng * r, const size_t K,
     (random-multinomial1 NN p n)
     n))
 
+(defun random-multinomial (NN p)
+  (random-multinomial% NN (convert-to-double-float-vector p)))
+
 (defun test-multinomial1 (nn p &amp;optional (k 10000))
   (let* ((d (array-dimension p 0))
 	 (r (make-array d :initial-element nil ))</diff>
      <filename>multinomial.lisp</filename>
    </modified>
  </modified>
  <removed type="array"/>
  <parents type="array">
    <parent>
      <id>1919455a3dd80dbe209ab29d83692bb0432016c3</id>
    </parent>
  </parents>
  <author>
    <name>Leonardo Varuzza</name>
    <email>varuzza@gmail.com</email>
  </author>
  <url>http://github.com/lvaruzza/cl-randist/commit/512294b3c21941597fa6befbe49f3050e0f191a1</url>
  <id>512294b3c21941597fa6befbe49f3050e0f191a1</id>
  <committed-date>2008-11-17T18:35:14-08:00</committed-date>
  <authored-date>2008-11-17T18:35:14-08:00</authored-date>
  <message>Add version of random-multinomial with type conversion.
Rename the optimized version to random-multionomial%</message>
  <tree>ac5546da12c668f9ad367eecb17bdcd55a37477c</tree>
  <committer>
    <name>Leonardo Varuzza</name>
    <email>varuzza@gmail.com</email>
  </committer>
</commit>
