error in computing atanh

8 visualizzazioni (ultimi 30 giorni)
Francisco Peñuñuri
Francisco Peñuñuri il 13 Feb 2021
When computing atanh(3.1) in R2018.a and R2020.a the complex part has positive sign.
When computing in fortran (and Mathematica) the result is negative.

Risposta accettata

David Goodmanson
David Goodmanson il 13 Feb 2021
Modificato: David Goodmanson il 13 Feb 2021
Hello Francisco,
The imaginary part is i*pi/2, so the two answers are a+i*pi/2 and a-i*pi/2, where a is real. Both answers are equally valid, so unless an answer is violating some prearranged standard set by the particular software invoked, there is not an error. Note that
tanh(a+i*b) = tanh(a+i*b+i*n*pi)
so there is an ambiguity modulo i*pi in the atahh function..
  3 Commenti
John D'Errico
John D'Errico il 13 Feb 2021
But there is no international standards commission that decides which is the principal branch to take on some multi-valued result. And while it seems pretty standard to take the POSITIVE branch for a sqrt, so it may have seemed just as logical to take the positive branch here.
The result is valid and non-unique. You cannot say more than that.
Francisco Peñuñuri
Francisco Peñuñuri il 13 Feb 2021
Modificato: Francisco Peñuñuri il 13 Feb 2021
I agree with you. Still, is somehow awkward that sqrt(4) gives the principal value (regardless if this is positive or negative) while atanh(3.1) does not. I will accept the answer.
Thank you very much.

Accedi per commentare.

Più risposte (0)

Categorie

Scopri di più su Deep Learning Toolbox in Help Center e File Exchange

Prodotti

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by