def test_fit_desoto_failure(): with pytest.raises(RuntimeError) as exc: sdm.fit_desoto(v_mp=31.0, i_mp=8.71, v_oc=38.3, i_sc=9.43, alpha_sc=0.005658, beta_voc=-0.13788, cells_in_series=10) assert ('Parameter estimation failed') in str(exc.value)
def test_fit_desoto(): result, _ = sdm.fit_desoto(v_mp=31.0, i_mp=8.71, v_oc=38.3, i_sc=9.43, alpha_sc=0.005658, beta_voc=-0.13788, cells_in_series=60) result_expected = {'I_L_ref': 9.45232, 'I_o_ref': 3.22460e-10, 'R_s': 0.297814, 'R_sh_ref': 125.798, 'a_ref': 1.59128, 'alpha_sc': 0.005658, 'EgRef': 1.121, 'dEgdT': -0.0002677, 'irrad_ref': 1000, 'temp_ref': 25} assert np.allclose(pd.Series(result), pd.Series(result_expected), rtol=1e-4)