Résolution d'équations différentielles linéaires, non-homogènes, à coefficients constants avec Scilab
http://fr.wikipedia.org/wiki/%C3%89quation_diff%C3%A9rentielle
http://en.wikipedia.org/wiki/Differential_equation
ODE http://en.wikipedia.org/wiki/Ordinary_differential_equation
Ordre 1
Description du problème
On souhaite résoudre l'équation différentielle suivante :y'+ b y = c
Dans notre exemple, on prend b=1 et c=1
On fixe y(0)=0 comme condition initiale.
On cherche donc la fonction y(x) solution de cette équation différentielle à l'aide de la méthode d'Euler.
Réponse
Téléchargez le code source Scilab répondant à ce problème (méthode d'Euler).Scilab comporte une fonction capable de résoudre des équations différentielles (ode) sans avoir besoin de programmer la méthode d'Euler (ou Runge-Kutta) à la main.
http://scilabsoft.inria.fr/product/man/html/fr/nonlinear/ode.htm
Téléchargez le code source Scilab répondant à ce problème (utilisation de la fonction ode de Scilab).
Remarques
ordre1Ordre 2
Description du problème
On souhaite résoudre l'équation différentielle suivante :y"+ b y' + c y = d
On fixe y(0)=0 et y'(0)=0 comme conditions initiales.
On cherche donc la fonction y(x) solution de cette équation différentielle.
Réponse
Téléchargez le code source Scilab répondant à ce problème (à l'aide de la méthode d'Euler).On peut aussi utiliser la fonction ode de Scilab.
La fonction ode nécessite de réécrire une équation du second ordre en un système de deux équations du premier ordre (voir la notion de représentation d'état en automatique et d'espace d'état).
On pose u1=y et u2=y'
On a bien sûr u1' = u2 (1)
u2' + b u2 + c u1 = d
soit u2' = d - b u2 - c u1 (2)
(1) et (2) sont les deux équations qui constituent le système du premier ordre à résoudre.
voir http://fr.wikipedia.org/wiki/M%C3%A9thode_des_diff%C3%A9rences_finies#Exemple_d.27abaissement_de_degr.C3.A9_de_d.C3.A9rivation
Téléchargez le code source Scilab répondant à ce problème (utilisation de la fonction ode de Scilab).
Remarques
On peut observer les 3 régimes :-
Cas 1 : Régime pseudo-périodique (DELTA<0)
ordre2_delta_neg.png-
Cas 2 : Régime critique (DELTA=0)
ordre2_delta_nul.png-
Cas 3 : Régime apériodique (DELTA>0)
ordre2_delta_pos.pngTous mes exemples
Obtenir le code source
Accès web
http://svn.berlios.de/viewvc/openphysic/scilab/math/equa_diffAccès anonyme
svn checkout svn://svn.berlios.de/openphysic/scilab/math/equa_diffAccès développeur
svn checkout svn+ssh://scls19fr@svn.berlios.de/svnroot/repos/openphysic/scilab/math/equa_diffEquations différentielles et physique
La résolution d'équations différentielles est souvent utile en physique :- Trajectoire d'un obus
- Oscillations d'une masse suspendue à un ressort
- Oscillations d'un pendule simple
- Mouvement d'une particule dans un champ E et/ou B
MethodeEuler
MethodeRungeKutta
ScilabEMMouvementParticule
ScilabMath
ScilabMathEDP
ScilabMathODE
ScilabMecaObus
ScilabMecaPendule
ScilabMecaRessort
ScilabSatellite
Voir aussi
- Résoudre des équations aux dérivés partielles (PDE ou EDP)- D'autres exemples de résolution d'équations différentielles
http://www.iecn.u-nancy.fr/~pincon/scilab/Doc/node81.html#SECTION00611000000000000000
- Systèmes dynamiques : http://www-rocq.inria.fr/scilab/gomez/papers/sistdynpdf.pdf
There are no comments on this page. [Add comment]