giac icas windows
Modérateur : xcasadmin
Re: giac icas windows
Les droits sur c:\xcas, ca depend sans doute de la facon dont l'install est faite, mon experience c'est qu'en general ce n'est pas tres securise sous windows dans les etablissements secondaires (pas tellement plus a la fac a vrai dire).
Il y a des variables d'environement Unix/cygwin qui controlent les chemins, cf. le fichier runxcasfr.sh du repertoire de xcas, mais je ne sais pas trop comment on peut les generer depuis un fichier .bat windows.
Il y a des variables d'environement Unix/cygwin qui controlent les chemins, cf. le fichier runxcasfr.sh du repertoire de xcas, mais je ne sais pas trop comment on peut les generer depuis un fichier .bat windows.
Re: giac icas windows
Bonjour,
Le problème des fichiers situés dans le dossier xcas, c'est que l'on ne peut pas y accéder si on ne connait pas le dossier d'installation de xcas.
A priori, il faut que dans la variable d'environnement %PATH% de Windows figure le chemin du dossier d'installation de xcas.
Ce chemin devrait être ajouté à la variable %PATH% au moment de l'installation de Xcas
Ce n'es pas trop important car la plupart des installations sont faites dans le dossier C:\xcas...
Bonne nouvelle : j'ai compris pourquoi cela ne fonctionne pas sur les ordinateurs de mon lycée. C'est LO4 qui est installé et je faisais appel à l'API de LO pour coller du texte dans le presse papier.
Mais cette portion de code n'était pas indispensable. Du coup, je fais écrire directement le contenu de giac.out dans le traitement de texte, avant de le transformer en objet formule et cela marche.
Dès que j'aurai un version de test un peu élaborée, je mettrai un lien dans ce fil de discussion.
Le problème des fichiers situés dans le dossier xcas, c'est que l'on ne peut pas y accéder si on ne connait pas le dossier d'installation de xcas.
A priori, il faut que dans la variable d'environnement %PATH% de Windows figure le chemin du dossier d'installation de xcas.
Ce chemin devrait être ajouté à la variable %PATH% au moment de l'installation de Xcas
Ce n'es pas trop important car la plupart des installations sont faites dans le dossier C:\xcas...
Bonne nouvelle : j'ai compris pourquoi cela ne fonctionne pas sur les ordinateurs de mon lycée. C'est LO4 qui est installé et je faisais appel à l'API de LO pour coller du texte dans le presse papier.
Mais cette portion de code n'était pas indispensable. Du coup, je fais écrire directement le contenu de giac.out dans le traitement de texte, avant de le transformer en objet formule et cela marche.
Dès que j'aurai un version de test un peu élaborée, je mettrai un lien dans ce fil de discussion.
Didier DP
www.dmaths.org
www.dmaths.org
Re: giac icas windows
Existe-t-il une commande de nullsoft installer qui ajoute un chemin dans le path ?
Re: giac icas windows
J'ai trouvé cette page : http://nsis.sourceforge.net/Path_Manipulation
Didier DP
www.dmaths.org
www.dmaths.org
Re: giac icas windows
Bonjour,
J'avance...
Je butte sur la factorisation des entiers. La commande ifactor(592) dans giac.in (ou de tout autre entier) me retourne 592 (ou l'entier) dans giac.out.
J'ai également testé directement en ligne de commande avec icas giac.in, toujours 592.
Par contre isprime fonctionne parfaitement.
Je travaille sous Ubuntu 15.10. Je n'ai pas encore testé sous d'autres OS.
Cela pourrait-il être un bug de icas ?
Merci.
Cordialement.
J'avance...
Je butte sur la factorisation des entiers. La commande ifactor(592) dans giac.in (ou de tout autre entier) me retourne 592 (ou l'entier) dans giac.out.
J'ai également testé directement en ligne de commande avec icas giac.in, toujours 592.
Par contre isprime fonctionne parfaitement.
Je travaille sous Ubuntu 15.10. Je n'ai pas encore testé sous d'autres OS.
Cela pourrait-il être un bug de icas ?
Merci.
Cordialement.
Didier DP
www.dmaths.org
www.dmaths.org
Re: giac icas windows
Ca pourrait donner caddorange a écrit :J'ai trouvé cette page : http://nsis.sourceforge.net/Path_Manipulation
Code : Tout sélectionner
; ${EnvVarUpdate} $0 "PATH" "A" "HKLM" $INSTDIR
L'ideal serait de ne pas avoir a toucher au chemin.
Pour la factorisation d'entiers, c'est surement un probleme de reevaluation du resultat. Quelle sont les commandes precises que vous utilisez?
Re: giac icas windows
Bonjour,
1) Concernant le chemin d'installation de Xcas sous Windows : L'installateur permet de le choisir. Je ne suis pas en mesure de dire connaître la proportion d'utilisateurs qui utilisent un chemin autre que C:\xcas. Le seul moyen à ma connaissance pour trouver ce chemin est qu'il soit stipulé dans la variable d'environnement PATH.
Peut être que si l'on procède à plusieurs installations la chaîne ajoutée à la variable écrase la précédente. Là encore il faudrait essayer ?
2) Pour la décomposition en facteurs premiers voici le giac.in :
Le giac.out contient 592.
Les commandes passées sont :
cd /home/didier/.config/libreoffice/4/user/Dmaths
icas giac.in
Le retour dans le Terminal est :
// Using locale /usr/share/locale/
// fr_FR.UTF-8
// /usr/share/locale/
// giac
// UTF-8
// Maximum number of parallel threads 4
Help file /usr/share/giac/doc/fr/aide_cas not found
Added 174 synonyms
"Unable to read file Erreur: Valeur Argument Incorrecte",
// Time 0.01
2^4*37,
// Time 0
pointer(0x7fc704000f20,0),
// Time 0
1,
// Time 0
1,
// Time 0
[cas_setup([0,0,0,1,0,[1e-12,1e-15],12,[4,100,0,25],0,1,0,1]),xyztrange([-10.0,10.0,-10.0,10.0,-10.0,10.0,-10.0,10.0,-10.0,10.0,-1.4,1.1,1,0.0,1.0,3]),[unarchive("giac.sav"),(Resultat:=ifactor(592)),(Sortie:=fopen("giac.out")),fprint(Sortie,Unquoted,Resultat),fclose(Sortie),archive("giac.sav")],["Unable to read file Erreur: Valeur Argument Incorrecte",2^4*37,pointer(0x7fc704000f20,0),1,1],(Resultat:=2^4*37),xcas_mode(0)]
// Time 0
// Total time 0.01
Pour isprime(592) j'obtiens faux dans giac.out
et dans le Terminal :
// Using locale /usr/share/locale/
// fr_FR.UTF-8
// /usr/share/locale/
// giac
// UTF-8
// Maximum number of parallel threads 4
Help file /usr/share/giac/doc/fr/aide_cas not found
Added 174 synonyms
[undef],
// Time 0
faux,
// Time 0
pointer(0x7f31d8000b70,0),
// Time 0
1,
// Time 0
1,
// Time 0
[cas_setup([0,0,0,1,0,[1e-12,1e-15],12,[4,100,0,25],0,1,0,1]),xyztrange([-10.0,10.0,-10.0,10.0,-10.0,10.0,-10.0,10.0,-10.0,10.0,-1.4,1.1,1,0.0,1.0,3]),[unarchive("giac.sav"),(Resultat:=ifactor(592)),(Sortie:=fopen("giac.out")),fprint(Sortie,Unquoted,Resultat),fclose(Sortie),0,(Resultat:=isprime(592)),(Sortie:=fopen("giac.out")),fprint(Sortie,Unquoted,Resultat),fclose(Sortie),archive("giac.sav"),0,(Resultat:=isprime(592)),(Sortie:=fopen("giac.out")),fprint(Sortie,Unquoted,Resultat),fclose(Sortie),archive("giac.sav")],["Unable to read file Erreur: Valeur Argument Incorrecte",2^4*37,"Done",1,1,0,[undef],faux,"Done",1,1,0,[undef],faux,pointer(0x7f31d8000b70,0),1,1],(Resultat:=faux),xcas_mode(0)]
// Time 0.01
// Total time 0.01
Merci !
1) Concernant le chemin d'installation de Xcas sous Windows : L'installateur permet de le choisir. Je ne suis pas en mesure de dire connaître la proportion d'utilisateurs qui utilisent un chemin autre que C:\xcas. Le seul moyen à ma connaissance pour trouver ce chemin est qu'il soit stipulé dans la variable d'environnement PATH.
Peut être que si l'on procède à plusieurs installations la chaîne ajoutée à la variable écrase la précédente. Là encore il faudrait essayer ?
2) Pour la décomposition en facteurs premiers voici le giac.in :
Code : Tout sélectionner
unarchive("giac.sav");
Resultat:=(ifactor(592));
Sortie:=fopen("giac.out");
fprint(Sortie,Unquoted,Resultat);
fclose(Sortie);
archive("giac.sav");
Les commandes passées sont :
cd /home/didier/.config/libreoffice/4/user/Dmaths
icas giac.in
Le retour dans le Terminal est :
// Using locale /usr/share/locale/
// fr_FR.UTF-8
// /usr/share/locale/
// giac
// UTF-8
// Maximum number of parallel threads 4
Help file /usr/share/giac/doc/fr/aide_cas not found
Added 174 synonyms
"Unable to read file Erreur: Valeur Argument Incorrecte",
// Time 0.01
2^4*37,
// Time 0
pointer(0x7fc704000f20,0),
// Time 0
1,
// Time 0
1,
// Time 0
[cas_setup([0,0,0,1,0,[1e-12,1e-15],12,[4,100,0,25],0,1,0,1]),xyztrange([-10.0,10.0,-10.0,10.0,-10.0,10.0,-10.0,10.0,-10.0,10.0,-1.4,1.1,1,0.0,1.0,3]),[unarchive("giac.sav"),(Resultat:=ifactor(592)),(Sortie:=fopen("giac.out")),fprint(Sortie,Unquoted,Resultat),fclose(Sortie),archive("giac.sav")],["Unable to read file Erreur: Valeur Argument Incorrecte",2^4*37,pointer(0x7fc704000f20,0),1,1],(Resultat:=2^4*37),xcas_mode(0)]
// Time 0
// Total time 0.01
Pour isprime(592) j'obtiens faux dans giac.out
et dans le Terminal :
// Using locale /usr/share/locale/
// fr_FR.UTF-8
// /usr/share/locale/
// giac
// UTF-8
// Maximum number of parallel threads 4
Help file /usr/share/giac/doc/fr/aide_cas not found
Added 174 synonyms
[undef],
// Time 0
faux,
// Time 0
pointer(0x7f31d8000b70,0),
// Time 0
1,
// Time 0
1,
// Time 0
[cas_setup([0,0,0,1,0,[1e-12,1e-15],12,[4,100,0,25],0,1,0,1]),xyztrange([-10.0,10.0,-10.0,10.0,-10.0,10.0,-10.0,10.0,-10.0,10.0,-1.4,1.1,1,0.0,1.0,3]),[unarchive("giac.sav"),(Resultat:=ifactor(592)),(Sortie:=fopen("giac.out")),fprint(Sortie,Unquoted,Resultat),fclose(Sortie),0,(Resultat:=isprime(592)),(Sortie:=fopen("giac.out")),fprint(Sortie,Unquoted,Resultat),fclose(Sortie),archive("giac.sav"),0,(Resultat:=isprime(592)),(Sortie:=fopen("giac.out")),fprint(Sortie,Unquoted,Resultat),fclose(Sortie),archive("giac.sav")],["Unable to read file Erreur: Valeur Argument Incorrecte",2^4*37,"Done",1,1,0,[undef],faux,"Done",1,1,0,[undef],faux,pointer(0x7f31d8000b70,0),1,1],(Resultat:=faux),xcas_mode(0)]
// Time 0.01
// Total time 0.01
Merci !
Didier DP
www.dmaths.org
www.dmaths.org
Re: giac icas windows
C'est parce que la variable Resultat est evaluee : l'ecriture sous forme factorisee d'un entier est tres fragile, elle est detruite des qu'elle est evaluee. Mais on peut y remedier en shuntant la variable Resultat:
Pour le PATH, je suis a peu pres sur que l'installer nsi ne teste pas que le chemin est deja dans le path, donc il va s'allonger a chaque reinstall de xcas, et quand il depassera 1024 caracteres, les problemes vont apparaitre. A mon avis, il est plus sur de ne pas toucher globalement a cette variable, mais uniquement localement (i.e. depuis l'executable appelant de giac), en rajoutant des chemins plausibles, a savoir c:\xcas, d:\xcas, j:\xcas (disques locaux et disque reseau), ou de demander a l'utilisateur d'ajouter lui-meme ce chemin s'il n'a pas utilise le chemin par defaut.
Code : Tout sélectionner
Sortie:=fopen("giac.out");
fprint(Sortie,Unquoted,ifactor(592));
fclose(Sortie);
Re: giac icas windows
Bonsoir,
Concernant le chemin d'installation, je vais explorer la base de registre pour voir si je trouve une information exploitable.
Concernant le fichier giac.in, quel est l'intérêt de la ligne suivante ?
Autrement dit, est-ce que je perds quelque chose si le fichier giac.in est toujours de la forme
au lieu de passer par la variable Resultat ?
Concernant le chemin d'installation, je vais explorer la base de registre pour voir si je trouve une information exploitable.
Concernant le fichier giac.in, quel est l'intérêt de la ligne suivante ?
Code : Tout sélectionner
Resultat:=(<commande paramètre>);
Code : Tout sélectionner
unarchive("giac.sav");
Sortie:=fopen("giac.out");
fprint(Sortie,Unquoted,<commande paramètre>);
fclose(Sortie);
archive("giac.sav");
Didier DP
www.dmaths.org
www.dmaths.org
Re: giac icas windows
Je ne vois pas de raison qui obligerait a passer par une variable Resultat.
Re: giac icas windows
Effectivement,
J'ai modifié mon code de cette façon.
Tout fonctionne bien.
Encore quelques jours pour la version test.
J'ai modifié mon code de cette façon.
Tout fonctionne bien.
Encore quelques jours pour la version test.
Didier DP
www.dmaths.org
www.dmaths.org
Re: giac icas windows
Bonsoir,
Pour le chemin de Xcas sous Windows, j'ai trouvé une clé dans la base de registre qui contient le chemin du fichier uninstall.exe et donc celui de Xcas.
Par contre la clé est différente selon les versions de Windows (problème récurrent), donc c'est compliqué de ce fait car on est jamais sûr d'avoir toutes les possibilités.
Finalement, je vais peut-être me résoudre à en faire un paramètre de Dmaths que l'utilisateur définira via une boîte de dialogue si le chemin n'est pas standard. A voir.
Je rencontre des choses étonnantes concernant la syntaxe des expressions.
Par exemple 1.5*x+2.8*x dans Xcas revoie 4.3*x alors que
fprint(Sortie,Unquoted,1.5*x+2.8*x); dans giac.in renvoie 1.5*x+2.8*x dans giac.out
Je ne comprends pas pourquoi.
Si je veux obtenir le bon résultat il me faut
fprint(Sortie,Unquoted,factor(1.5x+2.8x)); dans giac.in et la j'ai 4.3*x dans giac.out.
Plus généralement, où pourrais-je trouver des informations sur ces subtilités ?
Merci.
Pour le chemin de Xcas sous Windows, j'ai trouvé une clé dans la base de registre qui contient le chemin du fichier uninstall.exe et donc celui de Xcas.
Par contre la clé est différente selon les versions de Windows (problème récurrent), donc c'est compliqué de ce fait car on est jamais sûr d'avoir toutes les possibilités.
Finalement, je vais peut-être me résoudre à en faire un paramètre de Dmaths que l'utilisateur définira via une boîte de dialogue si le chemin n'est pas standard. A voir.
Je rencontre des choses étonnantes concernant la syntaxe des expressions.
Par exemple 1.5*x+2.8*x dans Xcas revoie 4.3*x alors que
fprint(Sortie,Unquoted,1.5*x+2.8*x); dans giac.in renvoie 1.5*x+2.8*x dans giac.out
Je ne comprends pas pourquoi.
Si je veux obtenir le bon résultat il me faut
fprint(Sortie,Unquoted,factor(1.5x+2.8x)); dans giac.in et la j'ai 4.3*x dans giac.out.
Plus généralement, où pourrais-je trouver des informations sur ces subtilités ?
Merci.
Didier DP
www.dmaths.org
www.dmaths.org
Re: giac icas windows
Cela vient du fait qu'il y a une instruction de simplification automatique qui est appliquee dans Xcas, par defaut c'est regroup.
Re: giac icas windows
Effectivement c'est cela si je l'ajoute, le résultat est le bon.
regroup est donc appliqué quand on appuie sur la touche entrée sans autre instruction ?
Merci pour l'aide.
regroup est donc appliqué quand on appuie sur la touche entrée sans autre instruction ?
Merci pour l'aide.
Didier DP
www.dmaths.org
www.dmaths.org
Re: giac icas windows
oui, sauf si on modifie ca dans la configuration du CAS.