Comment tracer une courbe sur Gnuplot en 3D?
Résolu
hbelaid
Messages postés
15
Date d'inscription
Statut
Membre
Dernière intervention
-
mathil2ska -
mathil2ska -
Bonjour,
Je dois représenter la solution d'une équation d'advection (équation différentielle du 1er ordre qui dépend du temps t et de l'espace x) sur Gnuplot sous Linux
Il s'agit d'une équation de la forme:
du/dt + c du/dx + (c'/2) u = 0
Je résous cette équation à partir d'une discrétisation et avec le schéma de Runge Kutta 4
Dans un fichier .dat je stocke des valeurs du temps t dans une colonne, des valeurs de la la variable d'espace x dans la 2ème colonne et les valeurs de la fonction u obtenue dans la 3ème (u=u(t,x))
Je veux donc repésenter u en fonction de t et de x
Dans un terminal je tape gnuplot
ensuite :
set pm3d at s
splot 'calcul_u.dat' with pm3d
et là on m'écrit "Single isoline (scan) is not enough for a pm3d plot. Hint: missing blank lines in the data file?"
alors que j'ai N variables t, N variables x et N variables u dans le fichier. j'arrive pas à mettre le doigt sur mon erreur
Pourriez vous m'aider SVP
Merci
Je dois représenter la solution d'une équation d'advection (équation différentielle du 1er ordre qui dépend du temps t et de l'espace x) sur Gnuplot sous Linux
Il s'agit d'une équation de la forme:
du/dt + c du/dx + (c'/2) u = 0
Je résous cette équation à partir d'une discrétisation et avec le schéma de Runge Kutta 4
Dans un fichier .dat je stocke des valeurs du temps t dans une colonne, des valeurs de la la variable d'espace x dans la 2ème colonne et les valeurs de la fonction u obtenue dans la 3ème (u=u(t,x))
Je veux donc repésenter u en fonction de t et de x
Dans un terminal je tape gnuplot
ensuite :
set pm3d at s
splot 'calcul_u.dat' with pm3d
et là on m'écrit "Single isoline (scan) is not enough for a pm3d plot. Hint: missing blank lines in the data file?"
alors que j'ai N variables t, N variables x et N variables u dans le fichier. j'arrive pas à mettre le doigt sur mon erreur
Pourriez vous m'aider SVP
Merci
A voir également:
- 3d gnuplot
- Architecte 3d gratuit - Télécharger - Architecture & Déco
- 3d slash - Télécharger - 3D
- Google maps satellite 3d - Guide
- Smartshow 3d - Télécharger - Visionnage & Diaporama
- Paint 3d mac - Télécharger - Dessin & Illustration
5 réponses
Salut.
ça aurai été bien de mettre comment tu as résolue le problème.
Je suppose que c'est l'utilisation de pm3d qui est fait pour faires des cartes (des surfaces) en 3D, c'est à dire plutôt un truc du genre u(x,y)=f(x,y) une variable à 2 dimensions (une surface), alors que ton fichier de données permet de faire une simple courbe du genre zi=f(xi,yi) (par exemple un ressort, ou un attracteur de Lorentz).
Supprimer pm3d devrai faire l'affaire.
ça aurai été bien de mettre comment tu as résolue le problème.
Je suppose que c'est l'utilisation de pm3d qui est fait pour faires des cartes (des surfaces) en 3D, c'est à dire plutôt un truc du genre u(x,y)=f(x,y) une variable à 2 dimensions (une surface), alors que ton fichier de données permet de faire une simple courbe du genre zi=f(xi,yi) (par exemple un ressort, ou un attracteur de Lorentz).
Supprimer pm3d devrai faire l'affaire.
slt
utilise tous simplement splot et t'auras une courbe en 3D
splot "'calcul_u.dat'' w l par exemple
utilise tous simplement splot et t'auras une courbe en 3D
splot "'calcul_u.dat'' w l par exemple
Bonjour, j'ai un projet d'info à realiser qui s'intitule "reflexion d'un rayon lumineux sur une sphere". J'ai resolu le probleme dans le plan, ce qui fait que j'ai un probleme avec un cercle. J'aimerais desormais passer du cercle a la sphere pour visualiser mon probleme dans l'espace. Comment faire ?? Merci pour votre aide !! Je suis en retard !
Bonjour, j'ai un projet d'info à realiser qui s'intitule "reflexion d'un rayon lumineux sur une sphere". J'ai resolu le probleme dans le plan, ce qui fait que j'ai un probleme avec un cercle. J'aimerais desormais passer du cercle a la sphere pour visualiser mon probleme dans l'espace. Comment faire ?? Merci pour votre aide !! Je suis en retard !
il faut utiliset splot "data.dat" using 1:2:3
avec le fichier data suivant
X Y Value
0 0 10
0 1 10
0 2 9
0 3 8
0 4 7
1 0 10
1 1 9
1 2 8
1 3 7
1 4 6
2 0 10
....
les differentes valeurs des X doivent etre doublement espacees pour obtenir une grille
http://t16web.lanl.gov/Kawano/gnuplot/datafile-e.html
en ajoutant
set pm3d map
on obtient une courbe de densite
avec le fichier data suivant
X Y Value
0 0 10
0 1 10
0 2 9
0 3 8
0 4 7
1 0 10
1 1 9
1 2 8
1 3 7
1 4 6
2 0 10
....
les differentes valeurs des X doivent etre doublement espacees pour obtenir une grille
http://t16web.lanl.gov/Kawano/gnuplot/datafile-e.html
en ajoutant
set pm3d map
on obtient une courbe de densite
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Le pb est mal posé!!!
il ya une itération sur la variable espace:
et l'autre itération (sur la variable temps) est implicite.
donc, le pb est unidimentionnel et un 3D
Résumé:
initialisation
etc...
t = t0
tant que x < xmax faire
x = x + dx
u = uold + dt* (...) + (...)
ecrire le résultat dans un fichier du type f(t,x)
t = t + dt
fin tantque sur x
fin
il ya une itération sur la variable espace:
et l'autre itération (sur la variable temps) est implicite.
donc, le pb est unidimentionnel et un 3D
Résumé:
initialisation
etc...
t = t0
tant que x < xmax faire
x = x + dx
u = uold + dt* (...) + (...)
ecrire le résultat dans un fichier du type f(t,x)
t = t + dt
fin tantque sur x
fin