def test_logscale(): model1 = "parallel(parallel(R_f1, C_f1), C_f2)" model = get_equivalent_circuit_model(model1) logmodel = get_equivalent_circuit_model(model1, logscale=True) omega = np.logspace(0, 8) parameters = {'f1_R': 100., 'f1_C': 1e-6, 'f2_C': 1e-6} Z1 = model.eval(omega=omega, **parameters) Z2 = logmodel.eval(omega=omega, **parameters) assert np.all(np.isclose(np.log10(Z1), Z2))
def test_cpe_RCT(): k = 1e-7 alpha = 0.9 Rct = 100 model = 'parallel(CPE, R)' m = get_equivalent_circuit_model(model) Z_lmfit = m.eval(omega=omega, k=k, alpha=alpha, R=Rct) Z = cpe_ct_model(omega, k, alpha, Rct) assert np.all(np.isclose(Z, Z_lmfit))
def test_wrong_circuit3(): model1 = "parallel(R, C" with pytest.raises(Exception): get_equivalent_circuit_model(model1)
def test_single(): model1 = 'R' model = get_equivalent_circuit_model(model1) assert isinstance(model, Model)
def test_wrong_circuit(): model1 = "R, L , C" with pytest.raises(Exception): get_equivalent_circuit_model(model1)
def test_parallel_parallel(): model1 = "parallel(parallel(R_f1, C_f1), C_f2)" model = get_equivalent_circuit_model(model1) assert isinstance(model, CompositeModel)
def test_parallel_series(): model1 = "parallel(L, C) + R + ColeCole" model = get_equivalent_circuit_model(model1) assert isinstance(model, CompositeModel)
def test_series_parallel(): model1 = "R + L + parallel(ColeCole, C)" model = get_equivalent_circuit_model(model1) assert isinstance(model, CompositeModel)
def test_series(): model1 = "R + C" model = get_equivalent_circuit_model(model1) assert isinstance(model, CompositeModel)
def test_wrong_circuit6(): model1 = "R_f1 + parallel(R_f2 + L)" with pytest.raises(Exception): get_equivalent_circuit_model(model1)