hyteg merge requestshttps://i10git.cs.fau.de/hyteg/hyteg/-/merge_requests2022-08-30T14:11:44+02:00https://i10git.cs.fau.de/hyteg/hyteg/-/merge_requests/505GKB merge2022-08-30T14:11:44+02:00Fabian BöhmGKB mergeAdds access/implementation of two versions of the Golub-Kahan Bidiagonalization (GKB) solver to HyTeG:
- the GKB implementation from PETSc can be run via PETScBlockPreconditionedStokesSolver
- an own implementation of GKB on HyTeGs dat...Adds access/implementation of two versions of the Golub-Kahan Bidiagonalization (GKB) solver to HyTeG:
- the GKB implementation from PETSc can be run via PETScBlockPreconditionedStokesSolver
- an own implementation of GKB on HyTeGs datastructures in GKBSolver.hpp
Adds an augmented Lagrangian operator used by the HyTeG implementation of GKB
Adds python scripts for the work unit calculation of solver configurationshttps://i10git.cs.fau.de/hyteg/hyteg/-/merge_requests/502DG implementation2022-04-05T11:56:52+02:00Nils KohlDG implementationSee #171.
This MR introduces the data structures for volume DoFs and a vanilla DG implementation for 2D and 3D.See #171.
This MR introduces the data structures for volume DoFs and a vanilla DG implementation for 2D and 3D.Nils KohlNils Kohlhttps://i10git.cs.fau.de/hyteg/hyteg/-/merge_requests/500Fixes bad_cast issue in P2P1ElementwiseBlendingStokesOperator and adds PrintI...2022-03-25T11:42:02+01:00Marcus MohrFixes bad_cast issue in P2P1ElementwiseBlendingStokesOperator and adds PrintInfoTestMarcus MohrMarcus Mohrhttps://i10git.cs.fau.de/hyteg/hyteg/-/merge_requests/498Updates BuildInfo2022-03-23T13:13:20+01:00Marcus MohrUpdates BuildInfoMake printBuildInfo() output compiler and version, too.Make printBuildInfo() output compiler and version, too.Marcus MohrMarcus Mohrhttps://i10git.cs.fau.de/hyteg/hyteg/-/merge_requests/497VectorToVectorOperators, Smoothability and Code Cleanup2022-03-21T13:56:03+01:00Marcus MohrVectorToVectorOperators, Smoothability and Code CleanupThe merge mostly deals with VectorToVectorOperators and their smoothability.The merge mostly deals with VectorToVectorOperators and their smoothability.Marcus MohrMarcus Mohrhttps://i10git.cs.fau.de/hyteg/hyteg/-/merge_requests/493DG pt. 12022-04-04T10:50:46+02:00Nils KohlDG pt. 1See #171.
This MR introduces the basic data structures for the 2D DG implementation.See #171.
This MR introduces the basic data structures for the 2D DG implementation.Nils KohlNils Kohlhttps://i10git.cs.fau.de/hyteg/hyteg/-/merge_requests/491Make VectorLaplacOperator smoothable2022-03-08T17:39:21+01:00Marcus MohrMake VectorLaplacOperator smoothableMarcus MohrMarcus Mohrhttps://i10git.cs.fau.de/hyteg/hyteg/-/merge_requests/486Add a full viscous operator with blending and variable viscosity2022-02-24T11:34:00+01:00Marcus MohrAdd a full viscous operator with blending and variable viscosityMerge brings a `P2ElementwiseBlendingFullViscousOperator` to be used as part of simulating the anelastic version of the equation system of mantle convection. The operator is based on the corresponding HFG forms and tested in ViscousOpera...Merge brings a `P2ElementwiseBlendingFullViscousOperator` to be used as part of simulating the anelastic version of the equation system of mantle convection. The operator is based on the corresponding HFG forms and tested in ViscousOperatorTest, which is extended with three different apply() scenarios.Marcus MohrMarcus Mohrhttps://i10git.cs.fau.de/hyteg/hyteg/-/merge_requests/475Adds SetupPrimitiveStorage::setMeshBoundaryFlagsByCentroidLocation()2022-01-24T16:29:28+01:00Marcus MohrAdds SetupPrimitiveStorage::setMeshBoundaryFlagsByCentroidLocation()We add an alternative version to set the boundary flags on an object of type `SetupPrimitiveStorage`. The new version queries the "oracle" (callback function) for each macro primitive for its centroid location. By default coordinate comp...We add an alternative version to set the boundary flags on an object of type `SetupPrimitiveStorage`. The new version queries the "oracle" (callback function) for each macro primitive for its centroid location. By default coordinate computation for the centroid uses the GeometryMap associated with a primitive.Marcus MohrMarcus Mohrhttps://i10git.cs.fau.de/hyteg/hyteg/-/merge_requests/471Enhances usability of interpolate() with BoundaryUID argument2022-01-14T13:07:32+01:00Marcus MohrEnhances usability of interpolate() with BoundaryUID argumentMarcus MohrMarcus Mohrhttps://i10git.cs.fau.de/hyteg/hyteg/-/merge_requests/468HFG generated "Full Stokes" forms2021-12-07T10:47:33+01:00Marcus MohrHFG generated "Full Stokes" formsWe need "Full Stokes" forms (with cross-coupling of velocity components and grad-div term) that support variable viscosity and blending for anelastic mantle convection models.We need "Full Stokes" forms (with cross-coupling of velocity components and grad-div term) that support variable viscosity and blending for anelastic mantle convection models.Marcus MohrMarcus Mohrhttps://i10git.cs.fau.de/hyteg/hyteg/-/merge_requests/444Allow writing Function with different value types through same VTKOuptut object2021-08-16T16:45:12+02:00Marcus MohrAllow writing Function with different value types through same VTKOuptut objectMarcus MohrMarcus Mohrhttps://i10git.cs.fau.de/hyteg/hyteg/-/merge_requests/441Implements enumerate() for Vector and BlockFunctions2021-08-09T19:35:11+02:00Marcus MohrImplements enumerate() for Vector and BlockFunctionsMarcus MohrMarcus Mohrhttps://i10git.cs.fau.de/hyteg/hyteg/-/merge_requests/433Implementation of P2EpsilonOperator classes2021-07-17T10:40:54+02:00Marcus MohrImplementation of P2EpsilonOperator classesMerge brings first set of missing building blocks for more general mantle convection models, see issue #156.Merge brings first set of missing building blocks for more general mantle convection models, see issue #156.Marcus MohrMarcus Mohrhttps://i10git.cs.fau.de/hyteg/hyteg/-/merge_requests/424New forms for epsilon operator and deprecation of old forms2021-06-04T17:45:16+02:00Marcus MohrNew forms for epsilon operator and deprecation of old formsWorked on the forms part of HyTeG. Most importantly:
- added forms for epsilon operator with blending and variable viscosity
- marked most of the HyTeG generated forms from the pre-hyteg-form-generator era as deprecatedWorked on the forms part of HyTeG. Most importantly:
- added forms for epsilon operator with blending and variable viscosity
- marked most of the HyTeG generated forms from the pre-hyteg-form-generator era as deprecatedMarcus MohrMarcus Mohrhttps://i10git.cs.fau.de/hyteg/hyteg/-/merge_requests/417Fixes issue #1512021-05-15T19:01:04+02:00Marcus MohrFixes issue #151The merge adds an CSFVectorFunction::interpolate() method that accepts a BoundaryUID. It also adds a test to the test suite for checking that setting and usage of BoundaryUIDs works as expected.The merge adds an CSFVectorFunction::interpolate() method that accepts a BoundaryUID. It also adds a test to the test suite for checking that setting and usage of BoundaryUIDs works as expected.Marcus MohrMarcus Mohrhttps://i10git.cs.fau.de/hyteg/hyteg/-/merge_requests/408Implements working VectorToVector operators2021-04-15T13:22:05+02:00Marcus MohrImplements working VectorToVector operatorsCommit introduces two children of VectorToVectorOperator. These are
- VectorLaplaceOperator
- VectorMassOperator
The two classes are templated and we instantiate various P1 and P2 flavors
of the two operators.
VectorOperatorBasicTest ...Commit introduces two children of VectorToVectorOperator. These are
- VectorLaplaceOperator
- VectorMassOperator
The two classes are templated and we instantiate various P1 and P2 flavors
of the two operators.
VectorOperatorBasicTest checks that we can compile them and call apply().Marcus MohrMarcus Mohrhttps://i10git.cs.fau.de/hyteg/hyteg/-/merge_requests/395Allows selecting output format for PETScSparseMatrix object2021-02-03T14:54:04+01:00Marcus MohrAllows selecting output format for PETScSparseMatrix object* The classes' print function now accepts a second optional argument of
type PetscViewerFormat. Any valid format is possible, as this will just
be passed on to PETSc. Default value is PETSC_VIEWER_ASCII_MATRIXMARKET.
* The exportOper...* The classes' print function now accepts a second optional argument of
type PetscViewerFormat. Any valid format is possible, as this will just
be passed on to PETSc. Default value is PETSC_VIEWER_ASCII_MATRIXMARKET.
* The exportOperator() function now requires the format as an argument; it
now also lives in the petsc namespace.
* The exportOperatorMatrix app allows to select either MATRIXMARKET or
MATLAB format on the command-line.Marcus MohrMarcus Mohrhttps://i10git.cs.fau.de/hyteg/hyteg/-/merge_requests/391Coupling Count2021-01-25T14:46:45+01:00Marcus MohrCoupling CountImplements functions to calculate the number of couplings between DoFs. This is the completed version and supersedes !388. The resulting values could be used in the initialisation of the PETSc sparse matrix structures.Implements functions to calculate the number of couplings between DoFs. This is the completed version and supersedes !388. The resulting values could be used in the initialisation of the PETSc sparse matrix structures.Dominik Thoennesdominik.thoennes@fau.deDominik Thoennesdominik.thoennes@fau.dehttps://i10git.cs.fau.de/hyteg/hyteg/-/merge_requests/378MatInfo2020-11-12T22:20:30+01:00Marcus MohrMatInfoAdds functionality to ouput info from PETSc's MatInfo structureAdds functionality to ouput info from PETSc's MatInfo structureMarcus MohrMarcus Mohr