Chronology Current Month Current Thread Current Date
[Year List] [Month List (current year)] [Date Index] [Thread Index] [Thread Prev] [Thread Next] [Date Prev] [Date Next]

Re: Spreadsheet Analysis of Rotating Stick



Brian Whatcott writes:

But in system simulation one is advised to start with the highest
difference and accumulate a sum over successive time slice values
(rather than starting with the lowest difference and subtracting
successive values to find higher differences).
The former method minimizes noise contributions, the latter approach
produces increasingly erratic differences.

Here Bob seems to be subtracting a current value for velocity
from its previous value to represent acceleration. This would
presumably be noisy if experimentally derived values were inserted?


brian whatcott

Brian,

You are right, the error will propagate. However, my purpose was to start
with initial conditions and then generate the curves. Hence, for i>3, qi is
calculated from previous qs. In my original post, I chose initial values for
dt, qo, A and wo, then calculated q1, q2, and q3 using a linear
approximation. I have since been playing, and decided to calculate these
values using a quadratic approximation as such:

ao = Acos(q0)
q1 = qo+wo(dt)+0.5ao(dt)^2
w1 = wo+ao(dt)
a1 = Acos(q1)

q2 = q1+w1(dt)+0.5a1(dt)^2
w2 = w1+a1(dt)
a2 = Acos(q2)

q3 = q2+w2(dt)+0.5a2(dt)^2
w3 = w2+a2(dt)
a3 = Acos(q3)

Then for i>3 the calculations are the same as before:

q(i) = 4t^2Acos(q(i-2))+2q(i-2)-q(i-4) (q(i) depends on q(i-2) and q(i-4))

w(i) = (q(i+1)-q(i-1))/2t
a(i) = (w(i+1)-w(i-1))/2t

This seems to work well, with less than a 0.1 percent error in w for the
spreadsheet example in my previous post.

Concerning experimental data, I have two examples below. The first four q
experimental values are used as the initial conditions to calculate
subsequent qs.

The following data is for a uniform stick rotating about one end. The length
of the stick is 1.1 meters. The data columns are experimental time,
experimental q, calculated q based on the first four experimental qs, and
abs((q(cal)-q(exp))/q(exp))*100 (here the first four values are zero, since
q(cal) is the same as q(exp) for the first four values). All units are SI.

t(exp) q(exp) q(cal) abs(q%)
0.000 1.816 1.816 0.000
0.067 1.850 1.850 0.000
0.133 1.901 1.901 0.000
0.200 1.973 1.973 0.000
0.267 2.067 2.061 0.313
0.333 2.184 2.186 0.090
0.400 2.338 2.328 0.421
0.467 2.534 2.532 0.096
0.533 2.776 2.754 0.804
0.600 3.059 3.066 0.215


The following data is for a softball on a string acting as a pendulum. The
radius of motion is 0.37 meters. All units are SI.


t(exp) q(exp) q(cal) abs(q%)
0.000 -2.390 -2.390 0.000
0.067 -2.620 -2.620 0.000
0.133 -2.697 -2.697 0.000
0.200 -2.669 -2.669 0.000
0.267 -2.531 -2.574 1.716
0.333 -2.305 -2.294 0.463
0.400 -1.996 -2.051 2.731
0.467 -1.647 -1.605 2.573
0.534 -1.287 -1.307 1.554
0.600 -0.953 -0.899 5.683
0.667 -0.682 -0.688 0.814
0.734 -0.519 -0.489 5.730
0.800 -0.439 -0.436 0.722
0.867 -0.484 -0.500 3.244
0.934 -0.625 -0.615 1.526
1.000 -0.872 -0.928 6.398
1.070 -1.189 -1.184 0.453
1.130 -1.547 -1.641 6.088
1.200 -1.896 -1.931 1.869
1.270 -2.214 -2.321 4.838
1.330 -2.458 -2.511 2.170
1.400 -2.618 -2.677 2.238
1.470 -2.676 -2.707 1.152
1.530 -2.626 -2.607 0.733
1.600 -2.472 -2.471 0.050
1.670 -2.227 -2.128 4.466

Again, initial conditions are important. In the two examples above, the
first four values for q are used to generate the rest of the data. Hence,
error in these values will result in error in the calculated values.

Bob Carlson