amdis issueshttps://gitlab.math.tu-dresden.de/groups/amdis/-/issues2021-07-06T12:52:07Zhttps://gitlab.math.tu-dresden.de/amdis/amdis-core/-/issues/19Usage of PeriodicBasis together with PowerBasis leads to Segmentation Fault w...2021-07-06T12:52:07ZPorrmann, MaikUsage of PeriodicBasis together with PowerBasis leads to Segmentation Fault while assemblingThe `introduce-periodic-basis` branch of dune-functions (see https://gitlab.dune-project.org/staging/dune-functions/-/merge_requests/263) adds a periodic Basis Wrapper to dune-functions. While it works in AMDiS out of the box for scalar ...The `introduce-periodic-basis` branch of dune-functions (see https://gitlab.dune-project.org/staging/dune-functions/-/merge_requests/263) adds a periodic Basis Wrapper to dune-functions. While it works in AMDiS out of the box for scalar Functionspaces, vectorvalued Functionspaces created with power<>() lead to a Segmentation fault while assembling.
Minimal Example:
~~~
#include <config.h>
#include <amdis/AMDiS.hpp>
#include <amdis/LocalOperators.hpp>
#include <dune/grid/onedgrid.hh>
#include <dune/functions/functionspacebases/defaultglobalbasis.hh>
#include <dune/functions/functionspacebases/lagrangebasis.hh>
#include <dune/functions/functionspacebases/periodicbasis.hh>
using namespace AMDiS;
int main(int argc, char** argv)
{
Environment env(argc, argv);
Dune::OneDGrid grid(10, 0.0, 1.0);
using namespace Dune::Functions::BasisFactory;
PeriodicIndexSet periodicIndexSet; // Doesn't need to be filled to reproduce the Error
ProblemStat prob("prob", grid, power<3>(periodic(lagrange<1>(), periodicIndexSet), flatLexicographic()));
prob.initialize(INIT_ALL);
for (int i = 0; i<3; i++){
prob.addMatrixOperator(sot(1.0), makeTreePath(i), makeTreePath(i));
}
AdaptInfo adaptInfo("adapt");
prob.assemble(adaptInfo);
prob.solve(adaptInfo);
}
~~~
Tested with ISTL and PETSc
Errormessage:
~~~
*** Process received signal ***
Signal: Segmentation fault (11)
Signal code: Address not mapped (1)
Failing at address: 0xc
~~~
Complete Errormessage with hardly readable stacktrace [errormessage.txt](/uploads/2c8eeb4cb487545d351afeb96ccb7fa9/errormessage.txt)
Project was setup with amdisproject using the dune modules: amdis dune-common dune-geometry dune-localfunctions dune-typetree dune-uggrid dune-grid dune-istl dune-functions dune-spgrid dune-vtkhttps://gitlab.math.tu-dresden.de/amdis/amdis-core/-/issues/16Add MTL and PETSc Tests to Gitlab CI2020-12-22T16:25:17ZPraetorius, SimonAdd MTL and PETSc Tests to Gitlab CICurrently the CI system only tests the ISTL backend. So, some errors are not found automatically when changing the other backend implementations. I suggest to add pipelines for all backends, maybe with the dune master branch.
It might ...Currently the CI system only tests the ISTL backend. So, some errors are not found automatically when changing the other backend implementations. I suggest to add pipelines for all backends, maybe with the dune master branch.
It might be that we have to create our own docker image for this. Therefore, we could use the docker registry on dune-project with a modified script of docker/cihttps://gitlab.math.tu-dresden.de/amdis/amdis-core/-/issues/5Boundary IDs from Reader2020-11-07T12:00:37ZPraetorius, SimonBoundary IDs from ReaderThere are problems with the boundary manager and the boundary IDs when read from file, i.e. the number does not match. This needs some checking.There are problems with the boundary manager and the boundary IDs when read from file, i.e. the number does not match. This needs some checking.https://gitlab.math.tu-dresden.de/amdis/amdis-core/-/issues/11Dirichlet BoundaryConditions with general value gridfunction2020-11-06T14:51:05ZPraetorius, SimonDirichlet BoundaryConditions with general value gridfunctionCurrently the gridfunctions in DirichletBC are simple `std::function<Range(Domain)>`. This should be generalized to arbitrary grid functions. Maybe using the type-erased gridfunction wrapper from dune-functions.Currently the gridfunctions in DirichletBC are simple `std::function<Range(Domain)>`. This should be generalized to arbitrary grid functions. Maybe using the type-erased gridfunction wrapper from dune-functions.https://gitlab.math.tu-dresden.de/amdis/amdis-core/-/issues/4Parallel Linear Algebra Features2020-10-03T11:32:29ZMÃ¼ller, FelixParallel Linear Algebra FeaturesThis lists all missing features and to-dos for the implementation of parallel linear algebra.
* [x] General interface
* [x] Parallel examples/ tests
* [x] ~~MTL~~
* [ ] ISTL
* [x] Overlapping Schwarz
* [ ] Nonoverlapping Schwa...This lists all missing features and to-dos for the implementation of parallel linear algebra.
* [x] General interface
* [x] Parallel examples/ tests
* [x] ~~MTL~~
* [ ] ISTL
* [x] Overlapping Schwarz
* [ ] Nonoverlapping Schwarz
* [ ] Case `overlapSize + ghostSize == 0`
* [x] Bases with more than one DoF per entity
* [x] e.g. Lagrange order 3+, edge/face twists
* [x] LagrangeDG
* [x] More parallel preconditioners
* [x] ~~EIGEN~~
* [x] PETSchttps://gitlab.math.tu-dresden.de/amdis/amdis-core/-/issues/13GitLab CI based on dune modules2020-07-10T19:40:21ZPraetorius, SimonGitLab CI based on dune modules### Summary
Replace the current base docker images in the CI configuration with pdelab-deps or another image that contains most of the dune modules already. Maybe configure a dependency image in the dune docker/ci for amdis.
### Details...### Summary
Replace the current base docker images in the CI configuration with pdelab-deps or another image that contains most of the dune modules already. Maybe configure a dependency image in the dune docker/ci for amdis.
### Details
The current `.gitlab-ci.yml` configuration installes all the modules again. This is very time consuming for the runners and slows down the tests.https://gitlab.math.tu-dresden.de/amdis/amdis-core/-/issues/15Reference to Read-The-Docs in Code2020-07-08T17:39:04ZPraetorius, SimonReference to Read-The-Docs in CodeIn the documentation files and README file there is nowhere a reference to https://amdis.readthedocs.io This needs to be changed in order to fine the generated documentation easily.In the documentation files and README file there is nowhere a reference to https://amdis.readthedocs.io This needs to be changed in order to fine the generated documentation easily.https://gitlab.math.tu-dresden.de/amdis/amdis-core/-/issues/6No-MPI problems2019-12-07T15:08:56ZPraetorius, SimonNo-MPI problemsThere are some problems when compiled without MPI. This needs to be fixed.There are some problems when compiled without MPI. This needs to be fixed.Praetorius, SimonPraetorius, Simonhttps://gitlab.math.tu-dresden.de/amdis/amdis-core/-/issues/3GlobalBasis transfer in grid change2019-08-28T11:41:54ZPraetorius, SimonGlobalBasis transfer in grid changeIf the grid changes and one uses the `ProblemStat` adapt methods, the corresponding GlobalBasis of the ProblemStat is automatically updated during. But what if there are more than one basis stored in the the Problem. (This might be quite...If the grid changes and one uses the `ProblemStat` adapt methods, the corresponding GlobalBasis of the ProblemStat is automatically updated during. But what if there are more than one basis stored in the the Problem. (This might be quite useful to describe some coefficients in the PDE). Then, this basis also has to be updated after the grid has changed.
I would propose to provide kind of a registration method for GlobalBases, similar to the `attach()` method for `DOFVector`s. This could be achieved, by using some kind of type-erasure, since only the `update(GridView)` method is required to be implemented by the Basis to update.
Maybe we can do the same for the DOFVector. Instead of requiring that it is derived from `DOFVectorInterface`, we could specify the methods need for the adaption step and provide a type-erasure storage. (similar to `std::function`)https://gitlab.math.tu-dresden.de/amdis/amdis-core/-/issues/2GradientAtQP is broken2019-03-26T09:50:28ZPraetorius, SimonGradientAtQP is brokenWhen calculating the gradient of a gridFunction I get rubbish. There is something broken.When calculating the gradient of a gridFunction I get rubbish. There is something broken.