Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[feature] Major refactor to enhance code organization, potentially improve performance #181

Open
drobnyjt opened this issue Feb 23, 2022 · 0 comments
Labels
enhancement New feature or request

Comments

@drobnyjt
Copy link
Collaborator

Is your feature request related to a problem? Please describe.
RustBCA has some code consistency issues and organizational problems that should be fixed with a major refactor at some point in the future. Below is a non-complete list of the issues I'm aware of:

  1. choose_collision_partner in bca.rs
  2. surface_refraction and refraction_angle in particle.rs
  3. particle_advance and rotate_particle in particle.rs
  4. boundary_condition_planar and surface_binding_energy in material.rs
  • SoA (Struct of Arrays) should be considered for Particles over AoS - could improve performance significantly
  • Electronic stopping should be broken into component functions so bits and pieces can be unit-tested

Additional context
Biggest effect of this refactor will be easing development of alternative ways of running the code, preparing the code to be made a library for binary collisions first with the physics loop and I/O being optional, and making more parts of the code unit-testable.

@drobnyjt drobnyjt added the enhancement New feature or request label Feb 23, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

1 participant