528 Commits

Author SHA1 Message Date
nebmit
e7f1e3eb23
test: added large FTCS testcase
[skip ci]
2023-12-01 19:36:59 +01:00
nebmit
5660783929
test: added FTCS testcase with large timestep
[skip ci]
2023-12-01 14:14:56 +01:00
nebmit
6269805eba
feat: added timestep adjustment for FTCS
[skip ci]
2023-12-01 11:36:50 +01:00
nebmit
51705e3eef
perf: optimize FTCS calculation for enhanced performance
Refactored calculation functions to combine and simplify logic.
Revised functions to accept direct parameters instead of operating on the entire grid.
Resulted in significant performance improvements through enhanced compiler optimization.

[skip ci]
2023-11-30 16:09:03 +01:00
nebmit
97e318ff5d
perf: added threading
[skip ci]
2023-11-30 15:09:39 +01:00
nebmit
fe7f5c9b4a
test: added FTCS julia/cpp tests
[skip ci]
2023-11-30 14:36:27 +01:00
nebmit
2b478c1dd4
feat: added julia FTCS implementation 2023-11-30 13:53:39 +01:00
nebmit
f538658e82
perf: removed solution matrix computation approach
[skip ci]
2023-11-28 12:20:09 +01:00
nebmit
0eb96ed0ad
perf: solution vector creation using matrices
Modified the createSolutionVector function to use matrix operations
Additionally added a function to create the entire solution matrix.
This function, whilst currently active, is better suited for GPU usage.

[skip ci]
2023-11-22 17:43:52 +01:00
nebmit
1cdeb8d7a7
refactor!: organized and added getters/setters
!Removed solver parameter from simulation.

[skip ci]
2023-11-22 13:48:09 +01:00
nebmit
cfeb935c93
perf: moved alpha calculation out of 1D step
[skip ci]
2023-11-21 18:53:20 +01:00
nebmit
3c080c7149
perf: added matrix operations and multithreading
Using matrix operations wherever possible
Added support for multithreading
Moved simulation loop into BTCS to minimize memory allocation
Switched to Tridiagonal Coefficient Matrix

[skip cli]
2023-11-21 17:41:09 +01:00
nebmit
a064f9de24
test: added large scale test with value patterns
[skip ci]
2023-11-21 16:41:41 +01:00
nebmit
88ecf82477
test: moved to singular csv output
Changed testcases to use CSV_OUTPUT_ON isntead of CSV_OUTPUT_VERBOSE

[skip ci]
2023-11-21 13:55:37 +01:00
nebmit
4ba02e30de
test: added large scale test 2023-11-20 15:52:56 +01:00
nebmit
957f73bb83
refactor!: structural changes
Improved julia structs and removed redundant calculations

[skip ci]
2023-11-20 12:16:15 +01:00
nebmit
d6df09ca5f
feat: added julia BTCS implementation 2023-11-19 20:30:58 +01:00
Max Lübke
ee77b5f7f3 Merge branch 'theory' into 'main'
docs: add theory part from HP report

See merge request naaice/tug!20
2023-11-01 10:41:19 +01:00
Max Lübke
141028548b docs: add theory part from HP report 2023-11-01 10:40:38 +01:00
Max Lübke
32d6a4e3ec Merge branch 'contributors' into 'main'
doc: adding contributors

See merge request naaice/tug!19
2023-11-01 09:05:26 +01:00
Max Lübke
97b43e1a16 doc: adding contributors 2023-11-01 09:04:55 +01:00
Max Lübke
39541a2054 Merge branch 'naaice' into 'main'
BREAKING CHANGE: tug as header-only library

See merge request naaice/tug!18
2023-10-27 13:18:03 +02:00
Max Lübke
5a39f5377e doc: update example pages 2023-10-19 13:09:22 +02:00
Max Lübke
77914ea69f fix: include optional output of csv during thomas algorithm
fix: marco's benchmark
2023-10-19 12:23:23 +02:00
Max Lübke
8456f2212d BREAKING CHANGE: tug as header-only library
build: installation of library is now possible
2023-10-19 12:20:39 +02:00
Marco De Lucia
0471f3d8f9 fix: readded "using namespace tug;" in naaice/BTCS_2D_NAAICE.cpp 2023-10-16 17:34:52 +02:00
Marco De Lucia
8cfb61587d feat: add naaice/NAAICE_dble_vs_float.cpp 2023-10-16 17:31:43 +02:00
Marco De Lucia
9a3fc67885 Fix: Eigen::MatrixX<T> instead of Eigen::MatrixXd in Grid.hpp 2023-10-16 12:11:52 +02:00
Max Lübke
5196c36ec5 fix: reintroduce tug namespace 2023-09-15 11:38:13 +02:00
Max Lübke
ba627b6624 feat: rewrite library as template library 2023-09-15 11:38:08 +02:00
Max Lübke
46f9cef3a9 Merge branch 'main' into naaice 2023-09-15 08:15:19 +02:00
Max Lübke
00cafb70dc BREAKING CHANGE: reworked API
BREAKING CHANGE: added heterogeneous diffusion

BREAKING CHANGE: added FTCS scheme

See merge request naaice/tug!16
2023-09-15 07:49:53 +02:00
Max Lübke
5099fd23a9 fix: add namespaces to example executables 2023-09-15 07:48:21 +02:00
Max Lübke
8e5c1ad035 refactor: implement coeff boundary functions as template constexpr 2023-09-15 07:35:05 +02:00
Max Lübke
819db24e18 Merge branch 'main' into 'hannes-philipp'
# Conflicts:
#   scripts/Adi2D_Reference.R
#   scripts/HetDiff.R
2023-09-14 16:27:39 +00:00
Max Lübke
6c1ccb90fd refactor: implement coeff boundary functions as template constexpr 2023-09-14 16:21:45 +02:00
Max Lübke
ef1ccd4c14 refactor: various changes to BTCS functions 2023-09-14 16:21:20 +02:00
Max Lübke
a0d835e243 refactor: inline Coeff Functions 2023-09-14 16:21:20 +02:00
Max Lübke
0eba63f875 refactor: core adjustments to Simulation class
perf: const qualification of local vairables
2023-09-14 16:21:20 +02:00
Max Lübke
edaad7cc04 refactor: core adjustment to Boundary class
perf: const qualification of local variables
2023-09-14 16:21:20 +02:00
Max Lübke
f0d5220a48 refactor: adjust const qualifications for Grid class 2023-09-14 14:54:34 +02:00
Max Lübke
a21023ec9d feat: make OpenMP parallelization optional 2023-09-14 13:31:31 +02:00
Max Lübke
587bb5a622 ci: remove 'modernize' from clang-tidy list 2023-09-14 13:12:38 +02:00
Max Lübke
c5979cd6f4 ci: add clang openmp includes 2023-09-14 12:40:06 +02:00
Max Lübke
4b4c439c68 doc: slight change to instructions
doc: add LICENSE
2023-09-14 12:34:12 +02:00
Max Lübke
da6d004e16 chore: cleanup of repository 2023-09-14 12:22:52 +02:00
Max Lübke
61a4b0ae8a build: make compilation of examples optional
build: set default values of optional options to OFF
2023-09-14 12:16:35 +02:00
Max Lübke
3106c2b8d5 test: add Boundary test case 2023-09-14 12:11:37 +02:00
Max Lübke
8af03777b8 fix: add namespaces to executables 2023-09-14 12:05:14 +02:00
Max Lübke
2096ee5cc3 refactor: remove all 'using namespaces' from library 2023-09-14 12:04:03 +02:00