You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
* Add SteadyState.RestartSmallValuesCallback
Provides a callback function with signature
rsvc(state, tmodel, deltat, model, modeldata)
that modifies `state` to reset variables with values < `modify_threshold`
to value `modify_val`, hence restarting the Newton solve from
`modify_val` on the next iteration.
* Add CheckValuesCallback
Provides a callback function with signature
cvc(state, tmodel, deltat, model, modeldata)::Bool
that checks variables have `check_min_threshold` < values < `check_max_threshold`.
* Generalize CheckValuesCallback for use with NLsolve
* Add SolverFunctions.StepClampMultAll! callback
Requires https://github.com/PALEOtoolkit/NLsolve.jl newton_robustness branch,
with new option to NLsolve:
- apply_step! = SolverFunctions.StepClampMultAll!(...)
* Add sparse linear solvers adapted to NLsolve interface
SolverFunctions.SparseLinsolveUMFPACK
SolverFunctions.SparseLinsolveSparspak64x2
* SparseLinsolveSparspak64x2 reuse symbolic factorization
This also reveals a Julia issue (JuliaSparse/SparseArrays.jl#454),
where
MultiFloats.Float64x2.(A)
doesn't preserve structural nonzeros
* documentation fixes
* doc fix
* doc update
Update: another surprising consequence of #190 that led to hours of debugging...
SparseMatrixCSC Float64.(A) drops structural nonzeros, but float(A) doesn't:
The text was updated successfully, but these errors were encountered: