@@ -25,7 +25,6 @@ import Random: rand!
2525import Distributions: logpdf
2626import StatsFuns: invsqrt2π
2727
28- using LoopVectorization
2928using StatsFuns: log2π
3029using LinearAlgebra
3130using SpecialFunctions
@@ -237,7 +236,7 @@ BayesBase.promote_variate_type(::Type{Multivariate}, ::Type{<:NormalWeightedMean
237236
238237function Base. convert (:: Type{Normal{T}} , dist:: UnivariateNormalDistributionsFamily ) where {T <: Real }
239238 mean, std = mean_std (dist)
240- return Normal (convert (T, mean), convert (T, std))
239+ return Normal (convert (T, T ( mean)) , convert (T, T ( std) ))
241240end
242241
243242function Base. convert (:: Type{Normal} , dist:: UnivariateNormalDistributionsFamily{T} ) where {T <: Real }
@@ -249,7 +248,7 @@ function Base.convert(
249248 dist:: MultivariateNormalDistributionsFamily
250249) where {T <: Real , C <: Distributions.PDMats.PDMat{T, Matrix{T}} , M <: AbstractVector{T} }
251250 mean, cov = mean_cov (dist)
252- return MvNormal (convert (M, mean), Distributions. PDMats. PDMat (convert (AbstractMatrix{T}, cov)))
251+ return MvNormal (convert (M, M ( mean) ), Distributions. PDMats. PDMat (convert (AbstractMatrix{T}, cov)))
253252end
254253
255254function Base. convert (:: Type{MvNormal{T}} , dist:: MultivariateNormalDistributionsFamily ) where {T <: Real }
268267
269268function Base. convert (:: Type{NormalMeanVariance{T}} , dist:: UnivariateNormalDistributionsFamily ) where {T <: Real }
270269 mean, var = mean_var (dist)
271- return NormalMeanVariance (convert (T, mean), convert (T, var))
270+ return NormalMeanVariance (convert (T, T ( mean)) , convert (T, T ( var) ))
272271end
273272
274273function Base. convert (:: Type{MvNormalMeanCovariance{T}} , dist:: MultivariateNormalDistributionsFamily ) where {T <: Real }
@@ -287,7 +286,7 @@ function Base.convert(
287286 dist:: MultivariateNormalDistributionsFamily
288287) where {T <: Real , M <: AbstractArray{T} , P <: AbstractArray{T} }
289288 mean, cov = mean_cov (dist)
290- return MvNormalMeanCovariance (convert (M, mean), convert (P, cov))
289+ return MvNormalMeanCovariance (convert (M, M ( mean)) , convert (P, P ( cov) ))
291290end
292291
293292function Base. convert (:: Type{NormalMeanVariance} , dist:: UnivariateNormalDistributionsFamily{T} ) where {T <: Real }
302301
303302function Base. convert (:: Type{NormalMeanPrecision{T}} , dist:: UnivariateNormalDistributionsFamily ) where {T <: Real }
304303 mean, precision = mean_precision (dist)
305- return NormalMeanPrecision (convert (T, mean), convert (T, precision))
304+ return NormalMeanPrecision (convert (T, T ( mean)) , convert (T, T ( precision) ))
306305end
307306
308307function Base. convert (:: Type{MvNormalMeanPrecision{T}} , dist:: MultivariateNormalDistributionsFamily ) where {T <: Real }
@@ -321,7 +320,7 @@ function Base.convert(
321320 dist:: MultivariateNormalDistributionsFamily
322321) where {T <: Real , M <: AbstractArray{T} , P <: AbstractArray{T} }
323322 mean, precision = mean_precision (dist)
324- return MvNormalMeanPrecision (convert (M, mean), convert (P, precision))
323+ return MvNormalMeanPrecision (convert (M, M ( mean)) , convert (P, P ( precision) ))
325324end
326325
327326function Base. convert (:: Type{NormalMeanPrecision} , dist:: UnivariateNormalDistributionsFamily{T} ) where {T <: Real }
@@ -339,7 +338,7 @@ function Base.convert(
339338 dist:: UnivariateNormalDistributionsFamily
340339) where {T <: Real }
341340 weightedmean, precision = weightedmean_precision (dist)
342- return NormalWeightedMeanPrecision (convert (T, weightedmean), convert (T, precision))
341+ return NormalWeightedMeanPrecision (convert (T, T ( weightedmean)) , convert (T, T ( precision) ))
343342end
344343
345344function Base. convert (
@@ -361,7 +360,7 @@ function Base.convert(
361360 dist:: MultivariateNormalDistributionsFamily
362361) where {T <: Real , M <: AbstractArray{T} , P <: AbstractArray{T} }
363362 weightedmean, precision = weightedmean_precision (dist)
364- return MvNormalWeightedMeanPrecision (convert (M, weightedmean), convert (P, precision))
363+ return MvNormalWeightedMeanPrecision (convert (M, M ( weightedmean)) , convert (P, P ( precision) ))
365364end
366365
367366function Base. convert (
@@ -497,7 +496,7 @@ function BayesBase.rand!(
497496) where {T <: Real }
498497 randn! (rng, container)
499498 μ, σ = mean_std (dist)
500- @turbo for i in eachindex (container)
499+ for i in eachindex (container)
501500 container[i] = μ + σ * container[i]
502501 end
503502 container
0 commit comments