Survey
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
Modeling The Motion Of A Ball Bouncing Within A Ball Tanner Morrison 20 May 2013 Abstract Visualizing a bouncing ball is very intuitive, but can become extremely complex. When analyzing different motion models of a bouncing ball, one model sets itself apart, a ball bouncing within another ball. This study will analyze this bounce; by using laws of physics and mathematics, an analytical model can be derived to fit the motion of this system of balls. The ultimate goal is to derive a set of differential equations and its constantly changing initial conditions, describing the motion of the confining ball with respect to the ground. A Matlab m-file will be created that will visualize the motion of this chaotic dynamic system, showing the final motion of the confining ball. This motion will be modeled by using a system of second order linear differential equations. 1 1.1 Introduction Understanding The Motion When looking at the linear motion of a single bouncing ball, it is easy to predict its path. Due to the force of gravity, when a ball is dropped it will speed up until it hits the ground, the ball will then bounce (changing its vertical direction) and will reach a new height less than its initial height (if the ball is not thrown). Now looking at the two dimensional motion of a single bouncing ball, it also is easy to predict. This ball now has a horizontal motion coupled with vertical motion. The vertical motion will be very similar to that of the linear bouncing ball, but the horizontal motion will be a bit different. Horizontal motion is not effected by the force of gravity, meaning that the horizontal velocity of the ball will be constant until the ball stops bouncing and comes to rest. Moving the bouncing ball into a confined fixed box, the direction changes in both the vertical and horizontal directions. The direction can be noted by knowing that the angle of incidence is equal to the angle of reflection. Now, if we were to move that ball into a spherical confined area, the surface that the ball bounces off of is not a flat surface, changing its direction relative to when the ball was in a box. The goal of this paper is then model the motion of that two dimensional circular confined space relative to the ground. The spherical space will move due to the interactions between it and the ball inside, the impulsive force of the impact will create a motion of the outer sphere. This motion can be put into perspective by imagining a bouncy ball inside of a spherical balloon, then rapidly shaking the balloon (giving initial inertial quantities to the bouncy ball) and letting that balloon go. The differential equations modeled in this paper will describe the motion of the balloon with respect to the ground. 1.2 Introduction To Differential Equations A differential equation is a mathematical equation that describes an unknown function with one or several variables that relates a valued function to its rates of change (derivatives). Differential equations are a direct application of mathematical functions to real life situations, being a prominent role in engineering, economics, physics, and other disciplines. Ordinary differential equations that involve only a single independent variable, while partial differential equations involve more than one independent variable. In this paper only ordinary differential equations (ODE’s) will be used to model the motion of the system of balls. ODE’s can be solved directly resulting in a closed form solution, unfortunately not all ODEs will have the ability to produce a closed form solution, meaning the only way to solve these ODE’s is to use numerical analysis. Homogeneous ODEs are those with no driving force, meaning that the equation is equal to 0. The general form for a first order linear ODE looks like ẋ + kx = f (t) 1 ẋ is an expression for the time rate change of the variable x, or in other terms the velocity of x. f (t) is a function describing the driving force of the system. The general form for a second order linear ODE looks like ẍ + pẋ + qx = f (t) ẍ is an expression for the time rate change of ẋ, or in other terms the acceleration of x. 1.3 Defining The Variables To understand the notation used in this paper, here are some definitions of the variables and notation techniques used. v = dx/dt , Velocity measured in m/s. a = dv/dt , Acceleration measured in m/s2 . g = 9.81m/s2 , Acceleration due to gravity. e = v~2 /v~1 , final velocity divided by the initial velocity, also known as the coefficient of restitution. µy = Drag coefficient in the vertical direction. µx = Drag coefficient in the horizontal direction. 2 Assumptions In order to model the motion of this ball assumptions have to be made. The first assumption that is made is that each balls movement acts as a point mass with no radius; the outer ball has a radius that the inner balls movement depends on, but when the outer ball moves it acts as a point mass. Another, each ball only undergoes gravitational and drag forces. The radial component of the momentum (mass times velocity) is the only component that changes direction when the ball bounces off the inside of the circular confined space (conservation of momentum). Another assumption is that once the inside ball touches the outside ball, the force applied to the outside ball is in the radial direction. Also, the only energy lost in the system is from the coefficient of restitution. Finally, the inner ball will not roll on the surface of the outer ball. 3 Modeling Differential Equations In order to model the motion of the spherical confined space, the motion of the bouncing ball needs to be modeled first. 3.1 Linear Motion By modeling the motion of a linear bouncing ball first will be the baby steps of the ultimate goal. By the definition of ÿ, we know that it is the time rate 2 change of the time rate change in the vertical (y) direction, or also known as acceleration. From Sir Isaac Newton, we know that the acceleration due to gravity on Earth is 9.81m/s2 . If a body is given a constant initial velocity we know that the acceleration acting on the body is gravity, meaning ÿ = −g Taking into account air resistance we know that, ÿ = −g + (µy )ẏ This equation will have 2 initial conditions (height and velocity). 3.1.1 Understanding The Differential Equation Now that we have the differential equations that model the motion of the bouncing ball we have to realize a few things. First we know the vertical direction of the ball changes once it hits the ground. We also know that the ball looses energy once it hits the ground, giving it a smaller return velocity, v2 , which is directly connected to the coefficient of restitution, e. Lastly, the balls return velocity is dependant on its initial velocity; meaning that each bounce depends on the bounce before it, implying that the initial conditions for the differential equation are always changing. We can account for these things by using a numerical solver and looping the differential equation, giving it new initial conditions each time it bounces. The figure below shows the solutions to this looped ordinary differential equation with an initial height of 10 meters. The figure above shows a single ball linearly bouncing, as the time moves on its height decreases in an exponential fashion. 3 4 Modeling The Motion of the Inside Ball Moving this motion inside of a confined circular space many things change. First of all we are adding a horizontal component to the equation. Now the direction does not only change in the vertical direction, but also the radial direction. The position of the bounce also changes to the radius of the confined space. In order to model this motion the initial conditions greatly change for each time the system of equations loops. The system of second order linear ODE’s is, ÿ = −g + (µy )ẏ ẍ = (µx )ẋ 4.1 Tweaking The Initial Conditions Instead of only 2 initial conditions this system of O.D.Es has 4 initial conditions (horizontal location, horizontal velocity, vertical position, vertical velocity). Let’s start by tweaking the initial velocity components. Within the circular confined space of the ball, the angle of incidence of the incoming velocity with the ball is equal to the angle of reflection of the outgoing velocity. From this it has been determined, by conservation of momentum, that the direction of the radial component of the velocity flips. In order to calculate this change of direction of the ball we need to project the xy−components of its initial velocity before it comes in contact with the outer ball to accommodate the radial and tangential directions. We can do this by using vector projection to project the cartesian components onto the radial and tangential axis, then reversing the direction of the radial component and projecting the tangential and radial components back on to the cartesian coordinate system. v~r = ProjR~ ~v = ~ ~v R ~ R ~ 2 |R| v~t = ProjT~ ~v = T~ ~v ~ T |T~ |2 Changing the momentum results in, ~ ~v R ~ v~r0 = −e R ~ 2 |R| T~ ~v ~ v~t0 = e T |T~ |2 Now we take the xy−compontents of the radial and tangential vectors and add them together to get the velocity vector. 0 + v~0 )î + (v~0 + v~0 )ĵ v~0 = (v~rx tx ty ry 4 From this procedure we have obtained the new initial velocities in both the x and y directions of the inner ball , these new initial conditions will be implemented into the system of ODE’s. Now we have corrected the initial conditions for the velocity we need to tweak the position quantities. why you ask? Since Matlab is a numerical solver meaning that the solutions to these equations are based off of a step size, and when the solver can detect that the ball has bounced the ball has passed the outer edge of the outside ball (essentially ”glitching” itself out of the confining ball). To account for this graphics problem, we look at the time index. When the solver is tasked to find the time at which the inner ball is touching the outer ball (time of inner bounce) it outputs an arbitrary integer. The first step in solving this problem is to change the way Matlab is solving the system of ODE’s from ode45 to the Runge-Kutta method (rk4), because the step size of the solver is adjustable. Once using rk4 we can make the step size very very small, noting that this makes the inner ball closer to the outer ball when the ”contact” each other. The next step is to then make a small subtraction from the arbitrary integer time output, if the ball does end up ”glitching” itself out of the confining space, subtracting from the time index will step the ball back into its confining space. Now that we have corrected both the velocity and position initial conditions, we can allow the numerical solver to loop the system of second order linear ODE’s, allowing the inner ball to bounce within a stationary confining two dimensional circular space. The initial conditions for the figure below, the inner ball has position (0,-.25) with a horizontal velocity of 5 m/s and vertical velocity of 0 m/s. The red curve represents the position of the point mass, which represents the inside ball as it bounces around inside the stationary circular confined space (Black). 5 5 Modeling Motion Of The Outer Ball To model the motion of the outer ball we can use the information gained from the last steps to tell the numerical solver when the inner ball has bounced off of the outer ball, thus at this instant applying a radial force to the outer confining ball. To account for the velocity and direction changes we look at the law of conservation of momentum. While looking at the law of conservation of momentum it can be used in a system or part of a system. In this case the energy loss of the inner ball will be transferred to the outer confining ball. By using conservation of momentum we have ms v~s + mb v~b = ms v~s0 + mb v~b0 Where ms is the mass of the small ball, mb is the mass of the larger confining ball, vs is the velocity of the small ball, and vb is the velocity of the larger confining ball. From previous findings we know the initial and final velocity vectors of the small inside ball. If we give this equation masses and an initial velocity vector of the large confining ball, it will find the final velocity vector of the outer confining ball. ms v~s + mb v~b − ms v~s0 v~s0 = mb This procedure gives us a new initial condition that can then be looped for its kinematic differential equations (same system of ODE’s as the inside ball). 5.1 Accounting For Relative Velocities Relative velocities can change this problem dramatically. To account for the relative velocities of each of the balls as they interact with each other, each ball is set on its own coordinate system that is relative to a starting point on the ground. The outer ball is on the coordinate system (X,Y), and the inside ball is on the coordinate system (x,y) The inside ball acts relative to the center of the confining ball so their relative coordinates are (x-X,y-Y). The relative velocities are accounted for by the rates of change of these coordinates, the derivatives that appear in the differential equations. 6 Formulating The Loop Matlab, a numerical solver, was used to solve the system of differential equations and then loop the constant change of initial conditions. To formulate the program, a function file was made that defined all of the differential equations. The Runge-Kutta method was used in the process of solving the system of second order ODE’s. For the inner ball, the new initial conditions were used once it had come in contact with the outer ball. For the outer ball, the new initial conditions were used once the inner ball had bounced off of the outer ball, as well as if the outer ball had bounced off of the ground. 6 6.1 Final Results This system is a chaotic system, meaning that it is highly sensitive to its initial conditions. Not only is the inside ball sensitive to initial conditions, so is the outer confining ball. The Motion of the confining ball due to the impulsive forces provided by the bouncing of the inner ball is modeled below. The initial conditions for the figure below, the inner ball has position (1,-.25) with a horizontal velocity of 5 m/s and vertical velocity of 0 m/s, the outer ball has a position of (0,1) with an horizontal velocity of 2 m/s and a vertical velocity of 0 m/s. Each blue circle indicates the position of which the inner ball bounced off of the outer confining ball. As we can see it does change the direction and velocity of the outer ball, but the direction does not appear to be correct. If the direction were to be correct the outer ball would move to the left when the inner ball touches the left side of the outer ball. Note that as time goes on the force exerted on the outer ball appears to be dying down, which is correct because the momentum of the inside ball is also dying down. 7 7 Furthering Research This project has motivated me to learn more about this problem. I will continue working on the Matlab m-file until it is obvious that the outer ball is moving in the correct directions. To further this problem, I would like to eliminate all of the assumptions. While observing this problem in real life, the inside ball rolls on its confining space fairly often, when the initial conditions are just right the inside ball is subject to only bouncing. It would be a really neat problem to further understand the rolling motion of the inside ball and how it affects the outer ball. 8 Concluding Remarks The outer ball may have a larger mass which would not affect the motion of the outer ball as much as you would have anticipated it. The final plot is exactly how I would have envisioned it. It would be a bit different if the inner ball was much heavier. The only problem that I seem to be encountering is that the final plot is only showing the outer ball moving to the right, when realistically it should be the the left and to the right sporadically. 8 References [1] Boger, Jim. Personal Interview. Spring 2013 semester. [2] Hickethier, Don. Personal Interview. Spring 2013 semester. [3] Rady, Effat. Personal Interview. Spring 2013 semester. 9