Le forum de XCAS

Xcas: un logiciel libre de calcul formel
Nous sommes actuellement le Mer Avr 25, 2018 12:07 pm

Heures au format UTC




Publier un nouveau sujet Répondre au sujet  [ 57 messages ]  Aller à la page Précédent  1, 2, 3, 4  Suivant
Auteur Message
 Sujet du message: Re: giac icas windows
MessagePublié: Jeu Mar 17, 2016 8:31 pm 
Hors-ligne

Inscrit le: Mar Déc 20, 2005 4:02 pm
Messages: 4301
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.


Haut
 Profil  
 
 Sujet du message: Re: giac icas windows
MessagePublié: Sam Mar 19, 2016 11:33 am 
Hors-ligne

Inscrit le: Sam Mar 12, 2016 7:50 am
Messages: 42
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.

_________________
Didier DP
www.dmaths.org


Haut
 Profil  
 
 Sujet du message: Re: giac icas windows
MessagePublié: Sam Mar 19, 2016 12:42 pm 
Hors-ligne

Inscrit le: Mar Déc 20, 2005 4:02 pm
Messages: 4301
Existe-t-il une commande de nullsoft installer qui ajoute un chemin dans le path ?


Haut
 Profil  
 
 Sujet du message: Re: giac icas windows
MessagePublié: Sam Mar 19, 2016 6:32 pm 
Hors-ligne

Inscrit le: Sam Mar 12, 2016 7:50 am
Messages: 42
J'ai trouvé cette page : http://nsis.sourceforge.net/Path_Manipulation

_________________
Didier DP
www.dmaths.org


Haut
 Profil  
 
 Sujet du message: Re: giac icas windows
MessagePublié: Lun Mar 21, 2016 6:59 am 
Hors-ligne

Inscrit le: Sam Mar 12, 2016 7:50 am
Messages: 42
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.

_________________
Didier DP
www.dmaths.org


Haut
 Profil  
 
 Sujet du message: Re: giac icas windows
MessagePublié: Lun Mar 21, 2016 8:07 am 
Hors-ligne

Inscrit le: Mar Déc 20, 2005 4:02 pm
Messages: 4301
ddorange a écrit:

Ca pourrait donner ca
Code:
; ${EnvVarUpdate} $0 "PATH" "A" "HKLM" $INSTDIR

mais le probleme c'est qu'en cas de reinstallation le chemin sera a nouveau ajoute et a la longue on va depasser les 1024 caracteres...
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?


Haut
 Profil  
 
 Sujet du message: Re: giac icas windows
MessagePublié: Lun Mar 21, 2016 2:24 pm 
Hors-ligne

Inscrit le: Sam Mar 12, 2016 7:50 am
Messages: 42
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 :
Code:
unarchive("giac.sav");
Resultat:=(ifactor(592));
Sortie:=fopen("giac.out");
fprint(Sortie,Unquoted,Resultat);
fclose(Sortie);
archive("giac.sav");

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 !

_________________
Didier DP
www.dmaths.org


Haut
 Profil  
 
 Sujet du message: Re: giac icas windows
MessagePublié: Lun Mar 21, 2016 3:33 pm 
Hors-ligne

Inscrit le: Mar Déc 20, 2005 4:02 pm
Messages: 4301
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:
Code:
Sortie:=fopen("giac.out");
fprint(Sortie,Unquoted,ifactor(592));
fclose(Sortie);


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.


Haut
 Profil  
 
 Sujet du message: Re: giac icas windows
MessagePublié: Lun Mar 21, 2016 4:46 pm 
Hors-ligne

Inscrit le: Sam Mar 12, 2016 7:50 am
Messages: 42
Bonsoir,

Concernant le chemin d'installation, je vais explorer la base de registre pour voir si je trouve une information exploitable. 8)

Concernant le fichier giac.in, quel est l'intérêt de la ligne suivante ?
Code:
Resultat:=(<commande paramètre>);


Autrement dit, est-ce que je perds quelque chose si le fichier giac.in est toujours de la forme
Code:
unarchive("giac.sav");
Sortie:=fopen("giac.out");
fprint(Sortie,Unquoted,<commande paramètre>);
fclose(Sortie);
archive("giac.sav");

au lieu de passer par la variable Resultat ?

_________________
Didier DP
www.dmaths.org


Haut
 Profil  
 
 Sujet du message: Re: giac icas windows
MessagePublié: Lun Mar 21, 2016 6:25 pm 
Hors-ligne

Inscrit le: Mar Déc 20, 2005 4:02 pm
Messages: 4301
Je ne vois pas de raison qui obligerait a passer par une variable Resultat.


Haut
 Profil  
 
 Sujet du message: Re: giac icas windows
MessagePublié: Lun Mar 21, 2016 7:50 pm 
Hors-ligne

Inscrit le: Sam Mar 12, 2016 7:50 am
Messages: 42
Effectivement,

J'ai modifié mon code de cette façon.
Tout fonctionne bien.
Encore quelques jours pour la version test.

_________________
Didier DP
www.dmaths.org


Haut
 Profil  
 
 Sujet du message: Re: giac icas windows
MessagePublié: Mer Mar 23, 2016 6:16 pm 
Hors-ligne

Inscrit le: Sam Mar 12, 2016 7:50 am
Messages: 42
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.

_________________
Didier DP
www.dmaths.org


Haut
 Profil  
 
 Sujet du message: Re: giac icas windows
MessagePublié: Mer Mar 23, 2016 6:36 pm 
Hors-ligne

Inscrit le: Mar Déc 20, 2005 4:02 pm
Messages: 4301
Cela vient du fait qu'il y a une instruction de simplification automatique qui est appliquee dans Xcas, par defaut c'est regroup.


Haut
 Profil  
 
 Sujet du message: Re: giac icas windows
MessagePublié: Mer Mar 23, 2016 6:53 pm 
Hors-ligne

Inscrit le: Sam Mar 12, 2016 7:50 am
Messages: 42
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.

_________________
Didier DP
www.dmaths.org


Haut
 Profil  
 
 Sujet du message: Re: giac icas windows
MessagePublié: Mer Mar 23, 2016 7:41 pm 
Hors-ligne

Inscrit le: Mar Déc 20, 2005 4:02 pm
Messages: 4301
oui, sauf si on modifie ca dans la configuration du CAS.


Haut
 Profil  
 
Afficher les messages publiés depuis:  Trier par  
Publier un nouveau sujet Répondre au sujet  [ 57 messages ]  Aller à la page Précédent  1, 2, 3, 4  Suivant

Heures au format UTC


Qui est en ligne ?

Utilisateurs parcourant actuellement ce forum : Aucun utilisateur inscrit et 3 invités


Vous ne pouvez pas publier de nouveaux sujets dans ce forum
Vous ne pouvez pas répondre aux sujets dans ce forum
Vous ne pouvez pas éditer vos messages dans ce forum
Vous ne pouvez pas supprimer vos messages dans ce forum
Vous ne pouvez pas insérer de pièces jointes dans ce forum

Rechercher pour:
Sauter vers:  
cron
Powered by phpBB® Forum Software © phpBB Group
Traduction réalisée par Maël Soucaze © 2009 phpBB.fr