We could add a new noisetype based on IntrinsicTimescales.jl
struct IntrinsicNoise <: AbstractNoise
noiselevel
sfreq
tau
end
function UnfoldSim.simulate_noise(rng, t::IntrinsicNoise, n::Int)
noise = generate_ou_process(t.tau, 1, 1/t.sfreq, n/t.sfreq, 1)[1,:]
return t.noiselevel .* noise
end
This is similar to ExponentialNoise, but I think a better parameterization. Side-effect is, it requires many dependencies, so we could add it as an extension; Problem then is only, that the type has to be defined within UnfoldSim proper.
Alternatively, we use it as a demo to include other noisetypes, with the sideeffect of not being very discoverable.
Let's first include #129 though, the new exponential implementation.
This issue depends on duodenum96/IntrinsicTimescales.jl#25 being resolved
We could add a new noisetype based on IntrinsicTimescales.jl
This is similar to
ExponentialNoise, but I think a better parameterization. Side-effect is, it requires many dependencies, so we could add it as an extension; Problem then is only, that the type has to be defined within UnfoldSim proper.Alternatively, we use it as a demo to include other noisetypes, with the sideeffect of not being very discoverable.
Let's first include #129 though, the new exponential implementation.
This issue depends on duodenum96/IntrinsicTimescales.jl#25 being resolved