adamantine-sim / adamantine

Software to simulate heat transfer for additive manufacturing
https://adamantine-sim.github.io/adamantine/
Other
31 stars 9 forks source link

Introduce HeatSources #282

Open masterleinad opened 2 months ago

masterleinad commented 2 months ago

This is a step towards https://github.com/adamantine-sim/adamantine/issues/190. This pull request replaces std::vector<std::shared_ptr<adamantine::HeatSource<dim>>> with HeatSources that contains all heat sources as Kokkos::Views and loops over them in its member functions. With this approach, there is no dynamic polymorphism and the compiler could inline all function calls for the heat sources. In particular, this object would be usable on GPUs (apart from function annotations).

masterleinad commented 3 weeks ago

Retest this please.

Rombur commented 2 weeks ago

Let me know when you want another review on this.

masterleinad commented 2 weeks ago

Let me know when you want another review on this.

This could take another review now. Some notes: