A julia package to either fit the parameters of a specified equivalent electrical circuit to electrochemical impedance data, or to suggest a plausible circuit configuration for a given set of measurements (either through a comparison of circuits from the literature, or through an evolutionary algorithm approach).
MIT License
22
stars
6
forks
source link
Add `circuit_evolution_batch` to run circuit evolution in batch mode #30
This PR adds a thin wrapper around circuit_evolution so it can be run in batch mode, i.e. run multiple times to generate multiple plausible candidate circuits in parallel. We need this in AutoEIS, where we want to generate multiple potential candidates and then rank them based on some statistical criteria. We originally tried to use Python multiprocessing to do this on our side, but it turned out to be quite fragile especially for macOS.
The wrapper accepts two keyword arguments in addition to the ones accepted by circuit_evolution:
iters: Defines how many candidate circuits to generate
numprocs: Number of workers to use; Defaults to the number of physical cores.
@MaximeVH I'd really appreciate it if you could review this PR and let me know what you think.
This PR adds a thin wrapper around
circuit_evolution
so it can be run in batch mode, i.e. run multiple times to generate multiple plausible candidate circuits in parallel. We need this in AutoEIS, where we want to generate multiple potential candidates and then rank them based on some statistical criteria. We originally tried to use Python multiprocessing to do this on our side, but it turned out to be quite fragile especially for macOS.The wrapper accepts two keyword arguments in addition to the ones accepted by
circuit_evolution
:iters
: Defines how many candidate circuits to generatenumprocs
: Number of workers to use; Defaults to the number of physical cores.@MaximeVH I'd really appreciate it if you could review this PR and let me know what you think.