@@ -70,7 +70,7 @@ function kernel(
70
70
obsdim:: Int = defaultobs
71
71
) where {T,T₁<: Real ,T₂<: Real }
72
72
# TODO Verify dimensions
73
- _kappamatrix! (κ, pairwise (metric (κ),X,Y,dims = obsdim ))
73
+ kappa (κ, evaluate (metric (κ),x,y ))
74
74
end
75
75
76
76
"""
@@ -85,7 +85,9 @@ function kernelmatrix(
85
85
obsdim:: Int = defaultobs,
86
86
symmetrize:: Bool = true
87
87
) where {T,T₁<: Real }
88
- return kernelmatrix! (Matrix {promote_float(T,T₁)} (undef,size (X,obsdim),size (X,obsdim)),κ,X,obsdim= obsdim,symmetrize= symmetrize)
88
+ Tₛ = typeof (zero (eltype (X))* zero (T))
89
+ m = size (X,obsdim)
90
+ return kernelmatrix! (Matrix {promote_float(T,T₁)} (undef,m,m),κ,X,obsdim= obsdim,symmetrize= symmetrize)
89
91
end
90
92
91
93
"""
@@ -100,7 +102,10 @@ function kernelmatrix(
100
102
Y:: AbstractMatrix{T₂} ;
101
103
obsdim= defaultobs
102
104
) where {T,T₁<: Real ,T₂<: Real }
103
- kernelmatrix! (Matrix {promote_float(T,T₁,T₂)} (undef,size (X,obsdim),size (Y,obsdim)),κ,X,Y,obsdim= obsdim)
105
+ Tₛ = typeof (zero (eltype (X))* zero (eltype (Y))* zero (T))
106
+ m = size (X,obsdim)
107
+ n = size (Y,obsdim)
108
+ kernelmatrix! (Matrix {Tₛ} (undef,m,n),κ,X,Y,obsdim= obsdim)
104
109
end
105
110
106
111
0 commit comments