Functions to compute a metronome's oscillation frequency. metr_model
is the main function. It computes the base value (metr_model_base),
which includes the contribution of the mass of the rod (mu.), and
applies corrections due to the oscillation angle (metr_model_angle)
and the friction (metr_model_friction).
Usage
metr_model(r, R = 50, M. = 5, l = 220, L = R, mu. = 0, g = 9.807,
A = 0, ep0 = 0)
metr_model_base(r, R = 50, M. = 5, l = 220, L = R, mu. = 0, g = 9.807)
metr_model_angle(A, terms = 8)
metr_model_friction(r, R = 50, M. = 5, l = 220, L = R, mu. = 0, ep0 = 0)
metr_model_bias(mark, R = 50, M. = 5, l = 220, L = R, mu. = 0,
g = 9.807, A = 0, ep0 = 0, shift = 0)
metr_model_r(mark, R = 50, M. = 5, l = 220, L = R, mu. = 0, g = 9.807, A = 0)Arguments
- r
distance from the shaft to the center of mass of the upper mass, in mm.
- R
distance from the shaft to the center of mass of the lower mass, in mm.
- M.
nondimensionalized lower mass (lower mass divided by upper mass).
- l
length of the rod above the shaft, in mm.
- L
length of the rod below the shaft, in mm.
- mu.
nondimensionalized rod mass (rod mass divided by upper mass).
- g
standard gravity, in m/s^2.
- A
oscillation amplitude, in degrees.
- ep0
nondimensional friction parameter (
>= 0).- terms
number of terms to approximate the angle correction.
- mark
metronome mark, in pulses per minute.
- shift
include a shift of the rod with respect to the scale, in mm.
Value
metr_model, metr_model_base and metr_model_bias
return the oscillation frequency in pulses per minute.
metr_model_angle and metr_model_friction return a value >= 1.
metr_model_r returns the distance from the shaft to the upper mass in mm.
Details
Function metr_model_bias computes, for a given metronome mark, the
resulting oscillation frequency for an alteration of any parameter. To this
end, it uses metr_model_r to first calculate the position of the upper
mass for this metronome mark.
A value of mu.=0 means that the rod is considered massless.
A value of A=0 means that no correction is applied due to the
oscillation amplitude. A value of ep0=0 means that the movement is
frictionless. A value of ep0=0.5 means that the metronome stops due
to friction at the lowest possible frequency.
To compute the frequency bias for any parameter, two values must be supplied
to metr_model_bias. For example, if the original position of the lower
mass is 50 mm, and we want to calculate the result of lowering it down
5 mm, then R=c(50, 55) should be supplied.