# Summary of options

## Basic options

`D::Int`

is the dimension of the problem.**This option must always be provided by the user**.`N::Int = 20`

is the number of particles.`M::Int = 1`

is the number of ensembles.`Δt::Real = 0.1`

is the time step.`σ::Real = 1`

is the noise strengh.`λ::Real = 1`

is the drift strengh.`α::Real = 10`

is the exponential weight parameter.

## Initialisation options

`initialisation = :normal`

is the default sampling method. You can change it to`initialisation = :uniform`

in order to sample uniformly from a hyperbox around`initial_guess`

.`initial_guess::Union{Real,AbstractVector}`

provides an initial guess for the global minimiser.`initial_mean::Union{Real,AbstractVector}`

customises the mean of the initial distribution of particles. This is an alias for`initial_guess`

.`initial_variance::Union{Real,AbstractVector,AbstractMatrix}`

customises the mean of the initial distribution of particles (if the sampling is normal). It has the alias`initial_covariance`

.`initial_radius::Union{Real,AbstractVector}`

specifies the size of the hyperbox (if the sampling is uniform). You specify`initial_diameter`

instead.`initial_particles::AbstractArray{<:Real,3}`

specifies the initial position of the particles.

## Stopping options

See Stopping criteria.

`energy_threshold::Real = -Inf`

is the stopping threshold for the value of`f`

.`energy_tolerance::Real = 1e-8`

is the stopping tolerance for the value of`f`

.`max_evaluations::Real = Inf`

is the maximum number of evaluations of`f`

.`max_iterations::Real = 1000`

is the maximum number of iterations.`max_time::Real = Inf`

is the maximal solution time (the corresponding SDE is solved from time`0`

until time`max_time`

).

## Advanced options

`noise = :IsotropicNoise`

controls the type of noise, see Noise types.`benchmark::Bool = false`

controls the benchmark behaviour.`benchmark = true`

runs the`ParticleDynamic`

on benchmark mode, see Performance and benchmarking.`extended_output::Bool = false`

controls the output, and by default returns only the computed minimiser.`extended_output = true`

returns additional information, see Extended output.`parallelisation = :NoParallelisation`

controls the parallelisation of the`minimise`

routine, switched off by default.`parallelisation=:EnsembleParallelisation`

enables parallelisation, see Parallelisation.`verbosity::Int = 0`

is the verbosity level.`verbosity = 0`

produces no output to console.`verbosity = 1`

produces some output.

## Consensus-based sampling options

`CBS_mode = :sampling`

controls the mode of consensus-based sampling. If you want to perform a minimisation, pass`CBS_mode = :minimise`

instead.`root = :SymmetricRoot`

controls the type of root-covariance matrix, see Root-covariance types.