Commit Graph

83 Commits

Author SHA1 Message Date
Miikka Vaisala
b4cd92da0c Now compiles and runs.
PLEASE NOTE THAT FLAGS NEED TO BE SET SEPARATELY IN simulation.cc and renderer.cc FOR LSINK and LFORCING!
2019-09-02 14:47:58 +08:00
Miikka Vaisala
02ac6c956f Desperately trying to port the new changes of DSL.
Still work to do.
2019-09-02 14:04:27 +08:00
Miikka Vaisala
6eeb225924 Merge branch 'master' into sink_20190723
Hopefully the merge isssues were resolved.
2019-09-02 11:58:48 +08:00
jpekkila
20138263f4 The previous attempt (dsl_feature_completeness_2019-08-23) to enable arbitrary kernel functions was a failure: we get significant performance loss (25-100%) if step_number is not passed as a template parameter to the integration kernel. Apparently the CUDA compiler cannot perform some optimizations if there is a if/else construct in a performance-critical part which cannot be evaluated at compile time. This branch keeps step_number as a template parameter but takes rest of the user parameters as uniforms (dt is no longer passed as a function parameter but as an uniform with the DSL instead). 2019-08-27 17:36:33 +03:00
Miikka Vaisala
1410e57866 Preparing isothermal collapse. 2019-08-22 18:18:30 +08:00
Miikka Vaisala
a81bc22fb6 Write now sink infor to time series. Also a bug cerrection for sink switch. 2019-08-22 11:52:02 +08:00
jpekkila
5d2b658fb0 Autoformatted the DSL files 2019-08-20 18:41:26 +03:00
JackHsu
5b686bc659 Fixed on/off switch for forcing and accretion, now forcing only happens for first 1000 steps (currently hard-coded), and accretion only happen after 1000 steps. 2019-08-20 23:12:42 +08:00
jpekkila
51cf1f1068 The C header is now generated from the DSL, stashing the changes just to be sure since I might overwrite something when updating the compilation scripts to work with this new scheme 2019-08-19 18:19:28 +03:00
jpekkila
bcdd827a4f Added a proper declarations for all user-specified uniform. Note: built-in uniforms are not correctly translated into CUDA 2019-08-19 17:05:56 +03:00
jpekkila
0208d55e4e Moved STENCIL_ORDER and NGHOST out of user-defined parameter as these are actually internal defines used to configure the built-in functions. Additionally, renamed all explicitly declared uniforms from dsx -> AC_dsx in the DSL in preparation for having clear connection between DSL uniforms and the library parameter handles created by the user (AcRealParam etc) 2019-08-19 16:40:47 +03:00
Miikka Vaisala
5d93d743c7 Improved sink particle stability vie Truelove criterion. 2019-08-19 14:38:36 +08:00
Miikka Vaisala
1bfb0390ad Seemingly reasonable sink for both density and velocity. 2019-08-16 13:29:34 +08:00
Miikka Vaisala
f921840505 Changed to step function 2019-08-16 11:44:41 +08:00
Miikka Vaisala
a8fbced89d Error correction. 2019-08-16 11:36:39 +08:00
Miikka Vaisala
53bd3d4aa4 Correction factor for the equation. 2019-08-16 11:13:21 +08:00
Miikka Vaisala
60f2af0971 Renamed accretion_profile -> sink_accretion. More intuitive. 2019-08-16 09:52:12 +08:00
JackHsu
6c50c0a40e sink effetc in equations. 2019-08-15 19:23:26 +08:00
JackHsu
a5bb56873a Now resets accretion buffer at every step. 2019-08-15 17:51:39 +08:00
JackHsu
c7df5be068 tried new accretion profile, and added some to-do's. 2019-08-14 18:43:22 +08:00
JackHsu
56c51e5315 fixed the undefined error in compilation. 2019-08-13 18:36:12 +08:00
JackHsu
0587d08b01 Had some rough draft of accretion criterion. 2019-08-13 18:31:57 +08:00
JackHsu
927a5e74f2 Made accretion time-dependent now, need to come up with better accretion crition than truelove. 2019-08-13 18:06:29 +08:00
JackHsu
ff59431d65 Added modularized term for accretion range, which is some wave function, and module that'll allow time-dependent accretion. 2019-08-13 17:43:52 +08:00
JackHsu
e7ff447510 Merge branch 'master' into sink_20190723
Conflicts:
	acc/mhd_solver/stencil_process.sps

I've mannaully resolved the conflict, only that I'm leaving int3 globalVertexIdx as is, as instructed by Miikka.
2019-08-12 14:01:19 +08:00
jpekkila
b53cabbc44 Made the DSL syntax less confusing: Input and output arrays are now ScalarField and VectorFields instead of scalars and vectors. C++ initializers are now also possible, removing the need to declare Fields as int or int3 which was very confusing, like "what, you assing an int value to a real, what the &^%@?" 2019-08-08 21:07:36 +03:00
JackHsu
89128af44b added update_accretion_buffer. 2019-08-08 15:53:41 +08:00
JackHsu
c1b99b2b37 made step-wise buffer update. 2019-08-08 15:03:42 +08:00
JackHsu
e5540f6278 added some vertex buffer stuff, not completed. 2019-08-08 14:08:42 +08:00
JackHsu
baac7c8d12 Merge branch 'master' into sink_20190723
Conflicts:
	acc/mhd_solver/stencil_defines.h
	src/standalone/simulation.cc
2019-08-08 12:17:28 +08:00
jpekkila
fd94b6321d Renamed globalGrid.n to globalGridN 2019-08-07 18:16:34 +03:00
jpekkila
10200e4dd5 Merge branch 'master' into node_device_interface_revision_07-23 2019-08-07 16:25:33 +03:00
jpekkila
e2f5cced1e Renamed dox -> dot 2019-08-07 16:08:03 +03:00
JackHsu
2f14bb2a30 Finished accretion_profile function and started a draft of update_accretion_buffer. 2019-08-07 17:14:26 +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
JackHsu
3adec853df made changed to accretion_profile function, still not fully finished but close. 2019-08-07 13:59:12 +08:00
jpekkila
a930864f42 Merge branch 'master' into node_device_interface_revision_07-23 2019-08-07 07:43:28 +03:00
JackHsu
2a26b58c38 Attempted to add accretion_profile function, and made it adjustable within astaroth.conf 2019-08-07 11:21:24 +08:00
Miikka Vaisala
e199ca196d Merge branch 'master' into sink_20190723 2019-08-07 10:46:23 +08:00
jpekkila
a6fca069a7 Added a comment about helical forcing 2019-08-06 19:47:03 +03:00
jpekkila
3726847683 Made globalGridN and d_multigpu_offsets built-in parameters. Note the renaming from globalGrid.n to globalGridN. 2019-08-06 16:39:15 +03:00
JackHsu
aebf4f11ae Added function for truelove-density, and took out the unecessary use of switch on-off module for accretion. 2019-08-06 16:17:11 +08:00
JackHsu
632819764e Some intuitions about accretion process. Also defined as a module. 2019-08-06 11:47:55 +08:00
JackHsu
29d6a9b00a Fixed scaling for sink particle, and added softening factor. 2019-08-01 16:33:58 +08:00
Miikka Vaisala
718a275bcf Proiper softening factor 2019-08-01 14:12:21 +08:00
JackHsu
24a56044f0 Fixed gravitating particle. 2019-07-31 17:07:05 +08:00
JackHsu
5361ee5706 Fixed gravitational force inputs. 2019-07-31 17:07:04 +08:00
JackHsu
34573d7d63 Corrected acciden removal. 2019-07-30 13:32:44 +08:00
JackHsu
a6dcee2381 Forgot to use lengh() instead of dlength_vec(). 2019-07-30 11:50:20 +08:00
JackHsu
0acf52d1b4 Fixed some syntax errors and changed LGRAVITY to LSINK. Will test if this works later. 2019-07-30 11:47:18 +08:00