Comment calculer le log d'un nombre complexe à une base autre que 'e'?
-
20-08-2019 - |
Question
J'ai ce fragment de VB6 extrait d'un projet sur lequel je travaille:
Public Function C_Ln(c As ComplexNumber) As ComplexNumber
Set C_Ln = toComplex(Log(C_Abs(c)), Atan2(c.Imag, c.Real))
End Function
La fonction VB6 Log () est base-e. J'aimerais cuisiner des versions de ceci pour faire en base 2, en base 10 et en base-n. Où est-ce que je commence?
La solution
Vous pouvez utiliser la identité mathématique suivante:
En VB, ce serait quelque chose comme:
Log10 = Log(X) / Log(10)
Log2 = Log(X) / Log(2)
' ... LogN = Log(X) / Log(N)
Autres conseils
Si vous divisez le journal naturel de x par le journal de la base que vous souhaitez obtenir, vous obtenez le résultat souhaité, c'est-à-dire (ln x) / (ln n) = y
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow