ckmatrix

Librairie C++ de calcul formel/ C++ symbolic computation library

Modérateur : xcasadmin

frederic han
Messages : 1137
Inscription : dim. mai 20, 2007 7:09 am
Localisation : Paris
Contact :

ckmatrix

Message par frederic han » sam. sept. 26, 2015 7:50 am

Salut,

ckmatrix me retourne 1 sur l'exemple suivant, ce qui pose un probleme en mathml, car c'est affiche comme une matrice 4x4.

Code : Tout sélectionner

#include <giac/giac.h>
using namespace std;
using namespace giac;
int main(){
string s("[seq(seq(k*j,j=0..3),k=4..7)]");
cout << s << endl;
giac::context ct;
gen c(s,&ct);
c=eval(c,1,&ct);
cout << "c :" << c << endl;
cout << "check matrix :" << ckmatrix(c,&ct) << endl;
return 0;
}

parisse
Messages : 5743
Inscription : mar. déc. 20, 2005 4:02 pm
Contact :

Re: ckmatrix

Message par parisse » sam. sept. 26, 2015 2:53 pm

ckmatrix teste si on a une liste de listes de meme longueur, mais il ne teste que le type _VECT et pas le subtype. Dans l'editeur d'equation j'ai ajoute un test sur le subtype du 1er element (ce qui est evidemment imparfait mais n'a pas pose de problemes jusque maintenant). Je prefere ne pas changer ckmatrix qui est appele a trop d'endroits...

frederic han
Messages : 1137
Inscription : dim. mai 20, 2007 7:09 am
Localisation : Paris
Contact :

Re: ckmatrix

Message par frederic han » dim. sept. 27, 2015 12:57 pm

Alors il faudrait utiliser autre chose en mathml car sinon on ne voit pas la difference avec une syntaxe correcte de matrice.

NB: c'est deja assez perturbant la difference de retour des expressions suivantes:

Code : Tout sélectionner

seq(seq(j*k,j,0,3),k,0,3)

Code : Tout sélectionner

[seq(seq(j*k,j=0..3),k=0..3)]

Répondre