## Transcribed Text

Rotating Drum
The figure below shows a uniform cylindrical drum (of radius R) having
moment of inertia 1cm about the axis (O) passing along the axial of the
drum as shown coming out of the page in the middle of the figure.
The fixed axis O is coming out of the page
A chain of uniform linear mass density P and total mass m is wrapped
one complete turn around the drum. In static equilibrium, the chain ends
are at 0 = 0 with one fixed to the drum and the other loose. A small ball
of mass M is now attached at rest to the loose end of the chain causing
the chain to unwrap away from the drum as the drum rotates clockwise
about O. Assuming that the drum rotates freely (no friction) about its
axis as the chain unwraps, it can be shown that the angle that the drum
rotates satisfies (for 0 < < 2t the ODE
0 = (271++-sin(0))B
where
2R
A = 2nt + u + mR* 1cm
and u = M/m> 0 are unitless quantities. Solve this equation for 0(t) using
Matlab assuming the initial conditions 0(0) - 0 and é(0) = 0, and determine
(for different values of H > 0) the time (in units of (R/g) when all the
chain has unwrapped from the drum. You may assume that the mass of
the drum is the same as the mass of the chain and that the drum is
hollow so that = mR².

This material may consist of step-by-step explanations on how to solve a problem or examples of proper writing, including the use of citations, references, bibliographies, and formatting. This material is made available for the sole purpose of studying and learning - misuse is strictly forbidden.

function time_to_unwrap=P(mu_in)

%function P(mu_in)

%INPUTS:

% mu_in -- an array of values of mu = M/m

%OUTPUS:

% time_to_unwrap -- a sequence of times in units of (R/g)^(1/2)

% for the chain to unwrap.

% Example P([1:10]) to run in a range of 1 to 10

global g R mu

g=1;%Since we are doing every thing in units of R/g^1/2

R=1;%We can take g=1 and R=1;

%mu=M/m;

for k=1:length(mu_in)

mu=mu_in(k);

to_plot=0; %This in case we want to turn on extensive plotting

time_to_unwrap(k)=find_time_to_unwrap(mu,to_plot);

end

%Print a table of times to unwrap.

fprintf('mu = M/m | Time to unwrap (R/g)^(1/2) \n');

for k=1:length(mu_in)

fprintf('%g | %g \n', mu_in(k),time_to_unwrap(k));

end...