lcpp-org / RustBCA

A free, open-source Binary Collision Approximation (BCA) code for ion-material interactions including sputtering, implantation, and reflection
https://github.com/lcpp-org/RustBCA/wiki
GNU General Public License v3.0
42 stars 15 forks source link

[feature] Implement Default options in input parser #172

Closed drobnyjt closed 2 years ago

drobnyjt commented 2 years ago

Is your feature request related to a problem? Please describe. Currently, RustBCA input files are a mess of boolean flags which may not be easy to understand for the average user. By implementing default options for at least the bools, the input file could be shrunk drastically.

Proposed solution Implement wrappers for booleans and default implementations. Consider doing the same for the many enum options as well.

drobnyjt commented 2 years ago

This exists on dev branch currently, see this page on the Wiki.

I need to figure out how to get a default value for the interaction index; it may just need to be a special case for when the interaction_index is length 1, it automatically expands to cover all species with that interaction.

drobnyjt commented 2 years ago

New update on dev branch includes the aforementioned fix - in addition, num_threads and num_chunks both default to 1 now.

drobnyjt commented 2 years ago

I'm happy with the current status of this on dev.