Tangentes et dérivées partielles
-
- Modérateur général
- Messages : 8191
- Inscription : vendredi 06 janvier 2006, 15:32
- Statut actuel : Enseignant
- Localisation : Le Mans
- Contact :
Tangentes et dérivées partielles
Utilisateurs réguliers d'Asymptote, vous avez une occasion (unique?) de me convaincre que ce logiciel est bien adapté à la construction de figures et relativement simple d'emploi !
Dans le cadre de mon chapitre sur les dérivées partielles, je voudrais illustrer la notion en ajoutant à l'image que j'ai mise (créée avec K3DSurf) les tangentes dans la direction de x et dans la direction de y au point d'intersection des plans (quitte à avoir davantage de transparence et un autre angle de vue puisque j'ai fait ça à l'impro avec ce logiciel que je n'utilise quasiment jamais).
Dans le cadre de mon chapitre sur les dérivées partielles, je voudrais illustrer la notion en ajoutant à l'image que j'ai mise (créée avec K3DSurf) les tangentes dans la direction de x et dans la direction de y au point d'intersection des plans (quitte à avoir davantage de transparence et un autre angle de vue puisque j'ai fait ça à l'impro avec ce logiciel que je n'utilise quasiment jamais).
Pas d'aide par MP : les questions sont publiques, les réponses aussi.
Tu as apprécié l'aide qui t'a été fournie ? Alors n'hésite pas à rendre la pareille à quelqu'un d'autre.
Un peu d'autopromotion.
Tu as apprécié l'aide qui t'a été fournie ? Alors n'hésite pas à rendre la pareille à quelqu'un d'autre.
Un peu d'autopromotion.
Re: Tangentes et dérivées partielles
Bonjour, aussi simple qu'un calcul de dérivée partielle (ou presque) :
Je ne sais pas non plus si le code est optimal. il y a sûrement des améliorations à apporter.
Maurice
PS : Pour en revenir à ce sujet, est ce que
Je ne sais pas si c'est ce que tu voulais.
Je ne sais pas non plus si le code est optimal. il y a sûrement des améliorations à apporter.
Maurice
PS : Pour en revenir à ce sujet, est ce que
project(inter)
aurait pu servir ici à la place de pair interx=(inter.x,inter.y);
. Si oui comment ?Asymptote :
----> Démarrage rapide : http://cgmaths.fr/Atelier/Asymptote/Asymptote.html
----> Documentation 3D : http://www.mathco.tuxfamily.org et si ça ne marche pas, essayez la version pdf
----> Démarrage rapide : http://cgmaths.fr/Atelier/Asymptote/Asymptote.html
----> Documentation 3D : http://www.mathco.tuxfamily.org et si ça ne marche pas, essayez la version pdf
Re: Tangentes et dérivées partielles
Houla... bon bein alors, je vais essayer de trouver du temps cet après-midi pour plancher sur le sujet... et tenter de faire aussi une proposition. Simple ? On verra... je vais essayer de faire plus simple que Maurice en tout cas. ;-)guiguiche a écrit :Utilisateurs réguliers d'Asymptote, vous avez une occasion (unique?) de me convaincre que ce logiciel est bien adapté à la construction de figures et relativement simple d'emploi !
Index des fonctions Asymptote- Pour consulter ou me demander des exemples : Galerie et AsyForum - Notepad++, l'éditeur qu'il faut pour Asymptote sous Windows - TexWorks+LaTexMk+Asymptote
-
- Modérateur général
- Messages : 8191
- Inscription : vendredi 06 janvier 2006, 15:32
- Statut actuel : Enseignant
- Localisation : Le Mans
- Contact :
Re: Tangentes et dérivées partielles
Quand je regarde ce code, le mot simple n'est pas celui qui me vient en premier à l'espritmaurice a écrit :Bonjour, aussi simple qu'un calcul de dérivée partielle (ou presque)
Disons qu'étant totalement néophyte en langage Asymptote (et en C), je ne sais pas quels sont les paramètres à modifier pour obtenir des choses un peu différentes en moins de 5 minutes.
Ça ressemble à ce que j'espérais. Toutefois, 2 petites choses me chagrinent :maurice a écrit :Je ne sais pas si c'est ce que tu voulais.
- la trace de l'intersection avec le plan y=-1 est la même qu'elle soit en avant ou en arrière de la figure
- la tangente en y devrait être positive il me semble (arf non, j'en étais encore avec ma valeur positive de y sur mon graphique)
En tout cas merci pour cette proposition de code.
Pas d'aide par MP : les questions sont publiques, les réponses aussi.
Tu as apprécié l'aide qui t'a été fournie ? Alors n'hésite pas à rendre la pareille à quelqu'un d'autre.
Un peu d'autopromotion.
Tu as apprécié l'aide qui t'a été fournie ? Alors n'hésite pas à rendre la pareille à quelqu'un d'autre.
Un peu d'autopromotion.
Re: Tangentes et dérivées partielles
Bonjour,
Pour changer les équations de plans parallèles aux axes de coordonnées il faut juste changer les paramètres cx et cy.
Puis éventuellement choisir un bon angle de vue avec la sortie OpenGL (avec les options -V -render=4 puis la touche (c)).
Voici ce que donne cx=xy=1
si il n'y pas de points d'intersection entre les deux chemins, il faut agrandir la boite an augmentant les valeurs dans (lignes 13 et 14) :
Pour les pointillés il va falloir faire appel à un us spécialiste que moi.
Maurice
PS : à tester avec d'autres surfaces pour voir si le calcul des dérivées partielles se passe bien
Pour changer les équations de plans parallèles aux axes de coordonnées il faut juste changer les paramètres cx et cy.
Puis éventuellement choisir un bon angle de vue avec la sortie OpenGL (avec les options -V -render=4 puis la touche (c)).
Voici ce que donne cx=xy=1
Pour la surface, changer la ligne 18 :
Code : Tout sélectionner
real f(pair z) {return abs(z)^2;}
Code : Tout sélectionner
pair a=(-2,-2);
pair b=(2,2);
Maurice
PS : à tester avec d'autres surfaces pour voir si le calcul des dérivées partielles se passe bien
Dernière modification par maurice le mercredi 05 janvier 2011, 13:53, modifié 1 fois.
Asymptote :
----> Démarrage rapide : http://cgmaths.fr/Atelier/Asymptote/Asymptote.html
----> Documentation 3D : http://www.mathco.tuxfamily.org et si ça ne marche pas, essayez la version pdf
----> Démarrage rapide : http://cgmaths.fr/Atelier/Asymptote/Asymptote.html
----> Documentation 3D : http://www.mathco.tuxfamily.org et si ça ne marche pas, essayez la version pdf
Re: Tangentes et dérivées partielles
Code : Tout sélectionner
import graph3;
size(10cm);
currentprojection=orthographic((15,10,5),up=Z);
currentlight=light(5,2,0);
real f(real x, real y) {return x^2+y^2;}
real dfdx(real x, real y) {return 2*x;}
real dfdy(real x, real y) {return 2*y;}
triple F(pair t) {
real theta=t.x;
real r=t.y;
real x=r*cos(theta);
real y=r*sin(theta);
real z=f(x,y);
return (x,y,z);
}
triple pA=(1,2,f(1,2));
dot(pA,2bp+green);
real thmin=0, thmax=2pi, rmin=0, rmax=3;
surface s=surface(F,(thmin,rmin),(thmax,rmax),36,36,Spline);
surface p1=surface(plane(8X,8Z,pA-5X-4Z)),
p2=surface(plane(8Y,8Z,pA-6Y-4Z));
draw(s,blue);
draw(p1,red+opacity(.9));
draw(p2,green+opacity(.9));
real h=1;
draw(pA--pA+(h,0,dfdx(pA.x,0)*h),paleblue,Arrow3());
draw(pA--pA+(0,h,dfdy(0,pA.y)*h),paleblue,Arrow3());
limits(O,4X+5Y+12Z);
xaxis3(Label("$x$",1),Arrow3);
yaxis3(Label("$y$",1),Arrow3);
zaxis3(Label("$z$",1),Arrow3);
Dernière modification par GMaths le mercredi 05 janvier 2011, 14:30, modifié 1 fois.
Index des fonctions Asymptote- Pour consulter ou me demander des exemples : Galerie et AsyForum - Notepad++, l'éditeur qu'il faut pour Asymptote sous Windows - TexWorks+LaTexMk+Asymptote
Re: Tangentes et dérivées partielles
Une de mes tangentes semble incorrecte donc à revoir ... mais il faut déjà voir, si ce type de figure convient.
Index des fonctions Asymptote- Pour consulter ou me demander des exemples : Galerie et AsyForum - Notepad++, l'éditeur qu'il faut pour Asymptote sous Windows - TexWorks+LaTexMk+Asymptote
-
- Modérateur général
- Messages : 8191
- Inscription : vendredi 06 janvier 2006, 15:32
- Statut actuel : Enseignant
- Localisation : Le Mans
- Contact :
Re: Tangentes et dérivées partielles
Effectivement, on dirait bien qu'une tangente est fausse, pourtant, tu as bien "triché" en mettant dans le code les expressions des dérivées partielles.GMaths a écrit :Une de mes tangentes semble incorrecte donc à revoir ... mais il faut déjà voir, si ce type de figure convient.
La difficulté principale d'interprétation de ta figure est que les deux plans ne sont pas tronqués à la même hauteur que le paraboloïde donc la logique des couleurs est suspecte au premier regard.
Merci pour cette autre proposition.
Pas d'aide par MP : les questions sont publiques, les réponses aussi.
Tu as apprécié l'aide qui t'a été fournie ? Alors n'hésite pas à rendre la pareille à quelqu'un d'autre.
Un peu d'autopromotion.
Tu as apprécié l'aide qui t'a été fournie ? Alors n'hésite pas à rendre la pareille à quelqu'un d'autre.
Un peu d'autopromotion.
Re: Tangentes et dérivées partielles
La fatigue : voilà ce que c'est que de se coucher à 3h30 quand on se lève à 6h30.GMaths a écrit :Une de mes tangentes semble incorrecte donc à revoir ... mais il faut déjà voir, si ce type de figure convient.
Erreur grossière rectifiée.
Comme tu aspirais à du code simple, cela m'a semblé le plus simple. ;-)guiguiche a écrit :pourtant, tu as bien "triché" en mettant dans le code les expressions des dérivées partielles.
J'ai essayé d'améliorer un peu les choses.guiguiche a écrit :La difficulté principale d'interprétation de ta figure est que...
Index des fonctions Asymptote- Pour consulter ou me demander des exemples : Galerie et AsyForum - Notepad++, l'éditeur qu'il faut pour Asymptote sous Windows - TexWorks+LaTexMk+Asymptote
-
- Modérateur général
- Messages : 8191
- Inscription : vendredi 06 janvier 2006, 15:32
- Statut actuel : Enseignant
- Localisation : Le Mans
- Contact :
Re: Tangentes et dérivées partielles
Certes oui et ton code y contribue (surtout après le premier code et les explications de maurice qui ont dégrossi les choses).GMaths a écrit :Comme tu aspirais à du code simple, cela m'a semblé le plus simple. ;-)
C'est bien sympa cette figure avec le passage en cylindrique pour éviter les "coins" et elle est, à mon goût, plus lisible que la première.GMaths a écrit :J'ai essayé d'améliorer un peu les choses.guiguiche a écrit :La difficulté principale d'interprétation de ta figure est que...
Je commence à voir la logique de construction des éléments graphiques. Par contre, je n'ai pas compris les 8X, -5X-4Z, ... dans :
Code : Tout sélectionner
surface p1=surface(plane(8X,8Z,pA-5X-4Z)),
p2=surface(plane(8Y,8Z,pA-6Y-4Z));
Pas d'aide par MP : les questions sont publiques, les réponses aussi.
Tu as apprécié l'aide qui t'a été fournie ? Alors n'hésite pas à rendre la pareille à quelqu'un d'autre.
Un peu d'autopromotion.
Tu as apprécié l'aide qui t'a été fournie ? Alors n'hésite pas à rendre la pareille à quelqu'un d'autre.
Un peu d'autopromotion.
A
Voir ici : http://marris.org/asymptote/Positions_r ... index.html pour comprendre plane : il faut fournir deux vecteurs et un point.guiguiche a écrit :Par contre, je n'ai pas compris les 8X, -5X-4Z, ... dans :Code : Tout sélectionner
surface p1=surface(plane(8X,8Z,pA-5X-4Z)), p2=surface(plane(8Y,8Z,pA-6Y-4Z));
- pA-6Y-4Z, c'est l'image de pA par la translation de vecteur $\vec{u}(0;-6;-4)$
- 8Y est le vecteur $\vec{v_1}(0;8;0)$
- 8Z est le vecteur $\vec{v_2}(0;0;8)$
Index des fonctions Asymptote- Pour consulter ou me demander des exemples : Galerie et AsyForum - Notepad++, l'éditeur qu'il faut pour Asymptote sous Windows - TexWorks+LaTexMk+Asymptote
-
- Modérateur général
- Messages : 8191
- Inscription : vendredi 06 janvier 2006, 15:32
- Statut actuel : Enseignant
- Localisation : Le Mans
- Contact :
Re: Tangentes et dérivées partielles
@maurice
J'ai mis du temps à comprendre pourquoi ton :
calculait x^2+y^2 (le temps que je retienne que "pair" désigne un couple)
J'ai mis du temps à comprendre pourquoi ton :
Code : Tout sélectionner
real f(pair z) {return abs(z)^2;}
Oui, mais il va déjà falloir que je configure convenablement notepad++, notamment la coloration syntaxique (malgré les nombreux renvois de GIYF sur le forum, je ne m'en sors pas pour le moment).maurice a écrit :PS : à tester avec d'autres surfaces pour voir si le calcul des dérivées partielles se passe bien
Pas d'aide par MP : les questions sont publiques, les réponses aussi.
Tu as apprécié l'aide qui t'a été fournie ? Alors n'hésite pas à rendre la pareille à quelqu'un d'autre.
Un peu d'autopromotion.
Tu as apprécié l'aide qui t'a été fournie ? Alors n'hésite pas à rendre la pareille à quelqu'un d'autre.
Un peu d'autopromotion.
Re: Tangentes et dérivées partielles
N'est-ce pas vite réglé avec l'export import ? Il suffit de demander à quelqu'un, non ?guiguiche a écrit :Oui, mais il va déjà falloir que je configure convenablement notepad++, notamment la coloration syntaxique
----------------
Edition du 29/12/11 : Tutoriel sur Notepad++, l'éditeur qu'il faut sous Windows pour éditer, colorer et compiler du code Asymptote
Dernière modification par GMaths le jeudi 29 décembre 2011, 15:23, modifié 1 fois.
Index des fonctions Asymptote- Pour consulter ou me demander des exemples : Galerie et AsyForum - Notepad++, l'éditeur qu'il faut pour Asymptote sous Windows - TexWorks+LaTexMk+Asymptote
-
- Modérateur général
- Messages : 8191
- Inscription : vendredi 06 janvier 2006, 15:32
- Statut actuel : Enseignant
- Localisation : Le Mans
- Contact :
Re: Tangentes et dérivées partielles
J'ai déjà regardé dans ce menu : pas d'asy par défaut et quand je mets asy dans la case puis clique sur import, je ne vois pas bien ce que je peux choisir (pas même dans le dossier asymptote) !
Pas d'aide par MP : les questions sont publiques, les réponses aussi.
Tu as apprécié l'aide qui t'a été fournie ? Alors n'hésite pas à rendre la pareille à quelqu'un d'autre.
Un peu d'autopromotion.
Tu as apprécié l'aide qui t'a été fournie ? Alors n'hésite pas à rendre la pareille à quelqu'un d'autre.
Un peu d'autopromotion.
Re: Tangentes et dérivées partielles
;-)
Index des fonctions Asymptote- Pour consulter ou me demander des exemples : Galerie et AsyForum - Notepad++, l'éditeur qu'il faut pour Asymptote sous Windows - TexWorks+LaTexMk+Asymptote
-
- Modérateur général
- Messages : 8191
- Inscription : vendredi 06 janvier 2006, 15:32
- Statut actuel : Enseignant
- Localisation : Le Mans
- Contact :
Re: Tangentes et dérivées partielles
C'est sûr que c'est tout de suite mieux avec le bon fichier xml :D
Merci.
Merci.
Pas d'aide par MP : les questions sont publiques, les réponses aussi.
Tu as apprécié l'aide qui t'a été fournie ? Alors n'hésite pas à rendre la pareille à quelqu'un d'autre.
Un peu d'autopromotion.
Tu as apprécié l'aide qui t'a été fournie ? Alors n'hésite pas à rendre la pareille à quelqu'un d'autre.
Un peu d'autopromotion.
Re: Tangentes et dérivées partielles
Pardon, d'une manière générale, pair désigne un couple de réels et plus précisément un nombre complexe, triple un triplet de réels.guiguiche a écrit :@maurice
J'ai mis du temps à comprendre pourquoi ton :calculait x^2+y^2 (le temps que je retienne que "pair" désigne un couple)Code : Tout sélectionner
real f(pair z) {return abs(z)^2;}
Si z est de type z, z.x est son abscisse, z.y est son ordonnée (pour un triple a, il y a a.x, a.y et a.z)
Le produit de deux pairs correspond a la multiplication complexe, abs (z) est le module de z.
maurice a écrit :PS : à tester avec d'autres surfaces pour voir si le calcul des dérivées partielles se passe bien
Ca à l'air de marcher.
Le premier code a été un peu modifié (intersection des plans et de la surface).
Moyennant des petites modif, ça pourrait aller dans pas mal de cas.
Maurice
Edit 1 : en fait ca ne marche pas, les chemins ne collent pas à la surface.
Asymptote :
----> Démarrage rapide : http://cgmaths.fr/Atelier/Asymptote/Asymptote.html
----> Documentation 3D : http://www.mathco.tuxfamily.org et si ça ne marche pas, essayez la version pdf
----> Démarrage rapide : http://cgmaths.fr/Atelier/Asymptote/Asymptote.html
----> Documentation 3D : http://www.mathco.tuxfamily.org et si ça ne marche pas, essayez la version pdf
-
- Modérateur général
- Messages : 8191
- Inscription : vendredi 06 janvier 2006, 15:32
- Statut actuel : Enseignant
- Localisation : Le Mans
- Contact :
Re: Tangentes et dérivées partielles
Et comment contourne-t-on le problème d'une division par 0, par exemple f(x,y)=x*y/(x^2+y^2), sachant qu'en plus je voudrais ajouter f(0,0)=0 et, bien sûr, représenter les dérivées partielles en (0,0) ?
Edit : je viens de voir une possibilité sur ta figure, maurice, en ce qui concerne la division par 0
Edit : je viens de voir une possibilité sur ta figure, maurice, en ce qui concerne la division par 0
Pas d'aide par MP : les questions sont publiques, les réponses aussi.
Tu as apprécié l'aide qui t'a été fournie ? Alors n'hésite pas à rendre la pareille à quelqu'un d'autre.
Un peu d'autopromotion.
Tu as apprécié l'aide qui t'a été fournie ? Alors n'hésite pas à rendre la pareille à quelqu'un d'autre.
Un peu d'autopromotion.
-
- Modérateur spécialisé
- Messages : 2293
- Inscription : lundi 12 mars 2007, 11:20
- Localisation : Rouen
Re: Tangentes et dérivées partielles
Hy
Pour ces questions de calcul de dérivée, si on a l'expression alors il ne faut pas
s'en priver. Les calculs approchés réservent parfois des surprises, alors pourquoi
se compliquer la vie ?
O.G.
Pour ces questions de calcul de dérivée, si on a l'expression alors il ne faut pas
s'en priver. Les calculs approchés réservent parfois des surprises, alors pourquoi
se compliquer la vie ?
O.G.
Re: Tangentes et dérivées partielles
Une version sans les dérivées partielles.
On peut changer a et b.
Je n'ai pas essayé de changement de fonction f.
Edition :
Si on veut changer f, il faudra faire des modifications.
Un exemple :
On peut changer a et b.
Je n'ai pas essayé de changement de fonction f.
Code : Tout sélectionner
import graph3;
import contour;
size(10cm);
currentprojection=orthographic((15,10,5),up=Z);
currentlight=light(5,2,0);
real f(real x, real y) {return x^2+y^2;}
triple F(pair t) {
real theta=t.x;
real r=t.y;
real x=r*cos(theta);
real y=r*sin(theta);
real z=f(x,y);
return (x,y,z);
}
real a=2, b=-.5; // P1 : x=a P2 : x=b
triple pA=(a,b,f(a,b));
dot(pA,2bp+green);
real thmin=0, thmax=2pi, rmin=0, rmax=3;
surface s=surface(F,(thmin,rmin),(thmax,rmax),36,36,Spline);
surface p1=surface(plane(8X,8Z,(0,pA.y,1)-4X)),
p2=surface(plane(8Y,8Z,(pA.x,0,1)-4Y));
draw(s,blue);
draw(p1,red+opacity(.9));
draw(p2,green+opacity(.9));
real h=10; // hauteur des paraboles
real gx(pair z) {return z.x-a;}
path3 para1=lift(f,contour(gx,(a-.1,-sqrt(h-a^2)),(a+.1,sqrt(h-a^2)),new real[]{0}))[0][0];
draw(para1,.5bp+green);
real gy(pair z) {return z.y-b;}
path3 para2=lift(f,contour(gy,(-sqrt(h-b^2),b-.1),(sqrt(h-b^2),b+.1),new real[]{0}))[0][0];
draw(para2,.5bp+red);
draw(pA--pA-2*dir(para1,intersections(para1,p1)[0][0]),paleblue,Arrow3());
draw(pA--pA+2*dir(para2,intersections(para2,p2)[0][0]),paleblue,Arrow3());
limits(O,4X+5Y+12Z);
xaxis3(Label("$x$",1),Arrow3);
yaxis3(Label("$y$",1),Arrow3);
zaxis3(Label("$z$",1),Arrow3);
Edition :
Si on veut changer f, il faudra faire des modifications.
Un exemple :
Code : Tout sélectionner
import graph3;
import contour;
size(10cm);
currentprojection=orthographic((8,5,15),up=Z);
currentlight=light(5,2,3);
real f(real x, real y) {
if(x==0 && y==0) return 0;
else return x*y/(x^2+y^2);
}
triple F(pair t) {
real theta=t.x;
real r=t.y;
real x=r*cos(theta);
real y=r*sin(theta);
real z=f(x,y);
return (x,y,z);
}
real a=.5, b=2; // P1 : x=a P2 : x=b
triple pA=(a,b,f(a,b));
dot(pA,2bp+green);
real thmin=0, thmax=2pi, rmin=0, rmax=4;
surface s=surface(F,(thmin,rmin),(thmax,rmax),72,72,Spline);
surface p1=surface(plane(8X,4Z,(0,pA.y,-2)-4X)),
p2=surface(plane(8Y,4Z,(pA.x,0,-2)-4Y));
draw(s,blue,light(0,0,10));
draw(p1,red+opacity(.9));
draw(p2,green+opacity(.9));
real gx(pair z) {return z.x-a;}
path3 para1=lift(f,contour(gx,(a-.1,-4),(a+.1,4),new real[]{0}))[0][0];
draw(para1,.5bp+green);
real gy(pair z) {return z.y-b;}
path3 para2=lift(f,contour(gy,(-4,b-.1),(4,b+.1),new real[]{0}))[0][0];
draw(para2,.5bp+red);
draw(pA--pA-3*dir(para1,intersections(para1,p1)[0][0]),paleblue,Arrow3());
draw(pA--pA+3*dir(para2,intersections(para2,p2)[0][0]),paleblue,Arrow3());
limits(O,4X+5Y+3Z);
xaxis3(Label("$x$",1),Arrow3);
yaxis3(Label("$y$",1),Arrow3);
zaxis3(Label("$z$",1),Arrow3);
Index des fonctions Asymptote- Pour consulter ou me demander des exemples : Galerie et AsyForum - Notepad++, l'éditeur qu'il faut pour Asymptote sous Windows - TexWorks+LaTexMk+Asymptote
-
- Sujets similaires
- Réponses
- Vues
- Dernier message
-
- 3 Réponses
- 2500 Vues
-
Dernier message par bulledesavon