Lines Matching refs:H
113 PetscErrorCode TaoDefaultComputeHessian(Tao tao, Vec V, Mat H, Mat B, void *dummy) in TaoDefaultComputeHessian() argument
120 PetscCall(SNESCreate(PetscObjectComm((PetscObject)H), &snes)); in TaoDefaultComputeHessian()
125 if (H) { in TaoDefaultComputeHessian()
130 PetscCall(MatSetSizes(H, n, n, N, N)); in TaoDefaultComputeHessian()
131 PetscCall(MatSetUp(H)); in TaoDefaultComputeHessian()
133 if (B && B != H) { in TaoDefaultComputeHessian()
141 PetscCall(SNESComputeJacobianDefault(snes, V, H, B, NULL)); in TaoDefaultComputeHessian()
164 PetscErrorCode TaoDefaultComputeHessianColor(Tao tao, Vec V, Mat H, Mat B, PetscCtx ctx) in TaoDefaultComputeHessianColor() argument
172 if (H != B) { in TaoDefaultComputeHessianColor()
173 PetscCall(MatAssemblyBegin(H, MAT_FINAL_ASSEMBLY)); in TaoDefaultComputeHessianColor()
174 PetscCall(MatAssemblyEnd(H, MAT_FINAL_ASSEMBLY)); in TaoDefaultComputeHessianColor()
179 PetscErrorCode TaoDefaultComputeHessianMFFD(Tao tao, Vec X, Mat H, Mat B, PetscCtx ctx) in TaoDefaultComputeHessianMFFD() argument
185 …PetscCheck(!B || B == H, PetscObjectComm((PetscObject)tao), PETSC_ERR_SUP, "Preconditioning Hessia… in TaoDefaultComputeHessianMFFD()
186 PetscCall(MatAssembled(H, &assembled)); in TaoDefaultComputeHessianMFFD()
190 PetscCall(MatSetSizes(H, n, n, N, N)); in TaoDefaultComputeHessianMFFD()
191 PetscCall(MatSetType(H, MATMFFD)); in TaoDefaultComputeHessianMFFD()
192 PetscCall(MatSetUp(H)); in TaoDefaultComputeHessianMFFD()
193 PetscCall(MatMFFDSetFunction(H, (PetscErrorCode (*)(void *, Vec, Vec))TaoComputeGradient, tao)); in TaoDefaultComputeHessianMFFD()
195 PetscCall(MatMFFDSetBase(H, X, NULL)); in TaoDefaultComputeHessianMFFD()
196 PetscCall(MatAssemblyBegin(H, MAT_FINAL_ASSEMBLY)); in TaoDefaultComputeHessianMFFD()
197 PetscCall(MatAssemblyEnd(H, MAT_FINAL_ASSEMBLY)); in TaoDefaultComputeHessianMFFD()