def aktualisieren(self, _): n = self.n() self.plotter.leeren() if self.get_object('amplitude').get_active(): self.plotter.plot(frequenzen_voll(self.par), self.amplitude[n]) self.plotter.plot(frequenzen(self.par), amp_verlauf(self.par, self.erg[n])) else: self.plotter.plot(frequenzen_voll(self.par), self.phase[n]) try: self.plotter.plot(frequenzen(self.par), phase_verlauf(self.par, self.erg[n])) except ValueError: # Geglättete Phase oder kein Fit pass self.plotter.draw()
def amp_verlauf(par, erg): """ :type par: SpeckView.BE.Parameter.Parameter :type erg: Ergebnis :rtype: list[float] """ return [ fkt_amp[par.nr_fkt_amp](freq, erg.resfreq, erg.amp, erg.guete_amp, erg.untergrund) for freq in frequenzen(par) ]
def __init__(self, par, amplitude_voll, phase_voll, puls): """ :type par: SpeckView.BE.Parameter.Parameter :type amplitude_voll: numpy.multiarray.ndarray :type phase_voll: numpy.multiarray.ndarray :type puls: () -> None """ self.par = par self.amplitude_voll = amplitude_voll self.phase_voll = phase_voll self.puls = puls self.frequenz = frequenzen(par)
def phase_verlauf(par, erg): """ :type par: SpeckView.BE.Parameter.Parameter :type erg: Ergebnis :rtype: list[float] """ fkt = fkt_ph[par.nr_fkt_ph] if type(fkt) is int: return None else: return [ fkt(freq, erg.resfreq, erg.guete_amp, erg.phase_rel) for freq in frequenzen(par) ]