Page 3 sur 4

Re: Mise à jour NumWorks 11.2.0

Message non luPosté: 13 Juil 2019, 12:21
de Thom986
C'est dommage cette absence de table... c'est vraiment un truc que j'aime sur les scientifiques. La dernier de chez ti permet d'afficher une fonction dans la première colonne puis ses nombres dérivées dans la seconde. : https://i.imgur.com/TQeXenb.jpg

Re: Mise à jour NumWorks 11.2.0

Message non luPosté: 13 Juil 2019, 21:06
de jean-baptiste boric
critor a écrit:Pour les forks et recompilations avec calcul littéral, si des gens l'ont fait, jusqu'à présent personne n'a partagé.
Parce que vu la licence, c'est avec grand plaisir que nous hébergerions ces firmwares/applis améliorés.

Vu que c'est si gentiment demandé... :p

J'en ai profité pour rajouter toutes les pull requests traînant sur le dépôt epsilon et qui sont dans un état correct:
Code: Tout sélectionner
a37350eaf Re-enable symbolic computation
7a2a8aa3a Merge remote-tracking branch '0b101/DisplayMPVersion' into critor-build
d1daf729c Fix by 0b101
95cae9f40 Merge remote-tracking branch 'Lesquivemeau/Add_constants' into critor-build
e04ad0513 Merge remote-tracking branches 'boricj/feature/Gradians', 'boricj/python_kandinsky_moar', 'boricj/feature/accessibility' and 'PiGuy2/ShowMoreCalculations' into critor-build


EDIT: avec le bon fichier, ça marche mieux >_<

Re: Mise à jour NumWorks 11.2.0

Message non luPosté: 13 Juil 2019, 21:09
de critor
Ah, merci à toi. :)

Donc en gros, tu nous as fait un firmware fortement amélioré ? ;)

Re: Mise à jour NumWorks 11.2.0

Message non luPosté: 13 Juil 2019, 21:18
de jean-baptiste boric
critor a écrit:Donc en gros, tu nous as fait un firmware fortement amélioré. ;)

Je l'espère, après tout je n'ai pas testé en profondeur si tous ces changements ne se marchent pas trop sur les pieds. J'aurais probablement pu en entasser un peu plus, je me suis contenté de ce qui passait sans trop de casse.

Re: Mise à jour NumWorks 11.2.0

Message non luPosté: 15 Juil 2019, 13:45
de Smart Crystal
viewtopic.php?p=244200#p244210
jean-baptiste boric a écrit:Tiens, c'est étrange, en recompilant la version 11.2.0 j'obtiens 727 KiB de mon côté.

Critor, tu confirmes ? :D

Re: Mise à jour NumWorks 11.2.0

Message non luPosté: 15 Juil 2019, 13:50
de critor
Je confirme que la taille 11.2 que j'annonce est bonne selon mon protocole de mesure.

J'installe sur la calculatrice, puis je dump le contenu Flash, puis je vire le bloc d'octets 0xFF à la fin et je regarde la taille restante.

Toutes les tailles présentes sur le diagramme ont été mesurées de cette façon.

Re: Mise à jour NumWorks 11.2.0

Message non luPosté: 20 Juil 2019, 00:08
de Smart Crystal
Début du développement de la version 12... :)
https://github.com/numworks/epsilon/com ... 1...master

Re: Mise à jour NumWorks 11.2.0

Message non luPosté: 12 Aoû 2019, 08:18
de parisse
jean-baptiste boric a écrit:Il suffit de modifier deux constantes aux bons endroits pour réactiver le calcul symbolique comme avant. J'avoue ne pas vraiment saisir la finalité de cette modification...

C'est ou qu'il faut faire les modifications? J'aimerais re-injecter giac pour la N110, j'arrive bien a appeler mon parser/evaluateur, mais des que le resultat est symbolique, l'affichage en reponse est undef.

Les modifs que j'ai faites:
Dans scripts/config.mak: ajouter
LDFLAGS += -lgiac
SFLAGS += -DGIAC

Dans apps/calculation.cpp
1/ avant namespace ... ajouter
Code: Tout sélectionner
#ifdef GIAC
  extern "C" const char * caseval(const char *);
#endif


2/ modifier Calculation::setContent (pour l'instant je n'ai pas mis de bound checking ni fait l'evaluation en approx)
Code: Tout sélectionner
void Calculation::setContent(const char * c, Context * context, Expression ansExpression) {
  reset();
#ifdef GIAC
  const char * out=caseval(c);
  strcpy(m_inputText,c);
  strcpy(m_exactOutputText,out);
  strcpy(m_approximateOutputText,out);
#else
  {
    Symbol ansSymbol = Symbol::Ans();
    Expression input = Expression::Parse(c).replaceSymbolWithExpression(ansSymbol, ansExpression);
    /* We do not store directly the text enter by the user because we do not want
     * to keep Ans symbol in the calculation store. */
    PoincareHelpers::Serialize(input, m_inputText, sizeof(m_inputText));
  }
  Expression exactOutput;
  Expression approximateOutput;
  PoincareHelpers::ParseAndSimplifyAndApproximate(m_inputText, &exactOutput, &approximateOutput, *context, false);
  PoincareHelpers::Serialize(exactOutput, m_exactOutputText, sizeof(m_exactOutputText));
  PoincareHelpers::Serialize(approximateOutput, m_approximateOutputText, sizeof(m_approximateOutputText));
#endif
}

Re: Mise à jour NumWorks 11.2.0

Message non luPosté: 12 Aoû 2019, 09:11
de parisse
Bon, j'ai plus ou moins trouve, dans le code original il faut mettre le dernier argument de PoincareHelpers::ParseAndSimplifyAndApproximate(m_inputText, &exactOutput, &approximateOutput, *context, false); a true.
Dans le code giac il faut faire l'evaluation en approx si on veut que le resultat exact soit affiche en symbolique (sinon on a undef), ce qui donne
Code: Tout sélectionner
...
#if 1 // def GIAC
  char buf[1024]="regroup(";
  strcpy(&buf[8],c);
  buf[strlen(buf)]=')';
  buf[strlen(buf)]=0;
  const char * out=caseval(buf);
  strcpy(m_inputText,c);
  strcpy(m_exactOutputText,out);
  strcpy(buf,"evalf(");
  strcpy(&buf[6],out);
  buf[strlen(out)+6]=')';
  buf[strlen(out)+7]=0;
  out=caseval(buf);
  strcpy(m_approximateOutputText,out);
#else
...

Reste a lui faire accepter les noms de commandes Xcas dans le champ en entree.

Re: Mise à jour NumWorks 11.2.0

Message non luPosté: 12 Aoû 2019, 11:49
de ptijoz
jean-baptiste boric a écrit:
critor a écrit:Donc en gros, tu nous as fait un firmware fortement amélioré. ;)

Je l'espère, après tout je n'ai pas testé en profondeur si tous ces changements ne se marchent pas trop sur les pieds. J'aurais probablement pu en entasser un peu plus, je me suis contenté de ce qui passait sans trop de casse.


merci j'ai installé sur ma Numworks et ça marche :)