JuliaSmoothOptimizers / JuliaSmoothOptimizers/PartitionedStructures.jl
Partitioned matrix with diverse element matrices
- Dominant language
- Julia
- Stars
- 10
- Forks
- 2
- PR merge metrics
- No merged PRs in 30d
Description
Implement a "super" partitioned matrix, which is not affiliate with only one type of element matrix (ex: PBFGS, PLBFGS, PLSR1...).
The structure would conciliate several element hessian approximations $\hat{B}_i$ being either a :
- dense matrix;
- linear operator;
- diagonal QN operator;
- ...
It should also integrate the linear contributions (empty matrices), to fit the partitioned structure of a PartitionedVector.
The partitioned matrix vector product must be adapted.
Here is a sketch of the desired structure:
```julia
mutable struct SuperPartitionedMatrix{T<:Number}
dense_elements::Vector{DenseMatrixElement{T}}
lbfgs_elements::Vector{LBFGSElement{T}}
lsr1_elements::Vector{LSR1Element{T}}
diag_qn_elements::Vector{DiagQNElements{T}}
redirection::Vector{Tuple{Symbol, Int}}
...
end
```
where `length(redirection) == N` and `redirection[i]` returns `symbol, index` linked to its nature (`dense, lbfgs, lsr1, diag_qn`) and its position (`index`) in the corresponding collection of element matrix contributions.
There is no mechanism similar to `redirection` right now.
Contributor guide
Assessment
This issue has not been assessed yet.