| #
8577b683
|
| 05-Oct-2025 |
Satish Balay <balay@mcs.anl.gov> |
Merge remote-tracking branch 'origin/release'
|
| #
fe1fb33a
|
| 01-Oct-2025 |
Satish Balay <balay@mcs.anl.gov> |
Merge branch 'jolivet/typos' into 'release'
Fix typos
See merge request petsc/petsc!8753
|
| #
8c5add6a
|
| 01-Oct-2025 |
Pierre Jolivet <pierre@joliv.et> |
Fix typos
|
| #
e187dc3a
|
| 16-Apr-2025 |
Satish Balay <balay@mcs.anl.gov> |
Merge branch 'tisaac/fix-mpidenseintconversion' into 'main'
Small MatLMVM fixes
See merge request petsc/petsc!8315
|
| #
9b7deaea
|
| 16-Apr-2025 |
Toby Isaac <toby.isaac@gmail.com> |
MatLMVM: Avoid typedef enum for values that will be used for arithmetic
Arithmetic on enums in c++ requires either overloading operators or casting the output to the enumerated type. I had tried to
MatLMVM: Avoid typedef enum for values that will be used for arithmetic
Arithmetic on enums in c++ requires either overloading operators or casting the output to the enumerated type. I had tried to satisfy these requirements with `#if defined(__cplusplus) #endif` code, but there is interest in PETSc compiling cleanly with `-Wc++-compat` as well.
In c, we lose almost nothing in terms of type safety doing
``` enum { A, B, C }; typedef PetscInt MyEnum; ```
instead of ``` typedef enum { A, B, C } MyEnum; ```
I suppose we lose `-Wswitch` warnings, but I am applying these changes to enumerations that will never appear in switch statements.
show more ...
|
| #
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 ...
|
| #
6d8694c4
|
| 20-Mar-2025 |
Satish Balay <balay@mcs.anl.gov> |
Merge branch 'barry/2024-04-29/add-fortran-enums' into 'main'
Major updates to Fortran interface
See merge request petsc/petsc!7517
|
| #
ce78bad3
|
| 20-Feb-2025 |
Barry Smith <bsmith@petsc.dev> |
Fortran 90: fully embrace After 34 years!
- deprecate use of 'F90' in Fortran function names - use Fortran pointers when appropriate - the new Fortran API is not backward compatible with previous ve
Fortran 90: fully embrace After 34 years!
- deprecate use of 'F90' in Fortran function names - use Fortran pointers when appropriate - the new Fortran API is not backward compatible with previous versions! - also clean up inconsistent PETSc code detected by new Fortran generation tools - drop use of bfort - automatically generate all the Fortran PETSc objects, enums etc from the include files - generate most of the Fortran interface definitions and functions from the source code - simplify the number and organization of Fortran modules
Co-authored-by: Jose E. Roman <jroman@dsic.upv.es>
show more ...
|
| #
9dd11ecf
|
| 25-Aug-2023 |
Satish Balay <balay@mcs.anl.gov> |
Merge branch 'jacobf/2023-08-17/header-guard-check' into 'main'
Check header guards
See merge request petsc/petsc!6822
|
| #
a4963045
|
| 18-Aug-2023 |
Jacob Faibussowitsch <jacob.fai@gmail.com> |
Convert all header guards to pragma once
|
| #
3ea99036
|
| 17-Aug-2023 |
Jacob Faibussowitsch <jacob.fai@gmail.com> |
Fix some malformed if !defined() header guards
|
| #
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
|
| #
11298ce6
|
| 07-Feb-2023 |
Stefano Zampini <stefano.zampini@gmail.com> |
MATLMVM: Some optimizations
Use VecMDot when possible Use VecDotNorm2 replace copy + scale with AXPBY
|
| #
58d68138
|
| 23-Aug-2022 |
Satish Balay <balay@mcs.anl.gov> |
Merge branch 'barry/2022-08-21/clang-format-source' into 'main'
format repository with clang-format
See merge request petsc/petsc!5541
|
| #
9371c9d4
|
| 22-Aug-2022 |
Satish Balay <balay@mcs.anl.gov> |
clang-format: convert PETSc sources to comply with clang-format
|
| #
8fd105b6
|
| 17-Aug-2022 |
Satish Balay <balay@mcs.anl.gov> |
Merge branch 'barry/2022-06-28/add-petsccallmethod' into 'main'
Introduce PetscTryTypeMethod and PetscUseTypeMethod to replace ad hoc use of (*obj->ops->method) in source
See merge request petsc/
Merge branch 'barry/2022-06-28/add-petsccallmethod' into 'main'
Introduce PetscTryTypeMethod and PetscUseTypeMethod to replace ad hoc use of (*obj->ops->method) in source
See merge request petsc/petsc!5376
show more ...
|
| #
dbbe0bcd
|
| 23-Jul-2022 |
Barry Smith <bsmith@mcs.anl.gov> |
Convert setfromoptions methods over to PetscTryTypeMethod() approach
Flipped the order of the arguments for the function pointers (*setfromoptions)(PetscOptionItem*,obj); and friends to make them co
Convert setfromoptions methods over to PetscTryTypeMethod() approach
Flipped the order of the arguments for the function pointers (*setfromoptions)(PetscOptionItem*,obj); and friends to make them consistent with PetscTryTypeMethod() and all the other methods
Commit-type: refactorization /spend 4h
show more ...
|
| #
16924cb1
|
| 26-Aug-2020 |
Satish Balay <balay@mcs.anl.gov> |
Merge branch 'barry/2020-08-16/fix-source-formatting' into 'master'
Turn on checkbadSource test to generate an error when found; fix all source code that causes errors
See merge request petsc/petsc
Merge branch 'barry/2020-08-16/fix-source-formatting' into 'master'
Turn on checkbadSource test to generate an error when found; fix all source code that causes errors
See merge request petsc/petsc!3064
show more ...
|
| #
2da392cc
|
| 17-Aug-2020 |
Barry Smith <bsmith@mcs.anl.gov> |
Turn on checkbadSource test to generate an error when found; fix all source code that causes errors
Commit-type: portability-fix, testing-fix, style-fix, feature, maintainability /spend 1.5h
|
| #
ffec9659
|
| 24-Mar-2020 |
Satish Balay <balay@mcs.anl.gov> |
Merge branch 'denera/snes-qn-harmonization' into 'master'
SNESQN harmonization with MATLMVM objects
See merge request petsc/petsc!2620
|
| #
864588a7
|
| 23-Mar-2020 |
Alp Dener <alp.dener@me.com> |
refactored LMVM matrix names for Broyden-class methods
|
| #
92f76d53
|
| 20-Mar-2020 |
Alp Dener <alp.dener@me.com> |
SNESQN harmonization with MATLMVM objects
|
| #
89583661
|
| 21-Jun-2019 |
Satish Balay <balay@mcs.anl.gov> |
Merge remote-tracking branch 'origin/barry/add-petscarrayxxx-ops' [PR #1771]
|
| #
857a15f1
|
| 17-Jun-2019 |
Barry Smith <bsmith@mcs.anl.gov> |
Resolved issues brought up in PR
Commit-type: bug-fix, style-fix Reported-by: Patrick Sanan <patrick.sanan@gmail.com>
|