As the expertsystem is slowly refactored and new features are introduced, we need to reconsider the current module structure. Probably best to have a few main modules like particles, amplitude, and solving that signal the main compontents/responsibilities of the package.
Related to #67
Proposed structure
Roughly by order of usage (from input to output):
expertsystemexpertsystem.io (brings together particles and pwa)
expertsystem.particles ('input')
expertsystem.reaction (?)
expertsystem.reaction.topology (includes both graph and topology?)
expertsystem.reaction.propagationexpertsystem.reaction.rules (includes both conservation_rules and solvers?)
expertsystem.pwa ('output')
Deeper submodules can be created, but are isolated implementation (not called by the other modules!) and are can be made private.
As the
expertsystem
is slowly refactored and new features are introduced, we need to reconsider the current module structure. Probably best to have a few main modules likeparticles
,amplitude
, andsolving
that signal the main compontents/responsibilities of the package.Related to #67
Proposed structure
Roughly by order of usage (from input to output):
expertsystem
expertsystem.io
(brings togetherparticles
andpwa
)expertsystem.particles
('input')expertsystem.reaction
(?)expertsystem.reaction.topology
(includes both graph and topology?)expertsystem.reaction.propagation
expertsystem.reaction.rules
(includes bothconservation_rules
andsolvers
?)expertsystem.pwa
('output')Deeper submodules can be created, but are isolated implementation (not called by the other modules!) and are can be made private.