small changes to the lengthscales such that the periodic kernels can be called as the non-periodic ones

This commit is contained in:
Nicolas 2013-02-20 14:12:29 +00:00
parent 66f25769bc
commit 421b87a07c
3 changed files with 13 additions and 10 deletions

View file

@ -21,13 +21,14 @@ class periodic_Matern32(kernpart):
""" """
def __init__(self,D=1,variance=1.,lengthscale=None,period=2*np.pi,n_freq=10,lower=0.,upper=4*np.pi): def __init__(self,D=1,variance=1.,lengthscale=None,period=2*np.pi,n_freq=10,lower=0.,upper=4*np.pi):
assert D==1 assert D==1, "Periodic kernels are only defined for D=1"
self.name = 'periodic_Mat32' self.name = 'periodic_Mat32'
self.D = D self.D = D
if lengthscale is not None: if lengthscale is not None:
assert lengthscale.shape==(self.D,) lengthscale = np.asarray(lengthscale)
assert lengthscale.size == 1, "Wrong size: only one lengthscale needed"
else: else:
lengthscale = np.ones(self.D) lengthscale = np.ones(1)
self.lower,self.upper = lower, upper self.lower,self.upper = lower, upper
self.Nparam = 3 self.Nparam = 3
self.n_freq = n_freq self.n_freq = n_freq

View file

@ -21,13 +21,14 @@ class periodic_Matern52(kernpart):
""" """
def __init__(self,D=1,variance=1.,lengthscale=None,period=2*np.pi,n_freq=10,lower=0.,upper=4*np.pi): def __init__(self,D=1,variance=1.,lengthscale=None,period=2*np.pi,n_freq=10,lower=0.,upper=4*np.pi):
assert D==1 assert D==1, "Periodic kernels are only defined for D=1"
self.name = 'periodic_Mat52' self.name = 'periodic_Mat52'
self.D = D self.D = D
if lengthscale is not None: if lengthscale is not None:
assert lengthscale.shape==(self.D,) lengthscale = np.asarray(lengthscale)
assert lengthscale.size == 1, "Wrong size: only one lengthscale needed"
else: else:
lengthscale = np.ones(self.D) lengthscale = np.ones(1)
self.lower,self.upper = lower, upper self.lower,self.upper = lower, upper
self.Nparam = 3 self.Nparam = 3
self.n_freq = n_freq self.n_freq = n_freq

View file

@ -21,13 +21,14 @@ class periodic_exponential(kernpart):
""" """
def __init__(self,D=1,variance=1.,lengthscale=None,period=2*np.pi,n_freq=10,lower=0.,upper=4*np.pi): def __init__(self,D=1,variance=1.,lengthscale=None,period=2*np.pi,n_freq=10,lower=0.,upper=4*np.pi):
assert D==1 assert D==1, "Periodic kernels are only defined for D=1"
self.name = 'periodic_exp' self.name = 'periodic_exp'
self.D = D self.D = D
if lengthscale is not None: if lengthscale is not None:
assert lengthscale.shape==(self.D,) lengthscale = np.asarray(lengthscale)
assert lengthscale.size == 1, "Wrong size: only one lengthscale needed"
else: else:
lengthscale = np.ones(self.D) lengthscale = np.ones(1)
self.lower,self.upper = lower, upper self.lower,self.upper = lower, upper
self.Nparam = 3 self.Nparam = 3
self.n_freq = n_freq self.n_freq = n_freq