In [12]:
def freqchange(freq1, freq2, size=10000, N=10):
    "Fährt einen Frequenzübergang Freq1 auf Freq2 mit Rechteck (size) ab und erstellt FFT"
    freq1, freq2 = float(freq1), float(freq2)
    f_sample = freq1*freq2*20
    print "Samplingfrequenz:", f_sample/1000, "kHz"
    f1 = tile(concatenate((ones(10*freq2), zeros(10*freq2)), axis=1), N)
    f2 = tile(concatenate((ones(10*freq1), zeros(10*freq1)), axis=1), round(N*20*freq2/(20*freq1))+1)
    f2 = f2[:(f2.size-(f2.size-f1.size))]
    f = concatenate((f1, f2), axis=1)
    f_axis = fft.fftfreq(size)
    for i in range (0, f.size-size, 1000):
        f_part = f[i:(i+size)]
        FT = fft.fft(f_part)/size
        plot(f_axis, abs(FT))
        plt.xlim(0, 0.001)
    return;

In [ ]: