Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 5 additions & 0 deletions src/core/analysis_utils.jl
Original file line number Diff line number Diff line change
Expand Up @@ -334,6 +334,11 @@ end


function analyze_parameter_estimation_problem(PEP::ParameterEstimationProblem, opts::EstimationOptions = EstimationOptions())
if !opts.nooutput
println("RNG seed: ", opts.seed)
end
Random.seed!(opts.seed)

# Extract needed values from opts
system_solver = get_solver_function(opts.system_solver)
interpolator = get_interpolator_function(opts.interpolator, opts.custom_interpolator)
Expand Down
7 changes: 7 additions & 0 deletions src/types/estimation_options.jl
Original file line number Diff line number Diff line change
Expand Up @@ -66,6 +66,10 @@ algorithm parameters, and debugging flags into a single, type-stable structure.

# Fields

## Meta-options

- `seed`: global RNG seed to be passed to `Random.seed!` (default: `42`).

## Solver and Algorithm Selection
- `system_solver::SystemSolverMethod`: Main polynomial system solver (default: `SolverRS`)
- `ode_solver`: ODE solver for simulation (default: `AutoVern9(Rodas4P())`)
Expand Down Expand Up @@ -177,6 +181,9 @@ opts = EstimationOptions(
- When debugging, enable relevant debug flags and set `nooutput=false`
"""
Base.@kwdef struct EstimationOptions
# RNG seed
seed::Int = 42

# Solver and Algorithm Selection
system_solver::SystemSolverMethod = SolverHC
ode_solver::Any = AutoVern9(Rodas4P()) # Any type due to ODE solver type complexity
Expand Down
Loading