In Python geschriebener Fourier-Serien-Verifizierungscode

Das Problem für Studenten in Naturwissenschaften und Ingenieurwissenschaften ist die manuelle Berechnung von Fourier-Klassen. Es ist in Ordnung, alle Berechnungen durchzuführen, aber es ist häufig der Fall, dass die Ergebnisse zu schmutzig und nicht sicher sind. Also habe ich einen Code geschrieben, der mit Python überprüft werden kann, also werde ich ihn als Memorandum veröffentlichen.

Zum Beispiel

f(x)=x \ \ \ \ (-\pi \le x \le \pi)

Wird auf Fourier-Reihen erweitert

f(x)=-\Sigma_{n=1}^{\infty}\frac{(-1)^n}{n}\sin(nx)

Wird sein. Lassen Sie uns das überprüfen.

import numpy as np
import matplotlib.pyplot as plt

#Definieren Sie die x-Achse
x = np.arange(-np.pi,np.pi,0.01)

#Funktionen des Inhalts von Sigma
def func(k):
    return -1*(((-1)**k)/k)*np.sin(k*x)

#Sigma-Bedienfunktion.Geben Sie den Summenbereich mit einem Argument an.
def sigma(func,frm,to):
    ret = np.zeros_like(x)
    for i in range(frm,to):
        ret += func(i)
    return ret

#Fourier-Reihen-Erweiterungsfunktion
f = sigma(func,1,100)

#Ergebnisse anzeigen
fig, ax = plt.subplots(1,1)
ax.set_aspect('equal')
ax.plot(x,f)
plt.show()

#Dies ist ein Diagramm, um den Prozess des Hinzufügens zu sehen
#Bis zu 9 Mal mit dieser Einstellung
"""
fig, axes = plt.subplots(3,3,figsize=(7,7))
for i,ax in enumerate(axes.ravel()):
    ax.set_aspect('equal')
    ax.set_title('n={}'.format(i))
    f = sigma(func,1,i)
    ax.plot(x,f)
plt.show()
"""

Das Ergebnis sieht so aus. Figure_1.png Es ist eine Kombination von 100 Begriffen, aber es kann ziemlich gut reproduziert werden.

Wenn Sie dann den auskommentierten Teil des Codes ausführen, lautet das Ergebnis wie folgt. Figure_2.png n = 0,1 wird aufgrund der for-Anweisung nicht angezeigt, aber bitte ändern Sie diese hier.

Verweise

https://qiita.com/weedslayer/items/25c38c928ad59ba61071

Recommended Posts

In Python geschriebener Fourier-Serien-Verifizierungscode
Einführung in die Überprüfung der Wirksamkeit Kapitel 3 in Python geschrieben
Einführung in die Überprüfung der Wirksamkeit Kapitel 2 in Python geschrieben
Generieren Sie QR-Code in Python
Gacha geschrieben in Python -BOX Gacha-
In Python gelernter Zeichencode
Vergleich des in Python geschriebenen EMA-Codes (Exponential Moving Average)
Einführung in die Effektüberprüfung Schreiben der Kapitel 4 und 5 in Python
Cooles Lisp geschrieben in Python: Hy
Signalverarbeitung in Python (1): Fourier-Transformation
[Python] Generiert QR-Code im Speicher
Formatieren Sie Python-Code automatisch mit Vim
Zeitdelta in Python 2.7-Serie teilen
Kompatibilitätsdiagnoseprogramm in Python geschrieben
Schreiben Sie Selentestcode in Python
Einfache Gacha-Logik in Python geschrieben
Code-Tests rund um die Uhr in Python
Stresstest mit Locust in Python geschrieben
Übergangswahrscheinlichkeit der in Python geschriebenen Markov-Kette
Ruft die EDINET-Codeliste in Python ab
Hinzufügen von Serien zur Spalte in Python-Pandas
Einführung in die Überprüfung der Wirksamkeit Kapitel 1 in Python geschrieben
Holen Sie sich mit Python Zeitreihendaten von k-db.com
Quadtree in Python --2
Python in der Optimierung
CURL in Python
Metaprogrammierung mit Python
Python 3.3 mit Anaconda
Geokodierung in Python
SendKeys in Python
Metaanalyse in Python
Unittest in Python
Verwendung der Python-Bildbibliothek in der Python3-Serie
Epoche in Python
Persönliche Notizen zum Dokumentieren von Python-Code in Sphinx
Zwietracht in Python
Geschrieben "Einführung in die Effektüberprüfung" in Python
Deutsch in Python
DCI in Python
Python-Zeichencode
Quicksort in Python
Unsicherheit des japanischen Unite-Codes in der Tacotron 2-Serie
nCr in Python
N-Gramm in Python
Programmieren mit Python
Plink in Python
Konstante in Python
FizzBuzz in Python
[Python] Code, der Algorithmen kennt
SQLite in Python
Schritt AIC in Python
Code, der häufig in Python / Django-Apps verwendet wird [Präfekturen]
Verwenden Sie Python in einer Anaconda-Umgebung mit VS-Code
LINE-Bot [0] in Python
CSV in Python
Reverse Assembler mit Python
Reflexion in Python
Konstante in Python