IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

MATLAB Discussion :

équation différentielle du second ordre ode23


Sujet :

MATLAB

  1. #1
    Membre à l'essai
    Inscrit en
    Avril 2009
    Messages
    13
    Détails du profil
    Informations forums :
    Inscription : Avril 2009
    Messages : 13
    Points : 12
    Points
    12
    Par défaut équation différentielle du second ordre ode23
    Bonjour,
    je suis assez débutant en Matlab et je cherche à résoudre une équation différentielle du 2eme ordre qui est la suivante:

    (1-x^2)y'' - x*y' + 49y =0

    avec y'=dy/dx
    y(x=0)=0
    y'(x=0)=-7

    et je dois tracer la courbe entre 0 et 1

    Après avoir fait des recherches sur internet je tombe souvent sur la fonction ode23 mais j'arrive même pas à l'utiliser pour un premier ordre . Ma question est la suivante si quelqu'un peux m'expliquer avec un exemple concret comment fonctionne la fonction ode23. Ou bien existe il une autre fonction pour résoudre une équation differentielle du deuxième ordre.

    Merci infiniment d'avoir prit le temps de me lire j'attends vos réponses avec impatience.

  2. #2
    Membre confirmé
    Avatar de Dam2227
    Inscrit en
    Juin 2007
    Messages
    343
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations forums :
    Inscription : Juin 2007
    Messages : 343
    Points : 487
    Points
    487
    Par défaut
    tu peux essayer ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    function bibed
     
    [X,Y] = ode45(@bibed2,[0:0.01:1],[0 -7]);
     
    plot(X,Y)
     
        function [dy]=bibed2(x,y)
            dy=zeros(2,1);
            dy(1)=y(2);                                     %y(1)=y     y(2)=y'     dy(1)=y'    dy(2)=y''
            dy(2)=(x*y(2)-49*y(1))/(1-x*x);
        end
    end
    Par contre, en 1, ta fonction diverge et devient infinie. Donc il faudra que tu t'arrêtes avant (0.99 dans ce cas)

    ++
    Matlab 7.14.0.739 (R2012a)
    C/C++, python, R, SQL, Pig, MR

    Ma philosophie: Ne rien faire, mais le faire bien.

Discussions similaires

  1. Réponses: 7
    Dernier message: 19/05/2008, 13h24
  2. Réponses: 2
    Dernier message: 22/11/2007, 14h58
  3. Equation différentielle du second ordre
    Par moustiqu3 dans le forum MATLAB
    Réponses: 1
    Dernier message: 21/05/2007, 09h38
  4. Réponses: 8
    Dernier message: 08/04/2007, 01h38
  5. Réponses: 1
    Dernier message: 08/12/2006, 17h13

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo