π
<-
Chat plein-écran
[^]

La NumWorks réinventée avec la N0110 - rentrée 2019

Re: La NumWorks réinventée avec la N0110 - rentrée 2019

Unread postby stevetuc » 06 Sep 2019, 16:49

Thanks for the clarification. Appreciated.
User avatar
stevetuc
Niveau 0: MI (Membre Inactif)
Niveau 0: MI (Membre Inactif)
Level up: 0%
 
Posts: 5
Joined: 06 Apr 2015, 10:05
Gender: Not specified

Re: La NumWorks réinventée avec la N0110 - rentrée 2019

Unread postby critor » 06 Sep 2019, 17:00

You're welcome. :)
Image
User avatar
critorAdmin.
Niveau 18: DC (Deus ex Calculatorum)
Niveau 18: DC (Deus ex Calculatorum)
Level up: 98.4%
 
Posts: 33774
Images: 8799
Joined: 25 Oct 2008, 00:00
Location: Montpellier
Gender: Male
Calculator(s):
Class: Lycée
YouTube: critor3000
Twitter: critor2000
Facebook: critor.ti

Re: La NumWorks réinventée avec la N0110 - rentrée 2019

Unread postby stevetuc » 08 Sep 2019, 07:45

critor wrote:Here are the 3 HP Prime versions :

Code: Select all
EXPORT seuil(d)
BEGIN
  LOCAL n:=0;
  LOCAL u:=2.;
  d:=d^2;
  WHILE (u-1)^2≥d DO
    u:=1+(1/((1-u)*(n+1)));
    n:=n+1;
  END;
  RETURN [n,u];
END;


Code: Select all
#CAS
seuilc(d):=
begin
  local n:=0;
  local u:=2.;
  d:=d^2;
  while (u-1)^2≥d do
    u:=1+(1/((1-u)*(n+1)));
    n:=n+1;
  end;
  return [n,u];
end;
#end


Code: Select all
#CAS
def hastime():
  try:
    monotonic()
    return True
  except:
    return False

def seuilp(d=.008):
  timed,n=hastime(),0
  start,stop,u=0 or timed and monotonic(),1,2.
  d=d**2
  while (u-1)**2>=d:
    u=1+(1/((1-u)*(n+1)))
    n=n+1
  return [(timed and monotonic() or 1)-start,n,u]
#end


Id like to request some help in running these benchmarks, im not so familiar with the python syntax.
I tried the python code on my Prime G1 and also prime android app

In both cases it returns:
[1 9948 1.00799947081]

I checked return variables separately and timed is returned as 0 , monotonic is returned as monotonic and start as false:

return [timed,monotonic(),start,n,u]
Gives
[0,monotonic,False,9948,1.00799947081]

There is no timing setup in the other two programs so I assume this was added using native commands like time or TICKS()

I guess im missing some setup somewhere. How can I get timed and monotonic() to return the timings using prime python syntax?
User avatar
stevetuc
Niveau 0: MI (Membre Inactif)
Niveau 0: MI (Membre Inactif)
Level up: 0%
 
Posts: 5
Joined: 06 Apr 2015, 10:05
Gender: Not specified

Re: La NumWorks réinventée avec la N0110 - rentrée 2019

Unread postby critor » 08 Sep 2019, 09:50

Sorry, the Python script time functions don't work on the HP Prime, only with a real Python implementation.
I didn't bother to remove them from the HP Prime Python script, because they aren't in the loop and thus aren't really interfering with the benchmarks.
You need to use time(seuil(0.008))

For information, I've just posted more comprehensive benchmarks :
viewtopic.php?t=22948&p=245063#p245063
The HP Prime is tested 4 times :
  1. float test in HPPPL
    (same as in this topic)
  2. float test in HPPPL-CAS
  3. float test in Python
  4. integer test in Python

With the Python integer test, the HP Prime G2 is faster than the NumWorks N0110.
Image
User avatar
critorAdmin.
Niveau 18: DC (Deus ex Calculatorum)
Niveau 18: DC (Deus ex Calculatorum)
Level up: 98.4%
 
Posts: 33774
Images: 8799
Joined: 25 Oct 2008, 00:00
Location: Montpellier
Gender: Male
Calculator(s):
Class: Lycée
YouTube: critor3000
Twitter: critor2000
Facebook: critor.ti

Re: La NumWorks réinventée avec la N0110 - rentrée 2019

Unread postby coco33920 » 13 Sep 2019, 17:55

J'ai testé l'installation de giac-n110 avec le dockerfile de @zardam et ça marche super B-)
Merci beaucoup à vous tous pour le travail :D !
Je n'ai juste pas trop compris pourquoi renommer l'application python "KhiCAS" ( je suppose du nom de l'implémentation de giac sur les TI & Casio ? )

EDIT : Je me met à tester les fonctionnalités je peux vous rapporter les eventuels bugs
Colin.
I think I can safely say that nobody understands quantum mechanics

La nature de la physique ( The Character of Physical Law ) (1967), Richard Feynman


Github : https://github.com/coco33920/
User avatar
coco33920Premium
Niveau 10: GR (Guide de Référence)
Niveau 10: GR (Guide de Référence)
Level up: 60.8%
 
Posts: 44
Joined: 14 Oct 2017, 18:09
Location: Sol III, Sector 001, UFP
Gender: Female
Calculator(s):
Class: Terminale S SII
Twitter: coco33920_r
GitHub: coco33920

Re: La NumWorks réinventée avec la N0110 - rentrée 2019

Unread postby parisse » 13 Sep 2019, 20:07

KhiCAS est le nom que j'ai choisi en jouant sur le fait que la lettre Khi ressemble a un X, comme Xcas donc, mais KhiCAS se prononce comme kick-ass, c'est un pied de nez a tous les censeurs qui veulent empecher Xcas et le calcul formel en general (ce qui arrange bien les constructeurs de calculatrice qui le vendent sur des modeles chers).
Il devrait y avoir bientot du nouveau... J'ai un prototype de firmware ou KhiCAS remplace le shell Python. C'est encore loin d'etre complet, mais les E/S des programmes marchent (input/print/editeur de script). Et bien sur tous les calculs avec des lignes de commande qui sont impossibles a entrer dans l'app de calcul. Je n'arrive pas a compiler pour le moment simultanement l'app Python et l'app Khicas, i.e. ou l'evaluateur de Python est remplace par Khicas, il y a des erreurs de compilation que je ne comprends pas (il faut dire que l'OS d'epsilon est ecrit dans un style complement a l'oppose du mien...). Mais ce n'est peut-etre pas grave, en fait je me demande s'il ne vaut pas mieux avoir une seule application Python/Khicas et une commande pour basculer l'evaluateur de l'un vers l'autre.
User avatar
parisseVIP++
Niveau 11: LV (Légende Vivante)
Niveau 11: LV (Légende Vivante)
Level up: 80.7%
 
Posts: 1806
Joined: 13 Dec 2013, 16:35
Gender: Not specified

Re: La NumWorks réinventée avec la N0110 - rentrée 2019

Unread postby coco33920 » 13 Sep 2019, 20:08

Ok merci pour les explications :)
I think I can safely say that nobody understands quantum mechanics

La nature de la physique ( The Character of Physical Law ) (1967), Richard Feynman


Github : https://github.com/coco33920/
User avatar
coco33920Premium
Niveau 10: GR (Guide de Référence)
Niveau 10: GR (Guide de Référence)
Level up: 60.8%
 
Posts: 44
Joined: 14 Oct 2017, 18:09
Location: Sol III, Sector 001, UFP
Gender: Female
Calculator(s):
Class: Terminale S SII
Twitter: coco33920_r
GitHub: coco33920

Re: La NumWorks réinventée avec la N0110 - rentrée 2019

Unread postby coco33920 » 14 Sep 2019, 10:20

Voilà j'ai testé toutes les fonctionnalités qui sont dans la Toolbox et wow c'est vraiment super !
J'ai trouvé quelques bugs parfois.

Fonctionnalités :

Réels


Racines n-ième :
le moteur de calcul inverse l'indice et le radicande ( voir image racine exemple ). La racine n-ième fonctionne sur Epsilon 11.2 stock Image
Logarithme :
Renvoi "undef" pour toute autre base que e. La fonction log(n) renvoi un logarithme naturel ce qui en fait une redite de ln(n). Fonctionne sous Epsilon 11.2 stock
Valeur absolue :
fonctionne

Algèbre


normal :
fonctionnel
factor :
fonctionnel
solve :
fonctionnel
csolve :
fonctionnel
partfrac :
répète ce qu'on lui donne donc je suppose que ça fonctionne
simplify :
fonctionnel

Calculs


:warning: Variables : utiliser "=" et pas "sto->"

diff
: fonctionnel
integral
: fonctionnel
limit
: fonctionne ( sauf dans le cas où x tends vers + ou - l'infini la calculatrice se reset alors )
ptayl
: aucune idée au delà de mes compétence mais ça devrait fonctionner normalement je n'ai pas pu vérifier
somme
: fonctionnel
produit
: fonctionnel

Complexes


Tout est fonctionnel ici ( module, argument, partie réelle, partie imaginaire, conjugé )

Dénombrement


Tout est fonctionnel ( binomial & permutation )

Arithmétique


PGCD
: fonctionnel
lcm
: fonctionnel
ifactor
: retourne ce qu'on lui donne
iegcd
: je ne comprend pas comment vérifier donc aucune idée
irem
: fonctionnel
iquo
: fonctionnel

Matrices


identity
 : fonctionnel
randmatrix
 : fonctionnel
dim
 : fonctionnel
inverse
 : fonctionnel
matpow
 : fonctionnel
det
 : fonctionnel
transpose
 : fonctionnel
trace
 : fonctionnel
rref
 : fonctionnel
ker
 : undef
egvl
 : fonctionnel
egv
 : fonctionnel

Random


Tout est fonctionnel ( random, randint, floor, frac, ceil, round )

Trigo Hyperbolique


Tout est fonctionnel ( cosh, sinh, tanh, acosh, asinh, atanh )

Intervalle fluctuation


prediction95
 : rend undef ( testé avec p = 0,531 et n = 723, fonctionne sur epsilon 11.2 )
prediction
 : idem à prediction95
confidence
 : idem à prediction95


En tout cas c'est un boulot de dingue encore merci à vous tous B-)
EDIT : Ajout de comment faire pour les variables ( merci @parisse ). Les resets de calculatrices sont sûrement toutes une erreur de ma part donc quasiment tout est fonctionnel !!!
EDIT 2 : Sur la dernière version de zardam avec le test proposé par @parisse la calcultrice ne se reset plus et les fonctions solve, csolve, egvl et egv sont fonctionnelles
( Testé sur un N0110 )
Last edited by coco33920 on 14 Sep 2019, 18:24, edited 5 times in total.
I think I can safely say that nobody understands quantum mechanics

La nature de la physique ( The Character of Physical Law ) (1967), Richard Feynman


Github : https://github.com/coco33920/
User avatar
coco33920Premium
Niveau 10: GR (Guide de Référence)
Niveau 10: GR (Guide de Référence)
Level up: 60.8%
 
Posts: 44
Joined: 14 Oct 2017, 18:09
Location: Sol III, Sector 001, UFP
Gender: Female
Calculator(s):
Class: Terminale S SII
Twitter: coco33920_r
GitHub: coco33920

Re: La NumWorks réinventée avec la N0110 - rentrée 2019

Unread postby parisse » 14 Sep 2019, 13:36

J'ai corrige un probleme ce matin, depuis que les E/S sont fonctionnelles, tout calcul qui affiche un warning dans Calculs engendre un reset, par exemple solve avec une expression au lieu d'une equation. Solution: supprimer un assert dans la fonction mp_hal_stdout_tx_strn_cooked dans le fichier python/port/port.cpp, et remplacer par un test
Code: Select all
void mp_hal_stdout_tx_strn_cooked(const char * str, size_t len) {
  if (sCurrentExecutionEnvironment != nullptr)
    sCurrentExecutionEnvironment->printText(str, len);


Pour stocker une valeur dans une variable, il faut pour le moment utiliser = comme en Python, par exemple a=2 ou a=ranm(3,3) (matrice aleatoire 3 par 3). Il faut que je capture le caractere de sto> (naturellement avec tous les codes utf8 possibles, ce n'est jamais le meme qui est choisi entre HP, Casio, etc.). D'ailleurs si quelqu'un sait quel est le code UTF8 utilise par Numworks, ca me ferait gagner du temps :-)
Bon, de toutes facons, les calculs dans Calculs sont brides, parce que le moteur d'affichage utilise poincare, il faut que les entrees soient compatibles avec la Numworks de base, ce qui limite pas mal. Ainsi la derivee de Numworks prend 3 arguments, alors qu'une derivee formelle n'en a besoin que de deux, mais on est oblige de lui en donner 3 dans Calculs, ici on mettra en 3eme argument le nombre de derivations souhaite, donc pratiquement toujours 1 (sauf si on veut etudier la convexite).
Je vais regarder pour la racine n-ieme et le log, pas sur que je puisse adapter, sinon le probleme de la limite en l'infini est que poincare ne veut pas parser +infinity. Pour les fonctions de prediction, je ne pense pas les garder, vu que les stats inferentielles passent plus ou moins a la trappe, de toutes facons c'est super simple a programmer.
Ca devrait beaucoup mieux marcher dans le shell (et sans lenteur du au moteur d'affichage).
User avatar
parisseVIP++
Niveau 11: LV (Légende Vivante)
Niveau 11: LV (Légende Vivante)
Level up: 80.7%
 
Posts: 1806
Joined: 13 Dec 2013, 16:35
Gender: Not specified

Re: La NumWorks réinventée avec la N0110 - rentrée 2019

Unread postby coco33920 » 14 Sep 2019, 13:38

Ok merci,
pour le reset je m'en doutais que c'etait du à une erreur de ma part et que c'est une sorte d'erreur :)
et merci pour l'explication pour les variables :D
J'ai édité mon message pour prendre en compte tout ça
Colin.
I think I can safely say that nobody understands quantum mechanics

La nature de la physique ( The Character of Physical Law ) (1967), Richard Feynman


Github : https://github.com/coco33920/
User avatar
coco33920Premium
Niveau 10: GR (Guide de Référence)
Niveau 10: GR (Guide de Référence)
Level up: 60.8%
 
Posts: 44
Joined: 14 Oct 2017, 18:09
Location: Sol III, Sector 001, UFP
Gender: Female
Calculator(s):
Class: Terminale S SII
Twitter: coco33920_r
GitHub: coco33920

PreviousNext

Return to News NumWorks

Who is online

Users browsing this forum: No registered users and 2 guests

-
Search
-
Featured topics
Concours TI-Planet-Casio de rentrée 2019. 3 défis pour plus d'une 15aine de calculatrices graphiques et nombre de goodies sortant de l'ordinaire ! :D
Comparaisons des meilleurs prix pour acheter sa calculatrice !
12
-
Donations / Premium
For more contests, prizes, reviews, helping us pay the server and domains...

Discover the the advantages of a donor account !
JoinRejoignez the donors and/or premium!les donateurs et/ou premium !


Partner and ad
Notre partenaire Jarrety 
-
Stats.
469 utilisateurs:
>422 invités
>41 membres
>6 robots
Record simultané (sur 6 mois):
6892 utilisateurs (le 07/06/2017)
-
Other interesting websites
Texas Instruments Education
Global | France
 (English / Français)
Banque de programmes TI
ticalc.org
 (English)
La communauté TI-82
tout82.free.fr
 (Français)