matheraum.de
Raum für Mathematik
Offene Informations- und Nachhilfegemeinschaft

Für Schüler, Studenten, Lehrer, Mathematik-Interessierte.
Hallo Gast!einloggen | registrieren ]
Startseite · Forum · Wissen · Kurse · Mitglieder · Team · Impressum
Forenbaum
^ Forenbaum
Status Mathe
  Status Schulmathe
    Status Primarstufe
    Status Mathe Klassen 5-7
    Status Mathe Klassen 8-10
    Status Oberstufenmathe
    Status Mathe-Wettbewerbe
    Status Sonstiges
  Status Hochschulmathe
    Status Uni-Analysis
    Status Uni-Lin. Algebra
    Status Algebra+Zahlentheo.
    Status Diskrete Mathematik
    Status Fachdidaktik
    Status Finanz+Versicherung
    Status Logik+Mengenlehre
    Status Numerik
    Status Uni-Stochastik
    Status Topologie+Geometrie
    Status Uni-Sonstiges
  Status Mathe-Vorkurse
    Status Organisatorisches
    Status Schule
    Status Universität
  Status Mathe-Software
    Status Derive
    Status DynaGeo
    Status FunkyPlot
    Status GeoGebra
    Status LaTeX
    Status Maple
    Status MathCad
    Status Mathematica
    Status Matlab
    Status Maxima
    Status MuPad
    Status Taschenrechner

Gezeigt werden alle Foren bis zur Tiefe 2

Navigation
 Startseite...
 Neuerdings beta neu
 Forum...
 vorwissen...
 vorkurse...
 Werkzeuge...
 Nachhilfevermittlung beta...
 Online-Spiele beta
 Suchen
 Verein...
 Impressum
Das Projekt
Server und Internetanbindung werden durch Spenden finanziert.
Organisiert wird das Projekt von unserem Koordinatorenteam.
Hunderte Mitglieder helfen ehrenamtlich in unseren moderierten Foren.
Anbieter der Seite ist der gemeinnützige Verein "Vorhilfe.de e.V.".
Partnerseiten
Dt. Schulen im Ausland: Mathe-Seiten:Weitere Fächer:

Open Source FunktionenplotterFunkyPlot: Kostenloser und quelloffener Funktionenplotter für Linux und andere Betriebssysteme
StartseiteMatheForenAnwendungsprogrammeGnuplot Phaseng. Filter
Foren für weitere Studienfächer findest Du auf www.vorhilfe.de z.B. Astronomie • Medizin • Elektrotechnik • Maschinenbau • Bauingenieurwesen • Jura • Psychologie • Geowissenschaften
Forum "Anwendungsprogramme" - Gnuplot Phaseng. Filter
Gnuplot Phaseng. Filter < Anwendungsprogramme < Praxis < Informatik < Vorhilfe
Ansicht: [ geschachtelt ] | ^ Forum "Anwendungsprogramme"  | ^^ Alle Foren  | ^ Forenbaum  | Materialien

Gnuplot Phaseng. Filter: Gnuplot Butterworth Phasengang
Status: (Frage) beantwortet Status 
Datum: 14:41 Di 24.08.2010
Autor: Ausgedacht

Aufgabe
Plotten der Phasengänge des Butterworth Filters mit Gnuplot. Der Filter ist hierbei normiert mit einer Grenzfrequenz = 1 rad/s.

Hallo Zusammen!
Ich habe ein Problem mit Gnuplot den Phasengang eines normierten Butterworth Filters der 2. Ord. (Grenzfrequenz=1) zu plotten. Ich denke es dürfte ein Fehler in der Funktion sein hier H(w)(siehe Script unten). Ich komme aber leider nicht drauf. Vielleicht kann mir ja jemand helfen, ich würde mich sehr freuen. Gruß Thilo

#Begin Script

set samples 2001
set encoding [mm] iso_8859_1 [/mm]
set terminal postscript enhanced landscape color lw 2 "Arial" 18
set output "butterwortTP-Phase.ps"

# Butterworth amplitude response and decibel calculation.  n is the order, which is just 1 in this image.
G(w) = -atan(w)*180/pi
H(w) = -atan((sqrt(2.0)*(w))/(1.0-(w**2.0)))*180/pi

# Gridlines
set grid

# Set x axis to logarithmic scale
set logscale x 10

# Set range of x and y axes
set xrange [0.001:1000]
set yrange [-365:35]

# Create y-axis tic marks every 15 degrees
set ytics 30

# Create x-axis tic marks once per decade (every multiple of 10)
set xtics 10

# Use 10 x-axis minor divisions per major division
set mxtics 10

# Axis labels
set xlabel "Kreisfrequenz ({/Symbol w}) [rad/s]"
set ylabel "Phase [Grad]"

# No need for a key
set nokey #0.1,-25

# Frequency response's line plotting style
set style line 1 lt 1 lw 2 lc 6
set style line 5 lt 1 lw 2 lc 1


# Label coordinates are relative to the graph window, not to the function, centered at the 1/4 and 3/4 width points
set label 1 "Durchlassbereich" at graph 0.25, graph 0.1 c
set label 2 "Sperrbereich" at graph 0.75, graph 0.1 c

# -3 dB arrow style and arrow

# "Cutoff frequency" label uses same coordinates as the function
set label 3 "Grenzfreq." at 2,4 l



# put legend
set key 30, -20

# Plot the filter response
plot [mm] \ [/mm]
G(x) ls 1 title "1. [mm] Ord.",\ [/mm]
H(x) ls 5 title "2. Ord."

# End Script

Ich habe diese Frage in keinem Forum auf anderen Internetseiten gestellt.

        
Bezug
Gnuplot Phaseng. Filter: Antwort
Status: (Antwort) fertig Status 
Datum: 16:49 Di 24.08.2010
Autor: Event_Horizon

Hallo!

zeig doch lieber erstmal, was da nicht klappt, oder wie die Formel theoretisch aussieht.

Nebenbei: mit

set angles degree

sagst du Gnuplot, daß du deine Winkel allesamt gerne in Grad hättest. Dein 180/pi brauchst du dann nicht mehr

Bezug
                
Bezug
Gnuplot Phaseng. Filter: Konkreter
Status: (Mitteilung) Reaktion unnötig Status 
Datum: 17:17 Di 24.08.2010
Autor: Ausgedacht

MBSchluesselwort
Hallo Sebastian,

was mir gnuplot liefert ist bei der 2. Ordnung des Butterworth-Filters nicht der erwartete Phasengang, der sollte nämlich gegen -180 Grad gehen.
Für die Phase des Butterworthfilters 2. Ordnung sollte folgendes gelten: [mm] roh(\omega)=-arctan((\wurzel{2}*\omega)/(1-\omega^{2})) [/mm]
Allgemein lautet die Formel für den Phasengangs für die Übertragungsfunktion: [mm] roh(\omega)=arctan(IM(H(j(\omega))/RE(H(j(\omega))) [/mm] wobei IM für den imaginären Teil der komplexen Übertragungsfunktion steht RE für den reellen Anteil.
Für die erste Ord. sieht das Ganze bei mir ja auch korrekt aus aber ich möchte einen Vergleich mit den Phasengängen und verscheidenen Filtern verschiedener Ord. machen, was hier schon bei der 2. Ord. beim Plotten schief läuft. Ich weiss momentan leider nicht wo mein Fehler liegt, er muss ja aber in der Funktion (hier H(w)) stecken.
Gruß Thilo

Habe hier noch schnell nen schlechtes jpeg. angehängt. Das schwarze gekrickel sollte der richtige Verlauf sein.
[Dateianhang nicht öffentlich]

Dateianhänge:
Anhang Nr. 1 (Typ: jpeg) [nicht öffentlich]
Bezug
                        
Bezug
Gnuplot Phaseng. Filter: Mitteilung
Status: (Mitteilung) Reaktion unnötig Status 
Datum: 17:55 Di 24.08.2010
Autor: fencheltee


> MBSchluesselwort
>  Hallo Sebastian,
>  
> was mir gnuplot liefert ist bei der 2. Ordnung des
> Butterworth-Filters nicht der erwartete Phasengang, der
> sollte nämlich gegen -180 Grad gehen.
> Für die Phase des Butterworthfilters 2. Ordnung sollte
> folgendes gelten:
> [mm]roh(\omega)=-arctan((\wurzel{2}*\omega)/(1-\omega^{2}))[/mm]
> Allgemein lautet die Formel für den Phasengangs für die
> Übertragungsfunktion:
> [mm]roh(\omega)=arctan(IM(H(j(\omega))/RE(H(j(\omega)))[/mm] wobei
> IM für den imaginären Teil der komplexen
> Übertragungsfunktion steht RE für den reellen Anteil.
>  Für die erste Ord. sieht das Ganze bei mir ja auch
> korrekt aus aber ich möchte einen Vergleich mit den
> Phasengängen und verscheidenen Filtern verschiedener Ord.
> machen, was hier schon bei der 2. Ord. beim Plotten schief
> läuft. Ich weiss momentan leider nicht wo mein Fehler
> liegt, er muss ja aber in der Funktion (hier H(w))
> stecken.
>  Gruß Thilo
>  
> Habe hier noch schnell nen schlechtes jpeg. angehängt. Das
> schwarze gekrickel sollte der richtige Verlauf sein.
>  [Dateianhang nicht öffentlich]

gibts in gnuplot evtl ne arctan2 version?

gruß tee

Bezug
                                
Bezug
Gnuplot Phaseng. Filter: Danke!
Status: (Mitteilung) Reaktion unnötig Status 
Datum: 19:50 Di 24.08.2010
Autor: Ausgedacht

Danke Tee!
Du hast mir sehr weiter geholfen!
Gruss
Thilo

Bezug
        
Bezug
Gnuplot Phaseng. Filter: Antwort
Status: (Antwort) fertig Status 
Datum: 19:03 Di 24.08.2010
Autor: Event_Horizon

Hallo!

Also, es liegt nicht an Gnuplot, sondern an deiner Funktion.

Du hast da

$ [mm] roh(\omega)=-arctan\left(\frac{\wurzel{2}\cdot{}\omega}{1-\omega^{2}}\right) [/mm] = [mm] -arctan\left(\frac{\wurzel{2}\cdot{}\omega}{(1-\omega)(1+\omega)}\right)$ [/mm]

Dieser Bruch hat eine Polstelle bei [mm] \omega=1 [/mm] von [mm] +\infty [/mm] nach [mm] -\infty [/mm]
Und das sorgt dafür, daß dein arctan dort zwischen [mm] \pm180^\circ [/mm] springt.

Aber auch hier kann ich dir Tipps zu Gnuplot geben:

1:
2: gnuplot> print sqrt(-4)
3: {0.0, 2.0}
4: gnuplot> i={0,1}
5: gnuplot> print i
6: {0.0, 1.0}
7: gnuplot> f(x)=cos(x)+i*sin(x)
8: gnuplot> print f(0)
9: 1.0
10: gnuplot> print f(pi/2.0)
11: {6.12303176911189e-17, 1.0}
12: gnuplot> plot f(x)
13:                   ^
14:          all points y value undefined!
15:
16: gnuplot> plot real(f(x)),imag(f(x))
17:


Das heißt, du kannst eine komplexe Übertragungsfunktion definieren, und das mit dem Real- und Komplexteil kann gnuplot dann für dich. Versuch das mal!

Bezug
                
Bezug
Gnuplot Phaseng. Filter: Danke!
Status: (Mitteilung) Reaktion unnötig Status 
Datum: 19:52 Di 24.08.2010
Autor: Ausgedacht

Danke für die zweite Hilfe, Sebastian!
Du hast mir sehr weiter geholfen!
Manchmal hilft einfach auch mal nen bisschen mitdenken ;-).



Bezug
Ansicht: [ geschachtelt ] | ^ Forum "Anwendungsprogramme"  | ^^ Alle Foren  | ^ Forenbaum  | Materialien


^ Seitenanfang ^
www.matheraum.de
[ Startseite | Forum | Wissen | Kurse | Mitglieder | Team | Impressum ]