count[9]+=1 return count def chiSQR(count, n ,k): assert(k!=0) p=1/float(k) chi=0 for i in range(1,k+1): chi+=(count[i-1]-n*p)**2/(n*p) print "chi^2=" print chi return chi rn1=T1.createNum(31,3,60) N=countMeasure(rn1[0][1:len(rn1[0])-1]) chiSQR(N,50,10) rn1=T1.createNum(31,3,60,0.21) N=countMeasure(rn1[0][1:len(rn1[0])-1]) chiSQR(N,50,10) rn1=T1.createNum(31,3,60,3.7) N=countMeasure(rn1[0][1:len(rn1[0])-1]) chiSQR(N,50,10) rn2=T1.createNum(17,3,60) N=countMeasure(rn2[0][1:len(rn2[0])-1]) chiSQR(N,50,10)
2)Creating a 3D plot 3)Different RNG -> using the built in RNG and different c and p OUTPUT 1) 2D graph of random numbes (normalized) 2) 3D graph of random numbes (normalized) This is plotet for different RNG """ __author__ = "Marion Baumgartner ([email protected])" __date__ = "$Date: 28/09/2012 $" import numpy as np import pylab as py from mpl_toolkits.mplot3d import Axes3D import matplotlib.pyplot as plt import random as rand import Task1func as T1 rn = T1.createNum(31, 3, 30) #==>max number of planes p^{1/n}= T1.plot('Square and Cube Test for RNG (using p=31, c=3)', rn[0], rn[1], rn[2]) rn = T1.createNum(17, 3, 30) #==>max number of planes p^{1/n}= T1.plot('Square and Cube Test for RNG (using p=17, c=3)', rn[0], rn[1], rn[2]) rn = T1.initRand(100) T1.plot('Suare and Cube Test Using the RNG from the Random Librari', rn[0], rn[1], rn[2]) plt.show()
1) 2D graph of random numbes (normalized) 2) 3D graph of random numbes (normalized) This is plotet for different RNG """ __author__ = "Marion Baumgartner ([email protected])" __date__ = "$Date: 28/09/2012 $" import numpy as np import pylab as py from mpl_toolkits.mplot3d import Axes3D import matplotlib.pyplot as plt import random as rand import Task1func as T1 rn=T1.createNum(31,3,30) #==>max number of planes p^{1/n}= T1.plot('Square and Cube Test for RNG (using p=31, c=3)',rn[0],rn[1], rn[2]) rn=T1.createNum(17,3,30) #==>max number of planes p^{1/n}= T1.plot('Square and Cube Test for RNG (using p=17, c=3)',rn[0],rn[1], rn[2]) rn=T1.initRand(100) T1.plot('Suare and Cube Test Using the RNG from the Random Librari',rn[0],rn[1], rn[2]) plt.show()
count[9] += 1 return count def chiSQR(count, n, k): assert (k != 0) p = 1 / float(k) chi = 0 for i in range(1, k + 1): chi += (count[i - 1] - n * p)**2 / (n * p) print "chi^2=" print chi return chi rn1 = T1.createNum(31, 3, 60) N = countMeasure(rn1[0][1:len(rn1[0]) - 1]) chiSQR(N, 50, 10) rn1 = T1.createNum(31, 3, 60, 0.21) N = countMeasure(rn1[0][1:len(rn1[0]) - 1]) chiSQR(N, 50, 10) rn1 = T1.createNum(31, 3, 60, 3.7) N = countMeasure(rn1[0][1:len(rn1[0]) - 1]) chiSQR(N, 50, 10) rn2 = T1.createNum(17, 3, 60) N = countMeasure(rn2[0][1:len(rn2[0]) - 1]) chiSQR(N, 50, 10)