Commit Graph

154 Commits

Author SHA1 Message Date
Magnus Ulimoen 6f3a810cd3 add upwind/d2 to SbpOperators1d trait 2021-01-14 22:53:36 +01:00
Magnus Ulimoen 3c2cfe27cd update sprs 2020-09-30 00:29:20 +02:00
Magnus Ulimoen 3593ee2f52 update sparse maxwell benches 2020-09-21 16:38:52 +02:00
Magnus Ulimoen 4eb653da23 Documentation in SBP 2020-09-19 15:46:02 +02:00
Magnus Ulimoen 67f097cf31 Add matrix approach to heat equation 2020-09-19 14:00:18 +02:00
Magnus Ulimoen b80ca3f5e8 Add D2 operator and heat equation 2020-09-18 17:58:37 +02:00
Magnus Ulimoen 0fc9ec64ec Make integrate generic over D 2020-09-17 20:30:58 +02:00
Magnus Ulimoen 5b7f407af9 Add serde deserialize to Grid 2020-09-16 21:44:11 +02:00
Magnus Ulimoen 52ca29a51c Add matrix form to maxwell 2020-09-15 17:42:12 +02:00
Magnus Ulimoen d2c6d6af6c clippy lints 2020-09-04 17:44:06 +02:00
Magnus Ulimoen d1151bbe3f Fix fallback bug 2020-09-04 17:35:30 +02:00
Magnus Ulimoen f1cb01d47c Add improved default bc 2020-09-04 16:23:49 +02:00
Magnus Ulimoen cb2423ecb3 Add more funcs on Direction 2020-09-04 00:12:47 +02:00
Magnus Ulimoen 7ca3d1fda2 Implement conversion from parse to runtime 2020-09-03 23:43:51 +02:00
Magnus Ulimoen d0e6727ac3 Use serde for json configuration file 2020-09-03 21:30:28 +02:00
Magnus Ulimoen f90618be42 use diff_op_col as fallback for Upwind4 2020-09-01 17:26:27 +02:00
Magnus Ulimoen 311bd6de12 Use min_specialisation 2020-08-24 18:08:58 +02:00
Magnus Ulimoen 883a37fb16 Rename outer -> kronecker product 2020-08-22 10:38:55 +02:00
Magnus Ulimoen feeb254468 Improve the performance of the outer product 2020-08-21 23:58:07 +02:00
Magnus Ulimoen ad6564eeb1 sparse upwind operators 2020-06-15 22:01:42 +02:00
Magnus Ulimoen 459581a3c9 brainderp 2020-06-15 21:21:00 +02:00
Magnus Ulimoen d3e1005be8 str_strip stabilized 2020-06-14 21:53:18 +02:00
Magnus Ulimoen e2a3bed1ff add sparse matrix creating to all diff ops 2020-06-14 21:52:25 +02:00
Magnus Ulimoen 4f772b8dc5 first untested sparse implementation 2020-06-12 21:04:18 +02:00
Magnus Ulimoen d7a7b8563b simplify product implementation 2020-05-14 19:39:19 +02:00
Magnus Ulimoen 5b0ab0d1ce unroll product loop 2020-05-04 20:04:31 +02:00
Magnus Ulimoen a1acf00c5a split euler and maxwell to separate crates 2020-05-02 00:22:59 +02:00
Magnus Ulimoen 52bd4f3f8f simdify blocks in diff_op_col 2020-05-01 19:08:55 +02:00
Magnus Ulimoen cbf6042055 use raw pointer in simd code 2020-05-01 18:21:14 +02:00
Magnus Ulimoen 29db6b73df readd diff_op naive 2020-05-01 17:44:33 +02:00
Magnus Ulimoen 78da9baaea name booleans 2020-05-01 00:09:46 +02:00
Magnus Ulimoen 177a6abd99 use generalised diff_op_row for Upwind4 2020-04-30 23:37:51 +02:00
Magnus Ulimoen c4848ffd1a simdify diff_op_col 2020-04-29 23:06:19 +02:00
Magnus Ulimoen cc5399a940 diff_op_col as function factory 2020-04-29 19:59:48 +02:00
Magnus Ulimoen ff2a141505 diff_op_row as function factory 2020-04-29 19:52:55 +02:00
Magnus Ulimoen 650f7f204a special case first vortice 2020-04-23 00:08:28 +02:00
Magnus Ulimoen db6f7ef41f allow several vortices 2020-04-22 23:59:06 +02:00
Magnus Ulimoen d60770dcbf clippy lints 2020-04-22 22:29:26 +02:00
Magnus Ulimoen 35c4b25be3 move boundary extraction into parallel section 2020-04-22 22:22:19 +02:00
Magnus Ulimoen dd7edd46d5 deduplify bt extraction 2020-04-22 22:16:34 +02:00
Magnus Ulimoen 6fe4e1460f upgrade ndarray 2020-04-22 17:59:13 +02:00
Magnus Ulimoen 1718053508 remove trailing zeros in blocks 2020-04-22 17:48:15 +02:00
Magnus Ulimoen c6e467bc2d add col-wise specialisation 2020-04-22 00:32:49 +02:00
Magnus Ulimoen cdd25b1750 add row-wise specialisation 2020-04-21 23:19:02 +02:00
Magnus Ulimoen 5bf066c2e2 diff_op_1d signature change 2020-04-21 22:15:47 +02:00
Magnus Ulimoen 5003c0d55c adaptive integration option 2020-04-19 20:45:06 +02:00
Magnus Ulimoen ed0f0e4a20 add tsection type interfaces
This interface combines grids which do not have clean interfaces.

The type of interface has not been tested or verified here.
2020-04-19 18:49:43 +02:00
Magnus Ulimoen 74c6e41ea0 tighten interpolation bounds 2020-04-16 21:35:59 +02:00
Magnus Ulimoen cfff49107c simplify integrate function 2020-04-16 20:40:22 +02:00
Magnus Ulimoen 41935728e1 change json format 2020-04-15 23:58:39 +02:00
Magnus Ulimoen ec9dc79704 move json parsing to multigrid 2020-04-15 20:18:51 +02:00
Magnus Ulimoen 02cac56fb5 move direction 2020-04-15 20:14:44 +02:00
Magnus Ulimoen 9023adf01f use Direction struct 2020-04-15 19:22:10 +02:00
Magnus Ulimoen 655d76f47d use dynamic dispatch 2020-04-15 17:47:17 +02:00
Magnus Ulimoen 5068a6123c add dyn cast to sbp 2020-04-15 17:36:45 +02:00
Magnus Ulimoen d089df6d54 change trait signaturs 2020-04-15 17:17:48 +02:00
Magnus Ulimoen 6df4632719 add back specialization 2020-04-15 00:37:46 +02:00
Magnus Ulimoen 1667eaaca0 change sbp operators for dimensionality 2020-04-15 00:12:54 +02:00
Magnus Ulimoen 85f3c46430 SbpOperator takes &self 2020-04-14 21:59:02 +02:00
Magnus Ulimoen 3c54398e41 change restriction on h2 grid interpolation 2020-04-13 23:02:47 +02:00
Magnus Ulimoen 98c5998657 add more interpolation ops 2020-04-13 22:56:43 +02:00
Magnus Ulimoen f3ba234b28 add upwind9h2 2020-04-13 22:08:47 +02:00
Magnus Ulimoen 9cfd54253f change trait signature for interpolation 2020-04-13 20:56:29 +02:00
Magnus Ulimoen 2adf91e1ce relax Fn bound on integrate functions 2020-04-13 18:39:21 +02:00
Magnus Ulimoen 967e4b9e48 allow multi operator for euler solvers 2020-04-13 01:07:46 +02:00
Magnus Ulimoen 9c917abb16 introduce two diff SBP operators on same domain 2020-04-13 00:56:53 +02:00
Magnus Ulimoen a58892044d bugfix h2linspace 2020-04-13 00:23:55 +02:00
Magnus Ulimoen cde8755c15 allow selection of operators 2020-04-13 00:08:02 +02:00
Magnus Ulimoen 0f1f115fc3 change to WB 2020-04-12 21:32:20 +02:00
Magnus Ulimoen 3e7b45b3be fix clippy lints 2020-04-12 20:44:52 +02:00
Magnus Ulimoen 90f72847fb add h2 operator 2020-04-12 19:27:18 +02:00
Magnus Ulimoen a9e4a7e0cc change macro to inlined func 2020-04-12 17:42:18 +02:00
Magnus Ulimoen 59c8509a98 add multigrid_integrate to sbp crate 2020-04-12 12:46:53 +02:00
Magnus Ulimoen 9bf2a1513c use explicit integration routine 2020-04-11 19:56:44 +02:00
Magnus Ulimoen 596605a8b7 add more integration schemes 2020-04-11 19:44:40 +02:00
Magnus Ulimoen 29499c0c0c interpolation operators 2020-04-11 15:19:34 +02:00
Magnus Ulimoen 3d22a009d3 generalise RK4 integration 2020-04-10 17:36:01 +02:00
Magnus Ulimoen e7e40c759b move boundaryextractor 2020-04-10 12:30:18 +02:00
Magnus Ulimoen 147f3040c3 divide instead of multiply h 2020-04-10 01:07:57 +02:00
Magnus Ulimoen 17edb14899 reformat SAT 2020-04-09 13:31:11 +02:00
Magnus Ulimoen fe2c7f1253 simplify macro invocation 2020-04-08 23:22:03 +02:00
Magnus Ulimoen c3a40d81ee use default trait methods 2020-04-08 23:07:14 +02:00
Magnus Ulimoen de03fb6889 add vortex bc 2020-04-06 22:11:35 +02:00
Magnus Ulimoen 358f831513 separate metrics and grid 2020-04-04 22:28:19 +02:00
Magnus Ulimoen 97bdf7b0a5 simple rayon parallelisation 2020-04-02 23:36:20 +02:00
Magnus Ulimoen a31ca3ff3e json parse vortex parameters 2020-04-02 22:49:27 +02:00
Magnus Ulimoen 18ebbfde75 add progressbar 2020-04-02 22:32:07 +02:00
Magnus Ulimoen d80a9bfa6d read config from json 2020-04-02 21:36:56 +02:00
Magnus Ulimoen 7f0b5b8430 prototype multigrid 2020-04-01 00:08:55 +02:00
Magnus Ulimoen 3bffd18488 more tests 2020-03-30 23:15:28 +02:00
Magnus Ulimoen 2b7380ea3b test diff operators more thoroughly 2020-02-29 10:53:20 +01:00
Magnus Ulimoen 64e1aec294 simplify loop conditions 2020-02-28 22:40:56 +01:00
Magnus Ulimoen 3ac17995cd abstract away cfg 2020-02-27 22:27:11 +01:00
Magnus Ulimoen ba420b1554 make precision selectable using feature 2020-02-27 20:26:43 +01:00
Magnus Ulimoen afa2ce655f tweak convergence test 2020-02-25 19:44:13 +01:00
Magnus Ulimoen d1aa9f64a0 convergence test 2020-02-24 20:10:59 +01:00
Magnus Ulimoen 29627b32c5 add h2 error function 2020-02-22 22:07:31 +01:00
Magnus Ulimoen 50d58dc7e8 readd tracebacks and move vortex init to Field 2020-02-22 18:57:22 +01:00
Magnus Ulimoen fe08d398b0 add future multigrid parser 2020-02-22 17:45:28 +01:00
Magnus Ulimoen df5d6d44c1 generalize RHS to include boundaries 2020-02-19 21:51:01 +01:00