Contenu principal

mag2db

Convertir l’amplitude en décibels (dB)

    Description

    ydb = mag2db(y) exprime en décibels (dB) les mesures d’amplitude spécifiées dans y. La relation entre amplitude et décibels est ydb=20log10(y)

    exemple

    Exemples

    réduire tout

    Pour les besoins de cet exemple, considérons la boucle de rétroaction SISO suivante, où le système contient plusieurs fréquences de crossover de gain ou de crossover de phase, ce qui entraîne plusieurs valeurs de marges de gain ou de phase :

    SISO transfer function in a negative feedback loop

    Créez la fonction de transfert.

    G = tf(20,[1 7]) * tf([1 3.2 7.2],[1 -1.2 0.8]) * tf([1 -8 400],[1 33 700]);

    Utilisez la commande allmargin pour calculer toutes les marges de stabilité.

    m = allmargin(G)
    m = struct with fields:
         GainMargin: [0.3408 3.3920]
        GMFrequency: [1.9421 16.4807]
        PhaseMargin: 68.1140
        PMFrequency: 7.0776
        DelayMargin: 0.1680
        DMFrequency: 7.0776
             Stable: 1
    
    

    Notez que les marges de gain sont exprimées en rapports de gain, et non en décibels (dB). Utilisez mag2db pour convertir les valeurs en dB.

    GainMargins_dB = mag2db(m.GainMargin)
    GainMargins_dB = 1×2
    
       -9.3510   10.6091
    
    

    Arguments d'entrée

    réduire tout

    Tableau en entrée, spécifié en tant que scalaire, vecteur, matrice ou tableau. Quand y est non scalaire, mag2db est une opération élément par élément.

    Types de données : single | double
    Support des nombres complexes : Oui

    Arguments en sortie

    réduire tout

    Mesures d’amplitude en décibels, renvoyées en tant que scalaire, vecteur, matrice ou tableau de la même taille que y.

    Historique des versions

    Introduit dans R2008a

    Voir aussi