Driver
BlockOpt.Driver — TypeDriver
An immutable structure specifying a simulation's preliminary secant update flag (pflag), the $Sₖ₊₁$ update formula, and the Quasi-Newton update formula used. If keyword arguments aren't provided to a drivers' construction, then the default S_update, pflag, and QN_updates are assigned. A Driver contains a mutable DriverOptions instance, which allows for forwarding of the options interface to the Driver interface.
See S_update, QN_update, and pflag for more on keyword arguments.
Interface
The delegation design pattern at play allows us to forward the DriverOptions interface to the Driver. In addition to the documented methods, see the Options interface section.
BlockOpt.QN_update — MethodQN_update(d::Driver)The QN update formula of Driver d.
Values: SR1, PSB
BlockOpt.SR1 — FunctionSR1Returns the algebraically minimal SR1 inverse Quasi-Newton block update, where $δ$ is the Moore-Penrose pseudoinverse relative tolerance used in pinv.
See: Algorithm $4.2.$
BlockOpt.PSB — FunctionPSBPowell-Symmetric-Broyden generalized Quasi-Newton block update, where $δ$ is the Moore-Penrose pseudoinverse relative tolerance used in pinv.
See: Algorithm $4.3.$
BlockOpt.S_update — MethodS_update(d::Driver)The supplemental sample direction update formula of Driver d.
Values: S_update_a, S_update_b, S_update_c, S_update_d, S_update_e, S_update_f
BlockOpt.S_update_a — FunctionS_update_aRandom set of orthonormal sample directions.
See: Equation (6.1.a).
BlockOpt.S_update_b — FunctionS_update_bRandom set of sample directions orthogonal to the previous sample space given by input Sₖ.
See: Equation (6.1.b).
BlockOpt.S_update_c — FunctionS_update_cAttempts to guide the algorithm in accurately resolving the eigenspace associated with the larger Hessian eigenvalues.
See: Equation (6.1.c).
BlockOpt.S_update_d — FunctionS_update_dA variant of (6.1.a) that includes approximate curvature information along the previously chosen step.
See: Equation (6.1.d).
BlockOpt.S_update_e — FunctionS_update_eA variant of (6.1.b) that includes approximate curvature information along the previously chosen step.
See: Equation (6.1.e).
BlockOpt.S_update_f — FunctionS_update_fA variant of (6.1c) that includes approximate curvature information along the previously chosen step.
See: Equation (6.1.f).
BlockOpt.pflag — Methodpflag(d::Driver)The preliminary secant QN update flag of driver d wraping a boolean.
Options true, false