537 Commits

Author SHA1 Message Date
nebmit
28cb5416f5
feat: added option to modify singular boundary elements 2023-12-05 18:26:00 +01:00
nebmit
7abc911a09
chore: remove unnecessary dependency 2023-12-05 17:45:48 +01:00
nebmit
63dd329047
test: added slurm process creation 2023-12-05 09:41:20 +01:00
nebmit
3f7163e0af
feat: dynamic simulation accepts a vector of workers to compute on
[skip ci]
2023-12-05 09:29:36 +01:00
nebmit
39eacff904
style: applied linting recommendations 2023-12-04 19:21:23 +01:00
nebmit
1e57d8b5b5
docs: added docstrings for public functions
[skip ci]
2023-12-04 19:16:36 +01:00
nebmit
01b2247344
test: added package unit tests
Created unit tests for Boundary, Grid, Simulation and Dynamic Simulation.

[skip ci]
2023-12-04 09:20:19 +01:00
nebmit
9f952c91b0
feat: modifed structure into a Julia compliant package
Added Project.toml and Manifest.toml.
Moved sourcecode to julia/TUG/src/

[skip ci]
2023-12-04 09:15:08 +01:00
nebmit
7331e45eea
feat: added DynamicSimulation.jl
Added dynamic simulation for use with distributed systems and incremental simulations
Added module based exports
Added test for distributed systems

[skip ci]
2023-12-04 08:23:11 +01:00
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