Les ensembles de definition de fonctions enfin sur OS 3.1
17 posts
• Page 2 of 2 • 1, 2
-
davidElmalehProgrammeur
Niveau 14: CI (Calculateur de l'Infini)- Posts: 409
- Images: 9
- Joined: 14 Oct 2012, 23:30
- Location: Paris 19
- Gender:
- Calculator(s):→ MyCalcs profile
- Class: PSI*
Re: Les ensembles de définition de fonctions enfin sur OS 3.
mais juste un chose
si f(x)=abs(sqrt(3x-2))
x peut etre égal a -2 par exmple ca donnerait
f(-2)=abs(sqrt(-8))
or, cela existe puisque c'est = sqrt(8)
si f(x)=abs(sqrt(3x-2))
x peut etre égal a -2 par exmple ca donnerait
f(-2)=abs(sqrt(-8))
or, cela existe puisque c'est = sqrt(8)
-
davidElmalehProgrammeur
Niveau 14: CI (Calculateur de l'Infini)- Posts: 409
- Images: 9
- Joined: 14 Oct 2012, 23:30
- Location: Paris 19
- Gender:
- Calculator(s):→ MyCalcs profile
- Class: PSI*
Re: Les ensembles de définition de fonctions enfin sur OS 3.
Oui, on est coincé avec les simplifications de la nspire.
Le code global:
Le code global:
- Code: Select all
Define LibPub domain(f,x)=
Func
:© domain(expr,var)
:setMode(4,1)
:f:=warnCodes(solve(f^(2)≥0 and getDenom(f)≠0,x),x)
:f:=ifFn(f=true,"ℝ","∅",f)
:ifFn(dim(x)>0,[[f]["Warning:"&string(x)]],f)
:EndFunc
-
ExcaleAdmin
Niveau 16: CC2 (Commandeur des Calculatrices)- Posts: 2955
- Images: 3
- Joined: 10 Sep 2010, 00:00
- Gender:
- Calculator(s):→ MyCalcs profile
Re: Les ensembles de définition de fonctions enfin sur OS 3.
Bon, en tout cas c'est très bien peu de personnes auraient eu l'idée de mettre au carré la fonction et d'éliminer les zéros.
C'est en effet le cas selon ce qu'on peut lire sur mathematica, qui utilisent la combinaison de la fonction valeur absolue et la fonction reduce.
Si vous ne connaissez pas la fonction reduce (qui n'est pas présente sur la TI-Nspire), elle est assez simple à comprendre : reduce(blablabla) = solve(blablabla = 0)
En l'occurence, selon Mathematica, une méthode permettant d'obtenir le domaine de définition d'une fonction est de faire reduce(abs(blablabla)), ce qui est (sûrement) équivalent au solve(blablabla au carré = 0), si on fait exit les problèmes de valeur absolue pouvant être générés par la calculatrice.
Ensuite, on laisse le calcul formel prendre le pas avec solve ou reduce (cette dernière n'est pas présente sur les Nspire).
C'est en effet le cas selon ce qu'on peut lire sur mathematica, qui utilisent la combinaison de la fonction valeur absolue et la fonction reduce.
Si vous ne connaissez pas la fonction reduce (qui n'est pas présente sur la TI-Nspire), elle est assez simple à comprendre : reduce(blablabla) = solve(blablabla = 0)
En l'occurence, selon Mathematica, une méthode permettant d'obtenir le domaine de définition d'une fonction est de faire reduce(abs(blablabla)), ce qui est (sûrement) équivalent au solve(blablabla au carré = 0), si on fait exit les problèmes de valeur absolue pouvant être générés par la calculatrice.
Ensuite, on laisse le calcul formel prendre le pas avec solve ou reduce (cette dernière n'est pas présente sur les Nspire).
Certifications Microsoft (Codes d'accès : 1140043 / LauraeEdu)
LinkedIn - My page Google+
Ma page Wiki TI-Planet - Ma page Wiki TI-Planet
Mes programmes TI-Nspire pour le BAC - La calculatrice au BAC et aux examens d'Etat
Fonctions courantes TI-Nspire - Questions-Réponses TI-Nspire
Association UPECS - Laurae Education (centre de certifications)
-
LauraeAdmin
Niveau 15: CC (Chevalier des Calculatrices)- Posts: 1685
- Images: 22
- Joined: 25 Jun 2010, 00:00
- Location: France, La Défense
- Gender:
- Calculator(s):→ MyCalcs profile
- Class: Professeur, Etudiant, Formateur
Re: Les ensembles de définition de fonctions enfin sur OS 3.
Je viens de trouver un léger défaut de ce programme (heureusement facile à corriger).
Il y a un problème lorsque des limites sont calculables et valent +oo ou -oo aux bornes de l'ensemble, sans qu'il y ait de dénominateur. C'est notamment le cas typique de :
La fonction "domain", telle qu'elle est codée ci-dessus par Excale, renvoie "R" comme ensemble de définition, sans warning, alors que c'est faux puisqu'il faut exclure x=0.
Il suffit de corriger le code en :
En plus, les fonctions définies par une intégrale à paramètre renvoient désormais un warning, ce qui fait un peu plus sérieux.
Il reste quand même des "simplifications" bizarres du CAS. Par exemple, essayez de trouver l'ensemble de définition de
Il y a un problème lorsque des limites sont calculables et valent +oo ou -oo aux bornes de l'ensemble, sans qu'il y ait de dénominateur. C'est notamment le cas typique de :
- Code: Select all
ln(abs(x))
La fonction "domain", telle qu'elle est codée ci-dessus par Excale, renvoie "R" comme ensemble de définition, sans warning, alors que c'est faux puisqu'il faut exclure x=0.
Il suffit de corriger le code en :
- Code: Select all
Define LibPub domain(f,x)=
Func
:© domain(expr,var)
:setMode(4,1)
:f:=warnCodes(solve(f^(2)≥0 and getDenom(f)≠0 and f^2≠∞,x),x)
:f:=ifFn(f=true,"ℝ","∅",f)
:ifFn(dim(x)>0,[[f]["Warning:"&string(x)]],f)
:EndFunc
En plus, les fonctions définies par une intégrale à paramètre renvoient désormais un warning, ce qui fait un peu plus sérieux.
Il reste quand même des "simplifications" bizarres du CAS. Par exemple, essayez de trouver l'ensemble de définition de
- Code: Select all
ln(abs(tan(x/2)))
- Code: Select all
1/sin(x)
-
BisamAdmin
Niveau 15: CC (Chevalier des Calculatrices)- Posts: 5670
- Joined: 11 Mar 2008, 00:00
- Location: Lyon
- Gender:
- Calculator(s):→ MyCalcs profile
Re: Les ensembles de définition de fonctions enfin sur OS 3.
C'est quoi ce bug du cas pour ln(abs(x))?
Le problème vient de plus loin:
Depuis quand "x≠0 and true" est équivalent à "true"? Surtout que:
Workaround différent de celui de Bisam:
Edit:
Idem avec "or false":
- Code: Select all
solve((ln(abs(x)))^(2)≥0,x) donne x≠0
- Code: Select all
solve((ln(abs(x)))^(2)≥0 and getDenom(ln(abs(x)))≠0,x) donne true
Le problème vient de plus loin:
- Code: Select all
solve(((1)/(x^(2)))≥0 and true,x) donne true
Depuis quand "x≠0 and true" est équivalent à "true"? Surtout que:
- Code: Select all
x≠0 and true donne x≠0
Workaround différent de celui de Bisam:
- Code: Select all
Define LibPub domain(f,x)=
Func
:© domain(expr,var)
:setMode(4,1)
:f:=warnCodes(solve(f^(2)≥0,x) and solve(getDenom(f)≠0,x),x)
:f:=ifFn(f=true,"ℝ","∅",f)
:ifFn(dim(x)>0,[[f]["Warning:"&string(x)]],f)
:EndFunc
Edit:
Idem avec "or false":
- Code: Select all
solve(((1)/(x^(2)))≥0 or false,x) donne true
-
ExcaleAdmin
Niveau 16: CC2 (Commandeur des Calculatrices)- Posts: 2955
- Images: 3
- Joined: 10 Sep 2010, 00:00
- Gender:
- Calculator(s):→ MyCalcs profile
Re: Les ensembles de définition de fonctions enfin sur OS 3.
pour info, tous les bugs ont été corrigés dans la nouvelle version de domaine disponible ici :
archives_voir.php?id=9139
archives_voir.php?id=9139
-
davidElmalehProgrammeur
Niveau 14: CI (Calculateur de l'Infini)- Posts: 409
- Images: 9
- Joined: 14 Oct 2012, 23:30
- Location: Paris 19
- Gender:
- Calculator(s):→ MyCalcs profile
- Class: PSI*
17 posts
• Page 2 of 2 • 1, 2
Who is online
Users browsing this forum: ClaudeBot [spider] and 10 guests