Lines Matching refs:gradient
82 PetscCall(VecCopy(cg->unprojected_gradient, tao->gradient)); in TaoSolve_BNCG()
83 if (cg->active_idx) PetscCall(VecISSet(tao->gradient, cg->active_idx, 0.0)); in TaoSolve_BNCG()
84 PetscCall(VecNorm(tao->gradient, NORM_2, &gnorm)); in TaoSolve_BNCG()
126 if (!tao->gradient) PetscCall(VecDuplicate(tao->solution, &tao->gradient)); in TaoSetUp_BNCG()
131 if (!cg->yk) PetscCall(VecDuplicate(tao->gradient, &cg->yk)); in TaoSetUp_BNCG()
133 if (!cg->G_old) PetscCall(VecDuplicate(tao->gradient, &cg->G_old)); in TaoSetUp_BNCG()
139 if (!cg->unprojected_gradient) PetscCall(VecDuplicate(tao->gradient, &cg->unprojected_gradient)); in TaoSetUp_BNCG()
140 …if (!cg->unprojected_gradient_old) PetscCall(VecDuplicate(tao->gradient, &cg->unprojected_gradient… in TaoSetUp_BNCG()
407 PetscCall(VecAXPBY(tao->stepdirection, -scaling, 0.0, tao->gradient)); in TaoBNCGResetUpdate()
448 PetscCall(VecWAXPY(cg->yk, -1.0, cg->G_old, tao->gradient)); in TaoBNCGStepDirectionUpdate()
457 PetscCall(VecGetSize(tao->gradient, &dim)); in TaoBNCGStepDirectionUpdate()
463 PetscCall(VecGetSize(tao->gradient, &dim)); in TaoBNCGStepDirectionUpdate()
467 if (cg->diag_scaling) PetscCall(MatLMVMUpdate(cg->B, tao->solution, tao->gradient)); in TaoBNCGStepDirectionUpdate()
495 PetscCall(MatSolve(cg->B, tao->gradient, cg->g_work)); in TaoBNCGStepDirectionUpdate()
508 PetscCall(VecAXPBY(tao->stepdirection, -tau_k, 0.0, tao->gradient)); in TaoBNCGStepDirectionUpdate()
510 PetscCall(MatSolve(cg->B, tao->gradient, cg->g_work)); in TaoBNCGStepDirectionUpdate()
519 PetscCall(VecDot(cg->yk, tao->gradient, &gkp1_yk)); in TaoBNCGStepDirectionUpdate()
522 PetscCall(VecAXPBY(tao->stepdirection, -tau_k, beta, tao->gradient)); in TaoBNCGStepDirectionUpdate()
524 PetscCall(MatSolve(cg->B, tao->gradient, cg->g_work)); in TaoBNCGStepDirectionUpdate()
533 PetscCall(VecWAXPY(cg->yk, -1.0, cg->G_old, tao->gradient)); in TaoBNCGStepDirectionUpdate()
540 PetscCall(VecAXPBY(tao->stepdirection, -tau_k, beta, tao->gradient)); in TaoBNCGStepDirectionUpdate()
543 PetscCall(MatSolve(cg->B, tao->gradient, cg->g_work)); in TaoBNCGStepDirectionUpdate()
544 PetscCall(VecDot(tao->gradient, cg->g_work, &tmp)); in TaoBNCGStepDirectionUpdate()
554 PetscCall(VecDot(cg->yk, tao->gradient, &gkp1_yk)); in TaoBNCGStepDirectionUpdate()
557 PetscCall(VecAXPBY(tao->stepdirection, -tau_k, beta, tao->gradient)); in TaoBNCGStepDirectionUpdate()
560 PetscCall(MatSolve(cg->B, tao->gradient, cg->g_work)); in TaoBNCGStepDirectionUpdate()
568 PetscCall(VecWAXPY(cg->yk, -1.0, cg->G_old, tao->gradient)); in TaoBNCGStepDirectionUpdate()
573 PetscCall(VecDot(cg->yk, tao->gradient, &gkp1_yk)); in TaoBNCGStepDirectionUpdate()
577 PetscCall(VecAXPBY(tao->stepdirection, -tau_k, beta, tao->gradient)); in TaoBNCGStepDirectionUpdate()
580 PetscCall(MatSolve(cg->B, tao->gradient, cg->g_work)); in TaoBNCGStepDirectionUpdate()
592 PetscCall(VecDot(tao->stepdirection, tao->gradient, &gd)); in TaoBNCGStepDirectionUpdate()
596 PetscCall(VecAXPBY(tao->stepdirection, -tau_k, beta, tao->gradient)); in TaoBNCGStepDirectionUpdate()
599 PetscCall(MatSolve(cg->B, tao->gradient, cg->g_work)); in TaoBNCGStepDirectionUpdate()
600 PetscCall(VecDot(cg->g_work, tao->gradient, >Dg)); in TaoBNCGStepDirectionUpdate()
613 PetscCall(VecDot(tao->gradient, tao->stepdirection, &gd)); in TaoBNCGStepDirectionUpdate()
623 PetscCall(VecDot(cg->yk, tao->gradient, &gkp1_yk)); in TaoBNCGStepDirectionUpdate()
631 PetscCall(VecAXPBY(tao->stepdirection, -tau_k, beta, tao->gradient)); in TaoBNCGStepDirectionUpdate()
637 PetscCall(MatSolve(cg->B, tao->gradient, cg->g_work)); in TaoBNCGStepDirectionUpdate()
661 PetscCall(VecDot(tao->gradient, tao->stepdirection, &gd)); in TaoBNCGStepDirectionUpdate()
667 PetscCall(VecDot(cg->yk, tao->gradient, &gkp1_yk)); in TaoBNCGStepDirectionUpdate()
674 PetscCall(VecAXPBYPCZ(tao->stepdirection, -tau_k, 0.0, beta, tao->gradient, cg->yk)); in TaoBNCGStepDirectionUpdate()
679 PetscCall(MatSolve(cg->B, tao->gradient, cg->g_work)); in TaoBNCGStepDirectionUpdate()
703 PetscCall(VecDot(tao->gradient, tao->stepdirection, &gd)); in TaoBNCGStepDirectionUpdate()
713 PetscCall(VecDot(cg->yk, tao->gradient, &gkp1_yk)); in TaoBNCGStepDirectionUpdate()
727 … PetscCall(VecAXPBYPCZ(tao->stepdirection, -tau_k, gamma * tau_k, beta, tao->gradient, cg->yk)); in TaoBNCGStepDirectionUpdate()
732 PetscCall(MatSolve(cg->B, tao->gradient, cg->g_work)); in TaoBNCGStepDirectionUpdate()
769 PetscCall(VecDot(tao->gradient, tao->stepdirection, &gd)); in TaoBNCGStepDirectionUpdate()
776 PetscCall(VecDot(cg->yk, tao->gradient, &gkp1_yk)); in TaoBNCGStepDirectionUpdate()
781 … PetscCall(VecAXPBYPCZ(tao->stepdirection, -tau_k, tmp * tau_k, beta, tao->gradient, cg->yk)); in TaoBNCGStepDirectionUpdate()
784 PetscCall(MatSolve(cg->B, tao->gradient, cg->g_work)); in TaoBNCGStepDirectionUpdate()
798 PetscCall(VecDot(tao->gradient, tao->stepdirection, &gd)); in TaoBNCGStepDirectionUpdate()
807 PetscCall(VecDot(cg->yk, tao->gradient, &gkp1_yk)); in TaoBNCGStepDirectionUpdate()
812 PetscCall(VecAXPBYPCZ(tao->stepdirection, -tau_k, tmp, beta, tao->gradient, cg->yk)); in TaoBNCGStepDirectionUpdate()
815 PetscCall(MatSolve(cg->B, tao->gradient, cg->g_work)); in TaoBNCGStepDirectionUpdate()
829 PetscCall(VecDot(tao->gradient, tao->stepdirection, &gd)); in TaoBNCGStepDirectionUpdate()
839 PetscCall(VecDot(cg->yk, tao->gradient, &gkp1_yk)); in TaoBNCGStepDirectionUpdate()
846 PetscCall(VecAXPBYPCZ(tao->stepdirection, -tau_k, tmp, beta, tao->gradient, cg->yk)); in TaoBNCGStepDirectionUpdate()
849 PetscCall(MatSolve(cg->B, tao->gradient, cg->g_work)); in TaoBNCGStepDirectionUpdate()
881 PetscCall(VecCopy(tao->gradient, cg->G_old)); in TaoBNCGConductIteration()
905 PetscCall(VecCopy(cg->G_old, tao->gradient)); in TaoBNCGConductIteration()
968 PetscCall(VecCopy(cg->unprojected_gradient, tao->gradient)); in TaoBNCGConductIteration()
969 if (cg->active_idx) PetscCall(VecISSet(tao->gradient, cg->active_idx, 0.0)); in TaoBNCGConductIteration()
970 PetscCall(VecNorm(tao->gradient, NORM_2, &gnorm)); in TaoBNCGConductIteration()
994 PetscCall(VecDot(tao->gradient, tao->stepdirection, &gd)); in TaoBNCGConductIteration()