Diagnostics API
Timer Outputs
These functions are not exported since the names have a potential for conflict.
NonlinearSolveBase.enable_timer_outputs — Functionenable_timer_outputs()Enable TimerOutput for all NonlinearSolve algorithms. This is useful for debugging but has some overhead, so it is disabled by default.
NonlinearSolveBase.disable_timer_outputs — Functiondisable_timer_outputs()Disable TimerOutput for all NonlinearSolve algorithms. This should be used when NonlinearSolve is being used in performance-critical code.
NonlinearSolveBase.@static_timeit — Macro@static_timeit to name exprLike TimerOutputs.@timeit_debug but has zero overhead if TimerOutputs is disabled via NonlinearSolveBase.disable_timer_outputs().
Tracing API
NonlinearSolveBase.TraceAll — FunctionTraceAll(freq)
TraceAll(; print_frequency = 1, store_frequency::Int = 1)TraceWithJacobianConditionNumber + Store the Jacobian, u, f(u), and δu.
See also TraceMinimal and TraceWithJacobianConditionNumber.
NonlinearSolveBase.TraceWithJacobianConditionNumber — FunctionTraceWithJacobianConditionNumber(freq)
TraceWithJacobianConditionNumber(; print_frequency = 1, store_frequency::Int = 1)TraceMinimal + Print the Condition Number of the Jacobian.
See also TraceMinimal and TraceAll.
NonlinearSolveBase.TraceMinimal — FunctionTraceMinimal(freq)
TraceMinimal(; print_frequency = 1, store_frequency::Int = 1)Trace Minimal Information
- Iteration Number
- f(u) inf-norm
- Step 2-norm
See also TraceWithJacobianConditionNumber and TraceAll.