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 :

Méthode d'Euler implicite ou explicite


Sujet :

MATLAB

  1. #1
    Membre averti
    Inscrit en
    Novembre 2009
    Messages
    11
    Détails du profil
    Informations forums :
    Inscription : Novembre 2009
    Messages : 11
    Par défaut Méthode d'Euler implicite ou explicite
    Bonjour, alors voila j'ai un gros problème. Je dois mettre l'équation différentielle (pièce jointe) sous Matlab via Euler, je n'y arrive pas... Quelqu'un pourrait-il m'aider?
    Merci d'avance
    ps: petite erreur: il faut changer chaque signe de la 2ème équation du système, mettre les signes opposés

  2. #2
    Membre averti
    Inscrit en
    Novembre 2009
    Messages
    11
    Détails du profil
    Informations forums :
    Inscription : Novembre 2009
    Messages : 11
    Par défaut error: mtimes problem
    Bonjour, j'ai un problème avec mon code, je dois trouver une fréquence de résonance. J'ai basé ce code sur un autre qui fonctionnait, mais dans celui-ci il y a un problème mtimes... Quelqu'un pourrait-il m'éclairer svp
    Merci d'avance

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    % L'Èquation ‡ rÈsoudre est:
     
    %v''(t)+1/(R*C)*v'(t)+1/(L*C)*v(t)=A*W*cos(wt))
     
    h=0.0001;		
    t=0:h:2;        
    A=5;
    L=10^-4
    C=10^-9
    W=2*pi*500000:1000:2*pi*1000000
    R=100:100:1000000
     
    x(1,:)=[0 0];	
     
    for i=2:length(t),	
     
       k1=[x(i-1,2) A*W*(cos(W*t(i)))-R^(-1)*C^(-1)*x(i-1,2)-L^(-1)*C^(-1)*x(i-1,1)];	%Calculate derivatives;
       x(i,:)=x(i-1,:)+k1*h;		
    end
     
    plot(t,x(:,1),t,(cos(W*t(i)));

  3. #3
    Membre émérite
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    769
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Octobre 2007
    Messages : 769
    Par défaut
    L'erreur se trouve dans ta première ligne de code après le "for" :

    En effet, quand tu calcules R*C, il faut que tu prennes en compte que ce sont tous deux des vecteurs...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    size(L^(-1)*C^(-1)*x(i-1,1))  
    size(R^(-1)*C^(-1)*x(i-1,2))
    size(A*W*(cos(W*t(i))))
    je te conseille dans un premier temps de réaliser ta boucle sans faire varier trop de paramètres en même temps. Valides d'abord ton code avec des calculs de scalaires puis tu pourras passer au vecteur...

    Christophe

  4. #4
    Expert confirmé
    Avatar de duf42
    Homme Profil pro
    Formateur en informatique
    Inscrit en
    Novembre 2007
    Messages
    3 111
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Formateur en informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2007
    Messages : 3 111
    Par défaut
    Je présume que l'erreur que remonte MATLAB correspond à des dimensions qui ne correspondent pas?

    Je pense que dans ton calcul, tu devrais utiliser l'opérateur '.*' au lieu de '*' notamment pour les opérations sur R et W.

    Sinon pour débugger ton équation, essaye dans un premier temps de la "découper" en parties "élémentaires", ca devrait te permettre de cerner le problème plus facilement

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Appliquer une méthode d'Euler en 3D sur une EDP?
    Par Sebsheep dans le forum Mathématiques
    Réponses: 6
    Dernier message: 25/12/2007, 21h56
  2. Calculer une matrice avec la méthode de EULER
    Par lematlabeur dans le forum MATLAB
    Réponses: 7
    Dernier message: 05/11/2007, 19h22
  3. Réponses: 12
    Dernier message: 12/07/2007, 15h17
  4. [VBA]Intégrer des équa. diff. par méthode d'Euler
    Par bibinou_fr dans le forum Excel
    Réponses: 2
    Dernier message: 06/05/2007, 16h24
  5. méthode d'euler, équation différentielle
    Par totoflingueur dans le forum Algorithmes et structures de données
    Réponses: 2
    Dernier message: 21/04/2006, 00h44

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