18 Commits

Author SHA1 Message Date
Hannes Martin Signer
06b890fe81 add EigenLUSolver test case 2025-10-14 18:49:02 +02:00
Max Luebke
3612dcf034 BREAKING CHANGE: Rework Grid definition
Now the API does not rely on `Grid` structure but lay a wrapper around
an existing memory region, which defines for example a diffusion grid.

All simulation steps are done in place.

The user has to make sure the memory existing throughout the lifetime of
a simulation grid.
2025-01-31 15:46:06 +01:00
Max Lübke
d3843fb2a3 refactor: Update testDiffusion.cpp and Diffusion.hpp
Refactor testDiffusion.cpp and Diffusion.hpp to improve code readability and maintainability. Remove unnecessary exception throwing and replace with assert statements for invalid arguments.
2024-12-10 10:42:53 +01:00
Max Lübke
a796acbc1d BREAKING CHANGE: Rename Simulation to Diffusion
chore: Cleanup of applications
2024-12-10 08:55:50 +01:00
philippun
32b05a8a87 added Thomas Solver with option to choose solver and cleaned up the repository 2023-08-23 12:24:35 +02:00
Max Lübke
f24ce43f5a fix: remove bits/* header 2023-05-03 12:11:13 +02:00
Max Lübke
6120acdaf4 refactor: move includes into subdirectory 'tug' 2022-09-08 14:21:52 +02:00
Max Lübke
592f59dbc5 perf: represent inner boundary conditions with a std::map
refactor: inner boundary conditions are now accessible via methods

test: update test cases
2022-09-08 12:46:26 +02:00
Max Lübke
94e83b5eb8 feat: allow undefined boundary conditions
It is now possible to not define any boundary condition object.

In this case a grid with closed boundary conditions is assumed during
diffusion simulation.

refactor: various adjustments according to clang-tidy
2022-09-08 11:53:25 +02:00
Max Lübke
02a9531544 feat: add helper functions to TugInput struct 2022-09-01 16:43:14 +02:00
Max Luebke
e482d71779 feat: Remove class BTCSDiffusion
BREAKING CHANGE: Functionality is now provided by function calls and
scheme generation is decoupled from LEqS solving.
2022-09-01 16:43:14 +02:00
Max Lübke
c99f770182 refactor: move BoundaryCondition header and source 2022-08-17 12:07:21 +02:00
Max Lübke
1822bcd98d refactor: rename BoundaryCondition class 2022-08-17 12:05:16 +02:00
Max Lübke
bdd56bec82 refactor: rename and expand namespace 2022-08-17 11:58:18 +02:00
Max Lübke
9461ebd8f3 test: add new test case for diffusion module
Test case defines a 2D grid with closed boundaries and 1 constant cell
in the middle.

Every other cell is set to 0.

After each iteration the sum of all cells must be greater in comparison
to the previous state of field.
2022-08-16 15:24:08 +02:00
Max Lübke
fd7e2f5b63 build: fetch doctest during configuration 2022-08-16 11:30:35 +00:00
Max Lübke
02e65afb60 Move includes 2022-08-12 13:06:36 +00:00
Max Lübke
586990af45 Resolve "Add simplified setting of boundary conditions" 2022-06-13 16:35:21 +02:00