a l'aide de Geogebra,je tente de modeliser un systeme de masse glissante sur un plan incliné.
celle ci est retenu par un ressort, et je tiens compte de la force de frottement visqueux sur le plan (comme si le plan etait graissé).
si j'avais bossé correctement, ma courbe parametrique aurait du se trouver a la surface du plan incliné.
hors elle se trouve dans la partie negative.
de plus son angle ne correspond pas a la pente, et 3em PB si j'augmente la vitesse initiale v0
alors la courbe parametrique au lieu d'etre une droite se transforme en spirale 2D !
mon erreur est peut etre deja dans mes equations de depart,
ou alors dans mes calculs de constantes du aux conditions initiales (ou les deux !)
je voudrais savoir si vous etes d'accord avec mes equations de départ.
j'avoue que le fait que l'axe des y soit renversé par rapport a l'effet de la gravité me fait faire des noeuds au cerveau
(x_r, y_r ) est le point de repos du ressort
modele masse plan incliné
- Code: Tout sélectionner
# equations de Newton projection sur x (la force de rappel du ressort est sens negatif quand x croit,
# et la gravité decomposée avec sa composante sur x du a la retroaction du plan agit sens positif)
# l'amortissement est dans le sens opposé de la vitesse
# Fa_x = Fb_x + Fk_x + Fg_x avec Fa_x= m*x" ,Fb_x=-b*x', Fk_x= -k*cos(α)*(x-x_r) , Fg_x=m*g*cos(pi/2 - α)*cos(α)
# m*x" + b*x' + k*cos(α)*(x-x_r) - (m*g*cos(pi/2 - α))*cos(α) = 0
# m*x" + b*x' + k*cos(α)*(x-x_r) - (m*g/2)* sin(2 α)=0
# equations de Newton projection sur y (la force de rappel du ressort est cette fois sens positif, et la gravité sens negatif)
# l'amortissement b est dans le sens opposé a la vitesse
# Fa_y = Fb_y + Fk_y + Fg_y avec Fa_y= m*y" ,Fb_y=-b*y', Fk_y= k*sin(α)*(y-y_r) ,
# Fg_y=-(m*g*cos(pi/2 - α))*sin(α) (projection Fg_{pp} sur y)
# m*y" + b*y' - k*sin(α)*(y-y_r) + (m*g*cos(pi/2 - α))*sin(α)=0
# ODE's standard forme
#x" + (b/m)*x' + (k*cos(α)/m)*x = ((k*cos(α)/m)*x_r + (g * sin(2 α)/2) )
#y" + (b/m)*y' - (k*sin(α)/m)*y = -((k*sin(α)/m)*y_r + g*cos(α)*sin(pi/2 -α))
############## mise en coeff simple ##################
B_x=(b/m)
K_x= (k*cos(α)/m)
G_x=((k*cos(α)/m)*x_r + (g * sin(2 α)/2) )
#############
B_y=(b/m)
K_y=- (k*sin(α)/m)
G_y=-((k*sin(α)/m)*y_r + g*cos(α)*sin(pi/2 -α))
pour faire simple est ce que les deux equations ci dessous sont correctes ?
- Code: Tout sélectionner
x" + (b/m)*x' + (k*cos(α)/m)*x = ((k*cos(α)/m)*x_r + (g * sin(2 α)/2) )
y" + (b/m)*y' - (k*sin(α)/m)*y = -((k*sin(α)/m)*y_r + g*cos(α)*sin(pi/2 -α))
je precise aussi que dans un premier temps je ne traite que le cas ou mes deux polynômes characteristiques ont chacun deux racines complexes.
- Code: Tout sélectionner
# solution equ homogene y''+ B*y' + K*y = 0 avec K positif
fInf_y(t)=( C1_y*cos(omega_y*t) + C2_y*sin(omega_y*t))*e^(rr0_y*t)+fp_y
f0_y(t)=(C1_y*t + C2_y)*e^(rr0_y*t) + fp_y
SetVisibleInView[ f0_y, 1, false ]
fSup_y(t)=C1_y*e^(rr0_y*t) + C2_y*e^(rr1_y*t)+ fp_y
SetVisibleInView[ fSup_y, 1, false ]
Y(t)=Function[ IF[Delta_y > 0,fSup_y(t),IF[Delta_y == 0,f0_y(t),IF[Delta_y < 0,fInf_y(t)]]], 0, 20 ]
ParamCurveXY=Curve[X(t) ,Y(t), t, 0,20 ]