| #
58bddbc0
|
| 11-Apr-2025 |
Satish Balay <balay@mcs.anl.gov> |
Merge branch 'tisaac/feature-lmvm-rework' into 'main'
MatLMVM rework
See merge request petsc/petsc!6401
|
| #
1ca5963a
|
| 26-Mar-2025 |
Toby Isaac <toby.isaac@gmail.com> |
MatLMVM: Complete rework of internals to use LMBasis and LMProducts
I don't think there is a good way to break this up into smaller commits: once I use LMBasis and LMProducts in Mat_LMVM, all of the
MatLMVM: Complete rework of internals to use LMBasis and LMProducts
I don't think there is a good way to break this up into smaller commits: once I use LMBasis and LMProducts in Mat_LMVM, all of the implementations that depend on it are broken until they are changed to also use these new objects. It is probably better to review all of the MatLMVM implementations (except for denseqn) as new code rather than trying to review using a diff tool.
This rework achieves:
- Implementations of three classes of algorithms for limitd memory quasi-Newton updates - MAT_LMVM_MULT_RECURSIVE: Recursive, level 1 BLAS algorithms that closely match the typical way the methods are presented mathematically. - MAT_LMVM_MULT_DENSE: level 2 BLAS algorithms that, when possible, avoid any need for recomputation when the reference Jacobian J0 changes. - MAT_LMVM_MULT_COMPACT_DENSE: level 2 BLAS algorithms that construct rank-m (or rank-2m) update representations of the operators, for the best-performance on MatMult() and MatSolve(), but at the cost of additional setup, and requiring more recomputation when J0 changes than MAT_LMVM_MULT_DENSE - Every quasi-Newton method has a dual method (e.g. BFGS and DFP): we exploit this duality to use only one code path for a dual pair, reducing the numer of implementaitons to maintain - Special handling of the case J0 = gamma * I, avoiding products that are unnecessary in this case - Instead of including a MatLMVMDiagBrdn as the J0 matrix when J0 is variable (which means that both B and J0 of basis vectors to maintain), a SymBroydenRescale object is shared by MatLMVMDiagBrdn and other formats that use rescaling - Improved correctness of when internal products need to be recomputed: if the user externally changes J0, this will be detected
show more ...
|
| #
5fe01c21
|
| 22-Mar-2024 |
Satish Balay <balay@mcs.anl.gov> |
Merge branch 'hsuh/dense-lmvm-squashed' into 'main'
Dense LMVM
See merge request petsc/petsc!7371
|
| #
bbb72809
|
| 14-Mar-2024 |
Hansol Suh <hsuh@anl.gov> |
Dense LMVM - BFGS, DFP, QN implemented
|
| #
599e5203
|
| 03-Aug-2023 |
Satish Balay <balay@mcs.anl.gov> |
Merge branch 'barry/2023-07-18/manual-linter-fixes-ksp' into 'main'
Manual fixes needed for linter for the KSP directory
See merge request petsc/petsc!6735
|
| #
04c3f3b8
|
| 19-Jul-2023 |
Barry Smith <bsmith@mcs.anl.gov> |
Manual fixes needed for linter for the KSP directory
|
| #
02477ebb
|
| 15-Jul-2023 |
Satish Balay <balay@mcs.anl.gov> |
Merge branch 'jacobf/2023-06-30/enable-doc-lint' into 'main'
Enable docs linting
See merge request petsc/petsc!6667
|
| #
feefa0e1
|
| 12-Jul-2023 |
Jacob Faibussowitsch <jacob.fai@gmail.com> |
Lint apply: ksp
|
| #
8c38e02a
|
| 03-Jun-2023 |
Satish Balay <balay@mcs.anl.gov> |
Merge remote-tracking branch 'origin/release'
|
| #
4ff55f77
|
| 01-Jun-2023 |
Satish Balay <balay@mcs.anl.gov> |
Merge branch 'barry/2023-05-27/improve-tutorials/release' into 'release'
Minor cleanup of website tutorials
See merge request petsc/petsc!6520
|
| #
1cc06b55
|
| 27-May-2023 |
Barry Smith <bsmith@mcs.anl.gov> |
change to consistent use of ch_xxx for chapter names in the docs, instead of a mix of ch_xx and chapter_xx
|
| #
65a5e993
|
| 09-Feb-2023 |
Satish Balay <balay@mcs.anl.gov> |
Merge branch 'stefanozampini/matlmvm' into 'main'
some optimizations for MATLMVM
See merge request petsc/petsc!6034
|
| #
8e1d7368
|
| 07-Feb-2023 |
Stefano Zampini <stefano.zampini@gmail.com> |
MATLMVM: Use MatCreateVecs
Remove errors for API that are not a getters Fix man pages
|
| #
31d78bcd
|
| 02-Feb-2023 |
Satish Balay <balay@mcs.anl.gov> |
Merge branch 'jacobf/2022-12-10/petscerrorcode-nodiscard' into 'main'
Feature: Non-discardable PetscErrorCode
See merge request petsc/petsc!5923
|
| #
3ba16761
|
| 10-Dec-2022 |
Jacob Faibussowitsch <jacob.fai@gmail.com> |
Make PetscErrorCode a non-discardable enum
|
| #
54841b12
|
| 09-Oct-2022 |
Satish Balay <balay@mcs.anl.gov> |
Merge remote-tracking branch 'origin/release'
|
| #
0ee06d04
|
| 07-Oct-2022 |
Satish Balay <balay@mcs.anl.gov> |
Merge branch 'barry/2022-09-29/fix-ksp-manpages' into 'release'
KSP manual page updates
See merge request petsc/petsc!5698
|
| #
dc80d9ca
|
| 30-Sep-2022 |
Barry Smith <bsmith@mcs.anl.gov> |
Update all the manual pages for KSPType
Fix a few additional manual pages and remove some dead comments from code
Commit-type: documentation /spend 3h
|
| #
061e922f
|
| 22-Sep-2022 |
Satish Balay <balay@mcs.anl.gov> |
Merge branch 'jacobf/2022-09-21/2-bike-2-shed' into 'main'
Feature: Bicycle Storage Facility 2
See merge request petsc/petsc!5661
|
| #
d71ae5a4
|
| 21-Sep-2022 |
Jacob Faibussowitsch <jacob.fai@gmail.com> |
source code format changes due to .clang-format changes
|
| #
b7124133
|
| 20-Sep-2022 |
Satish Balay <balay@mcs.anl.gov> |
Merge branch 'jacobf/2022-09-17/slimmer-petscobject' into 'main'
Feature: Slimmer PetscObject
See merge request petsc/petsc!5649
|
| #
4dfa11a4
|
| 17-Sep-2022 |
Jacob Faibussowitsch <jacob.fai@gmail.com> |
Remove parent, parentid, flops, time, mem, and memchildren. Deprecate PetscLogObjectParent(), PetscLogObjectMemory(), and PetscNewLog()
|
| #
e868aefd
|
| 05-Sep-2022 |
Satish Balay <balay@mcs.anl.gov> |
Merge branch 'jose/manual-mat' into 'main'
Users manual: fixes for Mat section
See merge request petsc/petsc!5573
|
| #
33ba8e09
|
| 31-Aug-2022 |
Jose E. Roman <jroman@dsic.upv.es> |
Remove reference to non-existing option -mat_lmvm_num_vecs
|
| #
f0af967e
|
| 29-Aug-2022 |
Satish Balay <balay@mcs.anl.gov> |
Merge branch 'jolivet/fix-style-one-liners' into 'main'
Remove braces from one-liners w/o PetscCall()
See merge request petsc/petsc!5561
|