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

Calcul scientifique Python Discussion :

RLC méthode d'Euler (Python)


Sujet :

Calcul scientifique Python

  1. #1
    Nouveau Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2014
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vaucluse (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2014
    Messages : 2
    Points : 1
    Points
    1
    Par défaut RLC méthode d'Euler (Python)
    Bonsoir ,

    Je vous contactes car je n'arrive pas à implémenter la boucle permettant de résoudre l’équation différentielle par la méthode d'EULER suivante :
    q ̈ + ω/Q*q ̇ + ω^2*q = F ( t ) (équation différentielle d'ordre 2 RLC)
    Quelqu'un peux t'il m'aider à l'écriture du programme sous Python.
    Merci !

  2. #2
    Expert éminent
    Avatar de tyrtamos
    Homme Profil pro
    Retraité
    Inscrit en
    Décembre 2007
    Messages
    4 462
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Décembre 2007
    Messages : 4 462
    Points : 9 249
    Points
    9 249
    Billets dans le blog
    6
    Par défaut
    Bonjour,

    Avec aussi peu d'infos, tu risques d'attendre les réponses un certain temps...

    Comme ce n'est pas un forum de maths, et que pour certains d'entre nous les maths font partie d'un passé lointain, il faudrait que tu donnes plus d'informations sur la nature des éléments de l'équation différentielle à résoudre: q? ω? Q? F? t? Conditions initiales? Intervalle de résolution? Etc...

    Ensuite, à part de te donner un lien sur la méthode d'Euler (https://fr.wikipedia.org/wiki/M%C3%A9thode_d%27Euler), on peut t'aider à améliorer ton code à condition que tu commences par montrer ce que tu as déjà fait.
    Un expert est une personne qui a fait toutes les erreurs qui peuvent être faites, dans un domaine étroit... (Niels Bohr)
    Mes recettes python: http://www.jpvweb.com

  3. #3
    Nouveau Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2014
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vaucluse (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2014
    Messages : 2
    Points : 1
    Points
    1
    Par défaut RE:RLC
    Salut ,
    Tout d'abord merci pour ta réponse , et désolé en effet , alors w est la pulsation propre qui est un paramètre fixé , Q est le facteur de qualité que l'on doit faire varié (Q=1/2 , Q>1/2,Q<1/2) .Le problème est que j'ai un programme pour des équation du second ordre (par la méthode d'Euler) mais je n'arrive pas à l'adapté à mon équation différentielle, et je dois tout d'abord résoudre l 'équation sans second membre .
    Voici mon programme:
    import numpy as np

    Code python : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    def euler (a,b,Phi,y0,n):
        x = np.linspace(a,b,n+1)
        y = np.empty(n+1,dtype='f')
        y[0] = y0
        pas_integra = (b-a)/n
        for i in range (1,n+1):
            y[i] = y[i-1]+pas_integra*Phi(x[i-1],y[i-1])
        return(x,y)

  4. #4
    Expert éminent
    Avatar de tyrtamos
    Homme Profil pro
    Retraité
    Inscrit en
    Décembre 2007
    Messages
    4 462
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Décembre 2007
    Messages : 4 462
    Points : 9 249
    Points
    9 249
    Billets dans le blog
    6
    Par défaut
    Quand tu publies un code ici, il faut absolument que tu utilises les "tags" de code sinon, les indentations ne sont pas conservés, et ça rend ce code inutilisable. On fait ça avec le '#' en haut et à droite de la fenêtre d'édition des messages. Voilà ton code correctement édité:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    def euler (a,b,Phi,y0,n):
        x = np.linspace(a,b,n+1)
        y = np.empty(n+1,dtype='f')
        y[0] = y0
        pas_integra = (b-a)/n
        for i in range (1,n+1):
            y[i] = y[i-1]+pas_integra*Phi(x[i-1],y[i-1])
        return(x,y)
    Tu dis que "je dois tout d'abord résoudre l 'équation sans second membre". Est-ce que ça veut dire que l'équation à résoudre est (avec q = fonction de t):

    q ̈ + ω/Q*q ̇ + ω^2*q = 0
    Est-ce que le problème que tu dois résoudre s'apparente à celui-là: http://www.lerepairedessciences.fr/t..._equa_diff.pdf ? Si oui, est-ce que la résolution qui en est faite te suffit?

    Le code que tu donnes ci-dessus a des arguments (a, b, Phi, y0, n) qui ne correspondent pas à ton équation (q, ω, Q): peux-tu faire le lien?

    Il reste encore à définir les conditions initiales et la plage dans laquelle tu veux calculer la fonction cherchée: on ne peut pas coder ce qu'on ne comprend pas.

    [edit] voir aussi ce document très intéressant: http://mth.uct.ac.za/~lab/chap4/chap4.pdf qui en plus possède du code Python. Comme j'ai vu, la méthode d'Euler concerne la résolution des équations différentielles du 1er ordre. Comme la tienne est du 2ème ordre, il se trouve qu'il y a une astuce pour appliquer quand même la méthode d'Euler en la transformant en 2 équations du 1er ordre.
    Un expert est une personne qui a fait toutes les erreurs qui peuvent être faites, dans un domaine étroit... (Niels Bohr)
    Mes recettes python: http://www.jpvweb.com

Discussions similaires

  1. Problème Méthode d'Euler
    Par Fleur du Pays dans le forum MATLAB
    Réponses: 15
    Dernier message: 31/03/2009, 19h30
  2. 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, 20h56
  3. Calculer une matrice avec la méthode de EULER
    Par lematlabeur dans le forum MATLAB
    Réponses: 7
    Dernier message: 05/11/2007, 18h22
  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, 15h24
  5. méthode d'euler, équation différentielle
    Par totoflingueur dans le forum Algorithmes et structures de données
    Réponses: 2
    Dernier message: 20/04/2006, 23h44

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