Commit Graph

446 Commits

Author SHA1 Message Date
a811561f14 app: multi-core-inverter: more simulations 2022-08-28 02:01:51 -07:00
538db399a9 Stimulus: Sinusoid: remove the amp component 2022-08-28 02:01:33 -07:00
ec77584311 cross: notes about optimization 2022-08-28 02:00:49 -07:00
5dc619ebc9 cross: add Real::c_inv() 2022-08-28 02:00:18 -07:00
19f08fce9f app: multi-core-inverter: tune drive current and conductivity 2022-08-27 03:14:41 -07:00
1be2dc2419 cross: step: test using f64 so we can enforce more precise limits
we're foremost testing the *math*, less than the precision under which
it's carried out
2022-08-27 02:41:16 -07:00
8a76b79e17 cross: step: backfill step_e tests 2022-08-27 02:38:50 -07:00
deaaefc3e7 add Real::eps0_inv() convenience method 2022-08-27 02:38:32 -07:00
529ad943ac app: multi-core-inverter: explore a few more simulations 2022-08-27 01:37:23 -07:00
769c90cf9e stim: fix issue where Exp would cause NaNs for very negative t 2022-08-27 01:31:06 -07:00
532055e045 app: multi-core-inverter: define a few more sims
trying to strike the right balance between coupling conductivity and
decay time.
2022-08-26 18:13:50 -07:00
5b66c2bc26 app: multi-core-inverter: parameterize a few more cases
exploring how low control conductivity can go
2022-08-26 04:17:01 -07:00
c90a73d395 cross: step: finish backfilling step_h tests 2022-08-26 02:03:27 -07:00
a7a9a9ea84 cross: step: backfill step_h material-free test 2022-08-26 01:43:10 -07:00
267c9fd36e cross: step: backfill a trivial step_h test 2022-08-26 01:23:52 -07:00
a4008dcc1d cross: step: document the step_h math 2022-08-26 00:41:41 -07:00
64410da4fe cross: step: reconcile the difference between our two \Delta t's 2022-08-25 22:49:50 -07:00
bbd31cc7be cross: step: annotate step_e with a maths derivation
this derivation comes from the legacy cpu code.
it looks like the spirv implementation actually
pursued a conceptually simpler approach.
i'll try to reconcile these shortly.
2022-08-25 22:20:03 -07:00
7f40b3ccd5 app: multi-core-inverter: more experiments with varied conductivities 2022-08-25 19:38:12 -07:00
bf3f79dd50 app: multi-core-inverter: implement some sims which specify conductivities separately 2022-08-25 15:43:13 -07:00
f80b2e22a4 app: multi-core-inverter: allow setting coupling and drive conductivities separately 2022-08-25 15:37:06 -07:00
6afa65c3e4 app: multi-core-inverter: design a few new experiments which vary the conductivity 2022-08-25 15:32:37 -07:00
cc1bdba280 Stimulus: leave a TODO for what to do about Exp & NaN/Inf 2022-08-25 15:32:13 -07:00
10fefdc9a3 step: backfill some documentation 2022-08-24 17:52:46 -07:00
9e49538ba7 cross: split supporting types out of step.rs
this focuses the core "business logic" into a more narrow slice.
good for organization, and also to highlight where the complexity lies
(i.e. most valuable places to test).
2022-08-24 17:45:28 -07:00
1cfef7cac6 stimulus: remove unused Stimulus impl for RegionGated 2022-08-24 15:49:46 -07:00
2c68a53668 rename StimExt to TimeVaryingExt 2022-08-24 15:44:12 -07:00
a2ee85d03f stim: remove the unused Stimulus impl for Shifted 2022-08-24 15:42:37 -07:00
7f089bad45 stim: break apart into smaller modules 2022-08-24 15:27:40 -07:00
9301734fcf app: multi-core-inverter: parameterize the wire conductivity 2022-08-24 15:06:41 -07:00
6d717fdda4 app: multi-core-inverter: explore multiple parameterizations in one run 2022-08-24 02:08:06 -07:00
488d0fe62a sim: spirv: remove apply_stimulus test-only function 2022-08-24 01:51:32 -07:00
dd6f598e44 spirv tests: reorganize 2022-08-24 01:42:10 -07:00
c008fb963e app: multi-core-inverter: explore more of the space 2022-08-24 01:24:16 -07:00
4168b9e4c6 spirv: uncomment some old tests
one of them fails, but it fails 600+ steps into the test.
not sure how problematic this really is, yet.
2022-08-24 00:16:26 -07:00
e94dc49d0f spirv test: mb_ferromagnet tests both e and h fields
we have to lessen the bounds a little bit.
no surprise: *not testing h* caused them to differ substantially.
i'd like to test more strenuously, but that would likely require
enabling R64 on the gpu side.
2022-08-24 00:04:20 -07:00
cdb0c3eaaa leave a TODO: enumerated: make use of List abstractions 2022-08-23 23:51:03 -07:00
ab6496d5f6 backfill Vec2::rotate tests 2022-08-23 23:49:43 -07:00
b16316b75b Driver: remove the unecessary Boxing of RenderedStimulus
no obvious perf diff one way or the other, yet
2022-08-23 23:33:22 -07:00
4525bbde56 remove unused lazy_static dependency 2022-08-23 23:29:47 -07:00
a51c3a1d14 sim: remove the unused StaticSim type alias 2022-08-23 23:25:08 -07:00
8e48414d68 SimMeta: make the fields private 2022-08-23 23:23:49 -07:00
17446cdc6b sim: remove unused AbstractSim::to_static method 2022-08-23 23:13:15 -07:00
2af754bf29 sim/legacy: remove
that crazy tangle of legacy code evolved over 2+
years into the beast it is today.
but it has no relevance in the GPU-enabled world of today,
particularly one with more rigid Material abstractions.

good things come to an end. i'll try not to be too sentimental.
2022-08-23 23:01:29 -07:00
1891a72df3 spirv tests: no longer test against the legacy simulation:
test the CPU impl against the GPU impl.

it's a different class of test. but it provides some value yet and most
importantly, allows us to strip out the legacy simulation code without
losing *too much* test coverage.
2022-08-23 20:05:30 -07:00
e7ed46bb89 spirv tests: clean up the code layout a bit 2022-08-23 19:23:02 -07:00
c8735ce164 legacy: mark port status of remaining tests 2022-08-23 19:15:44 -07:00
397eaa5a24 sim: port conductor-related legacy tests to spirv 2022-08-23 19:09:32 -07:00
4024ee3316 sim: port legacy test to spirv: sane_boundary_conditions 2022-08-23 16:56:35 -07:00
5c7ce8437a sim: port legacy energy_conservation_over_time test to spirv
the original had a suspect dimension (it was apparently applying a
stimulus *outside* the simulation). i've rectified that, but left a note
to ensure this doesn't happen again...
2022-08-23 16:38:24 -07:00