[Scilab] Champs de vecteurs

Tout ce qui concerne notamment les outils de calcul numérique, de calcul formel ou de géométrie.
[participation réservée aux utilisateurs inscrits]
Règles du forum
Merci de soigner la rédaction de vos messages et de consulter ce sujet avant de poster. Pensez également à utiliser la fonction recherche du forum.
Maily

[Scilab] Champs de vecteurs

Message non lu par Maily »

Bonjour,
J'ai un fichier de données qui comportent 3 colonnes: une colonne pour les x, une colonne pour les y, une pour les vx (composantes selon x de la vitesse) et une pour les vy. Je veux tracer un champ de vecteurs qui me donne pour chaque position (x,y) le vecteur (vx,vy).
Pour faire ça, j'écrivais chaque colonne dans un vecteur:

Code : Tout sélectionner

M=fscanfmat('resultat.dat');
x=M(:,1);
...
et ensuite, je lançais la formule magique:

Code : Tout sélectionner

champ(x,y,vx,vy)
Mais ça ne marche pas !!! :evil:
Il me dit: "second and third arguments have incompatible dimensions"
J'aurai voulu savoir si quelqu'un conaissait une astuce pour me sortir de là !
Merci d'avance !
RGB

Re: Champs de vecteurs sous scilab

Message non lu par RGB »

Maily a écrit :J'ai un fichier de données qui comportent 3 colonnes
Bonjour,

Moi aussi ça m'intéresse de charger des données à partir d'un fichier...
Votre fichier a quel format ? C'est un fichier texte avec un caractère ';' comme séparateurs de champs ?

A mon humble avis il faut essayer de faire l'opération inverse et de regarder le format du fichier généré par Scilab...

Je vais essayer, je reviens...
RGB

Load from file

Message non lu par RGB »

Voilà, j'ai tapé le fichier suivant 'Mat2.txt' (fichier texte avec CR + LF en fin de ligne et séparateur espace) :

Code : Tout sélectionner

0.23 0.39
0.63 0.83
0.76 0.59
0.05 0.48
0.67 0.22
0.201 -787.84
Et le code suivant...

Code : Tout sélectionner

printf('Chemin temporaire : %s\n',TMPDIR)
a1=fscanfMat(TMPDIR+'/Mat2.txt')
... me charge bien dans la matrice a1 les valeurs de mon fichier texte...

Prochaine étape : comment tracer un graphique à partir d'un tableau de X Y...
RGB

Message non lu par RGB »

Code : Tout sélectionner

champ(1:10,1:10,rand(10,10),rand(10,10),1.0);
Déjà la fonction 'champ' comme ci-dessus donne un beau graphe... sympa...
RGB

Message non lu par RGB »

Code : Tout sélectionner

chemin='C:/...mettre le chemin ici .../Essais Scilab';
c=fscanfMat(chemin+'/Essai.dat');
clf()
plot2d(c(:,1), c(:,2))
Et ça fonctionne...

Pour l'exemple avec champs, je pense qu'il faudrait que vous vérifiez votre fichier de données...
Maily

Message non lu par Maily »

Merci de vous être penché sur mon problème (désolée de ne pas avoir répondu plus tôt, j'ai eu un souci de connexion...).
En fait, le problème que j'avais pour tracer un champ de vecteurs avec Scilab, c'est qu'il fallait que vx et vy soient des matrices et non pas des vecteurs colonnes !
Je pense que tout devrait marcher maintenant.
Merci quand même, c'est génial de savoir que des gens sont prêts à offrir un peu de leur temps pour aider les autres !
Répondre