Closed dkarpeyev closed 10 years ago
In 211c069e9c86d7759463794c422b506d74e4201e:
Basic FieldSplitPreconditioner capability (FSP). Ported and improved petscdmmoose from petscdmlibmesh. Added basic FSP tests. (addresses #1851)
In ddaf815257096fedb96c97df7dbca8e524d5556a:
FSP: minor compatibility fixes, renaming files to conform to Moose conventions and purging spurious includes (addresses #1851).
In 834199ec417f65e2d4bbe01d961a111b07a39c31:
FSP: Define PETSC macros before using them (addresses #1851).
In 5436b02c7a24cb22bec9d50c405b4ff10221639b:
Retooled PetscDMMoose to work with sidesets and to have a better command-line interface (addresses #1851).
In 6a3286f264fa60d78dccff4f044d96257cb8f5e8:
Bug fixes to enable correct recursive splits in DMMoose (addresses #1851).
In 4c2d6eecc4275d2214de25d8be7a127bd3b34c83:
Reworked DMMoose to allow each DM, including split DMs, handle its own vars, blocks and sides. Enables better recursive FSP support (addresses #1851).
DomainDecomposition factors through FieldDecomposition.
In 6191ad58171f37da993274fd3847e726e15d3b7f:
Dang! Missing files. Addresses #1851.
In d3b7ee834373b91e383fe63f62388d966f722829:
Lazy evaluation of embedding IS (addresses #1851).
In bf32b3533559cfed1ac74cbc484694464427a0bb:
Pre:Renamed FieldSplits --> Splits, FieldSplitPreconditioner --> SplitBasedPreconditioner, made Splits into a Moose system (addresses #1851).
In d16910ca152b716a3467bb9457a3b5e7bb4c0b3c:
Renamed FieldSplits --> Splits, FieldSplitPreconditioner --> SplitBasedPreconditioner, made Splits into a Moose system (addresses #1851).
In 207aae11782201746f721d35bc2b375ec67a843c:
Enabling side-based splits (addresses #1851).
In 5458b09ae507bb8cc6a94a60198d49edeb8216a5:
Working around libMesh's use of MATBAIJ, which interferes with Splits (addresses #1851).
Resurrecting setupSplitBasedPreconditioner() along the way.
In 8c8b210a642617557bf82cc9483c67e124a1aaad:
Revert "Working around libMesh's use of MATBAIJ, which interferes with Splits (addresses #1851)."
In 28244cfc8e9d1bf76e6ee77a78bfc3f375332ed6:
Working around libMesh's use of MATBAIJ, which interferes with Splits (addresses #1851).
Resurrecting setupSplitBasedPreconditioner() along the way.
In 2fc09bef24ac489be3c8501096cceafcb3da4347:
ContactSplit, allows PenetrationLocator-based splits, possibly changing inside Newton loop (addresses #1851).
In 0e9c6202d77ce41ea33d2d009a3552b18cdd3ca7:
SBP is capable of handling MATBAIJ using a recent libMesh even with petsc-3.3 (addresses #1851).
In 3e2c33701042a2a513609f6dbf2e9ced288dc89c:
Moving the Splits subsystem into its own subdir (references #1851)
In 629994ca9c703dcdc879c76cf75cce3c6dc578a3:
Splits: eliminated a memory leak (addresses #1851).
Splits is not a way to build a preconditioning matrix (PETSc: Pmat), but to build a preconditioner (PETSc:PC). The most important application of Splits is the control over the (hierarchical) construction of PETSc's PCFieldSplit using (a) mesh adjacency, (b) variables, (c) Contact. In particular, Contact is dynamic, coming and going with the timestep, altering the Jacobian sparsity-structure and necessitating a rebuilding/resetting of the preconditioner.
In a02aea4f3c516baa8cc22a5c395eeab39c4b43fc:
DMMoose: enable SNES/KSP/PC resetting due to dynamic, Contact-based Splits; addresses #1851.
Always attach DMMoose to SNES to handle BAIJ matrices etc., not only to enable PCFieldSplit.
In 2472c4258ee668680219e8e5b4937fa03c2b603e:
Revert "DMMoose: enable SNES/KSP/PC resetting due to dynamic, Contact-based Splits; addresses #1851."
In d610189521f96023a83508346c79d5a97add9b9c:
DMMoose: enable SNES/KSP/PC resetting due to dynamic, Contact-based Splits; addresses #1851.
Always attach DMMoose to SNES to handle BAIJ matrices etc., not only to enable PCFieldSplit.
In 99c3400420a3200cfdd870570a440b2969c222fe:
Fixed a bad interaction of PetscDMMoose with FDP. Addresses #1851.
In 2da8381c36361ce0b5bf588804058478163a5862:
Splits: support for assembled Schur preconditioner; disabled without a recent petsc-dev; addresses #1851.
In df20010852dfe6f2090e1078bb5e4aabc05a2129:
Splits: top level now in Executioner and tests in 'splits'; addresses #1851.
Option name changes for clarity: a11->A11,self->S.
In 25a7dd3d75f3748fe3fd218f2d7a497d9b0b4f6c:
Fix PetscDMMoose to check whether (un)contacts are displaced when building splits. Addresses #1851.
None