Closed lucasmyers97 closed 2 years ago
Did this with this pull request. Continuing to do it on all future simulations. May need to restructure in the future to better reflect the kinds of objects (and also some of the runtime polymorphism), but I'll close this for now.
Want to switch from handling simulation parameters with the
Boost::program_options
package which are passed in via the command line to thedealii::ParameterHandler
class. The reasoning for this is manifold: firstly, running a program a bunch of times is a pain when you have to type in a bunch of parameter values that are not default -- this is made much easier if you just have a file which holds all the parameters. Along those same lines, it's easier to remember exactly which parameters should have which values for a particular simulation by just making different parameter files. Additionally, it's extremely simple to print out a file which holds all of the parameter values used in a simulation. We may include these alongside the.vtu
files (or maybe within if I can ever figure out how to write metadata) to make sure we know exactly how to reproduce the results. Finally, the use and documentation is just nicer and smoother: it's easy to break up parameters into subsections, the syntax for declaring parameters is more intuitive, setting parameters programmatically is very easy, declaring vectors is much more straightforward, etc.This would be a good thing to do, it's just going to take some time so I will not do it right now.