- 26 Nov, 2021 1 commit
-
-
Maxi Dechant authored
-
- 06 Oct, 2021 2 commits
-
-
Marcus Mohr authored
Adds copyBoundaryConditionFromFunction() method to BlockFunction See merge request !451
-
Marcus Mohr authored
The commit moves the copyBoundaryConditionFromFunction() method up from the P1CahnHilliardFunction to its base class. Then other children can also make use of it.
-
- 01 Oct, 2021 7 commits
-
-
Marcus Mohr authored
Adds a PetscMatrixAssemblyTest See merge request !450
-
Marcus Mohr authored
The method was broken for 3D. We need to call getDimension() on the source function to see whether we have a 3D setting. The destination function represents a scalar field and, thus, we always get a 1 back.
-
Marcus Mohr authored
The new "rectangular" constructor, which is in turn used by all other ones, was IMHO broken. Commit introduces another parameter localCols that is used to set the number of local columns. Previously that was set to globalCols. More tests run through now. But some still fail.
-
Marcus Mohr authored
-
Dominik Thoennes authored
-
Marcus Mohr authored
-
Marcus Mohr authored
A lot of auxilliary functions called by the matrix creation methods where still wrapped inside HYTEG_BUILD_WITH_PETSC. This is no longer necessary, as they do no longer depend directly on PETSC. They don't use PetscInt or PetscReal and work with the general SparseMatrixProxy.
-
- 30 Sep, 2021 2 commits
-
-
Marcus Mohr authored
-
Marcus Mohr authored
Additionally replaces all matIdx_t by idx_t
-
- 29 Sep, 2021 9 commits
-
-
Nils Kohl authored
-
Nils Kohl authored
-
Nils Kohl authored
-
Nils Kohl authored
-
Dominik Thoennes authored
remove HYTEG_BUILD_WITH_EIGEN option since we ship it as a submodule anyway Closes #162 See merge request !449
-
Nils Kohl authored
All operators that are either currently refactored (P*__Operator_new), including polynomial/surrogate, variable ops, and composites that are built upon those are not yet equipped with the ::toMatrix() method.
-
Dominik Thoennes authored
-
Nils Kohl authored
-
Dominik Thoennes authored
-
- 28 Sep, 2021 8 commits
-
-
Nils Kohl authored
Implementing toMatrix() methods for many operators. Also got rid of some free functions but this needs some more work. Almost all cases in PetscMatrixAssemblyTest are compiling but many still abort. Also refactored PETScSparseMatrix a little so that only one template argument is necessary now (only the operator). Added support for non-square sparse matrices. Some things that are still open: - get PetscMatrixAssemblyTest green, enabling all test cases - remove all former createMatrix() free function calls and definitions - replace matIdx_t with the new index type before/when merging - check that no PetscInts remain - remove all the Petsc ifdefs that are not required anymore - remove the petsc namespace where they technically only wrap sparse matrix stuff - discuss what to do with the P1*Operator_new versions
-
Marcus Mohr authored
-
Dominik Thoennes authored
-
Marcus Mohr authored
We now treat the special case of having a BlockFunction or GenericFunction in the templated function numberOfLocal/GlobalDoFs directly using a constexpr-if. Makes it much easier for the compiler, which otherwise sometimes had problems finding the correct variant. For this to work BlockFunction::ValueType was renamed to BlockFunction::valueType like in the other functions and a similar typedef was added to GenericFunction.
-
Dominik Thoennes authored
-
Marcus Mohr authored
The new variant allows to pass a function object in place of a PrimitiveStorage object to be used for determination of DoF counts. Testing new approach in PetscMatrixAssemblyTest.
-
Marcus Mohr authored
For similar reasons as explained in [11449739] we introduce a variant of numberOfGlobalDoFs() that requires a function object.
-
Nils Kohl authored
-
- 27 Sep, 2021 7 commits
-
-
Dominik Thoennes authored
-
Dominik Thoennes authored
-
Marcus Mohr authored
-
Marcus Mohr authored
Changing PetscInt to matIdx_t allows to remove the preprocessor checks for HYTEG_BUILD_WITH_PETSC and should fix issue with pipeline on the new toMatrix() method. Commit also adds P1ElementwiseOperator::toMatrix() and makes Petsc- MatrixAssembly test use the new API for testing P[12]ElementwiseOperator.
-
Nils Kohl authored
-
Marcus Mohr authored
We start introduction member functions toMatrix() to operator classes. These are intended to replace the createMatrix() free-functions.
-
Marcus Mohr authored
We already individually test for some of the operators that they can be assembled into a PetscSparseMatrix. This new test does this explicitely for a wide range of operators/operator families, i.e. we it does not test all P1ConstantOperators e.g. but only one of them. Note that operators for which an assembly does currently not work are only reported, but not tested, so the test succeeds currently. The commit places the test together with PetscTest.cpp into a new Petsc sub-directory.
-
- 15 Sep, 2021 4 commits
-
-
Marcus Mohr authored
Implements PETSc vector <-> function conversion for Block/GenericFunction See merge request !447
-
Marcus Mohr authored
For completeness we commit also adds a new fule FaceDoFPetsc.hpp. Like DGPetsc.hpp it only contains dummy implementations for - createVectorFromFunction() - createFunctionFromVector()
-
Marcus Mohr authored
Opposed to the library entities themselves the functions and objects in our tests are usually not in the hyteg namespace. This generated a problem (shadowing warning) for MatType used both by PETSc and inside a function in SingleRowIntegrationTest. Commit changes the name and its sibling RowType in the typedefs.
-
Marcus Mohr authored
Commit wraps implementation in HYTEG_BUILD_WITH_PETSC macro guards.
-