π
<-
Chat plein-écran
[^]

NumWorks Omega 1.19 + bêta 13: plein de nouveautés extras !

Online

NumWorks Omega 1.19 + bêta 13: plein de nouveautés extras !

Unread postby critor » 18 Feb 2020, 15:04

Dans un article précédent nous te présentions la dernière version d'
Omega
, le
firmware
tiers ultime pour ta
NumWorks
développé et testé par et ses illustres collaborateurs ci-dessous :

Omega
permet en effet d'améliorer grandement les possibilités de ta
NumWorks
et ce même en mode examen. Citons entre autres :
  • la réactivation du moteur de calcul littéral que
    NumWorks
    avait introduit dans sa version
    1.2
    pour le supprimer dans sa version
    11
  • une application
    Atom
    avec un tableau périodique des éléments
  • une bibliothèque de constantes physiques
  • une mémoire de travail étendue de
    16K
    à
    32K
    pour l'exécution de scripts
    Python
    plus conséquents notamment dans le cadre de projets
  • une application avec une calculatrice
    RPN
  • le support pour le rajout d'applications externes
9829Parmi les applications externes disponibles à ce jour, citons notamment :
  • Nofrendo
    , émulateur de console de jeux
    Nintendo NES
  • mais également
    KhiCAS
    par .
    Basée sur
    Xcas
    , son logiciel intégré de mathématiques, cette application étend les capacités mathématiques de ta
    NumWorks
    au niveau d'une
    HP Prime
    , bénéficiant du moteur de calcul formel
    GIAC
    avec notamment la possibilité de construire automatiquement des tableaux d'étude de fonction avec indications d'éléments de démarche ! :bj:
    Elle est de plus programmable sous deux syntaxes au choix,
    Xcas
    ou
    Python
    . Et en prime, le langage de programmation inclut des commandes de tracé à la
    Scratch
    /
    Logo
    pour réinvestir les acquis de collège ! :D
    120221202412023

Nombre de fonctionnalités parfaitement légitimes puisque disponibles en mode examen pour les candidats ayant choisi des modèles concurrents, un nivellement par le haut pour l'égalité entre candidats ! :bj:

Aujourd'hui sort la nouvelle version
Omega 1.19
. Elle est basée sur le code source actuel du
firmware
Epsilon
officiel en cours de développement, et elle t'inclut donc en avant-première les améliorations officielles que
NumWorks
a prévues pour la très prochaine version
13
dont le bêta-test vient tout juste d'être lancé ! :bj:

Nous allons donc voir ensemble quelles sont les nouveautés apportées à la fois par
NumWorks
pour la version
13
et par l'équipe
Omega
pour la version
1.19
, en te précisant bien à chaque fois de qui elles proviennent.

Notons déjà que les icônes d'applications ont été refondues pour être davantage en phase avec les couleurs du thème d'
Omega
.







1) Clavier et interface

Go to top

Grande nouveauté, dans l'ensemble des applications il t'est enfin possible de sélectionner naturellement du texte dans une zone de saisie comme sur ordinateur, en maintenant la touche
shift
puis une touche fléchée.

La sélection pourra alors être coupée-copiée-collée-effacée à l'aide des raccourcis clavier. :)

C'est particulièrement bienvenu dans le cadre de l'application
Python
, pour une saisie encore plus rapide et donc agréable de tes scripts lorsqu'ils comporteront plusieurs lignes ou blocs similaires - merci
NumWorks
! :bj:

Notons également que le défilement des tableaux de valeurs présentés par les divers applications a été accéléré.




2) Paramètres globaux

Go to top

Gros ajout de l'équipe
Omega
, une langue supplémentaire est maintenant disponible, le
Hongrois
. De quoi contribuer grandement au rayonnement de la
NumWorks
hors de nos frontières, merci ! :bj:

Pour plus de clareté, l'équipe
Omega
a regroupé l'ensemble des paramètres liés au calcul dans un sous-menu
Math
. :)

Note que tu pourras même y choisir le symbole de multiplication de ton choix, une exclusivité
Omega
à ce jour ! :)

L'équipe
Omega
nous permet enfin d'avoir un peu de visibilité mémoire directement sur la calculatrice, avec l'affichage de la capacité
RAM
ainsi que de son utilisation à l'écran
A propos
. Actuellement nous avons 1K utilisé sur une capacité de
32K
. :)

Afin de cibler les besoin des différents pays et examens,
Omega
dispose de 3 modes examens au choix désormais nommés de la façon suivante :
  1. Standard
    , qui efface le contenu mémoire comme exigé en France
  2. Sans symbolique
    , ciblant les pays interdisant les fonctionnalités de calcul formel ou même littéral
    (Italie, Pays-Bas, Portugal, Royaume-Uni...)
    .
    En plus du contenu mémoire, il désactive en prime le mode de calcul littéral de l'application
    Calculs
    ainsi que l'accès aux applications externes, ce qui interdit donc
    KhiCAS
    par la même occasion.
  3. Sans symbolique ni texte
    , ciblant les pays dont la réglementation interdit l'accès à tout éditeur de texte pendant les épreuves
    (Pays-Bas, ...)
    .
    En plus des points précédents, il désactive l'application
    Python
    .
De nouvelles couleurs sont sélectionnables pour la diode examen :
  • mauve
  • orange
Certains pays exigent en effet une couleur spécifique, comme le jaune-orange pour les Pays-Bas. Pour la France rien d'imposé, mais nous te conseillons de rester sur le rouge comme le
firmware
officiel afin de n'effrayer aucun surveillant. :)




3) Paramètres et applications

Go to top

L'application
Paramètres
offre de plus désormais un nouveaux choix, celui de la taille de police qui sera utilisée dans l'application
Python
:
  • Grande
    qui correspond à la taille utilisée jusqu'ici et permet d'afficher
    12
    lignes sur
    29
    colonnes
  • Petite
    qui permet quant à elle d'afficher
    16
    lignes sur
    42
    colonnes
Notons de plus que ce réglage s'applique aussi bien à l'éditeur qu'à la console
Python
. De quoi te permettre une bien meilleur vue d'ensemble de tes scripts ainsi que de leur affichage - merci
NumWorks
! :bj:
1218812187

Jusqu'à sa dernière version, le
firmware
officiel ainsi que ses dérivés avaient quand même le gros inconvénient de ne te laisser bien souvent visibles dans l'applications
Calculs
que les deux derniers calculs effectués, de part la grande taille de police utilisée. :mj:

L'équipe
Omega
s'attaque enfin à ce gros défaut et nous soulage avec une nouvelle option
Mode d'affichage
exclusive, qui te permet de sélectionner un nouvel affichage
Compact
pour l'application
Calculs
.

L'affichage des résultats sera alors effectué sur la même ligne lorsqu'il y aura suffisamment de place, et t'offrira donc une bien meilleure vue d'ensemble de ton historique de calculs ! :bj:




4) Python

Go to top

L'équipe
Omega
te permet désormais de dupliquer tes scripts
Python
. Aucune besoin donc de les ouvrir pour t'embêter à en sélectionner et copier le code pour ensuite le coller dans un autre script ! :bj:

NumWorks
pour sa part nous apporte beaucoup d'améliorations et nouveautés à l'application
Python
, n'ayons pas peur des mots et disons même énormément. :D

Autre amélioration de saisie effectuée par
NumWorks
dans le contexte
Python
, le catalogue accessible via la boîte à outils inclut désormais les fonctions associées à la classe
list
: :)
  • list.append(x)
  • list.clear()
  • list.count(x)
  • list.index(x)
  • list.insert(i,x)
  • list.pop(i)
  • list.remove(x)
  • list.reverse()
  • list.sort()

Avec le dernier
firmware
officiel, tu diposais d'une mémoire de stockage pouvant accueillir jusqu'à
16 Kio
de scripts
Python
. Dans sa dernière version,
Omega
t'avait étendu cette capacité à
20 Kio
.
Et bien
NumWorks
semble avoir apprécié l'idée puisque la reprenant mais en mieux, augmentant l'espace de stockage de façon encore plus significative à
32 Kio
! :bj:


En
Python
les possibilités d'interactions avec des interfaces, notamment pour des menus ou jeux, étaient très limitées sur la
NumWorks
.

En effet, il n'y avait pas de fonction permettant de tester la pression d'une touche.

NumWorks
s'attaque enfin au problème dans la version
13
, avec un nouveau module
ion
à cette fin dont voici l'exploration en avant-première avec notre script :
Code: Select all
def sstr(obj):
  try:
    s=obj.__name__
  except:
    s=str(obj)
    a=s.find("'")
    b=s.rfind("'")
    if a>=0 and b!=a:
      s=s[a+1:b]
  return s

def isExplorable(obj):
  s=str(obj)
  return s.startswith("<module '") or s.startswith("<class '")

def explmod(pitm,pitmsl=[],reset=True):
  global curline
  if(reset):
    curline=0
    pitmsl=[sstr(pitm)]
  hd="."*(len(pitmsl)-1)
  spath=".".join(pitmsl)
  c,c2=0,0
  spitm=str(pitm)
  for itms in sorted(dir(pitm)):
    c,c2=c+1,c2+1
    try:
      itm=eval(spath+"."+itms)
      print(hd+itms+"="+str(itm))
      if isExplorable(itm) and itm!=pitm:
        pitmsl2=pitmsl.copy()
        pitmsl2.append(itms)
        c2=c2+explmod(itm,pitmsl2,False)[1]
    except:
      print(hd+itms)
  if c>0 and reset:
    print(hd+"Total: "+str(c)+" 1st level item(s)")
    if c2>0 and c2!=c:
      print(hd+"       "+str(c2)+" item(s)")
  return [c,c2]

12197121981219912200

C'est l'occasion pour nous de te fournir une table des codes clavier retenus, où la logique visuelle de numérotation t'aidera peut-être à retenir : :)

0

1

3

6
OK

4

5

2
shift

12
alpha

13
x,n,t

14
var

15
╒╕

16

17
e^x

18
ln

19
log

20
i

21
,

22
x^y

23
sin

24
cos

25
tan

26
π

27

28

29
7

30
8

31
9

32
(

33
)

34
4

36
5

37
6

38
×

39
÷

40
1

42
2

43
3

44
+

45
-

46
0

48
.

49
×10^x

50
Ans

51
EXE

52


12190On peut toutefois remarquer que la seule fonction fournie
keydown()
par le nouveau module
ion
ne permet que de savoir si une touche donnée est pressée ou pas.
Des scripts
Python
implémentant des jeux ou interfaces
(pourquoi pas une boîte de saisie texte)
vont donc devoir appeler cette fonction autant de fois qu'il y a de touches clavier traitées. On peut donc légitimement s'interroger sur ce que donne le temps d'exécution de la fonction potentiellement multiplié par les 46 touches clavier
(ou plutôt 45, la touche d'allumage/exinction n'étant pas gérée par le module)
.

Et bien testons, voici , notre script où il te suffira d'un simple et unique appel
getkeys()
pour scanner l'ensemble de la matrice clavier et récupérer la liste des codes des touches actuellement pressées :
Code: Select all
from ion import keydown

def keycodes():
  lc = list(range(0,6)) + list(range(12,35))
  for k in range(36,53):
    if (k+1)%6:
      lc.append(k)
  return lc

def getkeys():
  lk = []
  for k in keycodes():
    if keydown(k):
      lk.append(k)
  return lk


Nous allons de plus chronométrer l'appel
getkeys()
à l'aide de notre script :
Code: Select all
from time import monotonic

def timer(f, *par):
  start=monotonic()
  f(*par)
  return monotonic()-start

12191L'appel maintenant devenu
timer(getkeys)
nous mesure donc autour 0,04 seconde pour le scan intégral du clavier, aussi bien sur
N0100
que
N0110
.

4 centièmes de seconde ce n'est certes pas rien, mais c'est quand même très loin d'être la catastrophe que nous craignions.
NumWorks
semble avoir bien fait les choses. :)
Les jeux
Python
utilisant beaucoup de touches clavier seraient donc en théorie limités au mieux à 25 fps
(images par seconde)
, ce qui est tout de même déjà humainement très acceptable. En pratique il suffira aux jeux en question de ne pas scanner l'intégralité du clavier mais seulement les touches utiles, et de toutes façons la lenteur des fonctions graphiques à ce jour ne pemet pas d'atteindre les
25 fps
en
Python
même sans aucune lecture clavier.

En passant, si toi aussi tu souhaites optimiser tes tests de touches clavier dans le même style que notre fonction
getkeys()
, n'hésite pas à consulter le tutoriel associé à la nouvelle fonction
keydown()
.

Suite à cet ajout majeur, profitons-en pour voir où nous en sommes niveau
Python
sur calculatrices. Voici déjà l'éventail des modules disponibles :

autorisés aux
examens français
inutilisables aux
examens français
NumWorks
Casio Graph
35+E II
90+E
TI-83PCE
Ed. Python
MicroPython
TI-Nspire
CasioPython
Casio Graph
35+E II
35+E/USB
75/85/95
TI-Python
builtins
array
collections
cmath
gc
math
micropython
os
random
sys
time
turtle
uerrno

.
.

.


.

.


.

.
.
.
.

.
.

.
.
.
.



.


.
.



.
.


.




.
.

.
.


.




.
.

.
.
.


.




.


.
.



.


.
.



.
.











.
.
spécifique
kandinsky
ion
prime
nsp
board
storage
Total
9
3
8
9
8
9
9
13

En terme de quantité de modules, la
NumWorks
arrive ainsi désormais au premier rang des solutions
Python
utilisables aux examens français, félicitations ! :bj:
Aux examens :
  1. 9
    modules :
    NumWorks

    HP Prime
    (version alpha)
  2. 8
    modules :
    TI-83 Premium CE Edition Python
  3. 3
    modules :
    Casio Graph 35+E II
    Casio Graph 90+E
Hors examens :
  1. 13
    modules :
    TI-Python
    (firmware tiers)
  2. 9
    modules :
    NumWorks

    Casio Graph 35+E II
    Casio Graph 35+E/USB
    Casio Graph 75/85/95
    Casio fx-9750GII
    Casio fx-9860GII
    Casio fx-9860G

    (appli CasioPython)

    HP Prime
    (version alpha)
  3. 8
    modules :
    TI-83 Premium CE Edition Python

    TI-Python

    TI-Nspire
    (appli MicroPython)
  4. 3
    modules :
    Casio Graph 35+E II
    Casio Graph 90+E
    Casio fx-CG50


Et voici maintenant pour le contenu de ces mêmes modules :

autorisés aux
examens français
inutilisables aux
examens français
NumWorks
Casio Graph
35+E II
90+E
TI-83PCE
Ed. Python
MicroPython
TI-Nspire
CasioPython
Casio Graph
35+E II
35+E/USB
75/85/95
TI-Python
builtins
array
collections
cmath
gc
math
micropython
os
random
sys
time
turtle
uerrno
88-188
.
.
12
.
41
6
.
8
.
3
38
.
84-175
.
.
.
.
25
.
.
8
.
.
.
.
91-190
4
2
.
7
28
.
.
8
15
4
.
.
97-428
3-13
.
13-17
9-13
42-46
10-14
.
.
17-21
.
.
25-29
93-218
4
.
12
7
41
3
.
.
15
.
.
.
91-204
4
.
12
7
41
6
.
8
12
.
.
24
91-190
4
2
.
7
28
.
.
8
15
4
.
.
93-191
4
2
12
7
41
6
15
8
15
10
.
.
spécifique
6
(kandinsky)

48
(ion)
3-7
(prime)
10
(nsp)
22
(board)

21
(storage)
Total
250-350
117-208
159-258
219-588
185-310
205-318
159-258
213-354

En terme de richesse des modules, la
NumWorks
varie donc entre les 2ème et 3ème rangs ! :bj:
Aux examens :
  1. 219-588
    éléments :
    HP Prime
    (version alpha)
  2. 250-350
    éléments :
    NumWorks
  3. 159-258
    éléments :
    TI-83 Premium CE Edition Python
  4. 117-208
    éléments :
    Casio Graph 35+E II
    Casio Graph 90+E
Hors examens :
  1. 219-588
    éléments :
    HP Prime
    (version alpha)
  2. 213-354
    éléments :
    TI-Python
    (firmware tiers)
  3. 250-350
    éléments :
    NumWorks
  4. 205-318
    éléments :
    Casio Graph 35+E II
    Casio Graph 35+E/USB
    Casio Graph 75/85/95
    Casio fx-9750GII
    Casio fx-9860GII
    Casio fx-9860G

    (appli CasioPython)
  5. 185-310
    éléments :
    TI-Nspire

    (appli MicroPython)
  6. 159-258
    éléments :
    TI-83 Premium CE Edition Python

    TI-Python
  7. 117-208
    éléments :
    Casio Graph 35+E II
    Casio Graph 90+E




La mémoire utilisée pour exécuter les scripts
Python
est consituée de 2 zones :
  • le
    stack (pile)
    qui accueille les références vers les objets créés
  • le
    heap (tas - appelé vugairement chez nous mémoire de travail jusqu'à présent)
    qui accueille les valeurs de ces objets
Le
stack / pile
limite donc la quantité d'objets différents utilisables simultanément, alors que le
heap
limite le volume.
La
NumWorks
était très décevante dans les deux cas, se retrouvant sur ces points littéralement à la queue de l'ensemble des solutions
Python
sur calculatrices graphiques. :mj:




Notre script permet d'estimer la capacité du tas
(mémoire de travail)
:
Code: Select all
def sizeenv():
  s=0
  import __main__
  for o in dir(__main__):
    try:s+=size(eval(o))
    except:pass
  return s
def size(o):
  s,t=0,type(o)
  if t==str:s=49+len(o)
  if str(t)=="<class 'function'>":s=136
  if t==int:
    s=24
    while o:
      s+=4
      o>>=30
  if t==list:
    s+=64
    for so in o:s+=8+size(so)
  return s
def mem(v=1,r=1):
  try:
    l=[]
    try:
      l+=[r and 793+sizeenv()]
      if v*r:print(" ",l[0])
      l+=[0]
      l+=[""]
      l[2]+="x"
      while 1:
        try:l[2]+=l[2][l[1]:]
        except:
          if l[1]<len(l[2])-1:l[1]=len(l[2])-1
          else:raise(Exception)
    except:
      if v:print("+",size(l))
      try:l[0]+=size(l)
      except:pass
      try:l[0]+=mem(v,0)
      except:pass
      return l[0]
  except:return 0

Celle-ci faisait
16 Kio
sur les
firmwares
officiel, et cela n'a malheureusement pas changé pour la version
13
.

En conséquence, vu les tailles non négligeables prises en mémoire par les objets
Python
les plus simples, tu seras très rapidement limité(e) dès que tes scripts vont commencer à travailler sur des tuples, listes ou pire listes de listes. :mj:

12186Si par contre tu fais le choix du
firmware
Omega
, tu pourras bénéficier d'un tas de
32 Kio
, de quoi commencer à aborder des projets nettement plus ambitieux ! :bj:


Omega
permet ainsi à ta
NumWorks
de ganger de 2 à 5 places au classement en terme de capacité de
tas / stack
et ainsi de ne plus être dernière, loin de là ! :bj:
Aux examens :
  1. 1,032942 Mo
    :
    Casio Graph 90+E
  2. 1,022145 Mo
    :
    HP Prime
    (version alpha)
  3. 100,560 Ko
    :
    Casio Graph 35+E II
  4. 32,339 Ko

    NumWorks
    (firmware
    Omega
    )
  5. 20,200 Ko

    TI-83 Premium CE Edition Python
  6. 16,259 Ko

    NumWorks
    (firmware officiel)
Hors examens :
  1. 2,049276 Mo
    :
    TI-Nspire
    (application MicroPython)
  2. 1,032942 Mo
    :
    Casio Graph 90+E
  3. 1,022145 Mo
    :
    HP Prime
    (version alpha)
  4. 257,636 Ko
    :
    Casio Graph 35/75+E
    (application CasioPython)
  5. 100,560 Ko
    :
    Casio Graph 35+E II
  6. 32,339 Ko

    NumWorks
    (firmware
    Omega
    )
  7. 31,899 Ko
    :
    Casio Graph 35+E II
    (application CasioPython)
  8. 22,605 Ko

    TI-83 Premium CE + TI-Python
  9. 20,200 Ko

    TI-83 Premium CE Edition Python
  10. 19,924 Ko

    TI-83 Premium CE + TI-Python
  11. 16,238 Ko

    NumWorks
    (firmware officiel)




Par contre,
NumWorks
annonce avoir quadruplé la taille de la
pile / stack
pour la version
13
, voyons cela. Comme déjà expliqué, cette augmentation devrait permettre d'avoir simultanément davantage d'objets en mémoire
(mais pas davantage de données, les valeurs de ces objets allant comme déjà dit dans le tas / heap)
. C'est la même capacité que l'on peut partager entre davantage d'objets différents.

Comment mesurer cela ? Une situation qui permet de créer plein de références dans la
pile / stack
, c'est la récursivité, soit les fonctions qui se rappellent elles-mêmes. Prenons notre script
recur.py
:
Code: Select all
def sumr(n):return n>0 and n+sumr(n-1)

def maxr(fct):
  n=0
  try:
    while True:
      fct(n)
      n=n+1
  except Exception as e:print(e)
  return n

12189L'appel
maxr(sumr)
permet en effet de constater un bon quadruplement du nombre maximal d'appels récursifs, passant de
30
à
143
avant le déclenchement de l'erreur
maximum recursion depth exceeded
, de quoi étudier et exploiter désormais bien plus sérieusement la récursivité ! :bj:

Là encore une nette progression au classement en terme de capacité de
pile / stack
. Merci cette fois-ci
NumWorks
, la calculatrice est donc dès maintenant le meilleur choix aux examens français sur le critère de la récursivité ! :bj:
Aux examens :
  1. 143
    :
    NumWorks
    (nouvelle version)
  2. 82
    :
    Casio Graph 90+E

    Casio Graph 35+E II
  3. 77
    :
    HP Prime
    (version alpha)
  4. 30
    :
    NumWorks
    (ancienne version)
  5. 23

    TI-83 Premium CE Edition Python
Hors examens :
  1. 5362
    :
    Casio Graph 35/75+E
    (application CasioPython)
  2. 655
    :
    Casio Graph 35+E II
    (application CasioPython)
  3. 143
    :
    NumWorks
    (nouvelle version)
  4. 130
    :
    TI-Nspire
    (application MicroPython)
  5. 82
    :
    Casio Graph 90+E

    Casio Graph 35+E II
  6. 77
    :
    HP Prime
    (version alpha)
  7. 30
    :
    NumWorks
    (ancienne version)
  8. 23

    TI-83 Premium CE Edition Python
  9. 20

    TI-83 Premium CE + TI-Python
  10. 15

    TI-83 Premium CE + TI-Python




5) Calculs

Go to top

NumWorks
n'a également pas chômé avec l'application
Calculs
et nous apporte ici encore pléthore de nouveautés.

Déjà petite mise en bouche,
NumWorks
améliore l'intelligence de sa saisie. Lorsque par exemple on note
f(5)
, sans connaître le contexte il y a ambiguité. Selon le contexte, cela peut être :
  • si
    f
    est une fonction, la fonction
    f
    appliquée à 5
  • sinon, le produit de
    f
    par 5
Jusqu'à la dernière version, la
NumWorks
considérait systématiquement que c'était un appel de fonction, même si
f
n'en était pas une, et ne te donnait donc aucun résultat. :(

Désormais ta
NumWorks
tiens compte du contexte, et t'interprétera automatiquement cette saisie en tant que produit si
f
n'a pas été définie en tant que fonction. :)


La
NumWorks
te permet désormais de calculer avec des nombres écrits en base non décimale : :bj:
  • base binaire en préfixant le nombre saisi par
    0b
  • base hexadécimale en préfixant le nombre saisi par
    0x

Le résultat reste certes affiché en base décimale, et il n'y a pas d'option pour changer cela.
Toutefois,
NumWorks
a prévu autre chose pour tes conversions dans l'autre sens. Si tu remontes dans l'historique de calculs avec la touche
, chaque résultat entier sélectionné se verra adjoindre un bouton qu'il te suffira de valider pour obtenir automatiquement des résultats additionnels :
  • la conversion en base hexadécimale :bj:
  • la conversion en base binaire :bj:
  • la décomposition en facteurs premiers :)
Et nul besoin de les noter sur ton brouillon, les différents résultats peuvent de plus être sélectionnés puis directement copiés-collés à des fins de réutilisation immédiate ! :bj:

Mais ce n'est pas tout,
NumWorks
te propose également des résultats additionnels de façon similaire en cas de résultat rationnel
(écriture exacte en fraction)
, avec :
  • la conversion en fraction mixte
    (entier suivi d'une fraction propre, soit avec son numérateur inférieur au dénominateur)
    :)
  • le détail de la division euclidienne du numérateur par le dénominateur :)

Lorsque le résultat écrit sous forme exacte est un cosinus ou sinus de quelque chose, là
NumWorks
s'est déchaîné pour les résultats additionnels, avec :
  • représentation automatique et légendée du point associé sur le cercle trigonométrique :#tritop#:
  • cosinus associé sous forme exacte et décimale :bj:
  • sinus associé sous forme exacte et décimale :bj:

Et alors attends tu n'as pas vu les nombres complexes, ici c'est de la folie avec comme résultats additionnels proposés :
  • la représentation automatique et légendée du point associé dans le plan complexe :#tritop#:
  • le module sous forme exacte et décimale :bj:
  • l'argument sous forme exacte et décimale :bj:
  • la partie réelle sous forme exacte et décimale :bj:
  • la partie imaginaire sous forme exacte et décimale :bj:
Entiers, rationnels, fonctions trigonométriques et nombres complexes... à chaque fois, ce sont littéralement de mini-études que te réalise désormais
NumWorks
! :bj:
Des représentations différentes qui t'amèneront à mieux comprendre chacun de ces résultats, ainsi qu'à développer ta compétence
Représenter
et passer à l'avenir plus naturellement d'une forme à l'autre. Une fonctionnalité donc d'une haute pertinence ! :bj:

On peut de plus rajouter qu'il s'agit de fonctionnalités exclusives à ce jour, ou plus précisément dans le contexte particulier de cette année 2020 avec le mode examen.
Il n'y a en effet rien d'équivalent sur les modèles concurrents, il faut y comprendre/retenir plusieurs commandes spécifiques et encore pour obtenir à chaque fois un seul des éléments de la série de résultats additionnels présentés.
De telles choses n'y étaient possibles qu'en y chargeant des programmes que nous te proposions gratuitement les années précédentes, programmes hélas bloqués par le mode examen cette année.
NumWorks
se met donc ainsi à te recréer gratuitement dans son propre mode examen des fonctionnalités équivalentes aux programmes les plus pertinents produits par la communauté pour la concurrence ces dernières années. N'oubliant pas les besoins des élèves,
NumWorks
semble ainsi être le constructeur ayant le mieux compris l'ensemble des conséquences de la réforme du mode examen ! :bj:


Et non, ce n'est pas fini. Grâce au formidable travail de
NumWorks
, l'application
Calculs
gère désormais les unités, avec une toute nouvelle entrée pour t'en facilité la saisie dans la boîte à outils. De très nombreuses catégories d'unités sont présentes, de quoi couvrir l'ensemble de tes problèmes de Géométrie, Physique ou Chimie : :bj:
  • Temps
  • Distance
  • Masse
  • Intensité du courant électrique
  • Température
  • Quantité de matière
  • Intensité lumineuse
  • Fréquence
  • Force
  • Pression
  • Energie
  • Puissance
  • Charge électrique
  • Tension électrique
  • Capacité électrique
  • Résistance électrique
  • Conductance électrique
  • Induction électrique
  • Inductance
  • Superficie
  • Volume

Les unités sont notées avec le caractère tiret bas comme préfixe, que tu pourras une fois habitué saisir directement au clavier avec
shift
,
. Le menu se donne même la peine de les légender dans ta langue une fois de plus ! :bj:
Bien que toutes les combinaisons ne soient pas au menu, précisons que la calculatrice reconnaît bien l'ensemble des préfixes du système international de 1012
(
T
era)
à 10-12
(
p
ico)
! :bj:

Rien à voir avec les unités proposée sur la concurrence de milieu de gamme où si c'est pas menu c'est foutu. Ici les unités sont de véritables éléments gérés au niveau du moteur de calcul et que tu peux donc librement intégrer à ces derniers.

Tu peux notamment sommer différentes unités compatibles, avec un résultat automatiquement converti dans l'unité jugée la plus pertinente ! :bj:

Tu as peut-être remarqué qu'il n'y avait pas de catégorie vitesse au menu, ces unités étant obtenues par un simple quotient. Les possibilités de combinaison sont infinies et permettront de gérer les unités les plus complexes ! :bj:

Si jamais l'unité déterminée automatiquement pour le résultat ne te convient pas, tu pourras parfaitement la convertir dans toute unité compatible à l'aide de l'opérateur d'affectation obtenu via
shift
x^y
! :bj:

Les unités sont tellement bien intégrées et gérées, qu'elles peuvent même accompagner les valeurs que tu stockes dans des variables. En Physique-Chimie notamment, si tu te donnes la peine de saisir chaque constante ou donnée d'une formule avec son unité, tu pourras obtenir automatiquement le résultat accompagné de son unité la plus pertinente pour rafler un maximum de points à tes exercices ! :bj:

C'est fantastique, les équivalences d'unités sont même connues de la machine, comme ici le kilogramme mètre par seconde carrée automatiquement remplacé par le Newton ! :bj:

Inversement, si l'énoncé de Physique-Chimie tente de te piéger en ne précisant de façon générique que SI
(Système International)
comme unité pour les constantes qu'il te rappelle, les formidables possibilités de combinaisons infinies de la
NumWorks
te permettront de retrouver la bonne unité ! :bj:




6) Probabilités

Go to top

L'application
Probabilités
n'est pas en reste,
NumWorks
se donne la peine d'y rajouter une nouvelle loi, la loi de Fisher. :)




7) Équations

Go to top

La
NumWorks
te permettait déjà de résoudre des équations paramétrées, c'est-à-dire faisant intervenir des variables qui ne sont pas des inconnues mais ont bien été définies avec une valeur.
Il était donc dommage à l'écran des solutions de ne pas savoir à quelle(s) valeur(s) de paramètre(s) celles-ci correspondaient.

Dans la droite lignée de sa volonté de proposer des écrans aussi complets et compréhensibles que possible,
NumWorks
te rajoute à cet écran la liste des éventuels paramètres utilisés ainsi que leurs valeurs associées. :)




8) Fonctions

Go to top

NumWorks
te permet désormais de parcourir plus rapidement tes courbes de fonctions, le déplacement du curseur s'accélérant par augmentation du pas si tu maintenant la touche fléchée enfoncée.




9) Régressions

Go to top

NumWorks
s'est également occupé de l'application
Régressions
.
Le modèle de calcul utilisé pour les régressions
Puissance
et
Trigonométrique
n'était pas celui majoritairement choisi par les logiciels de Mathématiques. Si bien que la concurrence était unanime à contredire à l'unison les résultats de la
NumWorks
dans ces cas-là :

Désormais, le nouveau modèle utilisé est bien cohérent avec la concurrence. :)




10) Atom

Go to top

12202
Dans la version précédente,
Atom
, l'application de tableau périodique des éléments dédiée à
Omega
, présentait dans les valeurs affichées plusieurs erreurs dues à divers décalages. Notamment dans les masses molaires et nombre de nucléons après la série des lanthanides.

C'est dès maintenant corrigé dans le nouvel
Omega
! :bj:




11) RPN

Go to top

L'application
RPN
dédiée à
Omega
et permettant le calcul en notation postfixée autour d'une pile, présentait un thème d'affichage qui différait de celui de l'application
Calculs
officielle et n'en faisant pas bien ressortir la zone de saisie.

Le thème associé a maintenant été uniformisé. :)




12) External

Go to top

12201L'équipe
Omega
s'est également occupée de son application dédiée
External
.

Elle n'est d'une part plus affichée sur le modèle
NumWorks N0100
où elle était totalement inutile, puisqu'il n'y a pas de possibilité d'y rajouter des applications externes à ce jour.

D'autre part, de façon fort utile elle affiche maintenant l'adresse à laquelle l'on peut s'installer des applications additionnelles. :)




13) Conclusion

Go to top

Les bonnes choses prennent du temps et franchement cela valait le coup d'attendre; nous ne sommes absolument pas déçus aujourd'hui avec ce
firmware
conjoint absolument exceptionnel par
NumWorks
et
Omega
, riche de fonctionnalités innovantes ou jamais vu sur un modèle à ce prix-là; l'union fait clairement la force ! :D
Toutes nos félicitations à
NumWorks
ainsi qu'à l'ensemble de l'équipe
Omega
! :bj:
Et au plaisir de découvrir vos prochaines versions ! ;)




14) Installation Omega et KhiCAS

Go to top

Pour installer
Omega
rien de plus simple. De façon similaire à ce qui existait déjà pour les applications externes, un installateur en ligne est désormais également disponible pour
Omega
. Il te suffira tout simplement de connecter ta calculatrice, d'ouvrir la page liée en fin d'article dans ton navigateur, puis d'un seul clic ! :bj:
Tu auras besoin pour cela d'un navigateur utilisant un moteur
Chromium
ou compatible :
Google Chrome
,
Microsoft Edge
...


Notons qu'un tutoriel pour une installation avancée est également disponible et lié ci-après pour ceux qui souhaitent compiler
Omega
par eux-mêmes. Une méthode qui te donne accès à des possibilités supplémentaires, comme celle de protéger ta
NumWorks
contre le vol en signant l'écran
A propos
avec ton nom ou tout ce que tu veux, ainsi que la possibilité de te choisir un des 4 thèmes disponibles :
  • epsilon_light
  • epsilon_dark
  • omega_light
    (par défaut)
  • omega_dark

Les applications externes
KhiCAS
et autres sont pour leur part à installer séparément avec leur propre installateur en ligne dédié, également lié en fin d'article.




Liens
:


Téléchargements
:

Image
User avatar
critorAdmin
Niveau 19: CU (Créateur Universel)
Niveau 19: CU (Créateur Universel)
Level up: 3.7%
 
Posts: 34989
Images: 9340
Joined: 25 Oct 2008, 00:00
Location: Montpellier
Gender: Male
Calculator(s):
Class: Lycée
YouTube: critor3000
Twitter: critor2000
Facebook: critor.ti

Re: NumWorks Omega 1.19 + bêta 13: plein de nouveautés extra

Unread postby parisse » 18 Feb 2020, 17:01

Une remarque sur la gestion des unites: elle est presente depuis le debut dans KhiCAS, et je me felicite que Numworks ait choisi un comportement compatible. Il est toutefois different sur certains points:
* contrairement a KhiCAS, Epsilon ne fournit pas de table des constantes physiques fondementales. Omega propose ces constantes, mais il serait judicieux de leur ajouter les unites correspondantes.
* Epsilon execute systematiquement une operation de simplification d'unites, equivalente a la commande usimplify de KhiCAS (+gestion des exposants). Dans KhiCAS je vais ajouter les raccourcis =>+ (suffixe) ou shift-+ (prefixe) pour executer rapidement usimplify.
* Epsilon ne propose pas de commande equivalente a la commande mksa de KhICAS qui donne l'ecriture d'une unite comme produit des unites de base du systeme MKSA. Je vais ajouter les raccourcis =>* (suffix) ou shift-* (prefixe) pour executer rapidement mksa. Ce serait certainement facile d'ajouter l'equivalent dans Epsilon ou Omega.
* la table des unites fournies par Epsilon se limite au systeme metrique, pas d'unite anglo-saxonne ni certaines unites comme par exemple la calorie. Je suppose que ce sera ajoute un jour.
La saisie d'unites est fastidieuse sur la Numworks, c'est deja le cas sur KhiCAS malgre la presence de raccourcis pour acceder aux menus, mais encore plus sur Epsilon/Omega ou il n'y a aucun raccourci: par exemple saisir une superficie via les menus Epsilon necessite de taper un nombre indecent de touches. Il devrait etre possible d'ameliorer en ajoutant des raccourcis chiffres dans la Toolbox ou/et la possibilite de passer du premier au dernier item de la liste avec le curseur vers le haut (et reciproquement).
User avatar
parisseVIP++
Niveau 11: LV (Légende Vivante)
Niveau 11: LV (Légende Vivante)
Level up: 90.5%
 
Posts: 1907
Joined: 13 Dec 2013, 16:35
Gender: Not specified

Re: NumWorks Omega 1.19 + bêta 13: plein de nouveautés extra

Unread postby cent20 » 18 Feb 2020, 19:33

Elle est énorme cette version 13 !


Une énorme déception toutefois :


La mémoire utilisée pour exécuter les scripts Python est consituée de 2 zones :
le stack (pile) qui accueille les références vers les objets créés
le heap (tas - appelé vugairement chez nous mémoire de travail jusqu'à présent) qui accueille les valeurs de ces objets

(...)

Le stack / pile limite donc la quantité d'objets différents utilisables simultanément, alors que le heap limite le volume.

(...)

Celle-ci [le heap] faisait 16 Kio sur les firmwares officiel, et cela n'a malheureusement pas changé pour la version 13.

(...)

Par contre, NumWorks annonce avoir quadruplé la taille de la pile / stack pour la version 13

(...)

Là encore une nette progression au classement en terme de capacité de pile / stack. Merci cette fois-ci NumWorks, la calculatrice est donc dès maintenant le meilleur choix aux examens français sur le critère de la récursivité !


Ainsi, la Ferrari avait un problème très handicapant, elle avait été equipée d'origine avec des pneus de de 2cv en 125/80, et informé du problème (de tels pneus ne permettent pas d'exploiter la puissance du moteur) le fabricant à décidé de changer la boite de vitesse et d'équiper les feux d'ampoules led ! :troll:

Chapeau aux talentueux développeurs de Oméga d'avoir réussir à intégrer toutes ses motifs en un temps ci-court avec une facilité déconcertante. Et merci pour le heap (puisqu'il faut l'appeler comme ça) de 32 ko, ça change tout !
Bonjour Anonymous !

Intéressé par la spécialité NSI en 1ère
?
Visite donc
https://nsi.xyz !
User avatar
cent20Généreux
Niveau 11: LV (Légende Vivante)
Niveau 11: LV (Légende Vivante)
Level up: 51%
 
Posts: 307
Images: 24
Joined: 17 May 2012, 09:49
Location: Avignon
Gender: Male
Calculator(s):

Re: NumWorks Omega 1.19 + bêta 13: plein de nouveautés extra

Unread postby Adriweb » 18 Feb 2020, 19:37

Effectivement, une impressionnante mise a jour, cette version 13, et de très intéressants ajouts via Omega :)
TI a de quoi s'inspirer :troll:
User avatar
AdriwebAdmin
Niveau 16: CC2 (Commandeur des Calculatrices)
Niveau 16: CC2 (Commandeur des Calculatrices)
Level up: 53%
 
Posts: 12812
Images: 1085
Joined: 01 Jun 2007, 00:00
Location: France
Gender: Male
Calculator(s):
Class: (ingénieur)
Twitter: adriweb
GitHub: adriweb

Re: NumWorks Omega 1.19 + bêta 13: plein de nouveautés extra

Unread postby telpe51 » 18 Feb 2020, 19:50

Wouah ! :#fou#: Que de bonnes choses !!! #boing#
Je viens de faire la mise à jour sur ma N100 et, cerise sur le kouglopf,
cela n'a pas effacé mes scripts Python
:#tritop#: !!!
Merci à Numworks et à toute l'équipe de Oméga de nous offrir ces fonctionnalités :bj:
Je m'en vais tester tout ça ... :8): (j'ai déjà essayé le copier-coller dans Python : j'en rêvais ...)
User avatar
telpe51VIP++
Niveau 7: EP (Espèce Protégée: geek)
Niveau 7: EP (Espèce Protégée: geek)
Level up: 10.9%
 
Posts: 63
Images: 1
Joined: 18 Nov 2017, 12:31
Gender: Not specified
Calculator(s):

Online

Re: NumWorks Omega 1.19 + bêta 13: plein de nouveautés extra

Unread postby critor » 18 Feb 2020, 20:07

Content que ça vous plaise à ce point. :)

parisse wrote:* contrairement a KhiCAS, Epsilon ne fournit pas de table des constantes physiques fondementales. Omega propose ces constantes, mais il serait judicieux de leur ajouter les unites correspondantes.

Excellente suggestion ! :bj:

Je viens de rajouter des liens vers le tutoriel du nouveau module
Python ion
.
Image
User avatar
critorAdmin
Niveau 19: CU (Créateur Universel)
Niveau 19: CU (Créateur Universel)
Level up: 3.7%
 
Posts: 34989
Images: 9340
Joined: 25 Oct 2008, 00:00
Location: Montpellier
Gender: Male
Calculator(s):
Class: Lycée
YouTube: critor3000
Twitter: critor2000
Facebook: critor.ti

Re: NumWorks Omega 1.19 + bêta 13: plein de nouveautés extra

Unread postby quentinguidee » 18 Feb 2020, 20:53

@critor
Enorme merci pour cet article !! Très représentatif d'Epsilon 13 et d'Omega 1.19 ; extrêmement complet et bien écrit comme d'habitude :) B-)

@Adriweb
:troll:

@parisse
Merci pour ces idées, et notamment celle que souligne @critor que l'on devrait faire sans tarder ! On note toutes ces idées! :)

@telpe51
Les scripts sont effectivement sauvegardés sur notre installateur et réinjectés après installation :) Merci beaucoup !! ;)

@cent20
Merci beaucoup!! :) Effectivement, on a du faire tout ça en quelques jours seulement :? Assez compliqué en comptant en plus le faut que la fusion avec la nouvelle version n'a pas été le seul problème rencontré :D
User avatar
quentinguideeProgrammeur
Niveau 9: IC (Compteur Infatigable)
Niveau 9: IC (Compteur Infatigable)
Level up: 53.9%
 
Posts: 68
Joined: 30 Oct 2019, 20:40
Location: Belgique
Gender: Male
Calculator(s):
Class: Ingénieur civil, Bac 1
GitHub: quentinguidee

Re: NumWorks Omega 1.19 + bêta 13: plein de nouveautés extra

Unread postby Adriweb » 19 Feb 2020, 00:26

quentinguidee wrote:
@telpe51
Les scripts sont effectivement sauvegardés sur notre installateur et réinjectés après installation :) Merci beaucoup !! ;)

J'ai pas eu l'occasion de vérifier ça par moi-même mais normalement sur le workshop NumWorks c'est aussi le cas.
Par contre sur le flasheur "de base" de TI-Planet, j'accepte les PR :P
User avatar
AdriwebAdmin
Niveau 16: CC2 (Commandeur des Calculatrices)
Niveau 16: CC2 (Commandeur des Calculatrices)
Level up: 53%
 
Posts: 12812
Images: 1085
Joined: 01 Jun 2007, 00:00
Location: France
Gender: Male
Calculator(s):
Class: (ingénieur)
Twitter: adriweb
GitHub: adriweb

Re: NumWorks Omega 1.19 + bêta 13: plein de nouveautés extra

Unread postby Thom986 » 19 Feb 2020, 00:34

Je crois avoir toujours dit que je voyais deux publique pour cette calculatrice, le prof de lycée qui voudrait que les élèves l'aient et ceux qui vont en faire un projet informatique à bidouiller. Omega rentre parfaitement dans cette case. Au delà de l'aspect utilitaire, vous allez développer à travers cette expérience des compétences et une appétence qui vous servirons sans nulle doute pour vos choix d'orientations, de métier.

Je vous vois encore plein de belles choses à apprendre, sur vous et sur "le code".

Bravo à vous et merci pour toutes ses améliorations.
La réalité, c'est ce qui refuse de disparaître quand on cesse d'y croire.
-
Philip K. Dick
User avatar
Thom986Premium
Niveau 8: ER (Espèce Rare: nerd)
Niveau 8: ER (Espèce Rare: nerd)
Level up: 94.9%
 
Posts: 218
Joined: 21 Feb 2018, 19:11
Gender: Male
Calculator(s):
GitHub: homeostasie

Re: NumWorks Omega 1.19 + bêta 13: plein de nouveautés extra

Unread postby parisse » 19 Feb 2020, 06:52

telpe51 wrote:(j'ai déjà essayé le copier-coller dans Python : j'en rêvais ...)

Si vous avez une n0110, je vous signale que ca existe dans l'editeur de script de KhiCAS depuis le debut (avec shift-COPY pour marquer le debut de selection), comme le choix de la taille de la police, et d'autres choses qui ne sont pour le moment pas disponibles sur Epsilon: comme le parenthese match, les lignes longues visibles entierement (affichage sur plusieurs lignes), le search/replace, et le test qu'un script est correct syntaxiquement directement sans quitter l'editeur.
J'ai un peu le sentiment que personne n'a teste, pourtant il n'est pas difficile d'ecrire des scripts qui fonctionnent dans les deux environnements (MicroPython et KhiCAS). Voici la version des scripts que je mets au demarrage dans Delta. Le script de fractale est 2 fois plus rapide en MicroPython que celui de Epsilon, ca serait pas mal de le mettre dans apps/code/script_template.cpp de Omega pour ameliorer la compatibilite avec KhiCAS.
Code: Select all
constexpr ScriptTemplate squaresScriptTemplate("squares.py", "\x01" R"(from turtle import *
def polyg1(l=20,n=3):
  for j in range(n):
    forward(l)
    left(360.0/n)

def polyg(n=7):
  reset()
  for j in range(3,n):
    polyg1(30,j)
)");

constexpr ScriptTemplate mandelbrotScriptTemplate("mandelbrot.py", "\x01" R"(from math import *
from kandinsky import *
# Mandelbrot fractal
# Nmax: precision, s: scale
def mandelbrot(Nmax=10,s=2,X=160,Y=111):
  w=2.7/X
  h=-1.87/Y
  Y=Y-1
  for y in range(ceil(Y/2)+1):
    c = complex(-2.1,h*y+0.935)
    for x in range(X):
      z = 0
      for j in range(Nmax):
        z=z**2+c
        if abs(z)>2:
          break
      fill_rect(s*x,s*y,s,s,126*j+2079)
      fill_rect(s*x,s*(Y-y),s,s,126*j+2079)
      c = c+w)");

constexpr ScriptTemplate polynomialScriptTemplate("polynomial.py", "\x01" R"(from math import *
# rac(a,b,c) calcule les racines de a*x**2+b*x+c=0
def rac(a,b,c):
  delta = b*b-4*a*c
  if delta == 0:
    return -b/(2*a)
  elif delta > 0:
    x_1 = (-b-sqrt(delta))/(2*a)
    x_2 = (-b+sqrt(delta))/(2*a)
    return [x_1, x_2]
  else:
    return None)");

User avatar
parisseVIP++
Niveau 11: LV (Légende Vivante)
Niveau 11: LV (Légende Vivante)
Level up: 90.5%
 
Posts: 1907
Joined: 13 Dec 2013, 16:35
Gender: Not specified

Next

Return to News NumWorks

Who is online

Users browsing this forum: No registered users and 5 guests

-
Search
-
Featured topics
Omega, le fork étendant les capacités de ta NumWorks, même en mode examen !
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.
443 utilisateurs:
>429 invités
>8 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)