Memoizer
Parameters for memoizing wrappers.
The memoizers store and reuse previously computed results to speed up the fixed-point iterations in OBC and Lyapunov solvers.
See the section on open boundary conditions in the user guide for more information on the
mode#
The memoization mode determines when to reuse cached results.
"auto": Automatically decides whether to use memoization based on the specified tolerances. This will only lead to iteration savings when all ranks agree to memoize. This incurs a small amount of communication overhead."force": Always use memoization on all ranks."force-after-first": Use memoization after the first SCBA iteration."off": Never use memoization.
num_ref_iterations#
The number of fixed-point iterations to perform.
This must be greater than or equal to 2. The first iteration is used to estimate the residuals, and a second fixed-point iteration is performed to get the residuals after the memoization is applied.
relative_tol#
The relative tolerance on fixed-point residuals for memoization.
Note
Only used if mode is set to "auto".
absolute_tol#
The absolute tolerance on fixed-point residuals for memoization.
Note
Only used if mode is set to "auto".
warning_threshold#
The threshold for issuing a memoization warning.
If the memoized functions residual is above this value after the fixed-point iterations, a warning is issued. This is to alert the user that the memoization may not be accurate enough and that the results may be unreliable.
agreement_threshold#
The threshold for agreement between ranks for memoization.
The default value of 0.999 means 99.9% of the ranks must agree to use memoization.
Note
Only used if mode is set to "auto".