Как рассчитать лог комплексного числа для базы, отличной от «е»? - PullRequest
1 голос
/ 26 июня 2009

У меня есть бит VB6 из проекта, над которым я работаю:

Public Function C_Ln(c As ComplexNumber) As ComplexNumber
    Set C_Ln = toComplex(Log(C_Abs(c)), Atan2(c.Imag, c.Real))
End Function

Функция VB6 Log () является base-e. Я хотел бы подготовить версии этого для базы-2, базы-10 и базы-n. С чего начать?

Ответы [ 2 ]

9 голосов
/ 26 июня 2009

Вы можете использовать следующие математические идентификатор :

alt text

В VB это было бы что-то вроде:

Log10 = Log(X) / Log(10)
Log2 = Log(X) / Log(2)
' ... LogN = Log(X) / Log(N)
2 голосов
/ 26 июня 2009

Если вы разделите натуральный логарифм x на логарифм базы, которую вы хотите достичь, вы получите желаемый результат, т.е. (ln x) / (ln n) = y

См. здесь для объяснения

...