Revision 317482 of "Mathematica Home Edition/Origine Eq Dif" on frwikiversity{{Chapitre
| idfaculté = informatique
| précédent = [[../|sommaire]]
| suivant = [[../Proposition/]]
| niveau = 15
| numéro = 1
}}
== Présentation ==
Ce travail se base sur le premier chapitre du livre de '''"Frank Ayres Jr" "Equations différentielles " Serie Schaum'''.
Dans ce chapitre nous allons essayer de rechercher l'une des origines des équations différentielles.
== L'élimination des constantes ==
=== Etude 1 : ===
<math>x^2+y[x]^2-2Ax-2By[x]+C=0</math>
Éliminer les trois constantes A, B, C de cette équation. Cours : [http://www.dailymotion.com/video/xgmodt_eqd00a1_tech Vidéo 1]
{{Remarque
| contenu =
* L'élimination des trois constantes nous donne une équation différentielle.
* La solution de cette équation différentielle est l'équation avec les trois constants.
* On peut supposer qu'une équation différentielle possède plusieurs solutions.
}}
[[Fichier:Eqd00a2.ogv|thumb|Add caption here]]
Vérifions notre travail.
{{Boîte déroulante|titre=Le code Mathematica|contenu=
<pre>
Eliminons les constantes de cette équation :
x^2+y[x]^2-2A x-2B y[x]+C==0 (1)
En utilisant la fonction dérivé à trois reprises nous avons obtenu cette équation différentielle :
3y'[x]y''[x]^2-y'''[x](1+y'[x]^2)==0
Posons A = 0, B = 0 :
</pre>
}}
{{Boîte déroulante|titre=Le code Mathematica|contenu=
<pre>
Eliminons les constantes de cette équation :
x^2+y[x]^2-2A x-2B y[x]+C==0 (1)
En utilisant la fonction dérivé à trois reprises nous avons obtenu cette équation différentielle :
3y'[x]y''[x]^2-y'''[x](1+y'[x]^2)==0
Posons B = 0 :
</pre>
}}
=== Etude 2 : ===
[[Fichier:Eqd00b1.ogv|thumb|Add caption here]]
<math>y[x]= A x </math>
<math>y[x]= A x + B </math>
<math>y[x]= A x^2 + B x + C</math>
Éliminer les trois constantes A, B, C de ces équations.
{{Boîte déroulante|titre=Le code Mathematica|contenu=
<pre>
Trouver l'équation différentielle associée à cette équation :
y[x] == A x
y[x] == A x
A := y'[x]; y[x] == A x
A =.; y[x_] := A x; y[x] - x y'[x] == 0
y[x_] =.
</pre>
}}
{{Boîte déroulante|titre=Le code Mathematica|contenu=
<pre>
Trouver l'équation différentielle associée à cette équation :
y[x] == A (x^2 + x )
y[x] == A (x^2 + x)
y'[x] == A (1 + 2 x); A := y'[x]/(1 + 2 x); y[x] == A (x^2 + x)
A =.; y[x_] := A (x^2 + x); y[x] (1 + 2 x) - (x + x^2) y'[x] == 0
y[x_] =.
</pre>
}}
=== Etude 3 : ===
[[Fichier:Eqd00c1.ogv|thumb|Add caption here]]
<math>y[x]== A e^x</math>
<math>y[x]== A e^x + B</math>
Éliminer les deux constantes A, B de ces équations.
=== Etude 4 : ===
[[Fichier:Eqd00d1.ogv|thumb|Add caption here]]
<math>y[x]== A Sin[x]</math>
<math>y[x]== Sin[x+A]</math>
Éliminer les deux constantes A, B de ces équations.
=== Etude 5 : ===
[[Fichier:Eqd00e1.ogv|thumb|Add caption here]]
<math>x == A Sin[ y[x] + B]</math>
Éliminer les deux constantes A, B de cette équation.
=== Etude 6 : ===
[[Fichier:Eqd00f1.ogv|thumb|Add caption here]]
<math>Log[y[x]]=A x^2 + B</math>
Éliminer les deux constantes A, B de cette équation.
== Conclusion ==
Une des origines des équations différentielles est donc la tentative d''''éliminer les constantes''' d'une équation.
== Complément : Algèbre linéaire ==
Ce travail se base sur le premier chapitre du livre de '''Seymour Lipschutz et Marc Lipson Algèbre linéaire Schaum's '''.
=== Etude 7 : ===
Vidéo : [http://www.dailymotion.com/video/xs7ygp_mathematica-ml01a_tech Tutorial ml01a]<br />
{{Boîte déroulante|titre=Le code Mathematica|contenu=
<pre>
* 1 ***********************
Vecteur dans R^n :
n =RandomInteger[{1,4}];
u =RandomInteger[{1,10},{1,n}][[1]]
v =RandomInteger[{1,10},{1,n}][[1]]
Deux scalaires :
a =RandomInteger[{1,10}]
b =RandomInteger[{1,10}]
a u+b v
Réinitialisation des variables :
ClearAll["Global`*"]
* 2 ***********************
Soit deux vecteurs :
u= {x-y,x+y,z+1};
v= {1,2,3};
Calculons les valeurs de x, y, z pour que u = v:
Solve[{
u[[1]]==v[[1]],
u[[2]]==v[[2]],
u[[3]]==v[[3]]},{x,y,z}]
x= %[[1,1,2]];
y= %%[[1,2,2]];
z=%%%[[1,3,2]];
Vérifions :
u==v
Réinitialisation des variables :
ClearAll["Global`*"]
* 3 ***********************
Ecrire a :
a=RandomInteger[{1,10},{1,3}][[1]]
Comme combinaison linéaire de u, v w :
u =RandomInteger[{1,10},{1,3}][[1]]
v =RandomInteger[{1,10},{1,3}][[1]]
w =RandomInteger[{1,10},{1,3}][[1]]
C'est à dire :
a == u x+v y+w z
Calculons les valeurs de x, y, z pour que a = u x+v y+w z :
Solve[{
a[[1]]==%5[[2,1]],
a[[2]]==%5[[2,2]],
a[[3]]==%5[[2,3]]},{x,y,z}]
x= %[[1,1,2]];
y= %%[[1,2,2]];
z=%%%[[1,3,2]];
Vérifions :
a == u x+v y+w z
Réinitialisation des variables :
ClearAll["Global`*"]
</pre>
}}
{{Boîte déroulante|titre=Le code Mathematica|contenu=
<pre>
* 1 *************************
Produit scalaire :
u ={5,6,k}
v= {1,2,3}
Calculons la valeur de k pour que u et v soient orthogonaux :
u.v
k=Solve[%==0,{k}][[1,1,2]]
Si u et v sont orthogonaux, alors u v = 0:
u.v==0
ClearAll["Global`*"]
* 2 *************************
Produit scalaire :
n =RandomInteger[{1,4}];
u=(RandomInteger[{1,10},{1,n}][[1]]);
u[[RandomInteger[{1,n}]]]=k;
u
v =RandomInteger[{1,10},{1,n}][[1]]
Calculons la valeur de k pour que u et v soient orthogonaux :
u.v
Solve[%==0,{k}]
k= %[[1,1,2]];
Si u et v sont orthogonaux, alors u v = 0:
u.v==0
ClearAll["Global`*"]
</pre>
}}
{{Boîte déroulante|titre=Le code Mathematica|contenu=
<pre>
* 1 ***************************
Soit u un vecteur :
n =RandomInteger[{1,10}];
u =RandomInteger[{1,10},{1,n}][[1]]
Calculons le vecteur unitaire représentant u :
U = u/Sqrt[u.u]
U = u/Norm[u]
U =Normalize[u]
Alors UU :
Norm[U]
ClearAll["Global`*"]
* 2 ***************************
Soit deux vecteurs :
n =RandomInteger[{1,10}];
u =RandomInteger[{1,10},{1,n}][[1]]
v =RandomInteger[{1,10},{1,n}][[1]]
Calculons la distance entre a et b : Sqrt[Abs[a-x]^2+Abs[b-y]^2+Abs[c-z]^2]
EuclideanDistance[u,v]
Norm[u-v]
SquaredEuclideanDistance[u,v]
Calculons le cosinus de l'angle entre u et v :
Cos[a] ==u.v/(Sqrt[u.u]Sqrt[v.v])
Calculons la projection de u sur v :
U =(u.v/Sqrt[v.v]^2).v
Projection[u,v]
ClearAll["Global`*"]
</pre>
}}
{{Boîte déroulante|titre=Le code Mathematica|contenu=
<pre>
* 1 ****************************
Soit un point de H :
Mini3=3;
n=Mini3+RandomInteger[{1,4}];
p=RandomInteger[{1,10},{1,n}][[1]]
Soit un vecteur normal à H :
u =RandomInteger[{1,10},{1,n}][[1]]
Trouver l'équation de l'hyperplan H passant par p :
Sum[u[[i]]x[i],{i,1,n}]==k
Calculons la valeur de k :
k =Sum[u[[i]]p[[i]],{i,1,n}]
Soit :
Sum[u[[i]]x[i],{i,1,n}]==k
Réinitialisation des variables :
ClearAll["Global`*"]
* 2 ****************************
Soit un point de p :
n=3+RandomInteger[{1,4}];
p=RandomInteger[{1,10},{1,n}][[1]]
Soit une équation de H :
u =RandomInteger[{1,10},{1,n}][[1]];
Sum[u[[i]]x[i],{i,1,n}]==RandomInteger[{1,4}]
Trouver l'équation de l'hyperplan G parallèle à H passant par p :
Sum[u[[i]]x[i],{i,1,n}]==Sum[u[[i]]p[[i]],{i,1,n}]
Réinitialisation des variables :
ClearAll["Global`*"]
* 3 ****************************
Soit un point de Droite :
n=3+RandomInteger[{1,4}];
p=RandomInteger[{1,10},{1,n}][[1]]
Soit un vecteur de Droite :
u =RandomInteger[{1,10},{1,n}][[1]]
Trouver l'équation paramètrique de Droite :
Column[Table[x[i]==u[[i]]t+p[[i]],{i,1,n}]]
L[t]==Table[u[[i]]t+p[[i]],{i,1,n}]
Réinitialisation des variables :
ClearAll["Global`*"]
</pre>
}}
=== Etude 8 : ===
Vidéo : [http://www.dailymotion.com/video/xs9gz2_mathematica-ml01b_tech Tutorial ml01b]<br />
{{Boîte déroulante|titre=Le code Mathematica|contenu=
<pre>
Soit un courbe :
f[t_]={Cos[t],Sin[t]};
ParametricPlot[f[t],{t,0,Pi}]
Calculer les coordonnées de P pour t = a :
a=RandomReal[{0,Pi}]
f[a]
Calculer le vecteur unitaire tangent à f quand t = a :
Normalize[f'[a]]
Norm[%]
</pre>
}}
{{Boîte déroulante|titre=Le code Mathematica|contenu=
<pre>
Soit deux points :
n=3;
p=RandomInteger[{-10,10},{1,n}][[1]]
q=RandomInteger[{-10,10},{1,n}][[1]]
Trouver l'équation paramètrique de la droite passant par les points p et q :
pq=(q-p)
L[t]==Sum[(pq[[i]]t+p[[i]])FromCharacterCode[104+i],{i,1,n}]
Réinitialisation des variables :
ClearAll["Global`*"]
</pre>
}}
{{Boîte déroulante|titre=Le code Mathematica|contenu=
<pre>
* 1 *******************************************
Produit vectoriel.
Calculons les coordonnés d'un vecteur orthogonal à u[2] et u[3] :
n=3;
u[2]=RandomInteger[{-5,5},{1,n}][[1]]
u[3]=RandomInteger[{-5,5},{1,n}][[1]]
Construisons la matrice de travail :
Table[If[i==1,FromCharacterCode[104+j],u[i][[j]]],
{i,n},{j,n}]//MatrixForm
Introduisons les mineurs de la première ligne :
v={+Det[()],-Det[()],+Det[()]}
Vérifions :
u[2].v
u[3].v
* 2 *******************************************
Produit vectoriel.
Calculons les coordonnés d'un vecteur orthogonal à u[2] et u[3] :
n=3;
u[2]=RandomInteger[{-5,5},{1,n}][[1]]
u[3]=RandomInteger[{-5,5},{1,n}][[1]]
{5,5,-2}
{5,3,0}
Construisons la matrice de travail :
mat=Table[If[i==1,FromCharacterCode[104+j],u[i][[j]]],
{i,n},{j,n}];
mat//MatrixForm
Introduisons les mineurs de la première ligne :
v={
+Det[ mat[[2;;3,2;;3]]],
-Det[Join[mat[[2;;3,1;;1]],mat[[2;;3,3;;3]],2]],
+Det[ mat[[2;;3,1;;2]]]}
Vérifions :
u[2].v
u[3].v
</pre>
}}
=== Etude 9 : ===
Vidéo : [http://www.dailymotion.com/video/xsafd9_mathematica-ml01c_tech Tutorial ml01c]<br />
{{Boîte déroulante|titre=Le code Mathematica|contenu=
<pre>
* 1 *****************************************
Calculons les coordonnés d'un vecteur orthogonal à u[2] et u[3]et u[4] :
n=4;
u[2]=RandomInteger[{-5,5},{1,n}][[1]]
u[3]=RandomInteger[{-5,5},{1,n}][[1]]
u[4]=RandomInteger[{-5,5},{1,n}][[1]]
Construisons la matrice de travail :
Table[If[i==1,FromCharacterCode[104+j],u[i][[j]]],
{i,n},{j,n}]//MatrixForm
Introduisons les mineurs de la première ligne :
v={Det[()],-Det[()],+Det[()],-Det[()]}
Vérifions :
u[2].v
u[3].v
u[4].v
* 2 *****************************************
Calculons les coordonnés d'un vecteur orthogonal à u[2] et u[3] et u[4] :
n=4;
u[2]=RandomInteger[{-5,5},{1,n}][[1]]
u[3]=RandomInteger[{-5,5},{1,n}][[1]]
u[4]=RandomInteger[{-5,5},{1,n}][[1]]
Construisons la matrice de travail :
mat =Table[If[i==1,FromCharacterCode[104+j],u[i][[j]]],{i,n},{j,n}];
mat//MatrixForm
Introduisons les mineurs de la première ligne :
v={
+Det[ mat[[2;;4,2;;4]]],
-Det[Join[mat[[2;;4,1;;1]],mat[[2;;4,3;;4]],2]],
+Det[Join[mat[[2;;4,1;;2]],mat[[2;;4,4;;4]],2]],
-Det[ mat[[2;;4,1;;3]]]}
Vérifions :
u[2].v
u[3].v
u[4].v
* 3 *****************************************
Calculons les coordonnés d'un vecteur orthogonal à u[2] et u[3] et u[4] :
n=4;
u[2]=RandomInteger[{-5,5},{1,n}][[1]]
u[3]=RandomInteger[{-5,5},{1,n}][[1]]
u[4]=RandomInteger[{-5,5},{1,n}][[1]]
u[2]={27,-144,-136,51};
u[3]={1889,-2981,3096,-1161};
u[4]={-60,-24,57,116};
GCD[]
Construisons la matrice de travail :
mat =Table[If[i==1,FromCharacterCode[104+j],u[i][[j]]],{i,n},{j,n}];
mat//MatrixForm
Introduisons les mineurs de la première ligne :
v={
+Det[ mat[[2;;4,2;;4]]],
-Det[Join[mat[[2;;4,1;;1]],mat[[2;;4,3;;4]],2]],
+Det[Join[mat[[2;;4,1;;2]],mat[[2;;4,4;;4]],2]],
-Det[ mat[[2;;4,1;;3]]]}
Vérifions :
u[2].u[3]
u[2].u[4]
u[3].u[4]
</pre>
}}
{{Boîte déroulante|titre=Le code Mathematica|contenu=
<pre>
* 1 *****************************************
Calculons les coordonnés d'un vecteur orthogonal à u[2] et u[3]et u[4] :
n=5;
u[2]=RandomInteger[{-5,5},{1,n}][[1]]
u[3]=RandomInteger[{-5,5},{1,n}][[1]]
u[4]=RandomInteger[{-5,5},{1,n}][[1]]
u[5]=RandomInteger[{-5,5},{1,n}][[1]]
Construisons la matrice de travail :
Table[If[i==1,FromCharacterCode[104+j],u[i][[j]]],
{i,n},{j,n}]//MatrixForm
Introduisons les mineurs de la première ligne :
v={Det[()],-Det[()],Det[()],-Det[()],Det[()]}
Vérifions :
u[2].v
u[3].v
u[4].v
u[5].v
* 2 *****************************************
Calculons les coordonnés d'un vecteur orthogonal à u[2] et u[3] et u[4] et u[5] :
n=5;
u[2]=RandomInteger[{-5,5},{1,n}][[1]]
u[3]=RandomInteger[{-5,5},{1,n}][[1]]
u[4]=RandomInteger[{-5,5},{1,n}][[1]]
u[5]=RandomInteger[{-5,5},{1,n}][[1]]
Construisons la matrice de travail :
mat =Table[If[i==1,FromCharacterCode[104+j],u[i][[j]]],{i,n},{j,n}];
mat//MatrixForm
Introduisons les mineurs de la première ligne :
v={
+Det[ mat[[2;;5,2;;5]]],
-Det[Join[mat[[2;;5,1;;1]],mat[[2;;5,3;;5]],2]],
+Det[Join[mat[[2;;5,1;;2]],mat[[2;;5,4;;5]],2]],
-Det[Join[mat[[2;;5,1;;3]],mat[[2;;5,5;;5]],2]],
+Det[ mat[[2;;5,1;;4]]]}
Vérifions :
u[2].v
u[3].v
u[4].v
u[5].v
* 3 *****************************************
Calculons les coordonnés d'un vecteur orthogonal à u[2] et u[3] et u[4] et u[5] :
n=5;
u[2]=RandomInteger[{-5,5},{1,n}][[1]]
u[3]=RandomInteger[{-5,5},{1,n}][[1]]
u[4]=RandomInteger[{-5,5},{1,n}][[1]]
u[5]=RandomInteger[{-5,5},{1,n}][[1]]
u[2]={-20,832,793,454,274};
u[3]={346410,13329,-112504,149818,62178};
u[4]={5361,3248,3890,-3715,-14574};
u[5]={-1,-32,22,25,-8};
GCD[]
Construisons la matrice de travail :
mat =Table[If[i==1,FromCharacterCode[104+j],u[i][[j]]],{i,n},{j,n}];
mat//MatrixForm
Introduisons les mineurs de la première ligne :
v={
+Det[ mat[[2;;5,2;;5]]],
-Det[Join[mat[[2;;5,1;;1]],mat[[2;;5,3;;5]],2]],
+Det[Join[mat[[2;;5,1;;2]],mat[[2;;5,4;;5]],2]],
-Det[Join[mat[[2;;5,1;;3]],mat[[2;;5,5;;5]],2]],
+Det[ mat[[2;;5,1;;4]]]}
Vérifions :
u[2].u[3]
u[2].u[4]
u[2].u[5]
u[3].u[4]
u[3].u[5]
</pre>
}}All content in the above text box is licensed under the Creative Commons Attribution-ShareAlike license Version 4 and was originally sourced from https://fr.wikiversity.org/w/index.php?oldid=317482.
![]() ![]() This site is not affiliated with or endorsed in any way by the Wikimedia Foundation or any of its affiliates. In fact, we fucking despise them.
|