An object that falls freely through the air is subject not only to the gravitational force but also to (force of) air resistance. If the object has mass $m$ and is let to fall from height $h_0$, after $t$ seconds, the height of the object is:
$$h(t)=h_0-\frac{mg}{k}t+\frac{m^2g}{k^2}(1-e^\frac{-kt}{m})$$
where $g = 9.8\frac{m}{s^2}$ is the gravitational acceleration and $k$ is the air resistance coefficient.
$h_0 = 300$ m
$m = 0.2$ kg
$k = 0.05 \frac{kg}{s}$
Approximate with an absolute error less than $0.01$s, the necessary time for the object to reach the ground.
For the solution, use a suitable numerical algorithm to implement in Maple. Then solve the problem using the predefined function corresponding from Maple and compare the results.
To be fair, I don't even know how to begin. This problem looks like physics but I got it from my Numerical Analysis course; the problem is translated so sorry if there are some poorly worded things in there, tried my best.
Thanks in advance
This is an exercise in numeric root-finding.
I am going to assume that you are new to Maple, and also that your numerical analysis requirements here is on the level of an introductory course, involving the most basic algorithms and whatever calculus of other math lies behind them.
You can set up the function, then plot it to see roughly where it attains zero height (crosses the x-axis), call the stock Maple numeric solver (
fsolve) on it, then write you own simple iterative root-finder.Below, I choose the bisection method, and used the plot to see where I could find initial end-points at which the function had opposite signs (ie. negative and positive).
Here's the function. I don't really need to put all those units in, and I have them all resolve away. (It's a bit of a sanity check on my work. But you will check all my work anyway, right?)
Now plot it, to get the lay of the land,
Now use the Maple command
fsolve, to find an approximate root.For the bisection method we need two initial endpoints at which this continuous
hhas opposite signs, which ensures that there is a root between them. Plotting can help with that.So we can use a=0 and b=15 in a bisection method, since h(0) is of the opposite sign than h(15).
Now you just have to code a simple bisection procedure. As soon an the "latest" endpoints are less than 0.01 apart then you are guaranteed that the midpoint is within 0.01 of an actual root.
This is a simple-minded implementation, which you should try hard to understand. The only bells&whistles are the
printfto show how it's proceeding. You can ignore that. But you really should try and understand the flow of the procedure, and that's part of what the exercise is supposed to teach you. Also, check for mistakes!Now we can run it, passing the
bisprocedure our operatorhand the two initial end-points.So the value now assigned to
bsolshould be within 0.01 of a root. Compare with how much it differs from thefsolveresult. Ask yourself how many digits to the right of the decimal point are correct forbsol, etc.