Commit Graph

206 Commits

Author SHA1 Message Date
Magnus Ulimoen db94caf2b2 change repr of Matrix 2021-02-02 00:12:02 +01:00
Magnus Ulimoen c133557459 use Matrix in SBP diff 2021-02-02 00:12:02 +01:00
Magnus Ulimoen 3c7cc4605a simplify traits 2021-02-02 00:12:02 +01:00
Magnus Ulimoen f7c238f6a7 add blockend SBP8 2021-02-02 00:12:02 +01:00
Magnus Ulimoen a7660281c8 add inline to remove magic fix 2021-02-02 00:12:02 +01:00
Magnus Ulimoen 14fefe97ab add Matrix approach for SBP8 2021-02-02 00:12:02 +01:00
Magnus Ulimoen 3d34f2e7a0 add fast-float feature 2021-02-02 00:12:02 +01:00
Magnus Ulimoen 4c2daf5933 minor thingys 2021-02-02 00:12:02 +01:00
Magnus Ulimoen db552af4ff add blockend with weird caveat 2021-02-02 00:12:02 +01:00
Magnus Ulimoen bcda26a512 15% reductions in instr count 2021-02-02 00:12:02 +01:00
Magnus Ulimoen 36293e75e6 10% instr reduction with fast_ intr 2021-02-02 00:12:02 +01:00
Magnus Ulimoen 30c563c19d working d1 SBP4 2021-02-02 00:12:02 +01:00
Magnus Ulimoen 94e8fb5b7c checkpoint 2021-02-02 00:12:02 +01:00
Magnus Ulimoen c104082ac0 add matrix type 2021-02-02 00:12:02 +01:00
Magnus Ulimoen 3cc7c31ee5 increase bench size 2021-02-01 23:22:35 +01:00
Magnus Ulimoen ddfddbd33f fix bench+sparse builds 2021-01-25 23:58:50 +01:00
Magnus Ulimoen 53acd300ce readd sparseness approach to bench 2021-01-25 21:02:04 +01:00
Magnus Ulimoen 1069bad145 bugfix sparse algo visibility 2021-01-25 20:53:56 +01:00
Magnus Ulimoen 0f261ef507 replace criterion with iai 2021-01-25 20:51:59 +01:00
Magnus Ulimoen 5de82f393b move algos to separate file 2021-01-18 22:37:24 +01:00
Magnus Ulimoen dc126938bb re-add specialization of diss-ops 2021-01-17 16:15:15 +01:00
Magnus Ulimoen 1f15bcc056 revisit SBP Traits 2021-01-17 15:37:45 +01:00
Magnus Ulimoen 6f3a810cd3 add upwind/d2 to SbpOperators1d trait 2021-01-14 22:53:36 +01:00
Magnus Ulimoen 2f7fc510b6 packed_simd updated at other location 2020-09-30 20:43:22 +02: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 8d90d8106d add benches for sparse matrix multiplication 2020-08-31 22:58:46 +02:00
Magnus Ulimoen 0c8b02b466 add short README 2020-08-31 21:05:05 +02:00
Magnus Ulimoen 311bd6de12 Use min_specialisation 2020-08-24 18:08:58 +02:00
Magnus Ulimoen 8676665c75 Downgrade sprs (rayon non-optional) 2020-08-22 10:51:13 +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 d00e7b3fb1 Update sprs in sbp too 2020-08-21 15:54:05 +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 1ee8dc5e9a keep tests up to date 2020-04-23 17:49:31 +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 c36dcc4e6d add sbp xi/eta benches 2020-04-20 21:33:54 +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