[java] librairie mathématique

Bonjour les geeks, bon je viens de débarquer à l’universitée d’Edinburgh, et on m’a demandé de programmer en java ce que je fais depuis une semaine sans trop de problème.

Mais là je tombe sur un OS, je dois effectuer la fonction inverse du sinus hyperbolique sur une série de donnée.  Après une petite recherche sur google j’ai trouvé des librairies mais elles sont visiblement devenu payante depuis alors je me disais qu’il y aurrait bien un petit geek qui m’aiderrait.

Je parle de jnl ou www.vni.com.

Merci de votre aide et de vos petits trucs pour ce problème qui m’est insoluble depuis 2 jours enfin je dois dire que j’ai avancé en attendant dans d’autres routines.

Le sinus hyperbolique de x, c’est bien (e^x - e^(-x)) / 2, non ? Dans
la classe Math, tu as la méthode exp qui te permet de calculer, ainsi
ton sinus hyperbolique… Me trompe-je?

Le sinus hyperbolique inverse, c’est la racine carrée de 1+x² en fait ? (j’étais super nul en maths à l’époque, alors maintenant, avec tout ce que j’ai oublié…). Si c’est ça, alors c’est super easy:

public double asinh(double x) {

 return (Math.sqrt(1+(x * x)));

}

Maintenant, tu as peut-être besoin de plus de choses que juste le asinh?

Edit: 2e solution avec l’inverse du sinh
Ce message a été édité par rorotaz le 17/02/2004

[quote]Le sinus hyperbolique de x, c’est bien (e^x - e^(-x)) / 2, non ? Dans
la classe Math, tu as la méthode exp qui te permet de calculer, ainsi
ton sinus hyperbolique… Me trompe-je?

Le sinus hyperbolique inverse, c’est la racine carrée de 1+x² en fait ?
(j’étais super nul en maths à l’époque, alors maintenant, avec tout ce
que j’ai oublié…). Si c’est ça, alors c’est super easy:

public double asinh(double x) {

 return (Math.sqrt(1+(x * x)));

}

Maintenant, tu as peut-être besoin de plus de choses que juste le asinh?

Edit: 2e solution avec l’inverse du sinh
Ce message a été édité par rorotaz le 17/02/2004[/quote]
Si je peux me permettre, un rapide coup d’oeil à mon meilleur ami le Formulaire et Tables me donne plus exactement :

arcsinh(x) = ln(x + sqrt(x^2 + 1))

Il s’agit bien là de la définition de sinus hyperbolique.

Par contre sa fonction inverse, c’est au-delà de mes compétences mathématiques… Jamais entendu parler que ce soit sqrt(1+x^2)… Et Maple refuse de me redonner x quand je lui demande sinh(sqrt(1+x^2))…

Mais google est mon ami par contre, et http://access.jessy.free.fr/htm/Number/Math.htm dit que asinh = ln(x + sqrt(x^2+1)).

Ah, ya du sqrt(x^2+1) là-dedans, voilà qui nous rapproche de l’avis de mon pré-prédécesseur ! Et hoplà, Maple vient de me confirmer la formule !

Voilà voilà…

[Edit] et paf, trop de verbosité m’a fait devancer par Baleg :-p

Ce message a été édité par Exaton le 17/02/2004

Bon, effectivement, il doit me manquer un bout de mon équation Donc nous disons:

[i]
public double arcsinh(double x) {

 return (Math.log(x + Math.sqrt(1 + x*x)));

}
[/i]

Ca va mieux comme ça ? (j’ai un doute sur le log(x) et le ln(x)…)

Taz, toujours aussi mauvais en maths

[quote]Bon, effectivement, il doit me manquer un bout de mon équation Donc nous disons:

[i]
public double arcsinh(double x) {

 return (Math.log(x + Math.sqrt(1 + x*x)));

}
[/i]

Ca va mieux comme ça ? (j’ai un doute sur le log(x) et le ln(x)…)

Taz, toujours aussi mauvais en maths [/quote]
Mathématiquement c’est bien l’inverse de exp, donc ln qu’il faut utiliser. En Java si je me
gourre pas (moi c’est dans ce langage que j’ai des lacunes. Chacun son
truc ), c’est donc bien Math.log(x) (facile à vérifier pour plus de sureté
Edit : Un peu plus de clarté…

Ce message a été édité par Baleg le 17/02/2004

[quote]Bonjour les geeks, bon je viens de débarquer à l’universitée d’Edinburgh, et on m’a demandé de programmer en java ce que je fais depuis une semaine sans trop de problème.[/quote]J’y connais rien en Java, mais je m’y connais en Edinburgh… J’ai aussi fait mon stage de fin d’année là bas. Globalement que des bons souvenirs.
T’es où ? A Napier ? Tu restes jusqu’à quand ?
Si peux, prolonge jusqu’au mois d’aout, y a un festival de musique et d’art de rue qui est vraiment fantastique. Tiens bah : y a même des photos…

Antoine

Merci pour votre aide, et je confirme qu’après teste, c’était bien ça.

Question subsidiaire c’est normal que j’arrive pas à poster avec Mozilla ou c’est moi ?

[quote]Merci pour votre aide, et je confirme qu’après teste, c’était bien ça.

Question subsidiaire c’est normal que j’arrive pas à poster avec Mozilla ou c’est moi ?[/quote]C’est normal. Moi non plus j’y arrive pas.

Enfin si, on peut, mais en mode “html”.