n1qn1c
Port of the Scilab n1qn1 Module for Unconstrained BFGS Optimization
A Fortran-descended optimizer got thread-safe, then found two flags that never worked.
◆Recent moves
- 4mo ago
restart and assign flags fixed; sanitizer issues cleared
Restates the thread-safety work from the prior release and adds what the audit turned up: restart = TRUE never actually set mode to 3, assign = TRUE never stored the compressed Hessian because of a wrong field name, EvalBase lacked a virtual destructor making deletion through a base pointer undefined, and bad inputs leaked callback objects. The gcc-asan and valgrind fixes CRAN requested land here too.
View source ↗ - 4mo ago
Global state converted to thread_local
The thread-safety conversion itself: global state becomes thread_local, static is stripped from local variables in the Fortran-translated C, integer overflow guards go in, and the R callback wrappers stop leaking. Necessary groundwork for a solver called from a framework that fits models in parallel.
View source ↗ - 1y ago
Function-pointer API decouples nlmixr2est releases
A non-binary function pointer interface added specifically so nlmixr2est no longer needs resubmission when this package changes. A packaging concern rather than a numerical one, but it is what lets the safety work above ship without dragging the dependent through CRAN.
View source ↗