Lines Matching refs:bnk

6   TAO_BNK  *bnk  = (TAO_BNK *)tao->data;
7 TAO_BQNK *bqnk = (TAO_BQNK *)bnk->ctx;
20 gnorm2 = bnk->gnorm * bnk->gnorm;
22 if (bnk->f == 0.0) {
25 delta = 2.0 * PetscAbsScalar(bnk->f) / gnorm2;
29 PetscCall(MatLMVMUpdate(tao->hessian, tao->solution, bnk->unprojected_gradient));
32 PetscCall(MatDestroy(&bnk->H_inactive));
33 if (bnk->active_idx) {
34 PetscCall(MatCreateSubMatrixVirtual(tao->hessian, bnk->inactive_idx, bnk->inactive_idx, &bnk->H_inactive));
35 PetscCall(PCLMVMSetIS(bqnk->pc, bnk->inactive_idx));
38 bnk->H_inactive = tao->hessian;
41 PetscCall(MatDestroy(&bnk->Hpre_inactive));
42 PetscCall(PetscObjectReference((PetscObject)bnk->H_inactive));
43 bnk->Hpre_inactive = bnk->H_inactive;
49 TAO_BNK *bnk = (TAO_BNK *)tao->data;
50 TAO_BQNK *bqnk = (TAO_BQNK *)bnk->ctx;
57 PetscCall(MatLMVMUpdate(bqnk->B, tao->solution, bnk->unprojected_gradient));
64 TAO_BNK *bnk = (TAO_BNK *)tao->data;
65 TAO_BQNK *bqnk = (TAO_BQNK *)bnk->ctx;
88 TAO_BNK *bnk = (TAO_BNK *)tao->data;
89 TAO_BQNK *bqnk = (TAO_BQNK *)bnk->ctx;
98 PetscCall(MatLMVMAllocate(bqnk->B, tao->solution, bnk->unprojected_gradient));
111 TAO_BNK *bnk = (TAO_BNK *)tao->data;
112 TAO_BQNK *bqnk = (TAO_BQNK *)bnk->ctx;
117 if (bnk->init_type == BNK_INIT_INTERPOLATION) bnk->init_type = BNK_INIT_DIRECTION;
128 TAO_BNK *bnk = (TAO_BNK *)tao->data;
129 TAO_BQNK *bqnk = (TAO_BQNK *)bnk->ctx;
145 TAO_BNK *bnk = (TAO_BNK *)tao->data;
146 TAO_BQNK *bqnk = (TAO_BQNK *)bnk->ctx;
149 PetscCall(MatDestroy(&bnk->Hpre_inactive));
150 PetscCall(MatDestroy(&bnk->H_inactive));
152 PetscCall(PetscFree(bnk->ctx));
159 TAO_BNK *bnk;
170 bnk = (TAO_BNK *)tao->data;
171 bnk->computehessian = TaoBQNKComputeHessian;
172 bnk->computestep = TaoBQNKComputeStep;
173 bnk->init_type = BNK_INIT_DIRECTION;
176 bnk->ctx = (void *)bqnk;
201 TAO_BNK *bnk = (TAO_BNK *)tao->data;
202 TAO_BQNK *bqnk = (TAO_BQNK *)bnk->ctx;
229 TAO_BNK *bnk = (TAO_BNK *)tao->data;
230 TAO_BQNK *bqnk = (TAO_BQNK *)bnk->ctx;