dB (FPScript)

21.09.2021

Wandelt ein Amplituden- oder Leistungssignal in Dezibel um.

Syntax

dB(DataSet [ , SignalType = DB_POWER + DB_NORMALIZE ])
oder
dB(DataSet, Reference, SignalType)

 

Die Syntax der dB-Funktion besteht aus folgenden Teilen:

Teil

Beschreibung

DataSet

Die Daten, die in Dezibel umgerechnet werden sollen.

Es sind alle Datenstrukturen erlaubt. Es sind alle numerischen Datentypen erlaubt außer Kalenderzeit und Zeitspanne.

Bei komplexen Datentypen erfolgt eine Betragsbildung.

Ist das Argument eine Liste, dann wird die Funktion für jedes Element der Liste ausgeführt und das Ergebnis ist ebenfalls eine Liste.

Reference

Ein Referenzwert, durch den alle Werte von DataSet vor der Logarithmierung dividiert werden.

Erlaubte Datenstrukturen sind Einzelwert. Es sind alle numerischen Datentypen erlaubt. Die Einheit muss mit der von Parameter DataSet kompatibel sein.

Bei komplexen Datentypen erfolgt eine Betragsbildung.

Ist das Argument eine Liste, dann wird deren erstes Element entnommen. Ist dies wieder eine Liste, dann wird der Vorgang wiederholt.

SignalType

Gibt an, ob die Daten als Amplitude oder als Leistung interpretiert werden sollen. Für Amplituden wird nach der Logarithmierung mit dem Wert 20 und für Leistungen mit dem Wert 10 multipliziert. Der Faktor 10 ergibt sich aus der Einheit Dezibel, was Zehntel Bel bedeutet. Der zusätzliche Faktor 2 für Amplituden entspricht einer Quadratur der Amplituden vor der Logarithmierung, die notwendig ist, um die Signalleistung aus der Amplitude zu bilden.

Das Argument SignalType kann folgende Werte haben:

Konstante

Bedeutung

DB_POWER

Interpretiert die Daten als Leistung.

DB_AMPLITUDE

Interpretiert die Daten als Amplitude.

+ DB_NORMALIZE

Normiert die Daten durch Division durch deren Maximalwert. Bei Signalreihen und Datenmatrizen wird der globale Maximalwert über alle Spalten ermittelt.

+ DB_NORMALIZE_PER_COLUMN

Normiert die Daten durch Division durch deren Maximalwert. Bei Signalreihen und Datenmatrizen wird der Maximalwert für jede Spalte ermittelt.

Ist das Argument eine Liste, dann wird deren erstes Element entnommen. Ist dies wieder eine Liste, dann wird der Vorgang wiederholt.

Wenn das Argument nicht angegeben wird, wird es auf den Vorgabewert DB_POWER + DB_NORMALIZE gesetzt.

Anmerkungen

Das Ergebnis hat die gleiche Struktur wie das Argument DataSet, ggf. erfolgt die Berechnung elementweise.

Das Ergebnis hat die Einheit dB.

Es wird ggf. zunächst normiert, dann die reelle Logarithmusfunktion zur Basis 10 berechnet und zuletzt wird mit dem Wert 20 oder 10 multipliziert. Wenn Sie keinen Referenzwert angeben und auch keine Normierung auf den Maximalwert wählen oder DataSet ein Einzelwert ist, dann entspricht das einer Normierung auf den Wert 1 in der Einheit von DataSet. DataSet muss positiv sein. Für jeden negativen Wert von DataSet gibt die Funktion einen ungültigen Wert zurück. Das Ergebnis hat den Datentyp 64-Bit Fließkommazahl.

Verfügbarkeit

FlexPro View, Basic, Professional, Developer Suite

Beispiele

dB(1)

Ergibt 0.

dB(10)

Ergibt 10.

dB(10, DB_AMPLITUDE)

Ergibt 20.

dB(-1)

Ergibt ?.

dB(FFTn(Signal), DB_AMPLITUDE + DB_NORMALIZE)

Berechnet ein auf 0 dB normiertes Magnitudenspektrum in dB.

dB(PSD, PSDRef, DB_POWER)

Berechnet ein auf den Wert PSDRef normiertes Leistungsdichtespektrum in dB.

Siehe auch

Log10-Funktion

Artikel teilen oder als Email versenden:

Diese Beiträge könnten Sie ebenfalls interessieren