The main bulk of the CLI is in parsing the YAML file to construct Python objects. The CLI also handles parallelising the execution of the code multiple cores. Additional arguments will probably be needed such as --seed for debugging.
Output data should also be exported and arguments might be needed for this too.
The parallelisation should not be implement in the CLI it should use parallelisation features added to pvtrace. For example, it probably makes sense to a method to Scene object or a new Simulation object which is capable of running on multiple processes. Details can can be defined later and in a separate issue number. See https://github.com/danieljfarrell/pvtrace/issues/41
Feature roadmap
The CLI's role is to kick off and modify simulation parameters using a scene described in a YAML file.
The main bulk of the CLI is in parsing the YAML file to construct Python objects. The CLI also handles parallelising the execution of the code multiple cores. Additional arguments will probably be needed such as
--seed
for debugging.Output data should also be exported and arguments might be needed for this too.
Scene
The pvtrace scene
can be described by YAML file
Parallelisation
The parallelisation should not be implement in the CLI it should use parallelisation features added to pvtrace. For example, it probably makes sense to a method to
Scene
object or a newSimulation
object which is capable of running on multiple processes. Details can can be defined later and in a separate issue number. See https://github.com/danieljfarrell/pvtrace/issues/41