Equa Diff + temps
Répondre à la discussion
Affichage des résultats 1 à 7 sur 7

Equa Diff + temps



  1. #1
    invite681da5c3

    Equa Diff + temps


    ------

    Salut les matheux

    J'ai un soucis avec la résolution "finale" d'une variable, dans une équation différentiel, qui détermine un "état" du pneu, dans mon model de friction du pneu.

    j'ai utilisé le papier SAE-950311

    Les Variables:

    s = taux de glissement du pneu
    s' = dérivé de s dans le temps
    u = vitesse longitudinal ( connu de l'état du véhicule )
    B = constante ( parametre du pneu )
    R = rayon du pneu ( parametre du pneu )
    W = vitesse de rotation du pneu ( connu de l'état du véhicule )

    Je veux calculer s a chaque boucle de ma simulation ,chaque boucle intègre le temps de dt ( timestep ).

    D'apres le papier :

    s' + |u|/B * s = |u| - ( Rw * sign(u) ) / B

    Quand le véhicule est dans un état constant ( s'=0), on retrouve bien l'équation traditionelle s = 1 - Rw/u. le problème de cette équation et que pour u proche de zero et égal à zero elle n'est plus utilisable.

    u , R et W sont des états du pneu et ne sont pas une fonction du temps t,ils varient en fonction du terrain et des action du pilote,etc.

    Je pense donc que je peu simplifier l'écriture comme suit :

    s' + a.s = b , qui est un équation différentielle bien connue
    je connais s(t-dt)( calcul de la boucle précédente ) et s(0)=0 ( au début de la simulation ).

    la solution est donc normalement
    f(t) = Cst.exp( -a.t ) + b / a.

    A partir de la je coince pour trouve s(ti+1) , qui donc doit dépendre de s(ti)
    avec ti+1 = ti + dt.

    Normalement la solution est indépendante de s(0) = 0, enfin sinon je ne me vois pas stoker toutes les valeurs s(ti)

    Disons qu'a 33ans, mon Deug de maths/phys est un peu loin

    Merci par avance de votre aide.

    Seb

    -----

  2. #2
    invite681da5c3

    Re : Equa Diff + temps

    .. alors voila sur quoi j'arrive.. si quelq'un pouvait me corriger svp.
    On a
    s(ti+1) = s(ti) + s'(ti+1)*dt

    et s(t) = Cst.Exp(-a.t) + b / a ... ( résolution de l'équa diff ).

    Donc, si je calcul s'(t) ca devrait donner.

    s'(t) = -a . Cst. Exp( -a.t)

    Et la je coince de nouveau... je n'arrive pas a comprendre/interpreter cette solution

    pasque si je remplace, s(ti+1) = s(ti) - a.Cst.Exp(-a.ti ).dt

    t augmente toujours alors, et dt = timestep est fixe, je vais me retrouver avec des valeurs immense, je ne vois pas ou je fais mon erreur...

  3. #3
    ericcc

    Re : Equa Diff + temps

    Tu as résolu l'équation différentielle, donc tu connais s(t) pour toutes les valeurs de t. Il n'y a donc aucun besoin de faire des calculs supplémentaires.

    Pour chaque valeur de t, s vaut s(t) !

    Par contre tu n'as pas s(0)=0 avec ton expression ...

  4. #4
    invite681da5c3

    Re : Equa Diff + temps

    .. je crois que j'ai trouvé...
    s' + |u|/B * s = |u| - ( Rw * sign(u) ) / B

    s'(t) + a.s(t) = b avec
    a=|u|/B et b = |u| - ( Rw * sign(u) ) / B

    s(t) = Cst.Exp(-a.t)+b/a
    s'(t) = -a.Cst.Exp(-a.t)
    s'(t) = -a.s(t)-b/a

    s(t+dt) = s(t) + s'(t).dt
    s(t+dt) = s(t) + ( -a.s(t)-b/a ) . dt
    s(t+dt) = s(t) + a.s(t).dt - b/a.dt
    s(t+dt) = s(t) ( 1 + a.dt ) - b/a.dt

    voila je crois que j'ai réussi a trouver ce que je cherchais ... tout seul.. comme un grand

    Si quelqu'un voit une erreur , merci de me corriger et même si quelqu'un peu confirmer on calcul ca serait cool

    Seb.

  5. A voir en vidéo sur Futura
  6. #5
    invite681da5c3

    Re : Equa Diff + temps

    Citation Envoyé par ericcc Voir le message
    Tu as résolu l'équation différentielle, donc tu connais s(t) pour toutes les valeurs de t. Il n'y a donc aucun besoin de faire des calculs supplémentaires.
    Pour chaque valeur de t, s vaut s(t) !
    Par contre tu n'as pas s(0)=0 avec ton expression ...
    ha j'ai pas été clair , en fait, Je ne connais pas la Fonction s(t), fonction du temps, je ne connais pas la formulation de s en fonction de t , par contre je connais s(t0) à t0 =34,5 par exemple...

  7. #6
    invite681da5c3

    Re : Equa Diff + temps

    Citation Envoyé par ericcc Voir le message
    Tu as résolu l'équation différentielle, donc tu connais s(t) pour toutes les valeurs de t. Il n'y a donc aucun besoin de faire des calculs supplémentaires.

    Pour chaque valeur de t, s vaut s(t) !

    Par contre tu n'as pas s(0)=0 avec ton expression ...
    Je viens de comprendre ce que tu veux dire... d'autant que j'ai fait une grossiere erreure dans mes calculs précédents...

    En fait j'a vu trop compliqué alors que c'est tellement simple:

    s'(t) +a.s(t) = b
    (1) s'(t) = -a.s(t) +b
    Pour dt->0
    (2) s(t+dt)=s(t)+s'(t).dt
    (1)->(2)
    s(t+dt) = s(t) +( -a.s(t)+b ).dt
    s(t+dt) = s(t) -a.s(t).dt + b.dt
    s(t+dt) = (1-a.dt).s(t) + b.dt

    voila, c'est super simple.. a chaque boucle de la simulation je peux calculer le nouveau s(t+dt) en fonction de l'état de mon pneu donné par a et b, et de l'ancienne valeur de s = s(t) et du dt = timestep dans ma simulation.

    Seb

  8. #7
    ericcc

    Re : Equa Diff + temps

    En fait tu n'as absolument pas besoin de faire de simulation.

    Tu connais l'équation différentielle : s'+as=b et la condition initiale s(0)=0.

    Donc tu peux résoudre et tu trouves - POUR TOUTE VALEUR DE t :

    s(t)=b/a[1-exp(-at)]

    Par exemple si tu veux la valeur de s à t=30, tu remplaces et tu trouves

    s(30)=b/a[1-exp(-30a).

    Tu n'as donc pas besoin de faire une simulation pas par pas...

Discussions similaires

  1. Equa Diff
    Par invite0395b98d dans le forum Mathématiques du supérieur
    Réponses: 4
    Dernier message: 12/01/2007, 10h51
  2. equa diff en y'²
    Par invite6bf3a817 dans le forum Mathématiques du supérieur
    Réponses: 2
    Dernier message: 12/12/2006, 12h31
  3. Equa diff 2nd ordre ==>sys equa diff 1er ordre
    Par invite9a2a0be4 dans le forum Mathématiques du supérieur
    Réponses: 8
    Dernier message: 20/03/2006, 12h55
  4. équa diff
    Par invitee7bbd53a dans le forum Mathématiques du supérieur
    Réponses: 17
    Dernier message: 16/03/2006, 11h22