I’m working with a structure that has a Distribution field. However I would like it to be able to also take a fixed value without the need to make a Union{Distribution,Real}
field type. I think the Dirac distribution does that ? But unless I’m mistaken it is not present in the package. Is there an equivalent whose name I’m not aware of ?
I don’t really understand your question but if you’re asking for a fixed sample, all you need to do is set the seed to the same value every time before sampling:
julia> using Random, Distributions
julia> Random.seed!(123) # Setting the seed
There doesn’t seem to be, but it could certainly be added. I would file an issue on the repo.
2 Likes
If I understand your question correctly, I think you can define your own custom distribution type:
import Distributions: ContinuousUnivariateDistribution
import Base: rand
struct Fixed{T<:Real} <: ContinuousUnivariateDistribution
x::T
end
function rand(dist::Fixed)
return dist.x
end
dist = Fixed(1.0)
Example:
julia> rand(dist)
1.0
2 Likes
Yes that’s the sort of behavior I’m looking for. There’s no native equivalent apparently says @StefanKarpinski , that’s what I wanted to know. I’ll ask on the repo if this could be added.