The Period of an Oscillating Clock
G.R.Dixon, July 20, 2008
In this article the amount of time that elapses on an oscillating "clock" is compared with the time that elapses on a clock at rest in the lab frame. A time increment on the oscillating clock (dt’’) is hypothesized to be related to a time increment on the lab clock (dt) by
, (1)
where
. (2)
(The driving force is assumed to be "whatever it takes" to maintain the sinusoidal motion when v is relativistic.) Note that among other things, the rate of the oscillating clock is not affected by its acceleration. The period of oscillation is
. (3)
And the time elapsed on the oscillating clock, in one complete oscillation, is
. (4)
The integral is solved numerically by the Visual Basic program at the end of the article. Interested readers may vary program constants (A, w, N (the number of iterations)) as desired. Table 1 assumes in every case that A=1E-10 meters and N=1E6. Values for w (and hence for v_{max}=wA) are varied in the table. As expected, the discrepancy between t and t’’ increases as wA increases.
Table 1
wA (m/sec) |
t (sec) |
t’’(sec) |
1000 |
6.283185308E-13 |
6.283185308E-13 |
1E6 |
6.283185308E-16 |
6.283167855E-16 |
1E8 |
6.283185308E-18 |
6.104836938E-18 |
.5c |
4.188790205E-18 |
3.913232559E-18 |
.99c |
2.115550609E-18 |
1.385152605E-18 |
.9999c |
2.094604563E-18 |
1.334152479E-18 |
t’’ and t Compared
Program
Private Sub cmdOscillator_Click()
Const pi As Double = 3.141592654
Const N As Long = 1000000#
Const c As Double = 300000000#
Const vmax As Double = 1000
'Const vmax As Double = 1000000#
'Const vmax As Double = 100000000#
'Const vmax As Double = 0.5 * c
'Const vmax As Double = 0.99 * c
'Const vmax As Double = 0.9999 * c
Const A As Double = 0.0000000001
Const w As Double = vmax / A
Const tau As Double = 2 * pi / w
Const dt As Double = tau / N
Dim t, taupp As Double
Dim dtpp As Double
Dim v As Double
Dim index As Long
taupp = 0
For index = 0 To N - 1
t = index * dt
v = w * A * Cos(w * t)
dtpp = Sqr(1 - v ^ 2 / c ^ 2) * dt
taupp = taupp + dtpp
Next index
MsgBox ("tau = " & tau & ", taupp = " & taupp)
Stop
End Sub