Skip to content

Commit 1bd7eca

Browse files
committed
fix properly support Turing Gibbs sampling of StereographicSlice
1 parent 4432cdf commit 1bd7eca

File tree

4 files changed

+9
-6
lines changed

4 files changed

+9
-6
lines changed

Project.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
name = "SliceSampling"
22
uuid = "43f4d3e8-9711-4a8c-bd1b-03ac73a255cf"
3-
version = "0.7.1"
3+
version = "0.7.2"
44

55
[deps]
66
AbstractMCMC = "80f14c24-f653-4e6a-9b94-39d6b0f70001"

ext/SliceSamplingTuringExt.jl

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,7 @@ Turing.Inference.isgibbscomponent(::SliceSampling.HitAndRun) = true
2929
Turing.Inference.isgibbscomponent(::SliceSampling.Slice) = true
3030
Turing.Inference.isgibbscomponent(::SliceSampling.SliceSteppingOut) = true
3131
Turing.Inference.isgibbscomponent(::SliceSampling.SliceDoublingOut) = true
32+
Turing.Inference.isgibbscomponent(::SliceSampling.StereographicSlice) = true
3233

3334
function Turing.Inference.getparams(
3435
::Turing.DynamicPPL.Model, sample::SliceSampling.UnivariateSliceState

src/multivariate/randpermgibbs.jl

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ struct GibbsState{T<:Transition}
2626
end
2727

2828
function AbstractMCMC.setparams!!(
29-
model::AbstractMCMC.LogDensityModel, state::GibbsState, params
29+
model::AbstractMCMC.LogDensityModel, ::GibbsState, params
3030
)
3131
lp = LogDensityProblems.logdensity(model.logdensity, params)
3232
return GibbsState(Transition(params, lp, NamedTuple()))

src/multivariate/stereographic.jl

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -7,13 +7,15 @@ Stereographic slice sampling algorithm by Bell, Latuszynski, and Roberts[^BLR202
77
# Keyword Arguments
88
- `max_proposals::Int`: Maximum number of proposals allowed until throwing an error (default: `$(DEFAULT_MAX_PROPOSALS)`).
99
"""
10-
@kwdef struct StereographicSlice{RType<:Real} <: AbstractMultivariateSliceSampling
10+
@kwdef struct StereographicSlice <: AbstractMultivariateSliceSampling
1111
max_proposals::Int = DEFAULT_MAX_PROPOSALS
1212
end
1313

14-
struct StereographicSliceState{T<:Transition}
15-
"Current [`Transition`](@ref)."
16-
transition::T
14+
function AbstractMCMC.setparams!!(
15+
model::AbstractMCMC.LogDensityModel, ::SliceSampling.Transition, params
16+
)
17+
lp = LogDensityProblems.logdensity(model.logdensity, params)
18+
return Transition(params, lp, NamedTuple())
1719
end
1820

1921
function rand_uniform_sphere_orthogonal_subspace(

0 commit comments

Comments
 (0)