Besoin d'aide sur matlab (meshgrid)

Réponses à toutes vos questions après le Bac (Fac, Prépa, etc.)
Titepuce37
Messages: 3
Enregistré le: 11 Fév 2009, 15:25

Besoin d'aide sur matlab (meshgrid)

par Titepuce37 » 11 Fév 2009, 15:29

Bonjour,
J'ai in projet de math à réaliser sur matlab que je n'arrive pas a résoudre malheureusement:
La distance de freinage est suivant une circulaire officielle donnée par la formule:
d=v²/[260x(f+p)] +0.55v
ou v est la vitesse en km/h
P est la pente exprimée en pourcentage qui peut etre positive ou négative si la route monte on descend
0.55 est un facteur lié à la réaction de l'automobiliste
d est la distance de freinage exprimée en m
et f est un coefficient de frottement. On le prendra égal à f=0.4, cette valeur correspond à une route séche et un bon état pneumatiques.

1) Tracer les courbes d=f(v) ou p est un paramètre. On prendra p entre -15% et +15% et v entre 20 et 130 km/h


Je sais que je doit utiliser meshgrid, mais j'arrive pas a bien rédiger le programme. Si une personne avait la gentillesse de me répondre... Merci



phryte
Membre Irrationnel
Messages: 1406
Enregistré le: 05 Juil 2008, 17:09

par phryte » 11 Fév 2009, 17:05

Bonjour.
meshgrid est imposé ?
Peut-être :
clear;
f=0.4;
[p,v] = meshgrid(-15:15,20:130);
d=v.^2./(260*(f+p))+0.55*v;
mesh(p,v,d)

Titepuce37
Messages: 3
Enregistré le: 11 Fév 2009, 15:25

par Titepuce37 » 12 Fév 2009, 20:03

Oui meshgrid est imposé. Merci pr ton aide, ms malheureusement je doute que ce soit ça, mon prof m'a dit que ca devait donné une série de courbe ressemblant à un abaque. Moi j'ai fait ça:

vv=linspace(20,130,100);
pp=linspace(-15,15,100);
[p,v]=meshgrid(pp,vv)
v=linspace(20,130,100);
p=linspace(-15,15,100);
f=0.4;
z=0.55*v;
y=(v)/(260*(f+p))+z;
figure (1); clf; hold on;
plot(v,y,'k');

Mais de toute évidence, c'est faux, puisque ça donne qu'une droite...

phryte
Membre Irrationnel
Messages: 1406
Enregistré le: 05 Juil 2008, 17:09

par phryte » 13 Fév 2009, 08:49

Bonjour.
Avec ce que tu proposes cela donne :
Code: Tout sélectionner
clear
 vv=linspace(20,130,100);
 pp=linspace(-15,15,100);
[p,v]=meshgrid(pp,vv);
 f=0.4; d=v.^2./(260*(f+p))+0.55*v;
hold on; mesh(vv,v,d);


Si tu enlèves le "hold on" tu as de la 3D

Tu peux aussi utiliser plot3 :
Code: Tout sélectionner
figure(2)
 plot3(vv,v,d)
axis([0 100 0 100 0 250])
view(0,0)
grid 
figure(3)
 plot3(vv,v,d)
axis([0 100 0 100 0 250])
 view(10,45)
 grid

 

Retourner vers ✯✎ Supérieur

Qui est en ligne

Utilisateurs parcourant ce forum : Aucun utilisateur enregistré et 14 invités

Tu pars déja ?



Fais toi aider gratuitement sur Maths-forum !

Créé un compte en 1 minute et pose ta question dans le forum ;-)
Inscription gratuite

Identification

Pas encore inscrit ?

Ou identifiez-vous :

Inscription gratuite