564 Commits

Author SHA1 Message Date
Hannes Signer
c8d1b08e28 add diagonal optimization approach 2025-10-14 18:33:20 +02:00
Max Lübke
9ca0735654 Merge branch 'main' of git.gfz-potsdam.de:naaice/tug 2025-02-07 08:19:41 +01:00
max
e1a135f8e2 Merge pull request 'BREAKING CHANGE: Refactor simulation grid' (#1) from ml/refactor-simulation-grid into main 2025-02-05 15:44:38 +01:00
Max Lübke
13226e8668 refactor: simplify FTCS_2D by removing unused code 2025-02-05 12:53:15 +01:00
Max Lübke
56fc8185d5 Merge branch 'ml/refactor-simulation-grid' into 'main'
BREAKING CHANGE: Rename Simulation to Diffusion

See merge request naaice/tug!38
2025-01-31 16:13:27 +01:00
Max Luebke
a312abfe05 ci: Fix pages pipeline 2025-01-31 16:12:45 +01:00
Max Luebke
8fcc77bc60 doc: Add documentation for new Diffusion constructors and functions 2025-01-31 15:58:13 +01: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 Luebke
5c68f8b6b2 refactor: Change enums to scoped enums and simplify output option validation 2024-12-11 19:56:54 +01:00
Max Luebke
477d943bf0 refactor: Introduce BaseSimulationGrid template class and update domain handling 2024-12-11 19:53:45 +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
13f6556f54 refactor: Use assert instead of custom throw for invalid argument in TugUtils.hpp 2024-12-10 08:59:16 +01:00
Max Lübke
a796acbc1d BREAKING CHANGE: Rename Simulation to Diffusion
chore: Cleanup of applications
2024-12-10 08:55:50 +01:00
Max Lübke
432621f227 Merge branch '14-documentation-update' into 'main'
Resolve "Documentation Update"

Closes #14

See merge request naaice/tug!36
2024-12-10 08:21:12 +01:00
Max Lübke
636fcfaec3 feat: Update CMake configuration and add README documentation 2024-12-10 08:20:26 +01:00
Max Lübke
bed888d1fc Merge branch 'ml/port-to-gtest' into 'main'
feat: Integrate GoogleTest for unit testing and update CI configuration

See merge request naaice/tug!35
2024-12-06 11:22:56 +01:00
Max Lübke
6981373deb feat: Integrate GoogleTest for unit testing and update CI configuration 2024-12-06 09:52:45 +01:00
Marco De Lucia
a986242852 Merge branch 'fixreadme' into 'main'
fix: links/gitlab group in README

See merge request naaice/tug!34
2024-11-27 11:26:42 +01:00
Marco De Lucia
8d83eeef29 fixed links/gitlab group in README 2024-11-27 11:23:21 +01:00
Max Lübke
ac693caea9 Merge branch 'ml/row-major-mat' into 'main'
feat: Add support for setting concentrations from a pointer

See merge request naaice/tug!32
2024-06-10 16:05:09 +02:00
Max Luebke
74b46f111b perf: Minimize copy operations 2024-06-10 16:04:13 +02:00
Max Luebke
c01d8e8607 refactor: Use Row-major matrix internally 2024-06-10 16:01:47 +02:00
Max Lübke
00b0583504 Merge branch 'fix-Simulation-setNumberThreads-parameter' into 'main'
[Fix] Fix `setNumberThreads()`-method parameter in Simulation.hpp.

See merge request naaice/tug!31
2024-06-06 11:53:24 +02:00
DannyPuhan
f7dbf3abaf [Fix] Fix setNumberThreads()-method parameter in Simulation.hpp. 2024-06-06 08:59:02 +02:00
Max Luebke
e64e8dfd5e feat: Add support for setting concentrations from a pointer
refactor: Use Row-major matrix internally
2024-06-03 23:48:54 +02:00
Max Lübke
449647010a Merge branch 'get-set-inner' into 'main'
Add methods to get and set inner constant boundary conditions

See merge request naaice/tug!30
2024-04-04 14:45:31 +02:00
Max Luebke
5193f36e1f Add methods to get and set inner constant boundary conditions 2024-04-04 12:45:04 +00:00
Max Lübke
9d2c4b1485 Merge branch 'extend-testcase' into 'main'
Add check for concentration at grid position (2, 2)

See merge request naaice/tug!29
2024-04-04 14:36:46 +02:00
Max Luebke
f86836f637 Add check for concentration at grid position (2, 2) 2024-04-04 14:36:23 +02:00
Max Lübke
b13337279f Merge branch 'inner_boundaries' into 'main'
Add support for inner boundaries with 2D-ADI

See merge request naaice/tug!28
2024-04-04 14:34:09 +02:00
Max Luebke
bd3cdde0fb Add constant inner cell concentration with test cases 2024-04-04 14:33:19 +02:00
Max Luebke
7ae35dccf9 Add functions to retrieve inner boundary rows and columns 2024-04-04 14:18:12 +02:00
Max Luebke
cb0c21eab9 Add inner boundary conditions for 1D and 2D grids 2024-04-04 13:48:10 +02:00
Max Lübke
2dc959b993 Merge branch 'poet' into 'main'
Add changes required for POET into main

See merge request naaice/tug!27
2024-04-04 13:09:28 +02:00
Max Luebke
332f419faf Add doctest library to ci.Dockerfile 2024-04-04 13:08:04 +02:00
Max Luebke
b104fdcf52 Remove doctest-src subproject 2024-04-02 10:22:26 +00:00
Max Luebke
f71bf2371f Update doctest library and fix target link 2024-04-02 10:21:00 +00:00
Max Lübke
3ffa0ef624 Update testGrid.cpp with correct dimensions for 2D Grid64 2024-03-27 20:37:42 +00:00
Max Lübke
8c0687a6cd Update grid dimensions validation to handle 1D grids 2024-03-27 20:11:45 +00:00
Max Lübke
1679dc84d2 Add serialization and deserialization methods to Boundary class 2024-03-27 15:35:16 +00:00
Max Lübke
eb14c53314 Merge branch 'fix_neg_values' into 'main'
Fix possible NaN @ calcAlphaIntercell

See merge request naaice/tug!26
2024-03-14 09:10:52 +01:00
Max Luebke
4328ef3436 Fix possible NaN @ calcAlphaIntercell 2024-03-14 09:08:33 +01:00
Max Lübke
4867261f9d Merge branch 'fix-alpha' into 'main'
Fix alpha intercell calculation

See merge request naaice/tug!25
v0.4.2
2024-03-05 10:26:43 +01:00
Max Lübke
2f737ce09e Fix alpha intercell calculation 2024-03-05 10:26:15 +01:00
Max Lübke
48000710c7 Merge branch 'fix-boundaries' into 'main'
Remove check for negative concentration in Boundary.hpp

See merge request naaice/tug!24
2024-03-04 21:29:21 +01:00
Max Lübke
69690c0afa Remove check for negative concentration in Boundary.hpp 2024-03-04 21:28:30 +01:00
Max Lübke
fbb0c08024 Merge branch 'fix-btcs' into 'main'
fix: remove factor 2 in 'middle' coefficient of explicit part (closed)

See merge request naaice/tug!23
2023-12-19 16:08:48 +01:00
Max Lübke
61d6cfc5cb fix: remove factor 2 in 'middle' coefficient of explicit part (closed)
test: add test case with homogeneous field and same values as const
boundary condition
v0.4.1
2023-12-19 16:04:57 +01:00
Max Lübke
f651c1d158 Merge branch 'fix-dt' into 'main'
fix: use maximum alpha for CFL condition

See merge request naaice/tug!22
2023-12-04 09:13:55 +01:00
Max Lübke
db1a2b2e5c fix: use maximum alpha for CFL condition 2023-12-04 09:12:10 +01:00