A three-way bridge between ExpressionTreeForge.jl, PartitionedStructures.jl and PartiallySeparableSolvers.jl
Author JuliaSmoothOptimizers
10 Stars
Updated Last
10 Months Ago
Started In
May 2020

PartiallySeparableNLPModels: Exploiting the partially-separable structure to define partitioned quasi-Newton NLPModels

Documentation Linux/macOS/Windows/FreeBSD Coverage DOI
docs-stable docs-dev build-gh build-cirrus codecov doi

How to cite

If you use PartiallySeparableNLPModels.jl in your work, please cite using the format given in CITATION.bib.


The purpose of PartiallySeparableNLPModels.jl is to define automatically partially-separable NLPModels. Moreover, it defines several partitioned quasi-Newton models which are meant to be minimized through solvers from JSOSolvers.jl


Julia ≥ 1.6.

How to install

pkg> add PartiallySeparableNLPModels
pkg> test PartiallySeparableNLPModels

How to use

See the tutorial.


The module uses ExpressionTreeForge.jl to detect the partially-separable structure, PartitionedStructures.jl to allocate partitioned quasi-Newton approximations and PartitionedVectors.jl to fit the AbstractVector interface mandatory for AbstractNLPModel methods.

Bug reports and discussions

If you think you found a bug, feel free to open an issue. Focused suggestions and requests can also be opened as issues. Before opening a pull request, start an issue or a discussion on the topic, please.

If you want to ask a question not suited for a bug report, feel free to start a discussion here. This forum is for general discussion about this repository and the JuliaSmoothOptimizers, so questions about any of our packages are welcome.