| /petsc/src/ksp/ksp/utils/lmvm/ |
| H A D | lmvmimpl.c | 55 Mat_LMVM *lmvm = (Mat_LMVM *)B->data; in MatReset_LMVM() local 58 lmvm->k = 0; in MatReset_LMVM() 59 lmvm->prev_set = PETSC_FALSE; in MatReset_LMVM() 60 lmvm->shift = 0.0; in MatReset_LMVM() 62 for (PetscInt i = 0; i < LMBASIS_END; i++) PetscCall(LMBasisDestroy(&lmvm->basis[i])); in MatReset_LMVM() 65 … for (PetscInt j = 0; j < LMBASIS_END; j++) PetscCall(LMProductsDestroy(&lmvm->products[k][i][j])); in MatReset_LMVM() 70 for (PetscInt i = 0; i < LMBASIS_END; i++) PetscCall(LMBasisReset(lmvm->basis[i])); in MatReset_LMVM() 73 … for (PetscInt j = 0; j < LMBASIS_END; j++) PetscCall(LMProductsReset(lmvm->products[k][i][j])); in MatReset_LMVM() 79 PetscCall(VecDestroy(&lmvm->Xprev)); in MatReset_LMVM() 80 PetscCall(VecDestroy(&lmvm->Fprev)); in MatReset_LMVM() [all …]
|
| H A D | lmvmutils.c | 32 Mat_LMVM *lmvm; in MatLMVMUpdate() local 52 lmvm = (Mat_LMVM *)B->data; in MatLMVMUpdate() 53 PetscCall(MatLMVMUpdate(lmvm->J0, X, F)); in MatLMVMUpdate() 54 PetscCall((*lmvm->ops->update)(B, X, F)); in MatLMVMUpdate() 79 Mat_LMVM *lmvm = (Mat_LMVM *)B->data; in MatLMVMCreateJ0KSP() local 84 PetscCall(KSPSetOperators(*ksp, lmvm->J0, lmvm->J0)); in MatLMVMCreateJ0KSP() 94 Mat_LMVM *lmvm = (Mat_LMVM *)B->data; in MatLMVMCreateJ0KSP_ExactInverse() local 103 lmvm->disable_ksp_viewers = PETSC_TRUE; in MatLMVMCreateJ0KSP_ExactInverse() 120 Mat_LMVM *lmvm; in MatLMVMClearJ0() local 127 lmvm = (Mat_LMVM *)B->data; in MatLMVMClearJ0() [all …]
|
| /petsc/src/ksp/ksp/utils/lmvm/diagbrdn/ |
| H A D | diagbrdn.c | 6 Mat_LMVM *lmvm = (Mat_LMVM *)B->data; in MatSolve_DiagBrdn() local 9 PetscCall(MatSolve(lmvm->J0, F, dX)); in MatSolve_DiagBrdn() 15 Mat_LMVM *lmvm = (Mat_LMVM *)B->data; in MatMult_DiagBrdn() local 18 PetscCall(MatMult(lmvm->J0, X, Z)); in MatMult_DiagBrdn() 24 Mat_LMVM *lmvm = (Mat_LMVM *)B->data; in MatUpdate_DiagBrdn() local 27 if (!lmvm->m) PetscFunctionReturn(PETSC_SUCCESS); in MatUpdate_DiagBrdn() 28 if (lmvm->prev_set) { in MatUpdate_DiagBrdn() 29 SymBroydenRescale ldb = (SymBroydenRescale)lmvm->ctx; in MatUpdate_DiagBrdn() 36 PetscCall(VecAYPX(lmvm->Xprev, -1.0, X)); in MatUpdate_DiagBrdn() 37 PetscCall(VecAYPX(lmvm->Fprev, -1.0, F)); in MatUpdate_DiagBrdn() [all …]
|
| /petsc/src/ksp/ksp/utils/lmvm/symbrdn/ |
| H A D | symbadbrdn.c | 5 Mat_LMVM *lmvm = (Mat_LMVM *)B->data; in MatMult_LMVMSymBadBrdn_Recursive() local 6 Mat_SymBrdn *lsb = (Mat_SymBrdn *)lmvm->ctx; in MatMult_LMVMSymBadBrdn_Recursive() 22 Mat_LMVM *lmvm = (Mat_LMVM *)B->data; in MatSolve_LMVMSymBadBrdn_Recursive() local 23 Mat_SymBrdn *lsb = (Mat_SymBrdn *)lmvm->ctx; in MatSolve_LMVMSymBadBrdn_Recursive() 39 Mat_LMVM *lmvm = (Mat_LMVM *)B->data; in MatMult_LMVMSymBadBrdn_CompactDense() local 40 Mat_SymBrdn *lsb = (Mat_SymBrdn *)lmvm->ctx; in MatMult_LMVMSymBadBrdn_CompactDense() 56 Mat_LMVM *lmvm = (Mat_LMVM *)B->data; in MatSolve_LMVMSymBadBrdn_CompactDense() local 57 Mat_SymBrdn *lsb = (Mat_SymBrdn *)lmvm->ctx; in MatSolve_LMVMSymBadBrdn_CompactDense() 73 Mat_LMVM *lmvm = (Mat_LMVM *)B->data; in MatLMVMSetMultAlgorithm_SymBadBrdn() local 76 switch (lmvm->mult_alg) { in MatLMVMSetMultAlgorithm_SymBadBrdn() [all …]
|
| H A D | symbrdn.c | 30 Mat_LMVM *lmvm = (Mat_LMVM *)B->data; in SymBroydenKernel_Recursive_Inner() local 31 Mat_SymBrdn *lsb = (Mat_SymBrdn *)lmvm->ctx; in SymBroydenKernel_Recursive_Inner() 63 Mat_LMVM *lmvm = (Mat_LMVM *)B->data; in MatLMVMSymBroydenGetConvexFactor() local 64 Mat_SymBrdn *lsb = (Mat_SymBrdn *)lmvm->ctx; in MatLMVMSymBroydenGetConvexFactor() 83 Mat_LMVM *lmvm = (Mat_LMVM *)B->data; in SymBroydenRecursiveBasisUpdate() local 84 Mat_SymBrdn *lsb = (Mat_SymBrdn *)lmvm->ctx; in SymBroydenRecursiveBasisUpdate() 111 …cCall(LMBasisCreate(MatLMVMBasisSizeOf(B0S_t) == LMBASIS_S ? lmvm->Xprev : lmvm->Fprev, lmvm->m, &… in SymBroydenRecursiveBasisUpdate() 116 PetscCall(LMProductsPrepare(StBkS, lmvm->J0, oldest, next)); in SymBroydenRecursiveBasisUpdate() 117 products_oldest = PetscMax(0, StBkS->k - lmvm->m); in SymBroydenRecursiveBasisUpdate() 203 Mat_LMVM *lmvm = (Mat_LMVM *)B->data; in MatMult_LMVMSymBrdn_Recursive() local [all …]
|
| /petsc/src/ksp/ksp/utils/lmvm/sr1/ |
| H A D | sr1.c | 47 Mat_LMVM *lmvm = (Mat_LMVM *)B->data; in SR1Kernel_Recursive_Inner() local 48 Mat_LSR1 *lsr1 = (Mat_LSR1 *)lmvm->ctx; in SR1Kernel_Recursive_Inner() 68 Mat_LMVM *lmvm = (Mat_LMVM *)B->data; in SR1RecursiveBasisUpdate() local 69 Mat_LSR1 *lsr1 = (Mat_LSR1 *)lmvm->ctx; in SR1RecursiveBasisUpdate() 83 …kS_t]) PetscCall(LMBasisCreate(mode == MATLMVM_MODE_PRIMAL ? lmvm->Fprev : lmvm->Xprev, lmvm->m, &… in SR1RecursiveBasisUpdate() 91 PetscCall(LMProductsPrepare(YtS_minus_StBkS, lmvm->J0, oldest, next)); in SR1RecursiveBasisUpdate() 92 products_oldest = PetscMax(0, YtS_minus_StBkS->k - lmvm->m); in SR1RecursiveBasisUpdate() 154 Mat_LMVM *lmvm = (Mat_LMVM *)B->data; in SR1CompactProductsUpdate() local 155 Mat_LSR1 *lsr1 = (Mat_LSR1 *)lmvm->ctx; in SR1CompactProductsUpdate() 168 PetscCall(LMProductsPrepare(YtS_minus_StB0S, lmvm->J0, oldest, next)); in SR1CompactProductsUpdate() [all …]
|
| /petsc/src/ksp/ksp/utils/lmvm/dense/ |
| H A D | denseqn.c | 36 Mat_LMVM *lmvm = (Mat_LMVM *)B->data; in MatView_LMVMDQN() local 37 Mat_DQN *lqn = (Mat_DQN *)lmvm->ctx; in MatView_LMVMDQN() 51 Mat_LMVM *lmvm = (Mat_LMVM *)B->data; in MatLMVMDQNResetDestructive() local 52 Mat_DQN *lqn = (Mat_DQN *)lmvm->ctx; in MatLMVMDQNResetDestructive() 79 PetscCall(VecDestroyVecs(lmvm->m, &lqn->PQ)); in MatLMVMDQNResetDestructive() 89 Mat_LMVM *lmvm = (Mat_LMVM *)B->data; in MatReset_LMVMDQN_Internal() local 90 Mat_DQN *lqn = (Mat_DQN *)lmvm->ctx; in MatReset_LMVMDQN_Internal() 128 Mat_LMVM *lmvm = (Mat_LMVM *)B->data; in MatReset_LMVMDQN() local 129 Mat_DQN *lqn = (Mat_DQN *)lmvm->ctx; in MatReset_LMVMDQN() 139 Mat_LMVM *lmvm = (Mat_LMVM *)B->data; in MatAllocate_LMVMDQN_Internal() local [all …]
|
| H A D | cd_utils.c | 15 Mat_LMVM *lmvm = (Mat_LMVM *)B->data; in VecCyclicShift() local 16 PetscInt m = lmvm->m; in VecCyclicShift() 64 Mat_LMVM *lmvm = (Mat_LMVM *)B->data; in VecRecycleOrderToHistoryOrder() local 65 PetscInt m = lmvm->m; in VecRecycleOrderToHistoryOrder() 77 Mat_LMVM *lmvm = (Mat_LMVM *)B->data; in VecHistoryOrderToRecycleOrder() local 78 PetscInt m = lmvm->m; in VecHistoryOrderToRecycleOrder() 145 Mat_LMVM *lmvm = (Mat_LMVM *)B->data; in MatUpperTriangularSolveInPlace() local 146 PetscInt m = lmvm->m; in MatUpperTriangularSolveInPlace() 176 Mat_LMVM *lmvm = (Mat_LMVM *)B->data; in MatMove_LR3() local 177 Mat_DQN *lqn = (Mat_DQN *)lmvm->ctx; in MatMove_LR3() [all …]
|
| /petsc/src/ksp/ksp/utils/lmvm/brdn/ |
| H A D | badbrdn.c | 62 Mat_LMVM *lmvm = (Mat_LMVM *)B->data; in BadBroydenKernel_Recursive_Inner() local 63 Mat_Brdn *lbrdn = (Mat_Brdn *)lmvm->ctx; in BadBroydenKernel_Recursive_Inner() 94 Mat_LMVM *lmvm = (Mat_LMVM *)B->data; in BadBroydenRecursiveBasisUpdate() local 95 Mat_Brdn *lbrdn = (Mat_Brdn *)lmvm->ctx; in BadBroydenRecursiveBasisUpdate() 108 …s[Y_minus_BkS_t]) PetscCall(LMBasisCreate(Y_t == LMBASIS_Y ? lmvm->Fprev : lmvm->Xprev, lmvm->m, &… in BadBroydenRecursiveBasisUpdate() 115 PetscCall(LMProductsPrepare(YtBkS, lmvm->J0, oldest, next)); in BadBroydenRecursiveBasisUpdate() 116 products_oldest = PetscMax(0, YtBkS->k - lmvm->m); in BadBroydenRecursiveBasisUpdate() 178 Mat_LMVM *lmvm = (Mat_LMVM *)B->data; in BadBroydenKernelHermitianTranspose_Recursive_Inner() local 179 Mat_Brdn *lbrdn = (Mat_Brdn *)lmvm->ctx; in BadBroydenKernelHermitianTranspose_Recursive_Inner() 239 Mat_LMVM *lmvm = (Mat_LMVM *)B->data; in BadBroydenCompactProductsUpdate() local [all …]
|
| H A D | brdn.c | 338 Mat_LMVM *lmvm = (Mat_LMVM *)B->data; in MatUpdate_LMVMBrdn() local 339 Mat_Brdn *brdn = (Mat_Brdn *)lmvm->ctx; in MatUpdate_LMVMBrdn() 340 …PetscBool cache_YtFprev = (lmvm->mult_alg != MAT_LMVM_MULT_RECURSIVE) ? lmvm->cache_gradient_produ… in MatUpdate_LMVMBrdn() 343 if (!lmvm->m) PetscFunctionReturn(PETSC_SUCCESS); in MatUpdate_LMVMBrdn() 344 if (lmvm->prev_set) { in MatUpdate_LMVMBrdn() 359 PetscCall(VecCopy(lmvm->Fprev, Fprev_old)); in MatUpdate_LMVMBrdn() 363 PetscCall(VecAYPX(lmvm->Xprev, -1.0, X)); in MatUpdate_LMVMBrdn() 364 PetscCall(VecAYPX(lmvm->Fprev, -1.0, F)); in MatUpdate_LMVMBrdn() 366 PetscCall(MatUpdateKernel_LMVM(B, lmvm->Xprev, lmvm->Fprev)); in MatUpdate_LMVMBrdn() 386 PetscCall(VecCopy(X, lmvm->Xprev)); in MatUpdate_LMVMBrdn() [all …]
|
| /petsc/src/ksp/ksp/utils/lmvm/bfgs/ |
| H A D | bfgs.c | 17 Mat_LMVM *lmvm = (Mat_LMVM *)B->data; in BFGSKernel_Recursive_Inner() local 18 Mat_SymBrdn *lsb = (Mat_SymBrdn *)lmvm->ctx; in BFGSKernel_Recursive_Inner() 47 Mat_LMVM *lmvm = (Mat_LMVM *)B->data; in BFGSRecursiveBasisUpdate() local 48 Mat_SymBrdn *lsb = (Mat_SymBrdn *)lmvm->ctx; in BFGSRecursiveBasisUpdate() 61 …cCall(LMBasisCreate(MatLMVMBasisSizeOf(B0S_t) == LMBASIS_S ? lmvm->Xprev : lmvm->Fprev, lmvm->m, &… in BFGSRecursiveBasisUpdate() 65 PetscCall(LMProductsPrepare(StBkS, lmvm->J0, oldest, next)); in BFGSRecursiveBasisUpdate() 66 products_oldest = PetscMax(0, StBkS->k - lmvm->m); in BFGSRecursiveBasisUpdate() 115 Mat_LMVM *lmvm = (Mat_LMVM *)B->data; in BFGSCompactDenseProductsUpdate() local 116 Mat_SymBrdn *lsb = (Mat_SymBrdn *)lmvm->ctx; in BFGSCompactDenseProductsUpdate() 132 PetscCall(LMProductsPrepare(M00, lmvm->J0, oldest, next)); in BFGSCompactDenseProductsUpdate() [all …]
|
| /petsc/src/ksp/ksp/utils/lmvm/dfp/ |
| H A D | dfp.c | 196 Mat_LMVM *lmvm = (Mat_LMVM *)B->data; in MatSetFromOptions_LMVMDFP() local 197 Mat_SymBrdn *ldfp = (Mat_SymBrdn *)lmvm->ctx; in MatSetFromOptions_LMVMDFP() 209 Mat_LMVM *lmvm = (Mat_LMVM *)B->data; in MatLMVMSetMultAlgorithm_DFP() local 212 switch (lmvm->mult_alg) { in MatLMVMSetMultAlgorithm_DFP() 214 lmvm->ops->mult = MatMult_LMVMDFP_Recursive; in MatLMVMSetMultAlgorithm_DFP() 215 lmvm->ops->solve = MatSolve_LMVMDFP_Recursive; in MatLMVMSetMultAlgorithm_DFP() 218 lmvm->ops->mult = MatMult_LMVMDFP_Dense; in MatLMVMSetMultAlgorithm_DFP() 219 lmvm->ops->solve = MatSolve_LMVMDFP_CompactDense; in MatLMVMSetMultAlgorithm_DFP() 222 lmvm->ops->mult = MatMult_LMVMDFP_CompactDense; in MatLMVMSetMultAlgorithm_DFP() 223 lmvm->ops->solve = MatSolve_LMVMDFP_CompactDense; in MatLMVMSetMultAlgorithm_DFP() [all …]
|
| /petsc/src/ksp/ksp/utils/lmvm/rescale/ |
| H A D | symbrdnrescale.c | 10 Mat_LMVM *lmvm = (Mat_LMVM *)B->data; in SymBroydenRescaleUpdateScalar() local 18 PetscCall(MatNorm(lmvm->J0, NORM_INFINITY, &sigma_inv)); in SymBroydenRescaleUpdateScalar() 124 Mat_LMVM *lmvm = (Mat_LMVM *)B->data; in SymBroydenRescaleUpdateDiagonal() local 179 PetscInt start = PetscMax(oldest, lmvm->k - ldb->sigma_hist); in SymBroydenRescaleUpdateDiagonal() 354 Mat_LMVM *lmvm = (Mat_LMVM *)B->data; in SymBroydenRescaleSetDelta() local 363 …if (!same && !lmvm->prev_set && (ldb->scale_type == MAT_LMVM_SYMBROYDEN_SCALE_SCALAR || ldb->scale… in SymBroydenRescaleSetDelta() 434 Mat_LMVM *lmvm = (Mat_LMVM *)B->data; in SymBroydenRescaleAllocate() local 439 PetscCall(VecDuplicate(lmvm->Xprev, &ldb->invDnew)); in SymBroydenRescaleAllocate() 440 PetscCall(VecDuplicate(lmvm->Xprev, &ldb->BFGS)); in SymBroydenRescaleAllocate() 441 PetscCall(VecDuplicate(lmvm->Xprev, &ldb->DFP)); in SymBroydenRescaleAllocate() [all …]
|
| /petsc/src/tao/bound/impls/bqnk/ |
| H A D | bqnk.c | 66 Mat_LMVM *lmvm = (Mat_LMVM *)bqnk->B->data; in TaoSolve_BQNK() local 73 lmvm->nresets = 0; in TaoSolve_BQNK() 74 if (lmvm->J0) { in TaoSolve_BQNK() 75 PetscCall(PetscObjectBaseTypeCompare((PetscObject)lmvm->J0, MATLMVM, &flg)); in TaoSolve_BQNK() 77 J0 = (Mat_LMVM *)lmvm->J0->data; in TaoSolve_BQNK()
|
| /petsc/src/tao/unconstrained/impls/lmvm/tests/output/ |
| H A D | ex1_0.out | 13 type: lmvm
|
| H A D | ex1_1.out | 13 type: lmvm
|
| H A D | ex1_2.out | 13 type: lmvm
|
| /petsc/src/tao/unconstrained/tutorials/output/ |
| H A D | minsurf2_1.out | 14 type: lmvm
|
| /petsc/.gitlab/ |
| H A D | CODEOWNERS | 23 /src/ksp/ksp/utils/lmvm/ @hsuh @tisaac
|
| /petsc/src/tao/bound/tutorials/output/ |
| H A D | plate2_20_alt.out | 65 type: lmvm
|
| H A D | plate2_10.out | 64 type: lmvm
|
| H A D | plate2_11.out | 65 type: lmvm
|
| H A D | plate2_12.out | 65 type: lmvm
|
| H A D | plate2_18.out | 64 type: lmvm
|
| /petsc/src/tao/leastsquares/tutorials/output/ |
| H A D | cs1_view_l1dict_alt.out | 59 type: lmvm
|