Skip to content

Commit

Permalink
Merge pull request #902 from jClugstor/alias_api
Browse files Browse the repository at this point in the history
Add arguments for alias_noise and alias_jumps for RODEs, SDEs, SDDEs
  • Loading branch information
ChrisRackauckas authored Jan 8, 2025
2 parents 901e5c7 + 2aa2d39 commit eaebe6e
Show file tree
Hide file tree
Showing 3 changed files with 20 additions and 12 deletions.
12 changes: 8 additions & 4 deletions src/problems/rode_problems.jl
Original file line number Diff line number Diff line change
Expand Up @@ -106,6 +106,8 @@ When a keyword argument is `nothing`, the default behaviour of the solver is use
* `alias_u0::Union{Bool, Nothing}`: alias the u0 array. Defaults to false .
* `alias_du0::Union{Bool, Nothing}`: alias the du0 array for DAEs. Defaults to false.
* `alias_tstops::Union{Bool, Nothing}`: alias the tstops array
* `alias_noise::Union{Bool,Nothing}`: alias the noise process
* `alias_jumps::Union{Bool, Nothing}`: alias jump process if wrapped in a JumpProcess
* `alias::Union{Bool, Nothing}`: sets all fields of the `RODEAliasSpecifier` to `alias`
"""
Expand All @@ -116,15 +118,17 @@ struct RODEAliasSpecifier <: AbstractAliasSpecifier
alias_u0::Union{Bool, Nothing}
alias_du0::Union{Bool, Nothing}
alias_tstops::Union{Bool, Nothing}
alias_noise::Union{Bool, Nothing}
alias_jumps::Union{Bool, Nothing}

function RODEAliasSpecifier(; alias_p = nothing, alias_f = nothing, alias_u0 = nothing,
alias_du0 = nothing, alias_tstops = nothing, alias = nothing)
alias_du0 = nothing, alias_tstops = nothing, alias_noise = nothing, alias_jumps = nothing, alias = nothing)
if alias == true
new(true, true, true, true, true)
new(true, true, true, true, true, true, true)
elseif alias == false
new(false, false, false, false, false)
new(false, false, false, false, false, false, false)
elseif isnothing(alias)
new(alias_p, alias_f, alias_u0, alias_du0, alias_tstops)
new(alias_p, alias_f, alias_u0, alias_du0, alias_tstops, alias_noise, alias_jumps)
end
end
end
Expand Down
10 changes: 6 additions & 4 deletions src/problems/sdde_problems.jl
Original file line number Diff line number Diff line change
Expand Up @@ -187,6 +187,7 @@ When a keyword argument is `nothing`, the default behaviour of the solver is use
* `alias_f::Union{Bool, Nothing}`
* `alias_u0::Union{Bool, Nothing}`: alias the u0 array. Defaults to false .
* `alias_tstops::Union{Bool, Nothing}`: alias the tstops array
* `alias_jumps::Union{Bool, Nothing}`: alias jump process if wrapped in a JumpProcess
* `alias::Union{Bool, Nothing}`: sets all fields of the `SDDEAliasSpecifier` to `alias`
"""
Expand All @@ -195,15 +196,16 @@ struct SDDEAliasSpecifier
alias_f::Union{Bool, Nothing}
alias_u0::Union{Bool, Nothing}
alias_tstops::Union{Bool, Nothing}
alias_jumps::Union{Bool, Nothing}

function SDDEAliasSpecifier(; alias_p = nothing, alias_f = nothing, alias_u0 = nothing,
alias_du0 = nothing, alias_tstops = nothing, alias = nothing)
alias_du0 = nothing, alias_tstops = nothing, alias_jumps = nothing, alias = nothing)
if alias == true
new(true, true, true, true)
new(true, true, true, true, true)
elseif alias == false
new(false, false, false, false)
new(false, false, false, false, false)
elseif isnothing(alias)
new(alias_p, alias_f, alias_u0, alias_tstops)
new(alias_p, alias_f, alias_u0, alias_tstops, alias_jumps)
end
end
end
Expand Down
10 changes: 6 additions & 4 deletions src/problems/sde_problems.jl
Original file line number Diff line number Diff line change
Expand Up @@ -229,6 +229,7 @@ When a keyword argument is `nothing`, the default behaviour of the solver is use
* `alias_f::Union{Bool, Nothing}`
* `alias_u0::Union{Bool, Nothing}`: alias the u0 array. Defaults to false .
* `alias_tstops::Union{Bool, Nothing}`: alias the tstops array
* `alias_jumps::Union{Bool, Nothing}`: alias jump process if wrapped in a JumpProcess
* `alias::Union{Bool, Nothing}`: sets all fields of the `SDEAliasSpecifier` to `alias`
"""
Expand All @@ -237,15 +238,16 @@ struct SDEAliasSpecifier <: AbstractAliasSpecifier
alias_f::Union{Bool, Nothing}
alias_u0::Union{Bool, Nothing}
alias_tstops::Union{Bool, Nothing}
alias_jumps::Union{Bool,Nothing}

function SDEAliasSpecifier(; alias_p = nothing, alias_f = nothing, alias_u0 = nothing,
alias_du0 = nothing, alias_tstops = nothing, alias = nothing)
alias_du0 = nothing, alias_tstops = nothing, alias_jumps = nothing, alias = nothing)
if alias == true
new(true, true, true, true)
new(true, true, true, true, true)
elseif alias == false
new(false, false, false, false)
new(false, false, false, false, false)
elseif isnothing(alias)
new(alias_p, alias_f, alias_u0, alias_tstops)
new(alias_p, alias_f, alias_u0, alias_tstops, alias_jumps)
end
end
end
Expand Down

0 comments on commit eaebe6e

Please sign in to comment.