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

Simulink Discussion :

Variable ou fixed step


Sujet :

Simulink

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    29
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Avril 2009
    Messages : 29
    Points : 22
    Points
    22
    Par défaut Variable ou fixed step
    Bonjour tout le monde,

    je suis en train de faire des simulations sur un modèle d'éolien, en utilisant variable step, mais c'est plutôt lent. J'ai essayé de travailler avec Fixed step, mais le système plante.

    Je souhaiterais avoir des renseignements sur les avantages et les inconvénients de variable et fixed step.

    Merci d'avance

  2. #2
    Futur Membre du Club
    Inscrit en
    Juin 2010
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Juin 2010
    Messages : 7
    Points : 7
    Points
    7
    Par défaut Pas fixe Pas variable
    Je suppose que tu es dans simulink ou alors aavec les ode de matlab.

    La différence entre pas fixe et pas variable réside dans l'adaptation du pas (diminution ou augmentation) suivant que ce que tu cherche à intégrer est régulier ou non. En gros une méthode à pas variable va comparer une méthode d'ordre n et d'ordre n+1 (par exempel une intégration "rectangle" et une intégration "trapèze"), si les deux résultat sont trop proche, il augmente le pas et refait le calcul, si l'écart est trop grand, il réduit le pas de refait le calcul.

    Pour savoir s'il doit diminuer ou augmenter le pas, Matlab (et simulink) utilise des paramètre 'RelTol' (tolérence relation) et 'AbsTol' (tolérence absolue). Il faut jouer avec ces paramètres si la méthode à pas variable ne se termine jamais (typiquement il essaye de diminuer le pas jusqu'a avoir un pas ridiculement petit).

    J'espère que j'ai répondu à tes attentes, c'est assez difficile de faire un cours sur la résolution d'ode par différence finies :o

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    29
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Avril 2009
    Messages : 29
    Points : 22
    Points
    22
    Par défaut
    Citation Envoyé par LordHarryPotter Voir le message
    Je suppose que tu es dans simulink ou alors aavec les ode de matlab.

    La différence entre pas fixe et pas variable réside dans l'adaptation du pas (diminution ou augmentation) suivant que ce que tu cherche à intégrer est régulier ou non. En gros une méthode à pas variable va comparer une méthode d'ordre n et d'ordre n+1 (par exempel une intégration "rectangle" et une intégration "trapèze"), si les deux résultat sont trop proche, il augmente le pas et refait le calcul, si l'écart est trop grand, il réduit le pas de refait le calcul.

    Pour savoir s'il doit diminuer ou augmenter le pas, Matlab (et simulink) utilise des paramètre 'RelTol' (tolérence relation) et 'AbsTol' (tolérence absolue). Il faut jouer avec ces paramètres si la méthode à pas variable ne se termine jamais (typiquement il essaye de diminuer le pas jusqu'a avoir un pas ridiculement petit).

    J'espère que j'ai répondu à tes attentes, c'est assez difficile de faire un cours sur la résolution d'ode par différence finies :o
    Merci pour ta réponse, qui m'a aidé à comprendre mieux le fonctionnement des Solver Simulink. C'est un peu lent quand je lance mes simulations (sur Simulink) avec Variable Step.
    Quand j'utilise Fixed Step, ma simulation se plante.

  4. #4
    Rédacteur

    Homme Profil pro
    Comme retraité, des masses
    Inscrit en
    Avril 2007
    Messages
    2 978
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 83
    Localisation : Suisse

    Informations professionnelles :
    Activité : Comme retraité, des masses
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2007
    Messages : 2 978
    Points : 5 179
    Points
    5 179
    Par défaut
    Salut!
    Avant toute chose, tu dois essayer de savoir si ton système est raide (stiff).
    Jean-Marc Blanc
    Calcul numérique de processus industriels
    Formation, conseil, développement

    Point n'est besoin d'espérer pour entreprendre, ni de réussir pour persévérer. (Guillaume le Taiseux)

  5. #5
    Futur Membre du Club
    Inscrit en
    Juin 2010
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Juin 2010
    Messages : 7
    Points : 7
    Points
    7
    Par défaut
    Citation Envoyé par FR119492 Voir le message
    Salut!
    Avant toute chose, tu dois essayer de savoir si ton système est raide (stiff).
    Jean-Marc Blanc
    Exactement : si ton système est raide, tu as tout intéret à faire du pas variable. Par contre, joue avec RelTol et AbsTol. Ha je crois que tu peux également imposé un pas minimum, je regarde ... oui, donc tu imposes un pas minimum via "Min step size" sous simulink ou rien sur matlab et la commande odeset.

Discussions similaires

  1. Convertir un modèle de variable step vers fixed step
    Par espoir1976 dans le forum Simulink
    Réponses: 9
    Dernier message: 28/12/2012, 00h57
  2. Changer chaines longueur variable en fixe
    Par cyr.odi dans le forum Langage
    Réponses: 11
    Dernier message: 13/02/2008, 19h24
  3. Réponses: 2
    Dernier message: 25/09/2007, 08h55
  4. variable globale fixée dans un registre
    Par gorgonite dans le forum C
    Réponses: 11
    Dernier message: 02/07/2007, 13h42

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