π
<-
Chat plein-écran
[^]

Tableau de variation v2

Tableau de variation v2

Message non lude GalacticPirate » 01 Nov 2016, 13:02

Salut ! Vous vous souvenez du programme de tabvar que j'ai dépoussiéré à l'occasion l'année dernière pour TI-83 Premium CE ? Bon, Je vais reprendre le projet de zéro. Pourquoi ? Parce que le code est tout simplement foireux et bordélique, et que ce truc est incapable de produire un tableau vrai à 100 %. Soyons clairs, jamais ça ne sera parfait, mais on va essayer :p
Alors, on a besoin de plusieurs étapes :
  • D'abord, on demande le domaine d'étude, rien de sorcier. Soit
    $mathjax$[a,b] ((a,b)\in \mathbb{R}^{2})$mathjax$
    , soit
    $mathjax$\mathbb{R}$mathjax$
    .
  • Ensuite, on entreprend un scan de
    $mathjax$f'(x)$mathjax$
    sur
    $mathjax$[a,b]$mathjax$
    , ou sur
    $mathjax$[-10^{2},10^{2}]$mathjax$
    si l'utilisateur a choisi
    $mathjax$\mathit{D}_{f}=\mathbb{R}$mathjax$
    . En gros, je prendrai une boucle For( avec un incrément
    $mathjax$\varepsilon =10^{-4}$mathjax$
    (ou
    $mathjax$\varepsilon =10^{-5}$mathjax$
    , je sais pas encore) et on va mitrailler du solve(nDeriv( pour détecter des solutions. Mais, en même temps, on va détecter si la dérivée dépasse
    $mathjax$10^{k}, k$mathjax$
    entier suffisamment grand, et on ralentit la cadence
    $mathjax$\varepsilon$mathjax$
    d'un facteur 1000 ou 10000 pour s'approcher de la valeur interdite. Ensuite, go stocker ces choses dans des listes ou des matrices.
  • Maintenant, on calcule les limites inférieure et supérieure de
    $mathjax$f$mathjax$
    en chaque zéro/valeur interdite de la dérivée. Si les limites sont différentes (et finies) au niveau d'un zéro ou d'une valeur interdite, on les stocke et on considère ce zéro comme valeur interdite de
    $mathjax$f$mathjax$
    . Sinon, si c'est un zéro de la dérivée, on calcule son image par
    $mathjax$f$mathjax$
    , si c'est une valeur interdite de
    $mathjax$f'$mathjax$
    , on calcule la limite. Si jamais on a des limites infinioes, différentes ou pas, au niveau d'une V.I., on le prend aussi en compte.
  • On finalise le coup en prenant la limite de
    $mathjax$f$mathjax$
    en les bornes de son domaine d'étude/de définition, et si c'est
    $mathjax$\mathbb{R}$mathjax$
    on les calcule en
    $mathjax$\pm \infty$mathjax$
    . Puis on trouve les signes de
    $mathjax$f'$mathjax$
    sur chaque intervalle à coups de (A+B)/2.
  • La partie la plus chiante (oui, oui, je suis sérieux), on dessine le tableau à partir du bordel de valeurs qu'on a stockées.

Bon. Soyons sérieux, cette méthode a un énorme avantage et un énorme inconvénient. L'avantage, c'est que si on se débrouille pour pas tout foirer, on aura un truc fiable à 100. % pour le lycée (i.e., faudra le faire exprès pour le faire buguer) L'inconvénient, c'est que ce sera aussi lent que d'essayer de bruteforce des systèmes stochastiques météorologiques à 1000 variables sur une TI-80 :troll: Mais bon, si c'est le prix à payer pour faire mieux que la précédente version :p
Voilà ! Bon, je cherche pas des simples opinions, mais surtout des commentaires sur ma façon de faire, des optis, des bouts de code/routines et au mieux des participations d'autres membres.
STV
Dernière édition par GalacticPirate le 01 Nov 2016, 13:10, édité 1 fois.
Mon profil TI-PlanetDevenez premium !
ImageImage
Modérateur de TI-Planet.org depuis décembre 2015, et membre de la communauté depuis Mai 2015.Cliquez ci-dessus pour faire un don à TI-Planet.org via PayPal et devenir Donateur ou Premium (à partir de 3€) ! Vous aurez accès à des générations illimitées et prioritaires avec Mviewer GX Creator, ainsi qu'au forum secret ! :bj: En plus, vous pourrez être orange sur le chat :troll:

Image
Avatar de l’utilisateur
GalacticPirateModo
Niveau 16: CC2 (Commandeur des Calculatrices)
Niveau 16: CC2 (Commandeur des Calculatrices)
Prochain niv.: 1.3%
 
Messages: 1156
Images: 2
Inscription: 23 Mai 2015, 10:36
Localisation: Hauts-de-Seine, France
Genre: Homme
Calculatrice(s):
MyCalcs profile
Classe: L3 Informatique
GitHub: GalacticPirate-Prog

Re: Tableau de variation v2

Message non lude Adriweb » 01 Nov 2016, 13:06

Hm, faut raisonner en formel pas en numérique en essayant plein de valeurs, au moins pour trouver les endroits intéressants de la fonction.

Après, tabvar en lui même, s'il a des défauts, autant les corriger là.
Je sais que le coeur en Basic du truc c'est moi qui l'avait fait dedans dans une vieille version (et séparément, à l'époque), mais ca a probablement été retouché depuis, donc je ne saurais trop dire comme ça se passe.
Image

MyCalcs: Help the community's calculator documentations by filling out your calculators info!
MyCalcs: Aidez la communauté à documenter les calculatrices en donnant des infos sur vos calculatrices !
Inspired-Lua.org: All about TI-Nspire Lua programming (tutorials, wiki/docs...)
Avatar de l’utilisateur
AdriwebAdmin
Niveau 16: CC2 (Commandeur des Calculatrices)
Niveau 16: CC2 (Commandeur des Calculatrices)
Prochain niv.: 80.1%
 
Messages: 14606
Images: 1216
Inscription: 01 Juin 2007, 00:00
Localisation: France
Genre: Homme
Calculatrice(s):
MyCalcs profile
Twitter/X: adriweb
GitHub: adriweb

Re: Tableau de variation v2

Message non lude GalacticPirate » 01 Nov 2016, 13:08

Tu veux vraiment essayer de raisonner en formel sans calcul formel ? :p Je me sentais pas à implémenter un système RPN complet avec des strings sur PCE tu vois :p
Mon profil TI-PlanetDevenez premium !
ImageImage
Modérateur de TI-Planet.org depuis décembre 2015, et membre de la communauté depuis Mai 2015.Cliquez ci-dessus pour faire un don à TI-Planet.org via PayPal et devenir Donateur ou Premium (à partir de 3€) ! Vous aurez accès à des générations illimitées et prioritaires avec Mviewer GX Creator, ainsi qu'au forum secret ! :bj: En plus, vous pourrez être orange sur le chat :troll:

Image
Avatar de l’utilisateur
GalacticPirateModo
Niveau 16: CC2 (Commandeur des Calculatrices)
Niveau 16: CC2 (Commandeur des Calculatrices)
Prochain niv.: 1.3%
 
Messages: 1156
Images: 2
Inscription: 23 Mai 2015, 10:36
Localisation: Hauts-de-Seine, France
Genre: Homme
Calculatrice(s):
MyCalcs profile
Classe: L3 Informatique
GitHub: GalacticPirate-Prog

Re: Tableau de variation v2

Message non lude Adriweb » 01 Nov 2016, 13:09

Ah, ouai, je parlais de la version Nspire ("tabvar", c'est le nom phare sur nspire, hm...), et, ahem, c'était avant ton edit précisant la calculatrice.
Bref, nevermind du coup.
Image

MyCalcs: Help the community's calculator documentations by filling out your calculators info!
MyCalcs: Aidez la communauté à documenter les calculatrices en donnant des infos sur vos calculatrices !
Inspired-Lua.org: All about TI-Nspire Lua programming (tutorials, wiki/docs...)
Avatar de l’utilisateur
AdriwebAdmin
Niveau 16: CC2 (Commandeur des Calculatrices)
Niveau 16: CC2 (Commandeur des Calculatrices)
Prochain niv.: 80.1%
 
Messages: 14606
Images: 1216
Inscription: 01 Juin 2007, 00:00
Localisation: France
Genre: Homme
Calculatrice(s):
MyCalcs profile
Twitter/X: adriweb
GitHub: adriweb

Re: Tableau de variation v2

Message non lude Wistaro » 01 Nov 2016, 23:25

Bon courage :)
Si j'ai l'occasion je t'aiderai.

StarTrekVoyager a écrit:Tu veux vraiment essayer de raisonner en formel sans calcul formel ? :p Je me sentais pas à implémenter un système RPN complet avec des strings sur PCE tu vois :p


À part partir sur un système formel et/ou rpn, je ne vois pas vraiment comment faire.

Hamza.S a travaillé sur un programme en basic npire sur cette méthode, tu peux peut-être voir avec lui pour savoir comment procéder.
Nouveau sur le site, Anonymous ? Avant de poster sur le chat et sur le forum, n'oublie pas de lire les règles. En cas de problème, tu peux m'envoyer un message, je réponds rapidement.

Liens utiles:
Image
Découvre mes programmes et mon site!
Avatar de l’utilisateur
WistaroSuper Modo
Niveau 15: CC (Chevalier des Calculatrices)
Niveau 15: CC (Chevalier des Calculatrices)
Prochain niv.: 87.5%
 
Messages: 3153
Images: 37
Inscription: 25 Fév 2013, 16:21
Localisation: Toulouse
Genre: Homme
Calculatrice(s):
MyCalcs profile
Classe: Ingénieur en électronique
YouTube: Wistaro
Twitter/X: Wistaro
GitHub: Wistaro

Re: Tableau de variation v2

Message non lude Hamza.S » 01 Nov 2016, 23:40

euh non je n'ai pas travaillé sur la méthode RPN mais critor oui avec la bibliothèque.
sur les (e)z80 c'est plus facile puisque les fonctions sont déjà tokenisés pas besoin de méthode artificielle comparé aux Nspire & 68k
Image
Avatar de l’utilisateur
Hamza.SAdmin
Niveau 17: GM (Grand Maître des calculatrices)
Niveau 17: GM (Grand Maître des calculatrices)
Prochain niv.: 28.5%
 
Messages: 4461
Images: 18
Inscription: 07 Nov 2014, 00:43
Genre: Homme
Calculatrice(s):
MyCalcs profile

Re: Tableau de variation v2

Message non lude Bisam » 02 Nov 2016, 08:25

Le problème de ta méthode, STV, c'est qu'elle ne va pas forcément aboutir... même avec des fonctions du lycée.
Par exemple :
  • il y a de fortes chances qu'elle ne détecte pas un endroit où la dérivée s'annule sans changer de signe (Ex :
    $mathjax$x\mapsto x^3$mathjax$
    en 0)
  • elle ne pourra pas non plus gérer les endroits où la fonction n'est pas dérivable. (Ex :
    $mathjax$x\mapsto |x|$mathjax$
    en 0).
  • tu espères découvrir des "valeurs interdites" en te basant sur la dérivée qui, selon toi, "explose" au voisinage de ladite valeur, mais ce n'est pas forcément le cas (ex :
    $mathjax$x\mapsto e^{\frac{-1}{x^2}}$mathjax$
    ou encore
    $mathjax$x\mapsto \frac{\sin(x)}{x}$mathjax$
    )
  • tu parles de "limites inférieures" et "supérieures" mais je suppose que tu voulais parler de limites à droite et à gauche... et là encore, tu ne pourras pas forcément en déduire grand chose... Par exemple,
    $mathjax$x\mapsto e^{\frac{-1}{x}}$mathjax$
    possède une limite à droite en 0 qui est nulle mais une limite à gauche en 0 qui est infinie. Mais les exemples plus tendancieux ne sont pas vraiment disponibles au lycée.
  • enfin, tu souhaites obtenir le signe de la dérivée en calculant "au pif" une valeur de la dérivée et en regardant son signe... et tu fais pour cela l'hypothèse que la dérivée ne change pas de signe sur les intervalles que tu as découverts (ce qui, déjà, suppose que tu as bien tout trouvé, sinon, bonjour le foirage !) Mais malheureusement, c'est faux... si la fonction n'est pas dérivable partout. Par exemple,
    $mathjax$x\mapsto 1+|x|$mathjax$
    .

Bref, même si ce sont des cas que l'on pourrait appeler "pathologiques", ils sont tous au programme du lycée... et ne pourront pas être traités de la façon dont tu l'espères.
Je ne vois pas comment on pourrait se passer d'une recherche formelle.
Avatar de l’utilisateur
BisamAdmin
Niveau 15: CC (Chevalier des Calculatrices)
Niveau 15: CC (Chevalier des Calculatrices)
Prochain niv.: 69.5%
 
Messages: 5665
Inscription: 11 Mar 2008, 00:00
Localisation: Lyon
Genre: Homme
Calculatrice(s):
MyCalcs profile

Re: Tableau de variation v2

Message non lude GalacticPirate » 02 Nov 2016, 14:09

Bisam, merci pour le soutien :troll:
Plus sérieusement, si tu as une meilleure méthode bon formelle... Bon, la première routine est codée en tout cas. Et elle fonctionne, désolé Bisam, même avec x^2 :p En fait, en prenant un pas de 10^-4, ca risque de prendre dans les 30 h, alors j'ai remis l'a pas à 0.1... Il détecte bien tous les zéros de la dérivée pour des fonctions simples, mais ça reste extrémement lent...
Mon profil TI-PlanetDevenez premium !
ImageImage
Modérateur de TI-Planet.org depuis décembre 2015, et membre de la communauté depuis Mai 2015.Cliquez ci-dessus pour faire un don à TI-Planet.org via PayPal et devenir Donateur ou Premium (à partir de 3€) ! Vous aurez accès à des générations illimitées et prioritaires avec Mviewer GX Creator, ainsi qu'au forum secret ! :bj: En plus, vous pourrez être orange sur le chat :troll:

Image
Avatar de l’utilisateur
GalacticPirateModo
Niveau 16: CC2 (Commandeur des Calculatrices)
Niveau 16: CC2 (Commandeur des Calculatrices)
Prochain niv.: 1.3%
 
Messages: 1156
Images: 2
Inscription: 23 Mai 2015, 10:36
Localisation: Hauts-de-Seine, France
Genre: Homme
Calculatrice(s):
MyCalcs profile
Classe: L3 Informatique
GitHub: GalacticPirate-Prog


Retourner vers TI-Basic

Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 17 invités

-
Rechercher
-
Social TI-Planet
-
Sujets à la une
Comparaisons des meilleurs prix pour acheter sa calculatrice !
Aidez la communauté à documenter les révisions matérielles en listant vos calculatrices graphiques !
Phi NumWorks jailbreak
123
-
Faire un don / Premium
Pour plus de concours, de lots, de tests, nous aider à payer le serveur et les domaines...
Faire un don
Découvrez les avantages d'un compte donateur !
JoinRejoignez the donors and/or premium!les donateurs et/ou premium !


Partenaires et pub
Notre partenaire Jarrety Calculatrices à acheter chez Calcuso
-
Stats.
1215 utilisateurs:
>1195 invités
>15 membres
>5 robots
Record simultané (sur 6 mois):
6892 utilisateurs (le 07/06/2017)
-
Autres sites intéressants
Texas Instruments Education
Global | France
 (English / Français)
Banque de programmes TI
ticalc.org
 (English)
La communauté TI-82
tout82.free.fr
 (Français)