From 530724ae904e3cf2448781140a63e6a634c9a144 Mon Sep 17 00:00:00 2001 From: "C. Brenhin Keller" Date: Sun, 26 May 2024 16:30:10 -0400 Subject: [PATCH] Fix order of outputs for hiatus methods --- src/StratMetropolis.jl | 22 +++++++++++++++------- 1 file changed, 15 insertions(+), 7 deletions(-) diff --git a/src/StratMetropolis.jl b/src/StratMetropolis.jl index b04b3b7..76a55db 100644 --- a/src/StratMetropolis.jl +++ b/src/StratMetropolis.jl @@ -125,7 +125,7 @@ model_heights = model_heights[active_height_t] mdl = StratAgeModel(model_heights, agedist) - return mdl, agedist, lldist, hiatusdist + return mdl, agedist, hiatusdist, lldist end ## --- Stratigraphic MCMC model without hiatus, with distribution LL # # # # # # @@ -264,7 +264,7 @@ model_heights = model_heights[active_height_t] mdl = StratAgeModel(model_heights, agedist) - return mdl, agedist, lldist, hiatusdist + return mdl, agedist, hiatusdist, lldist end ## --- Stratigraphic MCMC model without hiatus, for radiocarbon ages # # # # # # @@ -405,7 +405,7 @@ model_heights = model_heights[active_height_t] mdl = StratAgeModel(model_heights, agedist) - return mdl, agedist, lldist, hiatusdist + return mdl, agedist, hiatusdist, lldist end ## --- # Internals of the Markov chain @@ -716,9 +716,13 @@ if model_agesₚ[h-1] == model_agesₚ[h] n = findclosestunequal(model_agesₚ, h) if n < h - model_agesₚ[n:h-1] .= model_agesₚ[n] + @inbounds for i = n:h-1 + model_agesₚ[i] = model_agesₚ[n] + end elseif n > h - model_agesₚ[h:n] .= model_agesₚ[n] + @inbounds for i = h:n + model_agesₚ[i] = model_agesₚ[n] + end end end end @@ -809,9 +813,13 @@ if model_agesₚ[h-1] == model_agesₚ[h] n = findclosestunequal(model_agesₚ, h) if n < h - model_agesₚ[n:h-1] .= model_agesₚ[n] + @inbounds for i = n:h-1 + model_agesₚ[i] = model_agesₚ[n] + end elseif n > h - model_agesₚ[h:n] .= model_agesₚ[n] + @inbounds for i = h:n + model_agesₚ[i] = model_agesₚ[n] + end end end end