Commit Graph

85 Commits

Author SHA1 Message Date
jpekkila
30b7cda35c Testing the git commands for creating feature branches and merging them back to master 2019-07-01 14:42:36 +03:00
jpekkila
a3ca6cf132 Added skeletons for packing parts of the ghost zones into buffers to speed up data transfers 2019-07-01 13:56:05 +03:00
jpekkila
d9be66f65f NOTE: Renamed LINDUCTION to LMAGNETIC throughout the project. 2019-07-01 13:40:24 +03:00
jpekkila
0c63d55fd7 Worked around a compiler bug in CUDA 9.1, which caused an "Internal Compiler Error (codegen): "there was an error in verifying the lgenfe output!". Apparently the compiler got confused by overloaded is_valid() if the input parameter was not passed as a reference in both cases. 2019-06-29 10:49:15 +03:00
jpekkila
9b45716186 Modified user.h such that astaroth compiles with Pencil Code. Note that this is a temporary fix: we should ultimately set the default parameters for all the logical switches in astaroth.h and let the user redefine them at will, either with the DSL or with user.h 2019-06-27 18:12:14 +03:00
jpekkila
b694702cf8 Removed an old comment 2019-06-27 17:11:21 +03:00
jpekkila
30c21ff420 Formatting: defines stay indented if clang-format is turned off temporarily 2019-06-27 13:31:50 +03:00
jpekkila
8ca09668c1 Added an advance notice about LINDUCTION to be renamed to LMAGNETIC in the near future throughout the project. LMAGNETIC would be better name since he define is used to enable the magnetic field. 2019-06-27 13:28:52 +03:00
jpekkila
fc96283c37 Reordered logical flags in a more logical order, density -> hydro -> induction -> entropy -> others 2019-06-27 13:22:14 +03:00
jpekkila
75fb756ad4 Autoformatted with clang-format. Clang-format does not support indented defines as far as I know, so this will have to do. The alternative would be not to use autoformatting at all (or some other tool). 2019-06-27 13:16:41 +03:00
jpekkila
7e40889245 Grid and subgrid dimensions are now only printed if VERBOSE_PRINTING == 1 2019-06-27 12:54:36 +03:00
jpekkila
44a1160962 Added an additional comment 2019-06-27 12:50:34 +03:00
jpekkila
401172bb74 Formatting 2019-06-26 19:43:37 +03:00
jpekkila
ee075e6741 Set the default number of devices to 0 (this is updated at acInit() 2019-06-26 19:42:49 +03:00
jpekkila
65c8a39cb9 Removed old comments and renamed USER_PROVIDED to USER_PROVIDED_DEFINES to be more explicit 2019-06-26 18:56:40 +03:00
jpekkila
cda17c9b08 VERBOSE_PRINTING flag is now globally used in the whole program and should be used to suppress development/debugging-related printing. Also added comments to the new interface function acCheckDeviceAvailability and made it free from side effects. 2019-06-26 18:50:15 +03:00
Matthias Rheinhardt
0bc8b7e827 MR: VTXBUF_DENSITY -> VTXBUF_LNRHO, minor 2019-06-26 17:14:24 +03:00
Matthias Rheinhardt
57a39fd848 MR: USER_PROVIDED 2019-06-26 17:10:51 +03:00
Matthias Rheinhardt
daddde15b8 MR: encapsulated user stuff 2019-06-26 17:06:46 +03:00
Matthias Rheinhardt
522da0041f MR: new name for GetDevice 2019-06-26 16:53:56 +03:00
Matthias Rheinhardt
25f1ec7959 MR: intro'd VERBOSE_PRINT switch 2019-06-26 15:13:56 +03:00
Matthias Rheinhardt
174e29add6 MR: added PENCIL_ASTAROTH 2019-06-26 15:11:32 +03:00
jpekkila
ffe9df1bb0 LFORCING was turned off in stencil_process and the autotests failed, re-enabled 2019-06-26 14:08:56 +03:00
jpekkila
6bfc5f04f7 Added tighter bounds for gcc and nvcc versions. There was a bit of an chicken-and-egg issue: we need gcc 6.0 in order to get bug 48891 (see gcc bugzilla) fixed, but cuda < 9 supports gcc only up to 5.3. This is not a perfect solution, f.ex. ubuntu 16.04 ships with gcc 5.4 but with the fix backported from later versions so in practice that would also work but is not accepted anymore. 2019-06-26 13:33:03 +03:00
jpekkila
912dffca4f Renamed old single-GPU-only headers in core/kernels to avoid confusion. Only kernels.cuh is used for reductions, integration and boundary conditions at the moment. 2019-06-25 13:58:59 +03:00
Miikka Vaisala
a574d6e4c3 To be friendly with the autotest. 2019-06-25 14:50:43 +08:00
Miikka Vaisala
b1a2d9603c Cleaning the forcing part. 2019-06-25 14:48:47 +08:00
Miikka Vaisala
44f26cde42 Corrected a stencil bug from der6 2019-06-25 11:25:14 +08:00
Miikka Vaisala
59043e586b Added a missing switch to stencil_assembly.sas. 2019-06-24 18:03:24 +08:00
Miikka Vaisala
55ecdd0ac8 Working upwinding!
It works and it looks so much better than without.
2019-06-24 16:58:06 +08:00
Miikka Vaisala
d0b27a0347 Upwinding terms now compile.
Not tested yet.
2019-06-24 16:32:21 +08:00
Miikka Vaisala
57881e5961 Implementetion for hyperdiffusion to be tested later. 2019-06-21 17:29:06 +08:00
Miikka Vaisala
f2a33bf4f8 Starting with derivatives for upwinding. 2019-06-21 16:53:04 +08:00
jpekkila
a5ab388af7 Fixed a compilation error when not using entropy. This is a temporary workaround. There is no model solution for hydro only, therefore autotesting will break if entropy is not used. Note: LINDUCTION, LENTROPY and other logical flags are duplicated in both astaroth.h and stencil_process.sps. These flags are not linked and there will be errors and weird behaviour if a flag is set in one file and not in another. 2019-06-19 20:18:25 +03:00
jpekkila
2310186c71 Added a skeleton function for updating an arbitrary block inside the computational domain instead of the whole mesh 2019-06-19 19:43:46 +03:00
jpekkila
383d2b696c Got a warning about potentially too small array, increased size to avoid overflows 2019-06-19 16:58:24 +03:00
jpekkila
4ee772cf5d Set the minimum gcc version required in CMakeLists.txt 2019-06-19 16:57:47 +03:00
jpekkila
a7515fbbd7 Made the simple forcing to scale with dt s.t. it does not explode so easily 2019-06-19 16:34:23 +03:00
jpekkila
f3cbc4984c Enabled toy forcing by default for testing purposes. Note that there are two LFORCING switches at the moment: one in astaroth.h and one in acc/mhd_solver/stencil_process.sps. The switches are not linked and the tests fail or simulations generate unexpected results if both switches are not set to the same value. This will be fixed in the near future. 2019-06-19 16:14:46 +03:00
jpekkila
6da061b854 Fixed a bug in the Astaroth compiler: the boilerplate code for kernels was generated for all nested compound statements instead of just the top-level one 2019-06-19 16:10:29 +03:00
jpekkila
e580f6f5d7 Improvements to GPU forcing (now applied only at substep 2) 2019-06-19 16:08:44 +03:00
jpekkila
feef97563d Added a model solution for forcing. Accidentally also autoformatted the file. Finally, removed unused cruft 2019-06-19 16:06:57 +03:00
jpekkila
2c5d8bb9ae Merge branch 'master' of https://bitbucket.org/jpekkila/astaroth 2019-06-19 14:29:59 +03:00
jpekkila
2eacb98246 Now acBoundcondStep is applied after acIntegrate to ensure that the whole grid visible to the host, including boundaries, are always up to date 2019-06-19 14:29:07 +03:00
Miikka Vaisala
68af32b7ef Small edit to docs 2019-06-19 17:11:46 +08:00
Miikka Vaisala
40b4a61a4c Added DEPRECATED marking to the old forcing function.
I do not want to remove it yet. Not until something like that exists in the DSL code.
2019-06-19 13:46:03 +08:00
jpekkila
b5753f0bec Played around with forcing and cleaned the example implementation a bit 2019-06-18 17:40:27 +03:00
jpekkila
d4907332f2 Disabled automated formatting in some parts where overfull lines are easier to read 2019-06-18 16:51:53 +03:00
jpekkila
8864266042 Autoformatted all CUDA/C/C++ code 2019-06-18 16:42:56 +03:00
jpekkila
6fdc4cddb2 Updated the autoformatting configuration 2019-06-18 16:39:30 +03:00