History log of /petsc/src/ksp/ksp/utils/lmvm/brdn/brdn.c (Results 1 – 25 of 62)
Revision Date Author Comments
# 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


123