Commit Graph

268 Commits

Author SHA1 Message Date
jpekkila
b61617ee0f Enabled upwinding by default and updated the model helical forcing with the hotfixed changes from earlier commits. Autotests kinda pass (we get 1 failure but this is likely due to inaccuracies of the trigonometric functions used in helical forcing. The error is very close to the acceptable error bound). 2019-08-07 15:53:38 +03:00
Miikka Vaisala
0bb568642f Still one bug 2019-08-07 19:10:39 +08:00
Miikka Vaisala
7fdbd76aa2 The default stencil_defines.h setting for merge. 2019-08-07 19:05:14 +08:00
Miikka Vaisala
738b2abaf3 Supposedly working autotest for upwinding. 2019-08-07 18:57:53 +08:00
Miikka Vaisala
065f20819f Merge branch 'master' into bugfix/upwind_autotest_20190807 2019-08-07 18:23:03 +08:00
Miikka Vaisala
7e6361a92a Forcing hotfix.
Will need more investigation before scientific runs. Now just something to correct the obvious bug.
2019-08-07 16:04:48 +08:00
Miikka Vaisala
7cc524b78b Adapting for autotest but i, j, k indexing is confusing. 2019-08-07 14:57:51 +08:00
Miikka Vaisala
15f0fa6aa5 Useful .gitignore added 2019-08-07 14:07:45 +08:00
jpekkila
cf6b75f82a Merged in cmakelist_rewrite_and_C_API_conformity_07-26 (pull request #1) 2019-08-07 06:53:17 +03:00
Miikka Vaisala
9af5ba2156 Copied elements in the DSL form.
Needs to be adapted at the next stage.
2019-08-07 11:11:27 +08:00
jpekkila
a6fca069a7 Added a comment about helical forcing 2019-08-06 19:47:03 +03:00
jpekkila
6b53eb31ef Errors with forcing now down from 3 to 1 after switching from fast & inaccurate trig functions to more accurate ones 2019-08-06 19:29:40 +03:00
jpekkila
d7e26e8f21 Added forcing from stencil_process.sps to autotests. 3 Tests fail. 2019-08-06 19:15:28 +03:00
jpekkila
0b7f43da91 Updated 3rdparty .gitignore 2019-08-06 19:13:06 +03:00
jpekkila
0e0ace3970 Pure hydro now works with autotests 2019-08-06 18:07:29 +03:00
jpekkila
abf4815174 Merge branch 'master' into cmakelist_rewrite_and_C_API_conformity_07-26 2019-08-06 17:53:53 +03:00
jpekkila
5870081645 Split kernels.cuh into bounconds.cuh, integration.cuh and reductions.cuh 2019-08-06 17:50:41 +03:00
jpekkila
405fa4d6d6 Moved old kernels to kernels/deprecated 2019-08-06 17:46:52 +03:00
jpekkila
13c1bf272b Removed old/outdated/unused scripts 2019-08-06 17:44:43 +03:00
jpekkila
1e9ac6edf0 Added comments to the autotesting script 2019-08-06 17:43:39 +03:00
jpekkila
e4d9898f35 Added improvements to autotest.cc 2019-08-06 17:40:27 +03:00
jpekkila
614a0a1198 Added an autotesting script which tests for hydro, magnetic and mhd. Currently hydro and magnetic fail but full mhd works. This indicates that the equations in the hydro and magnetic conditionals have been changed but the autotests have not been updated to correspondingly 2019-08-06 17:40:02 +03:00
jpekkila
280804a438 Merge branch 'master' into cmakelist_rewrite_and_C_API_conformity_07-26 2019-08-06 15:14:33 +03:00
jpekkila
e4b981fc62 Removed the O2 flag since cmake still defines the O3 flag in CMAKE_CXX_FLAGS_RELEASE and it's confusing which one gcc chooses if both O3 and O2 are passed during compilation. If the issue was the march=native flag then this should also work on Tiara 2019-08-06 14:59:41 +03:00
jpekkila
5f4246fb42 Standalone now uses O2 optimization level instead of O3. Also removed -march=native since this causes issues if the program is compiled on a different architecture than it is run on. Since we do not do heavy arithmetic on the host side and the host code is not performance-critical part of the code, -march-native is not very useful anyways 2019-08-06 14:46:13 +03:00
jpekkila
da76fca0dc Added a test for building an MPI project. Building for the MPI and C API tests is now also disabled by default. 2019-08-05 18:30:48 +03:00
jpekkila
66fa346118 Added a copyright text to ctest 2019-08-05 18:30:39 +03:00
jpekkila
f3de2fa03c Made globalVertexIdx available during preprocessing. NOTE: potentially dangerous. globalVertexIdx should never be used for reading data from the vertex buffers. 2019-08-05 15:03:02 +03:00
jpekkila
92376588ba Merge branch 'master' into cmakelist_rewrite_and_C_API_conformity_07-26 2019-07-31 20:12:22 +03:00
jpekkila
62100b1140 Merge branch 'master' of https://bitbucket.org/jpekkila/astaroth 2019-07-30 14:28:25 +03:00
jpekkila
69deef66fe Added sum reduction. NOTE: Scalar sum does not pass the automated test but vector sum does. I couldn't see anything wrong with the code itself and I strongly suspect that the failures are caused by loss of precision due to summing a huge amount of numbers of different magnitudes. However I'm not yet completely sure. Something like the Kahan summation algorithm might be useful if the errors are really caused by fp arithmetic. 2019-07-30 14:28:18 +03:00
jpekkila
fdc1e7333c Added macros for getting int3 and AcReal3 device constants from within kernels (and DSL). 2019-07-30 09:10:06 +00:00
jpekkila
d614a03653 Made CMake to use the default compiler on system PATH. If the generic compiler names (cc, c++) point to some old version, then cmake would otherwise use those instead of the latest available compiler. 2019-07-29 16:07:31 +03:00
jpekkila
a3359b0d04 CONFIG_PATH is now supplied by ac_mkbuilddir. While using would be a bit more idiomatic, ASTAROTH_CONF_PATH is probably safer since ac_mkbuilddir.sh does the copying and knows for sure what the correct path is. 2019-07-29 15:55:27 +03:00
jpekkila
9796d5e981 The previous commit to ac_mkbuilddir.sh was not enough. Added a line that makes the script to stop if any of the commands fail to avoid cluttering the base astaroth directory. In my case the issue was permission denied when trying to create a project directory in /MYSCRATCH (system root directory) instead of MYSCRATCH (astaroth/MYSCRATCH) 2019-07-29 15:35:51 +03:00
jpekkila
7b5a02bf0f The previous commit to ac_mkbuilddir.sh was not enough. Added a line that makes the script to stop if any of the commands fail to avoid cluttering the base astaroth directory. In my case the issue was permission denied when trying to create a project directory in /MYSCRATCH (system root directory) instead of MYSCRATCH (astaroth/MYSCRATCH) 2019-07-29 15:35:17 +03:00
jpekkila
abe4dfb4fe ac_mkbuilddir.sh did not stop if the directory specified by the user did not exist. This lead to messing up the base astaroth directory with temporary cmake files. Added -p flag to mkdir to create parent directories if necessary to avoid this 2019-07-29 15:22:44 +03:00
jpekkila
5801144336 ac_mkbuilddir.sh did not stop if the directory specified by the user did not exist. This lead to messing up the base astaroth directory with temporary cmake files. Added -p flag to mkdir to create parent directories if necessary to avoid this 2019-07-29 15:21:15 +03:00
jpekkila
7c256d3bb3 Added a comment about a redundant variable 2019-07-26 15:13:19 +03:00
jpekkila
c9fafe41e5 Tidied the CMakeLists, moved stuff to more logical places and added comments. Also tested that ALTER_CONF=ON still works 2019-07-26 15:12:55 +03:00
jpekkila
5044228967 The text editor I use to edit stuff remotely is a complete piece of &^$%$, does not synchronize the files correctly. This commit fixes the issues introduced in the last commit 2019-07-26 14:22:22 +03:00
jpekkila
b90d261e89 Removed an unnecessary include from the root CMakeLists.txt 2019-07-26 14:18:11 +03:00
jpekkila
818893a0ea Fixed stray comma in CUDA_ARCH_FLAGS 2019-07-26 14:10:17 +03:00
jpekkila
26316a4d15 The standalone library is now compiled in parallel with the core library. Slightly faster. 2019-07-23 21:26:58 +03:00
jpekkila
be44354b33 Astaroth does not require any additional libraries to be included, which is good. Previously required CUDA and C/C++ math libraries. 2019-07-23 21:03:42 +03:00
jpekkila
f0d1fba55c The pure C test works again. 2019-07-23 21:00:00 +03:00
jpekkila
f322bc8b37 Rewrote all CMakeLists. Now much cleaner and there's a clear separation during compilation between the core and standalone modules. 2019-07-23 20:50:37 +03:00
jpekkila
b65454d523 Stashed some testing files used to make sure that the library can also be used from pure C projects (better compatibility). These changes will never go to master as-is. 2019-07-23 18:24:47 +03:00
jpekkila
0282f45077 Forgot extern C 2019-07-23 16:11:17 +03:00
jpekkila
e5172e2a9a Moved more stuff out of astaroth.h to astaroth_defines.h. I'm not particularly sure what's the best way to arrange the include files. These changes are just for readability so it's very safe to move things around though. 2019-07-23 16:06:54 +03:00