def test_pinchofffit__transition_voltage_fitting(nt_dataset_pinchoff, tmp_path): pf = PinchoffFit(1, "temp.db", db_folder=str(tmp_path)) assert not pf._transition_signal assert not pf._transition_signal_index pf.get_transition_from_fit = True pf.compute_transition_voltage() assert math.isclose(pf._transition_signal["dc_current"], 0.5926477267201613, rel_tol=rtol) assert math.isclose( pf._transition_signal["dc_sensor"], 0.45264142712057776, rel_tol=rtol ) assert pf._transition_signal_index["dc_current"] == 60 assert pf._transition_signal_index["dc_sensor"] == 59 pf.get_transition_from_fit = False pf.compute_transition_voltage() assert math.isclose(pf._transition_signal["dc_current"], 0.4123686284590007, rel_tol=rtol) assert math.isclose( pf._transition_signal["dc_sensor"], 0.5620627106146739, rel_tol=rtol ) assert pf._transition_signal_index["dc_current"] == 59 assert pf._transition_signal_index["dc_sensor"] == 60
def test_pinchofffit_transition_interval_fitting(nt_dataset_pinchoff, tmp_path): pf = PinchoffFit(1, "temp.db", db_folder=str(tmp_path)) assert not pf._low_signal assert not pf._high_signal pf.get_transition_from_fit = True pf.compute_transition_interval() assert math.isclose(pf._high_signal["dc_current"], 0.9328689304577482, rel_tol=rtol) assert math.isclose(pf._high_signal["dc_sensor"], 0.8505814391091593, rel_tol=rtol) assert math.isclose(pf._low_signal["dc_current"], 0.06741378644796504, rel_tol=rtol) assert math.isclose(pf._low_signal["dc_sensor"], 0.07404054174629943, rel_tol=rtol) pf.get_transition_from_fit = False pf.compute_transition_interval() assert math.isclose(pf._high_signal["dc_current"], 0.9385653092441386, rel_tol=rtol) assert math.isclose(pf._high_signal["dc_sensor"], 0.8400070918869458, rel_tol=rtol) assert math.isclose(pf._low_signal["dc_current"], 0.061434690755860326, rel_tol=rtol) assert math.isclose(pf._low_signal["dc_sensor"], 0.15260464585587372, rel_tol=rtol)