\(\newcommand{\B}[1]{ {\bf #1} }\) \(\newcommand{\R}[1]{ {\rm #1} }\)
py_hes_sparsity#
View page sourceHessian Sparsity Patterns#
Syntax#
.for_hes_sparsity ( select_domain , select_range , pattern_out )f.rev_hes_sparsity ( select_domain , select_range , pattern_out )
Purpose#
We use \(F : \B{R}^n \rightarrow \B{R}^m\) to denote the function corresponding to the operation sequence stored in f . Fix a diagonal matrix \(D \in \B{R}^{n \times n}\), fix a vector \(r \in \B{R}^m\), and define
Given a sparsity pattern for \(D\) and \(r\), these routines compute a sparsity pattern for \(H(x)\).
x#
Note that a sparsity pattern for \(H(x)\) corresponds to the operation sequence stored in f and does not depend on the argument x .
f#
This object must have been returned by a previous call to the python d_fun constructor.
select_domain#
The argument is a numpy vector with bool elements.
It has size n and is a sparsity pattern for the diagonal of
\(D\); i.e., select_domain [ j ] is true if and only if
\(D_{j,j}\) is possibly non-zero.
select_range#
The argument is a numpy vector with bool elements.
It has size m and is a sparsity pattern for the vector
\(r\); i.e., select_range [ i ] is true if and only if
\(r_i\) is possibly non-zero.
pattern_out#
This argument must have be a pattern
returned by the sparse_rc constructor.
This input value of pattern_out does not matter.
Upon return pattern_out is a sparsity pattern for
\(H(x)\).
Sparsity for Component Wise Hessian#
Suppose that \(D\) is the identity matrix, and only the i-th component of r is possibly non-zero. In this case, pattern_out is a sparsity pattern for \(F_i^{(2)} ( x )\).