Exemple #1
0
def test_version1(n = 50000, silent= False):
	"""
		test the speed of rtnorm by Christoph Lassner
		test for both fixed limits a,b and variable limits
		n - number of rep
	"""
	times = np.zeros(3)
	
	start = time.time()
	x = rntorm_v1(amin +0.1, 1,size=n)  # @UnusedVariable
	times[0] = time.time() - start
	
	start = time.time()
	x = rntorm_v1(amax -0.1, 4,size=n)
	times[1] = time.time() - start
	
	
	a_vec = 5*np.random.randn(n)
	b_vec = a_vec + np.abs(5*np.random.randn(n))
	
	start = time.time()
	for i, (a, b) in enumerate(zip(a_vec, b_vec)):
		x[i] =rntorm_v1(a, b)
	times[2] = time.time() - start	
	
	if not silent:
		print('for rntorm_v1:')
		for i, time_ in enumerate(times):
			print('test_{i} = {time:.5f}'.format(i = i, time = time_))
			
	
			
			
	return times
Exemple #2
0
def test_version1(n=50000, silent=False):
    """
		test the speed of rtnorm by Christoph Lassner
		test for both fixed limits a,b and variable limits
		n - number of rep
	"""
    times = np.zeros(3)

    start = time.time()
    x = rntorm_v1(amin + 0.1, 1, size=n)  # @UnusedVariable
    times[0] = time.time() - start

    start = time.time()
    x = rntorm_v1(amax - 0.1, 4, size=n)
    times[1] = time.time() - start

    a_vec = 5 * np.random.randn(n)
    b_vec = a_vec + np.abs(5 * np.random.randn(n))

    start = time.time()
    for i, (a, b) in enumerate(zip(a_vec, b_vec)):
        x[i] = rntorm_v1(a, b)
    times[2] = time.time() - start

    if not silent:
        print('for rntorm_v1:')
        for i, time_ in enumerate(times):
            print('test_{i} = {time:.5f}'.format(i=i, time=time_))

    return times
Exemple #3
0
def KS_test_Rtrunc(a, b, n = 1000, p_lim = 0.01):
    """
        a      - limit below
        b      - limit above
        n      - number of samples
        p_lims - limit on which to reject KS 
    """
    
    f = lambda x: stats.truncnorm.cdf(x, a, b)
    p_val = stats.kstest(rntorm_v1(a, b,size=n), f)[1]
    if p_val < p_lim:
        print('p_val = {pval}'.format(pval = p_val))
        return False
        
    return True 
Exemple #4
0
def KS_test_Rtrunc(a, b, n=1000, p_lim=0.01):
    """
        a      - limit below
        b      - limit above
        n      - number of samples
        p_lims - limit on which to reject KS 
    """

    f = lambda x: stats.truncnorm.cdf(x, a, b)
    p_val = stats.kstest(rntorm_v1(a, b, size=n), f)[1]
    if p_val < p_lim:
        print('p_val = {pval}'.format(pval=p_val))
        return False

    return True
Exemple #5
0
 def test_unconstrained(self):
     """
         if the limits are -inf, inf does it generate samples from  
     """
     p_val = stats.kstest(rntorm_v1(-np.inf,np.inf,size=1000), 'norm')[1]
     self.assertTrue(p_val > 0.01, msg='KS failed')
Exemple #6
0
 def test_unconstrained(self):
     """
         if the limits are -inf, inf does it generate samples from  
     """
     p_val = stats.kstest(rntorm_v1(-np.inf, np.inf, size=1000), 'norm')[1]
     self.assertTrue(p_val > 0.01, msg='KS failed')