La fonction COMPLEXE.LOG2 (IMLOG2 en anglais) calcule le logarithme en base 2 d'un nombre complexe. Elle combine les propriétés du logarithme complexe avec la base naturelle de l'informatique, celle des bits.
Concrètement, c'est elle qu'on utilise en traitement du signal numérique pour analyser des spectres en échelle logarithmique après transformée de Fourier, en télécommunications pour calculer des capacités de canal selon le théorème de Shannon, et en algorithmique pour analyser la complexité en base 2. Quand les coefficients complexes d'une FFT doivent être mis à l'échelle logarithmique, COMPLEXE.LOG2 fait le calcul en une seule cellule.
Syntaxe de la fonction COMPLEXE.LOG2
=COMPLEXE.LOG2(nombre_complexe)Le logarithme de "0+0i" n'est pas défini et renvoie #NOMBRE!. Pour un nombre réel positif, la partie imaginaire du résultat est nulle (log₂(8) donne "3+0i").
Comprendre chaque paramètre de la fonction COMPLEXE.LOG2
nombre_complexe
: le nombre complexe pour lequel tu veux calculer le logarithme en base 2Il peut être fourni sous forme de texte ("3+4i"), comme référence à une cellule contenant un complexe, ou comme résultat d'une autre fonction complexe (par exemple COMPLEXE(3; 4)).
Le format doit être "a+bi" ou "a+bj" sans espaces entre les composantes. "3+4i" est valide ; "3 + 4 i" génère #VALEUR!.
Astuce : Pour un nombre purement réel positif comme 8, écris "8+0i" ou simplement "8". Excel interprète les deux comme un complexe à partie imaginaire nulle et renvoie le log₂ classique.
Attention : Le logarithme n'est pas défini en 0. Si tes données peuvent contenir "0+0i", entoure la formule dans SIERREUR : =SIERREUR(COMPLEXE.LOG2(A1); "indéfini").
Exemples pratiques pas à pas
Ingénieur informatique : vérifier les puissances de 2 en bits
Tu développes un algorithme de compression et tu dois vérifier que les tailles de blocs correspondent bien à des puissances de 2. Pour des signaux réels positifs, COMPLEXE.LOG2 donne directement le nombre de bits.
log₂(2) = 1, log₂(4) = 2, log₂(8) = 3 : chaque résultat confirme combien de bits sont nécessaires pour représenter ces valeurs. La partie imaginaire est nulle pour tous les réels positifs, ce qui permet de l'utiliser comme contrôle : si elle est non nulle, ton signal a une composante de phase.
| A | B | C | D | |
|---|---|---|---|---|
| 1 | Signal complexe | LOG2 du signal | Partie réelle (log₂ du module) | Partie imaginaire |
| 2 | 2+0i | =COMPLEXE.LOG2(A2) | =COMPLEXE.REEL(B2) | =COMPLEXE.IMAGINAIRE(B2) |
| 3 | 4+0i | =COMPLEXE.LOG2(A3) | =COMPLEXE.REEL(B3) | =COMPLEXE.IMAGINAIRE(B3) |
| 4 | 8+0i | =COMPLEXE.LOG2(A4) | =COMPLEXE.REEL(B4) | =COMPLEXE.IMAGINAIRE(B4) |
| 5 | 1+0i | 1 | 0 |
=COMPLEXE.LOG2("2+0i")Astuce de pro : Pour extraire uniquement la partie réelle du résultat (le log₂ du module), utilise COMPLEXE.REEL directement sur la sortie de COMPLEXE.LOG2 : =COMPLEXE.REEL(COMPLEXE.LOG2(A2)).
Data scientist : analyse spectrale de signaux FFT
Tu travailles sur l'analyse spectrale d'un signal audio. Après transformée de Fourier, tu obtiens des coefficients complexes comme 3+4i (module = 5, argument ≈ 0,927 rad). COMPLEXE.LOG2 te donne 2,32+1,30i.
La partie réelle 2,32 correspond à log₂(5) et représente la magnitude du spectre à cette fréquence en échelle logarithmique. La partie imaginaire 1,30 vaut 0,927 / ln(2) et encode la phase. La mise à l'échelle en base 2 est naturelle pour l'analyse en bits et la visualisation de spectrogrammes.
| A | B | C | D | |
|---|---|---|---|---|
| 1 | Coefficient FFT | LOG2 complexe | Magnitude en échelle log₂ | Phase normalisée |
| 2 | 3+4i | =COMPLEXE.LOG2(A2) | =COMPLEXE.REEL(B2) | =COMPLEXE.IMAGINAIRE(B2) |
| 3 | 1+1i | =COMPLEXE.LOG2(A3) | =COMPLEXE.REEL(B3) | =COMPLEXE.IMAGINAIRE(B3) |
| 4 | 5+0i | =COMPLEXE.LOG2(A4) | =COMPLEXE.REEL(B4) | =COMPLEXE.IMAGINAIRE(B4) |
| 5 | 2,32+1,30i | 2,32 | 1,30 |
=COMPLEXE.LOG2("3+4i")Analyste télécommunications : capacité de canal (Shannon)
Tu analyses la capacité d'un canal de communication selon le théorème de Shannon-Hartley. Chaque sous-porteuse d'un système OFDM a un gain complexe H(f), et la contribution de cette sous-porteuse à la capacité totale est proportionnelle à log₂(1 + |H(f)|²).
Pour 1,5+0,5i, COMPLEXE.LOG2 donne 0,70+0,47i. La partie réelle 0,70 indique la contribution à la capacité en bits par utilisation. La partie imaginaire encode le déphasage, important pour l'égalisation du canal. En sommant les parties réelles sur toutes les sous-porteuses, tu obtiens la capacité totale du canal.
| A | B | C | D | |
|---|---|---|---|---|
| 1 | Gain complexe H(f) | LOG2 du gain | Contribution capacité (bits) | Phase |
| 2 | 1,5+0,5i | =COMPLEXE.LOG2(A2) | =COMPLEXE.REEL(B2) | =COMPLEXE.IMAGINAIRE(B2) |
| 3 | 2+1i | =COMPLEXE.LOG2(A3) | =COMPLEXE.REEL(B3) | =COMPLEXE.IMAGINAIRE(B3) |
| 4 | 1+2i | =COMPLEXE.LOG2(A4) | =COMPLEXE.REEL(B4) | =COMPLEXE.IMAGINAIRE(B4) |
| 5 | 0,70+0,47i | 0,70 | 0,47 |
=COMPLEXE.LOG2("1,5+0,5i")Envie de t'entraîner sur de vrais exercices Excel ?
M'entraînerLes erreurs fréquentes avec la fonction COMPLEXE.LOG2
Avec COMPLEXE.LOG2, presque tous les ratés viennent de la chaîne que tu lui passes. Un espace ou un caractère parasite dans "3 + 4i" suffit à déclencher #VALEUR!, parce qu'Excel attend une notation collée du type "a+bi".
L'autre cas, plus mathématique, c'est "0+0i" ou "0" : le logarithme de zéro tend vers l'infini, donc tu récupères #NOMBRE!. Et si ton résultat te paraît juste mais décalé, vérifie que tu n'as pas confondu la base avec COMPLEXE.LN (base e) ou COMPLEXE.LOG10 (base 10).
Format invalide du nombre complexe : #VALEUR!
=COMPLEXE.LOG2("3 + 4i") et =COMPLEXE.LOG2("3+4*i") génèrent #VALEUR! car les espaces et les caractères parasites ne sont pas acceptés dans la notation complexe d'Excel.
Solution : Supprime tout espace et caractère non standard : utilise "3+4i" ou "3+4j". Si tes données viennent d'une importation, nettoie les chaînes avec SUPPRESPACE ou SUBSTITUE avant de les passer à COMPLEXE.LOG2.
Logarithme de zéro : #NOMBRE!
=COMPLEXE.LOG2("0+0i") et =COMPLEXE.LOG2("0") génèrent #NOMBRE! car le logarithme de 0 n'est pas défini mathématiquement (il tend vers moins l'infini).
Solution : Protège ton calcul avec SIERREUR : =SIERREUR(COMPLEXE.LOG2(A1); "indéfini"). Si un zéro est un cas métier possible, traite-le en amont avec un test conditionnel avant d'appeler la fonction.
Confusion entre COMPLEXE.LN, COMPLEXE.LOG10 et COMPLEXE.LOG2
Excel propose trois fonctions de logarithme complexe, et choisir la mauvaise base donne des résultats faux. COMPLEXE.LN utilise la base e, COMPLEXE.LOG10 la base 10, COMPLEXE.LOG2 la base 2.
Solution : Choisis ta base selon le contexte : utilise COMPLEXE.LOG2 pour tout ce qui touche aux bits et à l'informatique, COMPLEXE.LN pour les mathématiques pures, COMPLEXE.LOG10 pour les décibels. En cas de doute sur la base utilisée par une source externe, vérifie le résultat avec une valeur connue comme "2+0i" qui doit donner 1+0i en base 2.
Questions fréquentes sur la fonction COMPLEXE.LOG2
Comment fonctionne le logarithme en base 2 d'un nombre complexe ?
Le logarithme en base 2 d'un complexe z = a+bi est défini comme ln(z) / ln(2), où ln(z) = ln(|z|) + i·arg(z). La partie réelle du résultat vaut log₂(|z|) (log₂ du module) et la partie imaginaire vaut arg(z) / ln(2). Excel fait ce calcul en une seule cellule.
Quelle est la différence entre COMPLEXE.LOG2, COMPLEXE.LN et COMPLEXE.LOG10 ?
Ces trois fonctions calculent le logarithme complexe dans des bases différentes. COMPLEXE.LN utilise la base e (logarithme naturel), COMPLEXE.LOG10 la base 10, COMPLEXE.LOG2 la base 2. En informatique, la base 2 est naturelle car elle correspond aux bits. Pour les décibels, utilise la base 10.
Pourquoi utiliser log₂ plutôt que log₁₀ en informatique et télécommunications ?
La base 2 correspond directement aux bits. log₂(8) = 3 signifie qu'il faut 3 bits pour représenter 8 valeurs. En théorie de l'information, l'entropie de Shannon et la capacité de canal s'expriment naturellement en bits, donc en base 2. En base 10, le résultat n'a pas de sens intuitif pour ces grandeurs.
Comment interpréter le résultat complexe de cette fonction ?
Le résultat a+bi se décompose en deux informations. La partie réelle a est le logarithme en base 2 du module du signal (l'amplitude en échelle logarithmique). La partie imaginaire b est l'argument du complexe divisé par ln(2) (la phase normalisée). Pour un réel positif, la partie imaginaire est nulle.
Que renvoie la fonction pour un nombre réel positif ?
Pour un réel positif x, COMPLEXE.LOG2 renvoie "log₂(x)+0i", ce qui correspond exactement au logarithme en base 2 classique. Par exemple, COMPLEXE.LOG2("8+0i") donne "3+0i". La partie imaginaire est toujours nulle pour les réels positifs car leur argument est 0.
Peut-on utiliser COMPLEXE.LOG2 dans un calcul d'entropie de Shannon ?
Oui. L'entropie de Shannon d'un signal complexe fait intervenir log₂ du module des probabilités ou amplitudes. COMPLEXE.LOG2 permet de calculer cette composante directement sur des représentations complexes issues d'une FFT, sans avoir à extraire manuellement module et argument avant de prendre le logarithme.
Pour aller plus loin
Les fonctions similaires : COMPLEXE.LN, COMPLEXE, COMPLEXE.MODULE, COMPLEXE.EXP, COMPLEXE.PUISSANCE
Bloqué sur une formule Excel ?
Pose ta question à notre assistant Excel IA, il te sort la bonne formule en quelques secondes.
Essayer l'assistant IAGratuit · 10 questions par mois
