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

Signal Discussion :

la fonction "ode"


Sujet :

Signal

  1. #1
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 9
    Points : 1
    Points
    1
    Par défaut la fonction "ode"
    Bonjour,
    j'ai une question, si quelqu'un peut me repondre, s'il vous plait, pourquoi lors de l'utilisation de la fonction ode23 sur un fichier .txt de 4477 lignes, j'obtiens un vecteur beaucoup plu petit (809 lignes) ?
    Merci beaucoup par avance...c'est urgent que je me rends compte de ca...

  2. #2
    Membre émérite
    Homme Profil pro
    Inscrit en
    Mai 2008
    Messages
    2 040
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 2 040
    Points : 2 841
    Points
    2 841
    Par défaut
    Salut.
    j'obtiens un vecteur beaucoup plu petit (809 lignes) ?
    Quels paramètres mets-tu dans ode23 ?

  3. #3
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 9
    Points : 1
    Points
    1
    Par défaut
    le "tspan" (mes valeurs expérimentales pour le temps: les 4000 lignes dont je parlais)

  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!
    L'instruction ode23 sert à intégrer des équations différentielles ordinaires. Je ne vois pas le rapport avec des valeurs expérimentales. Alors, explique-nous complètement ton problème: ce que tu as, ce que tu cherches et comment tu envisages de le trouver.
    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
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 9
    Points : 1
    Points
    1
    Par défaut
    Oui, vous avez raison, j'ai pas dit ce que je veux. J'ai des valeurs expérimentaux de temps et perte de masse et je veux obtenir la variation de la dérivée de cette perte de masse avec le temps. je fais ça avez l'une des fonctions 'ode' appliqué à un set d'équations (linéaires en masse mais non linéaires en temps).
    En tout cas j'ai vu que il y un problème de résolution du système d'équations: j'obtenais des valeurs "NaN" et "-Inf". Un ami m'a conseillée de verifier ça et puis de révérifier le système d'équations. C'est là que j'y suis maintenant.

    En tout cas merci et je m'excuse pour ne pas etre claire dans ma demande. La prochaine fois j'y serais !

  6. #6
    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!
    Si je te comprends bien, tu as deux vecteurs de même longueur contenant respectivement les valeurs t1, t2, ... , tn du temps auquel tu as pris tes mesures, et les valeurs mesurées x1, x2, ... , xn, et tu cherches la dérivée dx/dt à chaque instant. Alors, encore quelques questions (en attendant peut-être d'autres!):
    • Est-ce que le graphe de x(t) est une courbe "lisse" ou est-ce qu'il a tendance à zigzaguer?
    • Est-ce que tu cherches une expression analytique ou plutôt des valeurs tabulées de la dérivée?

    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)

  7. #7
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 9
    Points : 1
    Points
    1
    Par défaut
    Bonjour,
    je vous répond à vos questions d'abord mais j'ai encore une à poser.

    - le graphe x(t) est une courbe presque lisse (j'ai eu des erreurs expérimentaux mais je les ai filtrés par l'algorithme de la moyenne glissante)
    - je cherche plutôt des valeurs tubulées de la dérivée afin de comparer ces valeurs avec ceux expérimentales

    Maintenant, ma question est la suivante:
    -pourquoi parfois (donc pas toujours) j'obtient des valeurs identiques de "dx/dt" pour des temps "t" différents lors d'utilisation de la fonction 'ode'

    Merci par avance !

  8. #8
    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!

    Comme ta courbe est assez lisse, le plus simple me semble de calculer un spline et de le dériver.

    En revanche, je ne comprend toujours pas ce que tu fais avec la fonction ode.

    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)

  9. #9
    Membre émérite
    Homme Profil pro
    Inscrit en
    Mai 2008
    Messages
    2 040
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 2 040
    Points : 2 841
    Points
    2 841
    Par défaut
    Salut.
    je ne comprend toujours pas ce que tu fais avec la fonction ode.
    FR a raison, ode sert à résoudre des équations différentielles !

  10. #10
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 9
    Points : 1
    Points
    1
    Par défaut
    Bonjour,

    la fonction 'ode' sert à résoudre des équations différentielles. Comme j'ai déjà mentionnée, se sont des équations linéaires en perte de masse et non linéaires en température.
    Par exemple elle ont la forme:
    dxi/dt=ki*exp(-consti/Ti)*xi avec i=nombre réel

    Est-ce que maintenant c'est plus clair

  11. #11
    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!
    C'est bien beau, ton équation, mais tu ne nous dis pas ce qui est connu et ce que tu veux calculer.
    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)

  12. #12
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 9
    Points : 1
    Points
    1
    Par défaut
    Pardon,
    je connais le x et le T , je veut le dx/dt qui en correspond

  13. #13
    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!
    Donc ton problème est un problème de dérivation d'une fonction et non d'équation différentielle. La fonction ode ne te servira donc à rien.
    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)

  14. #14
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 9
    Points : 1
    Points
    1
    Par défaut
    Bonsoir,
    désolée mais je comprend plus ce que vous me demandez. Une équation différentielle n'est pas une de type y(x)'=function(x) ?
    Moi je veux obtenir le x et le comparer avec mes valeurs expérimentales. J'ai une forme pour la fonction(x) qui a la forme que j'ai mentionnée dans les messages précédentes...
    C'est plus clair maintenant?

  15. #15
    Membre émérite
    Homme Profil pro
    Inscrit en
    Mai 2008
    Messages
    2 040
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 2 040
    Points : 2 841
    Points
    2 841
    Par défaut
    Salut.
    je connais le x et le T , je veut le dx/dt qui en correspond
    La solution est un lissage ou un filtrage prédictif (Kalman).
    Donne nous un échatillon de tes données.

  16. #16
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 9
    Points : 1
    Points
    1
    Par défaut
    Bonjour,

    donc des exemples de mes données sont:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    t=[0 5 10 15 ...] % sec
    x=[1 0.9 0.8 0.7...] % fraction massique
    T =[20 20.5 21.5 22.5 ...] % °C
    avec T=25+10*t (le T et le t sont liés entre eux)

  17. #17
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 9
    Points : 1
    Points
    1
    Par défaut
    J'ai pas fait attention de lier entre eux le T et t , mes excusez

  18. #18
    Membre émérite
    Homme Profil pro
    Inscrit en
    Mai 2008
    Messages
    2 040
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 2 040
    Points : 2 841
    Points
    2 841
    Par défaut
    Salut.
    T=25+10*t
    Ce n'est pas cohérent avec tes données ?

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