Page 1 of 2

Le moteur CAS EigenMath porté pour Casio Prizm fx-CG10/20

Unread postPosted: 23 Aug 2013, 19:32
by critor
Décidément, il y a une mode 'EigenMath' cet été...

Ce logiciel de calcul formel sous licence libre GPL pour ordinateur avait déjà été porté pour calculatrices Casio Graph 35+USB/75/85/95, ainsi que pour TI-Nspire par Diameter de la communauté cnCalc.org.
Image


Ce dernier portage permettait donc de rajouter un moteur de calcul formel sur les calculatrices TI-Nspire numériques (non-CAS) qui en étaient dépourvues.


Aujourd'hui, gbl08ma de la communauté Cemetech continue sur la lancée de Diameter en nous sortant un portage de ce même logiciel mais pour Casio Prizm fx-CG10/20! :bj:
Image


Ce portage est même plus avancé que les précédents, puisque:
  • il gère l'affichage des résultats en écriture naturelle dite PrettyPrint! :bj:
  • il gère les grands nombres (32-bits) pour les calculs internes ce qui lui donne une meilleure fiabilité que le portage pour Casio Graph! :bj:



La situation devient donc de plus en plus préoccupante pour les calculatrices concurrentes des Casio Graph 35+USB/75/85/95 et Casio Prizm, qui se voient laissées loin derrière...

Il n'existe en effet qu'un seul moteur de calcul formel pour TI-83 Plus et TI-84 monochrome, ZoomMath, payant, cher, et de plus inférieur à eigenMath... :(

Et il n'existe aucun moteur de calcul formel pour les HP-39gII, TI-82 Stats ou TI-84 Plus C Silver Edition. :mj:



Téléchargement:
archives_voir.php?id=19625 (attention, le fichier fourni par l'auteur viole, dans sa forme actuelle, la licence GPL héritée du logiciel EigenMath)

Source:
http://www.cemetech.net/forum/viewtopic.php?t=9419

Re: Le moteur CAS EigenMath porté pour Casio Prizm fx-CG10/2

Unread postPosted: 26 Aug 2013, 11:35
by The K
Enfin je vais p-e utiliser la Prizm ... merci de la news en tous cas ! :)

Re: Le moteur CAS EigenMath porté pour Casio Prizm fx-CG10/2

Unread postPosted: 06 Sep 2013, 06:49
by Lionel Debroux
Mise à jour d'Eigenmath pour Prizm :)

Il y a principalement deux nouveautés:
* correction de memory leaks présents dans Eigenmath normal;
* ajout de l'exécution automatique d'un script "eigensup.txt" à chaque fois qu'Eigenmath est démarré, pour que les utilisateurs puissent définir leur propre environnement de travail: variables et alias supplémentaires, un par ligne. eigensup.txt doit nécessairement être à la racine de l'arborescence des fichiers, et utiliser des fins de ligne CRLF (Windows).

gbl08ma recommande le script de démarrage suivant, principalement écrit par helder7 et gbl08ma (avec mes suggestions pour sec, csc et cot et leurs versions inverses et/ou hyperboliques):
Code: Select all
logab(a,b)=log(b)/log(a)
log10(x)=log(x)/log(10)
ln(x)=log(x)
cis(x)=cos(x)+i*sin(x)
cot(x)=1/tan(x)
coth(x)=cosh(x)/sinh(x)
arccot(x)=arctan(1/x)
arccoth(x)=arctanh(1/x)
sec(x)=1/cos(x)
sech(x)=1/cosh(x)
arcsec(x)=arccos(1/x)
arcsech(x)=arccosh(1/x)
csc(x)=1/sin(x)
csch(x)=1/sinh(x)
arccsc(x)=arcsin(1/x)
arccsch(x)=arcsinh(1/x)
npr(n,r)=(n!)/(n-r)!
ncr(n,r)=n!/(r!(n-r)!)

(comme vous pouvez le voir, le log() d'Eigenmath est à base e, contrairement à celui des TI-68k, par exemple).

Source de l'info: http://www.cemetech.net/forum/viewtopic ... 298#208298
Téléchargement: premier post du même topic.

Re: Le moteur CAS EigenMath porté pour Casio Prizm fx-CG10/2

Unread postPosted: 06 Sep 2013, 07:03
by Adriweb
Lionel Debroux wrote:(comme vous pouvez le voir, le log() d'Eigenmath est à base 10, contrairement à celui des TI-68k, par exemple).


Je ne sais pas si l'auteur a entre temps édité son post sur Cemetech, mais en tout cas on y voit maintenant :

"I only added log10 which is a function for log of base 10 - Eigenmath's log() has base e"

Bref, avec le script de démarrage, on a donc un log en base e et en base 10.

Re: Le moteur CAS EigenMath porté pour Casio Prizm fx-CG10/2

Unread postPosted: 06 Sep 2013, 07:09
by Lionel Debroux
Non, il n'a pas édité son post entretemps, c'est moi qui ai posté "base 10" plutôt que "base e"' dans cette phrase :)
Corrigé.

Re: Le moteur CAS EigenMath porté pour Casio Prizm fx-CG10/2

Unread postPosted: 10 Sep 2013, 20:06
by Lionel Debroux
Nouvelle version Beta 3:
* grosse optimisation de l'affichage de la console, qui était "vraiment inefficace", selon gbl08ma;
* possibilité d'arrêter l'exécution de l'entrée (?) en appuyant sur AC/ON. Ca fait le même effet à Eigenmath que d'appuyer sur ESC dans la version graphique;
* la commande "clear" efface maintenant à la fois les variables et la sortie console.

En revanche, le bug de factorisation, dont gbl08ma pense qu'il est dû à l'endianness (il ne se produit pas sur les plate-formes little-endian), n'est pas corrigé.

Nouveau script de démarrage:
Code: Select all
logab(a,b)=log(b)/log(a)
log10(x)=log(x)/log(10)
ln(x)=log(x)
cis(x)=cos(x)+i*sin(x)
cot(x)=1/tan(x)
coth(x)=cosh(x)/sinh(x)
arccot(x)=arctan(1/x)
arccoth(x)=arctanh(1/x)
sec(x)=1/cos(x)
sech(x)=1/cosh(x)
arcsec(x)=arccos(1/x)
arcsech(x)=arccosh(1/x)
csc(x)=1/sin(x)
csch(x)=1/sinh(x)
arccsc(x)=arcsin(1/x)
arccsch(x)=arcsinh(1/x)
npr(n,r)=(n!)/(n-r)!
ncr(n,r)=n!/(r!(n-r)!)
xor(x,y)=or(and(x,not(y)),and(not(x),y))


Même lien de téléchargement qu'avant, http://tny.im/prEigenDL .

Re: Le moteur CAS EigenMath porté pour Casio Prizm fx-CG10/2

Unread postPosted: 10 Sep 2013, 20:20
by Bisam
Sans vouloir trop m'immiscer, les commandes "npr" et "ncr" gagneraient grandement à être écrites à part, en utilisant des produits, plutôt que de faire de coûteuses divisions de factorielles...

Re: Le moteur CAS EigenMath porté pour Casio Prizm fx-CG10/2

Unread postPosted: 11 Sep 2013, 06:14
by Lionel Debroux
En effet.

Re: Le moteur CAS EigenMath porté pour Casio Prizm fx-CG10/2

Unread postPosted: 12 Sep 2013, 05:39
by Lionel Debroux
Nouvelle version Beta 4, avec de gros changements :)

* ajout d'un historique des entrées, jusqu'à 20 entrées, navigable avec UP et DOWN;
* déplacement du curseur pour éditer la ligne d'entrée, avec LEFT et RIGHT;
* possibilité de sélectionner graphiquement des scripts arbitraires dans le système de fichiers, après avoir pressé F2;
* correction du bug de factorisation: factor(x^2+1) rend maintenant x^2+1, comme il se doit;
* ajout d'un mouvement tournant au sablier en haut à droite de l'écran.

Toujours le même lien de téléchargement: http://tny.im/prEigenDL (nos archives y pointent, en principe).

Re: Le moteur CAS EigenMath porté pour Casio Prizm fx-CG10/2

Unread postPosted: 13 Sep 2013, 17:33
by Lionel Debroux
Nouvelle version Beta 5.

* affichage des flottants avec 10 digits significatifs, comme sur l'OS normal;
* correction de la perte de précision de l'entrée des flottants;
* combinaison de touches pour l'écran About changée de F6 vers Shift+Menu, pour libérer F6;
* ajout de la possibilité d'assigner des fonctions arbitraires à des touches non utilisées par Eigenmath, et de donner des noms à ces touches, à travers le script de démarrage / un autre script / l'entrée de commandes. F3, F4 et F6 sont des touches inutilisées, ainsi que toutes les touches que ne gère pas la routine d'entrée texte.
Le script que voici assigne la commande Clear à F3, et d'autres fonctions à d'autres touches.

Code: Select all
prizmUIhandleKeys=1
prizmUIkeyHandler(k,s)=(test(
  k=30011,clear,
  k=149,log10(last),
  k=181,10^last,
  k=155,last^(-1),
--print(k,s)))
nil))
prizmUIfkey3label=329


Toujours le même topic source et le même lien de téléchargement.