2016-07-06 7 views
1

Problème: Les données ci-dessous pour trouver la vitesse et l'accélération à t = 10 secondes:centrée sur des différences finies dans Scilab

Time, t, s  0 2 4 6 8 10 12 14 16 

Position, x, m 0 0.7 1.8 3.4 5.1 6.3 7.3 8.0 8.4 

I résolu le centrés sur la différence finie

enter image description here

Comment puis-je l'appliquer dans Scilab?

Répondre

0

Cette calcule la vitesse des tableaux donnés x et t, en utilisant les différences centrales:

v = (x(3:$) - x(1:$-2)) ./ (t(3:$) - t(1:$-2)) 

Pour voir ce que cela fait, se concentrer sur le premier indice dans chaque gamme:

(x(3) - x(1)) ./ (t(3) - t(1)) 

Il est clair que, c'est la vitesse au 2ème moment. La formule effectue ce calcul pour tous les moments où il est possible de faire; la formule de différence centrée ne s'applique pas au premier et dernier moment. On peut vouloir introduire plage de temps tronquée pour refléter ceci:

tr = t(2:$-1) 

De même pour l'accélération:

a = (x(3:$) - 2*x(2:$-1) + x(1:$-2)) ./ (t(3:$) - t(1:$-2)).^2 

Cela peut maintenant être tracée avec plot(tr,v) ou plot(tr,a). Et pour regarder leurs valeurs lorsque le temps est de 10, utilisez

v(tr==10) 

et

a(tr==10)