При логарифме комплексного числа действительная часть — это лог абсолютного значения входных данных, а мнимая часть — это фаза входных данных. Возврат 0,785398 в качестве мнимой части log(inf + inf * 1j) означает, что предполагается, что inf в действительной и мнимой частях имеют одинаковую длину.
Это предположение не кажется для согласованности с другими вычислениями, например, inf - inf == nan, inf / inf == nan, что предполагает, что 2 inf не обязательно имеют одни и те же значения.
Почему предположение для log(inf + inf * 1j) отличается?
Воспроизведение кода C++:< /p>
Код: Выделить всё
#include
#include
#include
int main() {
double inf = std::numeric_limits::infinity();
std::complex b(inf, inf);
std::complex c = std::log(b);
std::cout
Подробнее здесь: [url]https://stackoverflow.com/questions/74798626/why-is-loginf-inf-j-equal-to-inf-0-785398-j-in-c-python-numpy[/url]