@@ -85,7 +85,7 @@ class Combination(Covariance):
8585 def __init__ (self , factor_list ):
8686 input_dim = np .max ([factor .input_dim for factor in
8787 filter (lambda x : isinstance (x , Covariance ), factor_list )])
88- Covariance . __init__ ( self , input_dim = input_dim )
88+ super ( Combination , self ). __init__ ( input_dim = input_dim )
8989 self .factor_list = []
9090 for factor in factor_list :
9191 if isinstance (factor , self .__class__ ):
@@ -117,10 +117,8 @@ class Stationary(Covariance):
117117 """
118118
119119 def __init__ (self , input_dim , lengthscales , active_dims = None ):
120- Covariance .__init__ (self , input_dim , active_dims )
121- if isinstance (lengthscales , (list , tuple )):
122- lengthscales = np .array (lengthscales )
123- self .lengthscales = lengthscales
120+ super (Stationary , self ).__init__ (input_dim , active_dims )
121+ self .lengthscales = tt .as_tensor_variable (lengthscales )
124122
125123 def square_dist (self , X , Z ):
126124 X = tt .mul (X , 1.0 / self .lengthscales )
@@ -165,8 +163,7 @@ class RatQuad(Stationary):
165163 """
166164
167165 def __init__ (self , input_dim , lengthscales , alpha , active_dims = None ):
168- Covariance .__init__ (self , input_dim , active_dims )
169- self .lengthscales = lengthscales
166+ super (RatQuad , self ).__init__ (input_dim , lengthscales , active_dims )
170167 self .alpha = alpha
171168
172169 def __call__ (self , X , Z = None ):
@@ -240,7 +237,7 @@ class Linear(Covariance):
240237 """
241238
242239 def __init__ (self , input_dim , c , active_dims = None ):
243- Covariance . __init__ ( self , input_dim , active_dims )
240+ super ( Linear , self ). __init__ ( input_dim , active_dims )
244241 self .c = c
245242
246243 def __call__ (self , X , Z = None ):
@@ -262,7 +259,7 @@ class Polynomial(Linear):
262259 """
263260
264261 def __init__ (self , input_dim , c , d , offset , active_dims = None ):
265- Linear . __init__ ( self , input_dim , c , active_dims )
262+ super ( Polynomial , self ). __init__ ( input_dim , c , active_dims )
266263 self .d = d
267264 self .offset = offset
268265
@@ -289,7 +286,7 @@ class WarpedInput(Covariance):
289286 """
290287
291288 def __init__ (self , input_dim , cov_func , warp_func , args = None , active_dims = None ):
292- Covariance . __init__ ( self , input_dim , active_dims )
289+ super ( WarpedInput , self ). __init__ ( input_dim , active_dims )
293290 if not callable (warp_func ):
294291 raise TypeError ("warp_func must be callable" )
295292 if not isinstance (cov_func , Covariance ):
@@ -323,7 +320,7 @@ class Gibbs(Covariance):
323320 Additional inputs (besides X or Z) to lengthscale_func.
324321 """
325322 def __init__ (self , input_dim , lengthscale_func , args = None , active_dims = None ):
326- Covariance . __init__ ( self , input_dim , active_dims )
323+ super ( Gibbs , self ). __init__ ( input_dim , active_dims )
327324 if active_dims is not None :
328325 if input_dim != 1 or sum (active_dims ) == 1 :
329326 raise NotImplementedError ("Higher dimensional inputs are untested" )
0 commit comments