-
Notifications
You must be signed in to change notification settings - Fork 32
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Rice to gaussian image #38
base: master
Are you sure you want to change the base?
Conversation
L'usage des fonctions spéciales selon le range donnant des résultats instables parfois, j'ai fait de nouvelles modifications. En particulier, il nous faudrait discuter sérieusement une potentielle dépendance à la librairie ARB. Rien pushé pour l'instant car j'ai introduit en local cette dépendance. |
Pour la dependance, faut que je regarde ce qu'elle inclut. Deux / trois criteres que j'aurais :
|
|
Bon je te cache pas que les dependances multiples et surtout la dependance a pthread, que j'ai passe des mois a degommer, ne me fait pas rever la... Et en plus, les sous dependances n'ont pas de cmake lists... |
Ah oui tiens, y aussi pthread c'est vrai. D'un autre cote, la lib est présente sur tous les OS il me semble par défaut, non? Du coup, qu'est-ce qui t'embête avec ca ? |
Sinon les auteurs sont actifs et pro-discussion quand il s'agit d'utiliser leur lib. Donc on peut discuter la possibilité de rendre pthread optionnel (et p-e d'autres dependences mais j'ai des doutes pour les autres quand meme). |
Tu analyses toujours l’idée ? Tu veux que j’en fasse qqch? Je contacte les auteurs pour demander des trucs ? |
Le probleme est profond et a mon idee les auteurs voudront pas. Le gros souci de cette lib et de toutes ses dependances c'est que la compile (surtout sous windows) va etre tres penible. Et je ne les vois honnetement pas passer leur code pour eviter les dependances et se debarasser de pthread... Je regarde encore un peu mais je suis pas trop fan |
Ils ont une section compile avec visual studio pour ce qui est de Windows. En tout cas, à part ces problèmes techniques, j’ai poussé un coup de gueule tout seul dans mon coin l’autre jour sur Anima sur le fait qu’on essaie d’implémenter ces fonctions spéciales nous mêmes avec un succès plus que modéré et ça prend du temps et c’est pas l’objectif d’Anima selon moi. On ferait mieux de se fier à une librairie externe spécialisé là dessus avec des gens qui en on trouve fait leur core research. Ton avis éclairé ? |
Ok on va se calmer. Si je passe du temps la dessus, c'est que j'y vois l'interet. Effectivement virer ces fonctions degueu avec plein de chiffres en dur, ca me dit bien. Mais c'est pas une raison pour mettre une pletore de dependances toutes plus incompatibles cmake les unes que les autres (et donc merdiques a compiler dans un superprojet) et utilisant des vieux trucs genre pthread (a moitie deprecated sans le dire sous mac et tres vieux sous windows) et autres. On va prendre une autre approche : le fork ! Avec un peu de chance, ca peut passer. Tu utilises quoi concretement de arb (j'en vois aucune mention dans la PR) ? Quelles fonctions, quels fichiers include, etc ? (on peut passer ca par mail peut etre d'ailleurs pour pas polluer). Que j'aille voir ce qu'on peut extraire ou non. Si on peut, je tente ca. |
2ca1a75
to
7a983ea
Compare
52daa50
to
f7e9e03
Compare
b226b68
to
23d9103
Compare
Bien, je modifie les trucs au fur et a mesure pour simplifier. Est ce que tu pourrais me dire pour les fonctions dans ARB special functions si elles ont un equivalent dans les special functions classiques ? Merci |
Oui elles sont toutes (en tout cas celles qu'on utilise jusqu'a present) dans |
Cette histoire de C++17 ne m'etonne pas. Je soupconne apple de pas avoir encore implementé toutes les fonctions. Peut etre en septembre avec le nouvel os... En attendant, faut utiliser boost. Je te prepare une version refusionnée et simplifiée des fonctions, tu me diras si j'ai fait n'importe quoi |
Tu as fini la conversion des methodes ? Si oui, je regarde si ca compile pour ensuite merger bientot |
Oui. Reste a voir pour log-Bessel. Y a p-e mieux a faire en utilisant la Bessel ratio. Mais ca changera juste les temps de calcul. La precision du résultat en l'état actuel devrait être bonne. D'ailleurs ca m'a fait découvrir |
8a17687
to
4f28ea6
Compare
4f28ea6
to
2482cff
Compare
Voila. Apres 24 heures d'experimentation pour tenter vainement d'implementer la confluent hypergeometric qui n'est pas dans Boost.Math version header-only, j'en arrive a une pseudo-implementation qui semble fonctionner pour un range limité de valeurs. En l'occurence, c'est inutilisable pour cet outil de transfo de bruit. D'ou mon ajout de |
e6cb103
to
1876346
Compare
1876346
to
4df68a9
Compare
4df68a9
to
4243abd
Compare
4243abd
to
e281090
Compare
e281090
to
7c7b19a
Compare
8a3d3bc
to
f8dfca4
Compare
f8dfca4
to
d10ec39
Compare
…. Remains log bessel to deal with.
…ding on input argument range.
…ribution parameters.
…nly when Arb is linked with Anima. Otherwise, unstable behaviour.
025d440
to
39cb989
Compare
Seems that Boost now includes a header-only implementation of Kummer function: www.boost.org/doc/libs/1_76_0/libs/math/doc/html/math_toolkit/hypergeometric/hypergeometric_1f1.html. |
b3f19d7
to
afcf4f4
Compare
No description provided.