At any point, you can submit your answers by collecting them and uploading them to the class site.

No answers yet collected

Link to upload site

If requested by your instructor, please identify here the people from whom you received assistance on this assignment.

If the answers that have been loaded automatically are not yours, press this button before starting your work:

The philosopher Alfred North Whitehead (1861-1947) postulated:

“It is a profoundly erroneous truism that we should cultivate the habit of thinking of what we are doing. The precise opposite is the case. Civilization advances by extending the number of important operations which we can perform without thinking about them.”

These drill questions are intended to help you learn to perform certain mathematical or modeling operations without thinking about them. Once you have accomplished this, you will be able to focus cognitive effort on those aspects of the modeling problem at hand that require knowledge of the setting, creativity, and higher-order skills in modeling.

Drill questions, by and large, are not about applications of modeling or higher-order skills. They are usually devoid of real-world context. Ideally, they are easy to answer once you have learned the topic. They are not “make-work” problems; think of them as weight-training exercises that strengthen a particular muscle group.

The drill questions are self-correcting in order to help you track your progress in developing skill. Don’t be tempted to blindly try answers until you get a positive response. That’s a complete waste of time, the ultimate in “make-work.”

Keep answering them until the answers come easily to you. On a second pass through the questions, clear the document memory as described in the “Remember to hand in your work …” box. That way you won’t have your previous answers to guide you.

The storybook functions are osc(), hill(), hillside(), flat(), steady(), double(), doublings(), recip(). When you need to remind yourself what the shape is, you can plot any of the functions here. You can also evaluate the function for a given input here.

Exercise 6. 1 Which storybook functions have a positive rate of change everywhere?

recip()   spm-1-3se
True     or       False      

doublings()   spm-2-se
True     or       False      

hill()   spm-3-dse
True     or       False      

hillside()   spm-4-y23
True     or       False      

Exercise 6. 2 Which storybook functions have a negative rate of change whenever the input is zero or greater?

recip()   clc-1-3se
True     or       False      

doublings()   clc-2-se
True     or       False      

hill()   clc-3-dse
True     or       False      

hillside()   clc-4-y23
True     or       False      

Exercise 6. 3 For the double() function …

  1. What is the output value when the input is 0? srb-a-32ld

    -1       -0.5       0       0.5       1       2       4       8      

  2. What is the output value when the input is 1? srb-b-32ld

    -1       -0.5       0       0.5       1       2       4       8      

  3. What is the output value when the input is 2? srb-c-32ld

    -1       -0.5       0       0.5       1       2       4       8      

  4. What is the output value when the input is -1? srb-d-32ld

    -1       -0.5       0       0.5       1       2       4       8      

  5. At what input will the output of double() be 1/2? srb-e-32le

    -1       -0.5       0       0.5       1       2       4       8      

Now turn to the closely related doublings() function. (Remember that doublings() is related to double() but they are different functions.)

  1. When the input to doublings() is 8, what is the output? srb-f-32ld

    -4       -3       -2       -1       0       1       2       3       4      

  2. When the input to doublings() is 4, what is the output? srb-g-32ld

    -4       -3       -2       -1       0       1       2       3       4      

  3. When the input to doublings() is 1/2, what is the output? srb-h-32ld

    -4       -3       -2       -1       0       1       2       3       4      

  4. When the output from doublings() is -2, what is the input? srb-i-32ld

    1/4       1/2       1       2       4      

Exercise 6. 4 At an input of zero, the osc() function has output zero and a positive slope.

  1. What is the smallest input value greater than zero at which osc() has output zero and a positive slope? ebc-a-3slc

    0.25       0.5       1       1.5       2      

  2. What is the smallest input value greater than zero at which osc() has output zero and a negative slope? ebc-b-sc

    0.25       0.5       1       1.5       2      

  3. Which of these input values gives a zero rate of change of osc() with respect to the input? ebc-c-sc

    0.25       0.5       1       1.5       2      

Exercise 6. 5 Of twos and tens

Double() is an exponential function, but it is by no means the only one. The characteristic of double() that makes it exponential is that increasing the input by one always produces an output that is bigger by a factor of two. For instance:

double(3.5)
[1] 11.31371
double(4.5)
[1] 22.62742
double(5.5)
[1] 45.25483

The other exponential functions behave similarly. That is, increasing the input by 1 increases the output by a factor of ____? The blank (___) is the number that characterizes the exponential function.

For instance, we can imagine an exponential function where an increase in the input by 1 produces an increase in output by 10-fold. There is no standard name for this 10-fold exponential function, so we will invent one just for this problem: the “tenfold()” function.

tenfold(0.7)
[1] 5.011872
tenfold(1.7)
[1] 50.11872
tenfold(2.7)
[1] 501.1872
  1. Based on the pattern you observe above for tenfold(), what will be the output when the input is 4.7?
mbk-b-nbld
501.1872       5011.872       50118.72       501187.2      

  1. As you know, 0.7 - 1 = -0.3. Keeping that in mind, what will be the output from tenfold(-0.3)?
mbk-b-isld
0.005011872       0.05011872       0.5011872       5.011872      

All the exponential functions are merely input scaled versions of doubling(). For instance, tenfold(x) is the same as doubling(3.3219281 * x):

tenfold(4.2)
[1] 15848.93
double(3.3219281 * 4.2)
[1] 15848.93

Things work out the other way, too.

double(6.92)
[1] 121.0954
tenfold(6.92 / 3.3219281)
[1] 121.0954

What’s special about 3.3219281? It is the amount of doublings that leads to an output of 10:

double(3.3219281)
[1] 10

We can find the special number just by asking how many doublings lead to a ten-fold increase:

doublings(10)
[1] 3.321928

History might have followed a path where tenfold() would be the standard exponential function. But there is no strong reason to change now, since double() and doublings() do everything that tenfold() and tenfoldings() can do. Calculations with paper and pencil would be easier with tenfold() and tenfoldings(). For example,

doublings(1000)
[1] 9.965784
tenfoldings(1000)
[1] 3
  1. What is the output of tenfoldings(1000000)? mbk-c-dwld
    2       3       5       6       9      

While everyday people might find it easier to work with tenfold() and tenfoldings(), mathematicians and many scientists routinely use another exponential function named exp(), whose output increases by 2.71828182846-fold whenever the input increases by 1.

Using 2.71828182846-fold might seem crazy, but there are good reasons for it, at least for those heavily involved with quantitative thinking. For instance, the rate of change of exp(x) with respect to x is exactly exp(x). And, delving into the world of “imaginary” numbers used by mathematicians, physicists, and some engineers, there is the remarkable fact that exp(3.1415926535i) gives -1.

Just as double() has doublings() to convert output into input, and tenfold() has tenfoldings() to do the same job, exp() has a function that we might call “expings()”. For instance:

exp(-2.302585)
[1] 0.1
expings(0.1)
[1] -2.302585

The official name for the expings() function is the “natural logarithm function,” written \(\ln()\) in print and log() in almost all computer languages. The official names for doublings() and tenfoldings() are, in computer languages, log2() and log10().

There’s no right answer to the following question. We’re just interested in your opinion on the matter.

In your heart, which would you like to be the standard exponential function?

mbk-in-your-heart
exp()       double()       tenfold()      

Keep in mind that these are all exponential functions and differ only by the amount of input scaling.

Exercise 6. 6  

  1. One of these is not the name of a storybook function. Which one?
pbb-1-8ruw
hill()       ramp()       steady()       doublings()       recip()      

  1. Consider these four storybook functions:

    1. flat() which says the output doesn’t depend on the input
    2. steady() where the output increases steadily as the input increases
    3. hillside() where the output increases with the input for a while, but looks like flat() for very large inputs.
    4. hill() where the output increases with the input up to a point, but increasing the input beyond that leads to a reduction in the output.

For each of the following settings, choose which of the four functions is the better model.

  1. The input is the temperature setting on a heating systems thermostat, the output is the temperature of the house. (Hint: At some point, the heating system is at full blast.)
pbb-2a-ksle
flat()       steady()       hillside()       hill()      

  1. The input is the amount of money you spend on groceries, the output is the volume of pantry space those groceries will take up.
pbb-2b-cs3s
flat()       steady()       hillside()       hill()      

  1. The input is the extent to which you push down on a car’s accelerator pedal, the output is the speed of a car on a flat road.
pbb-2c-kwld
flat()       steady()       hillside()       hill()      

  1. The input is the amount of food you eat at a meal, the output is your sense of wellbeing after the meal.
pbb-2d-sse
flat()       steady()       hillside()       hill()      

  1. The input is the amount of time you spend vacuuming a rug, the output is the cleanliness of the rug.
pbb-2e-jke
flat()       steady()       hillside()       hill()      

  1. The input is the number of roommates you share a rental with, the output is your sense of value-for-money from your individual rent.
pbb-24-hdw
flat()       steady()       hillside()       hill()      

  1. The input is the amount of time you spend dreaming about having a successful athletic career, the output is the probability of your having such a career.
pbb-2g-ksl
flat()       steady()       hillside()       hill()      

  1. The input is the amount of rainfall in your garden, the output is the harvest from the garden.
pbb-2h-kle
flat()       steady()       hillside()       hill()      

Exercise 6. 7 Consider this plot of the hillside function:

Figure E6. 1
  1. What R function is being used to make the plot?
dek-1-gmek
plot()       slice_plot()       plotfun()       sliceplot()       plot_fun()      

  1. Immediately following the name of the function, there is an opening parenthesis. The matching closing parenthesis is at the very end of the command. In R (as in many computer languages) the arguments to the function are contained inside the parentheses. If there is more than one argument, successive arguments are separated by commas. How many arguments are there to slice_plot()?
dek-2-z38d
1       2       3       4      

The first argument to slice_plot() tells which function you want to graph. In the example, the first argument is hillside(z) ~ z. This is called a ☞ tilde expression ☜ so named because the tilde character (~) appears.

Left Middle Right
hillside(z) ~ (tilde) z
  1. The left part of the tilde expression is a formula written in more or less conventional algebraic form. Other examples for this formula: 2*z + 3, osc(z), hillside(z) * osc(z).

  2. The right part of the tilde expression gives the name of the input variable. In the example, the name is z, but you can use whatever name you think appropriate. Note that the formula in (i) must be written in terms of the input-variable name.

  3. The middle part of the tilde expression is merely punctuation, but it is essential punctuation. Among other things, the tilde makes clear what are the left and right sides of the tilde expression.

  1. Suppose that you want to call the input quantity x. You can easily modify the command to do this, just substitute x for z. In how many places do you have to make the change?
dek-3-jwkd
1       2       3       4      

Focus now on the graphic itself—Fig E6. 1. The name of the input variable appears as a label on the horizontal axis. The label on the vertical axis, in contrast, is just a reminder that we are plotting the output of the function versus the input quantity.

The vertical scale will be created automatically by slice_plot(), taking into account the range of function output values. But the horizontal axis is different: the user specifies this. The numerical extent of the horizontal axis is called the graphics domain.

The second argument to slice_plot() is used for the graphics domain specification.

  1. What is the graphics domain in Fig E6. 1?
dek-4-p3n2
0 to 4       -2 to 2       -2 to 4       -4 to 4      

In the example, the second argument is domain(z = -2:4). The graphics domain specification will always look like this, and uses the R function domain().

  1. How many arguments does domain() take in this example?
dek-4-7s2r
0       1       2       3      

There are two punctuation symbols in the argument to domain(). The colon (:) is placed between the two limits to be used for the domain. -2:4 means “minus 2 to 4.” The graphics domain zero to ten would be 0:10. The other punctuation mark is =. To the left of the = goes the name of the input variable. The expression z = -2:4 means “the graphics domain of z is to be -2 to 4.

  1. Using the “graphing a function” interactive R chunk, write an expression to plot out the function osc() over the graphics domain 0 to 5. Use whatever you like as the input name. After checking that your expression works, copy the expression into the following answer block.

Exercise 6. 8 Using the interactive R chunk, make a plot of the function double(x) * osc() over the domain -5 to 5. (The npts=500 just helps to make the graph look smooth.)

  1. What is the range covered by the vertical axis? (Choose the closest answer.)
ctt-1-cslw

-5 to 5

0 to 10

0 to 1000

-500 to 500


  1. The following plot involves the multiplication of two storybook functions. Which two?

ctt-2-cksw

osc() and hill()

osc() and double()

osc() and hillside()

osc() and steady()


  1. Consider the three storybook functions recip(), double(), doublings(). For each of the settings below, say which is the better model.

3a. The input is time since your last purchase, the output is the amount of your credit card debt if you do nothing to pay off the outstanding debt.

ctt-3a-sje
recip()       double()       doublings()      


3b. The input is the amount of time you spend procrastinating, the output is the amount of work you get done.

ctt-3b-stwe
recip()       double()       doublings()      


3c. The input is the amount of time you spend preening for a date, the output is how good you look.

ctt-3c-ews3
recip()       double()       doublings()      


  1. The input is the number of people you share an apartment with, the output is your share of the rent on the apartment.
ctt-3d-eye2
recip()       double()       doublings()      


  1. The input is driving speed, the output is the time taken to get to your destination (assuming no problems with the car).
ctt-3e-tey
recip()       double()       doublings()      


  1. The input is the number of weeks you unintentionally left a piece of cheese under your bed, the output is the amount of mold on the cheese.
ctt-3f-93ue
recip()       double()       doublings()      


  1. The input is the amount of time you spend watching Netflix the day before an exam, the output is the your score on the exam.
ctt-3g-iewe
recip()       double()       doublings()      

Exercise 6. 9 Write and verify the command to make this plot:

Enter your expression here:


Exercise 6. 10 A bit is a unit of information. In computer hardware, one bit refers to a (tiny) device that can be in either an “on” or “off” state, that is, either of two different states.

With two bits, the computer can represent four different states, with three bits eight, with four bits sixteen. Notice that each additional bit doubles the number of possible states that can be represented.

One bit is a tiny amount of information. The word “byte” refers to a larger amount of information, the equivalent of eight bits.

  1. How many different states can be stored by one byte?
BF-byte
8       16       64       256      

The words “megabyte” (MB) and “gigabyte” (GB) refer to the amount of storage space on computers and other devices. Naturally, “mega” means million and “giga” means billion. So is 1 megabyte exactly 1,000,000 bytes and 1 gigabyte exactly 1,000,000,000 bytes? Not quite. A megabyte is 1,048,576 bytes and a gigibyte 1,073,741,824 bytes. These funny-looking numbers reflect the nature of information storage: every time we add an additional byte we increase the number of possible states 256-fold. In computer hardware, however, it’s common not just to add an additional unit of storage, but to double the amount of storage. A megabyte corresponds to 20 doublings of memory from a starting point of one byte. A gigbyte brings in another 10 such doublings.

In this hardware sense, exactly one million bytes would be a strange construction. Similarly with exactly one billion bytes.

  1. How many doublings correspond to exactly one million? (Choose the closest answer.) You can use the interactive R chunk that follows to do the calculations.
BF-million
9 doublings       9.5 doublings       9.9 doublings       approx 9.9432 doublings       approx 9.965784 doublings      

Exercise 6. 11 The graph shows the number of cell phone subscriptions per capita for the whole world.

Find sensible values for the input and output-scaling parameters using hillside() to represent the relationship between per capita subscriptions and year.

\[ \text{subscriptions}(\text{year})) \equiv A\, \text{hillside}\left(a (\text{year} - b)\right) + B\]

  1. What are the input scaling parameters?
cbs-1-wlc
A & a       B & b       A & B       a & b      

  1. Which of these is the best value for B (with units subscribers per capita) to align the function with the data?
cbs-2-yw3
-0.15       0       0.15       0.25      

  1. Which of these is the best value for A?
cbs-3-ydux
-1.1       0.9       1.1       1.5      

  1. Which of these is the right set of units for A?
cbs-4-xjc
people       people per capita       subscribers       subscribers per capita      

  1. Which of these is the best value for b (with units of years)?
cbs-5-dke
2004.5       2007.5       2009.5       2011.5      

  1. Which of these is a sensible value for a?
cbs-6-dke
5 years       5 per year       21 years       21 per year      

Exercise 6. 12 To double a quantity means to multiply it by 2. Trebling means multiplying by 3. And you’ve probably heard of “quadrupling,” which is multiplication by 4.

If you repeatedly double a quantity, it will eventually get quite big. For instance, Table 1 shows growth from a starting quantity of 1 as it is successively doubled.

Table E6. 1: Successive doublings from a starting point of 1.
Times doubled Quantity Exponent notation
0 1 20
1 2 21
2 4 22
3 8 23
4 16 24
5 32 25
6 64 26
7 128 27
8 256 28
9 512 29
10 1024 210
\(\vdots\) \(\vdots\)
20 1,048,576 220
\(\vdots\) \(\vdots\)
30 1,073,741,824 230
\(\vdots\) \(\vdots\)

Now imagine a situation where there is a quantity that doubles every day. For instance, this might be the amount of algae in a lake during an “algal bloom.” If the lake had 1 gm of algae on day zero, it would have 2 gm on day one, 4 gm on day two, and so on. By day 10, the biomass of the algal bloom would be 1024 gm, that is, just over 1 kg. Wait another 10 days, there will be 1,048,567 gm, that is, more than 1000 kg. This pattern of growth is called exponential growth.

Why exponential growth? In the third column of ?@tbl-2-exponential the quantities are written using exponents. For instance, in 26, the exponent is 6. In terms of the algal bloom, the number 23 is the biomass of algae on day 3. Similarly, 25 is the biomass on day 5. In this exponential growth, the exponent increases steadily by 1 each day. But the biomass is 2exponent and grows quickly and at an every-growing rate.

  1. What is the rate of change of biomass with respect to time, looking at time 5 to 6? Remember, the change in biomass will be on top in the ratio, the change in time (we asked about 1 day).
fwt-1-2kdw

20 gm per day

32 gm per day

65 gm per day

128 gm per day

256 gm per day

  1. What is the rate of change of biomass with respect to time over the interval day 8 to 9?
fwt-2-2kdw

20 gm per day

32 gm per day

65 gm per day

128 gm per day

256 gm per day

It’s very convenient for the purposes of this problem that the algal biomass doubles with every new day. In reality, however, the doubling time would depend on things like the temperature or the oxygen or mineral content of the water.

Suppose that the doubling time for algae is 3.5 days. How many days would it take for the biomass to reach 1024 gm (that is, about 1 kg)?

fwt-3-3lse
28 days       35 days       64 days       72 days      

Exercise 6. 13 An article in The Economist in January 2026 stated:

Since 2021, demand for electricity in India has increased by around 9% each year. It is set to more than double in the next decade. Source

Assuming that the starting point is 2025 and that the growth continues at 9% per year, is it a fair statement that electricity demand will “more than double” in the next decade.

Explain your reasoning, using the “xf_to_def("Rule of 72").”

Exercise 6. 14 The ☞ Rule of 72 ☜ is a calculation age for estimating the doubling time of an exponentially growing quantity. It’s set up to work with growth rates stated in percentages, as in bank-account interest (about 4% per year), credit-card interest (about 20% per year), population growth rates (0-3% per year).

The calculation is straightforward. To find the (approximate) doubling time for the given growth rate, divide that rate into 72. For instance, a 4% growth rate corresponds to a doubling time of 72/(4 per year) = 18 years.

  1. Using the Rule of 72, find the doubling time (in years) for a population growing at 1 percent per year.
bsr-1-kew
22       52       72       102      

  1. Radioactive isotopes are characterized by their ☞ half-life ☜, that is, the time in which the amount of that isotope falls to half its original value. Iodine-131, used in medical procedures, has a relatively short half life. Look up the half life of Iodine-131 and use it, along with the Rule of 72, to calculate the daily reduction (in percent per day) in the amount of that isotope.
bsr-2-cse
Reduction of 9% per day.       Reduction of 12% per day.       Reduction of 24% per day.       Not enough information was given.      

  1. Suppose the population of an endangered fish species is dwindling by 6% per year. At this rate, how many years will it take for the population of the species to fall to one-half it’s original value?
bsr-3-eys
6 years       12 years       24 years       48 years      

Drafty

Exercise 6. 15 As for setting the output transformation parameter \(A\), see Exercise 6.15.

EXERCISE IN DRAFT. Explain why \(Q_0 = 0\) for matching hillside() to the oil production data (Figure 6.2): when the input \(\text{year}^\star < 1910\) or so, the output is zero. So evaluate \(\text{hillside}\left(0.045 (\strut\text{year}^\star - 1969.5)\right)\).

What about the output parameter \(A\)? We arranged the data to set the highest value of oil-production to be index 1. The hillside() function naturally goes to output one as its upper plateau, so \(A=1\) will do the job. What would \(A\) have to be if the ultimate output of the model were to be 1.05, a little bit higher than the 2023 value?

File ID: titmouse-let-sofa


Exercise 6. 16 MAYBE WE ALREADY HAVE SUCH EXERCISES, BUT just in case …

Cover each of the storybook functions in turn, showing how to find both the input and output transformation parameters. Point out that for the constant, proportional, and exponential functions, mathematicians generally simplify to a smaller number of parameters.

File ID: mouse-bathe-knob

1 —–

id: “pine-fall-drawer” created: “Sun Jan 25 16:41:44 2026” attribution: TBA —

Exercise 6. 17 Let’s see what we can do to include units compactly as part of a numeral.

\[\newcommand{\year}[2]{\stackrel{\text{#2}}{#1}}\] \(\year{y}{km.lb2/year}\)


2 —–

id: “fawn-go-blanket” created: “Thu Oct 23 07:59:26 2025” attribution: TBA —

Exercise 6. 18  

slice_plot(double(t) ~ t, domain(t=1:20)) |>
  gf_refine(scale_y_log10(n.breaks = 10))
slice_plot(1/t ~ t, domain(t=0.1:100)) |>
  gf_refine(scale_y_log10(n.breaks = 10),
            scale_x_log10(n.breaks = 10))
Figure E6. 2
Figure E6. 3

File ID: fawn-go-blanket


Exercise 6. 19  

CautionNext status step: complete the draft

Assigned to DTK

Plotting the storybook functions. As they come out of the box, all of the storybook functions take a pure number as input and return a pure number as output. We’ve configured the out-of-the-box functions so that you can see the main features simply by making a plot with a graphic domain running from, say, -3 to 3.

ASK for other domains. What features are left out when you plot over the specified domain.

File ID: kid-spend-hamper


Exercise 6. 20 Show the syntax in several different computer languages, including R, for defining a function. Ask students to translate between traditional math notation and the computer notation, and vice versa, for a list of given functions. For instance, give a makeFun() function and ask for it to be translated into python, Javascript, Mathematic, …

File ID: birch-cost-stove


Exercise 6. 21 Show how functions can be used to implement a relationship and then, if you decide the relationship is different, you can change just the algorithm of the function without having to examine everywhere you use that function.

File ID: nephew-sit-car


Exercise 6. 22 Construct a population_growth_rate() function that is has population and year as inputs and combines birth_rate(year), death_rate(year), and immigration(year). Use this to calculate next year’s population. THEN PICK THIS UP AGAIN when talking about iteration.

File ID: walrus-dive-painting


Exercise 6. 23 Many phenomena, particularly those relating to storms and earthquakes are described by the time between successive events. For instance, a 500-year flood is one whose large magnitude makes it an infrequent event. Major earthquakes or volcano eruptions are described in a similar way.

Contrary to popular intuition, a 500-year flood is not scheduled to be repeated after about 500 years. Instead, the time to the next event is modeled as uncertain but with definite properties, for instance, that the next event is equally likely to come at any time but with an average inter-event interval as about 500 years.

The double() function is often used to describe what we know about when the next random event will occur. (double() is our storybook name for the mathematical exponential function.) Input scaling is applied to set the average time between events.

Here’s what the function looks like for a 500-year event:

slice_plot(dexp(time, rate=1/500) ~ time, domain(time = 0:1500)) |>
  # slice_plot(0.002*double(-0.002885*time) ~ time, color = "red", alpha = .5) |>
  gf_hline(yintercept = ~ 0, color = "blue", alpha = 0.5) |>
  gf_labs(x = "Time between events (years)", y = "Relative probability")

For each of the following, figure out about what is the average time between events.

File ID: daisy-blow-lamp


Exercise 6. 24 The hill() function is used extensively to represent the relative probabilies of random outcomes whose values tend to cluster about a specified mean. (hill() is used so extensively that it’s often called the “normal distribution.”)

For each of these depictions of the normal distribution, figure out what input scaling was used, that is, what are the values of \(a\) and \(q_0\) in the expression hill(\(a (\text{size} - q_0)\)).

File ID: lamb-speak-rug


Exercise 6. 25 As for setting the output transformation parameter \(A\), see Exercise 6.15.

EXERCISE IN DRAFT. Explain why \(Q_0 = 0\) for matching hillside() to the oil production data (Figure 6.2): when the input \(\text{year}^\star < 1910\) or so, the output is zero. So evaluate \(\text{hillside}\left(0.045 (\strut\text{year}^\star - 1969.5)\right)\).

What about the output parameter \(A\)? We arranged the data to set the highest value of oil-production to be index 1. The hillside() function naturally goes to output one as its upper plateau, so \(A=1\) will do the job. What would \(A\) have to be if the ultimate output of the model were to be 1.05, a little bit higher than the 2023 value?

File ID: titmouse-let-sofa


Exercise 6. 26 Exercise comparing a plot of doublings() compared to the same plot using magnitude(). One is merely offset by another.

File ID: elm-tear-plate


At any point, you can submit your answers by collecting them and uploading them to the class site.

No answers yet collected

Link to upload site

If requested by your instructor, please identify here the people from whom you received assistance on this assignment.

If the answers that have been loaded automatically are not yours, press this button before starting your work:

3 Activities

Exercise 6. 27 ACTIVITY: Find a pair of inputs for the heat-index function that produces an output of 90F. Now lower the humidity by about 10 percentage points; the function output should decrease. At the new humidity, can you find a new temperature input that produces an output of 90F.

Exercise 6. 28 Classroom ACTIVITY: Talk about piecewise models. Fit the doubling function to the pre-crisis data. Up through the 1960s, a doubling time of 12 years seems about appropriate.

The doubling function (in red) works pretty well up through 1962 with a doubling time of 10.8 years. But after that oil production increased at a rate faster than that doubling rate. [Note that 10.8 years doubling corresponds to a growth rate of 6.7 % per year.]

Here’s a graph of GDP growth. 6% growth during the first half of the 20th century looks pretty reasonable, but it’s down to about half that in the past 50 years.

4 Computing lab

[Note: multiple quantities as inputs and how they relate to a single output quantity. Naturally, those input quantities may also be related to one another, in which case more functions come into SHOW AN INFLUENCE DIAGRAM and each of the functions involved. Each quantity has one function that comprises all of the inputs to that quantity.]

[Note: Include interpolation and graphing in the computer lab for functions. In the text, include a description of interpolation (with illustrative graphic) and contrast it to fitting.]

[Functions as algorithms. Splining, smoothing, fitting, iteration.]

[Put in the Heron algorithm for square roots (from MC3/algorithms).]