Jochen Kieninger
Electrochemical Methods for the Micro- and Nanoscale
www.electrochemical-methods.org
Simulating different basic equivalent circuits and changing the parameter helps to get a sound understanding of EIS models. Here, we use the library impedance.py (https://doi.org/10.21105/joss.02349), primarily designed to analysis experimental data.
from impedance.models.circuits import CustomCircuit
import numpy as np
import warnings
warnings.filterwarnings('ignore')
frequencies = np.logspace(-2, 4, 100)
circuit = CustomCircuit(initial_guess=[100, 100e-6], circuit='p(R1,C1)')
Z_sim = circuit.predict(frequencies)
circuit.plot(f_data=frequencies, Z_data=Z_sim)
circuit = CustomCircuit(initial_guess=[10, 100, 100e-6, 0.8], circuit='R0-p(R1,CPE1)')
Z_sim = circuit.predict(frequencies)
circuit.plot(f_data=frequencies, Z_data=Z_sim)
circuit = CustomCircuit(initial_guess=[10, 100, 20, 100e-6, 0.9], circuit='R0-p(R1-W1,CPE1)')
Z_sim = circuit.predict(frequencies)
circuit.plot(f_data=frequencies, Z_data=Z_sim)