Precalculus Honors
When we know the lengths of all three sides (\(a, b, c\)), we can determine the area without needing the height by utilizing Heron’s Formula.
Sample Problem: A surveyor is measuring a triangular plot of land. The side lengths are 40 meters, 50 meters, and 70 meters. What is the area of the plot? . . . Solution: \(s = \frac{40+50+70}{2} = 80\). \(\text{Area} = \sqrt{80(40)(30)(10)} = \sqrt{960000} \approx 979.8 \text{ m}^2\)
These laws allow us to find unknown measurements in non-right (oblique) triangles, which is vital for analyzing resultant forces and navigation.
Sample Problem: Two tugboats are pulling a barge. The cables make an angle of \(45^\circ\) with each other. If the lengths of the cables are 100 ft and 120 ft, how far apart are the tugboats? . . . Solution: Use Law of Cosines. \(x^2 = 100^2 + 120^2 - 2(100)(120)\cos(45^\circ)\) \(x \approx 86.1 \text{ ft}\)
Manipulate the three side lengths. Notice what happens when the sides violate the Triangle Inequality Theorem. If valid, Heron’s Formula calculates the area.
isValid = (side_a + side_b > side_c) && (side_a + side_c > side_b) && (side_b + side_c > side_a)
s_val = (side_a + side_b + side_c) / 2
area = Math.sqrt(s_val * (s_val - side_a) * (s_val - side_b) * (s_val - side_c))
// Use Law of Cosines to find angle A for drawing purposes
angle_A = Math.acos((side_b**2 + side_c**2 - side_a**2) / (2 * side_b * side_c))
Plot.plot({
aspectRatio: 1,
x: {domain: [-1, 11]},
y: {domain: [-1, 11]},
grid: true,
marks: [
// Draw triangle if valid, else show error text
isValid ? Plot.line([
[0,0],
[side_c, 0],
[side_b * Math.cos(angle_A), side_b * Math.sin(angle_A)],
[0,0]
], {stroke: "green", strokeWidth: 3, fill: "lightgreen", fillOpacity: 0.4})
: Plot.text([[5, 5]], {text: ["Invalid Triangle! Adjust the side lengths."], fill: "red", fontSize: 20, fontWeight: "bold"}),
// Output Area
isValid ? Plot.text([[5, 10]], {text: [`Heron's Area = ${area.toFixed(2)} sq units`], fontWeight: "bold", fontSize: 18}) : null
]
})To define an inverse function, the original function must pass the horizontal line test. We restrict the domain of \(y = \sin(x)\) to \([-\frac{\pi}{2}, \frac{\pi}{2}]\).
Plot.plot({
aspectRatio: 1,
x: {domain: [-Math.PI, Math.PI], label: "x"},
y: {domain: [-Math.PI, Math.PI], label: "y"},
grid: true,
marks: [
Plot.ruleX([0]), Plot.ruleY([0]),
// Line of symmetry y=x
Plot.line([[-Math.PI, -Math.PI], [Math.PI, Math.PI]], {stroke: "gray", strokeDasharray: "4"}),
// Full Sine Wave (faded)
Plot.line(d3.range(-Math.PI, Math.PI, 0.05), {
x: d => d, y: d => Math.sin(d), stroke: "lightgray", strokeWidth: 2
}),
// Restricted Domain Sine Wave (Solid Blue)
Plot.line(d3.range(-Math.PI/2, Math.PI/2 + 0.05, 0.05), {
x: d => d, y: d => Math.sin(d), stroke: "blue", strokeWidth: 4
}),
// Inverse Function: Arcsin (Solid Red)
show_inverse ? Plot.line(d3.range(-1, 1.05, 0.05), {
x: d => d, y: d => Math.asin(d), stroke: "red", strokeWidth: 4
}) : null,
// Labels
Plot.text([[2, 2.2]], {text: ["y = x"], fill: "gray"}),
Plot.text([[1.5, -0.5]], {text: ["Restricted Domain"], fill: "blue"}),
show_inverse ? Plot.text([[-0.5, 1.5]], {text: ["y = arcsin(x)"], fill: "red"}) : null
]
})In calculus, working with circular motion requires converting our degree measures into radians.
For a circle of radius \(r\) and central angle \(\theta\) (in radians): * Arc Length (\(s\)): \(s = r\theta\) * Sector Area (\(A\)): \(A = \frac{1}{2}r^2\theta\)
Sample Problem: A sprinkler sprays water a distance of 8 feet and rotates through an angle of \(\frac{2\pi}{3}\) radians. Find the area of the lawn watered. . . . Solution: \(A = \frac{1}{2}(8)^2(\frac{2\pi}{3}) = 32(\frac{2\pi}{3}) = \frac{64\pi}{3} \approx 67.02 \text{ ft}^2\)
Adjust the radius \(r\) and the central angle \(\theta\) (in radians) to see how the arc length and sector area change proportionally.
Plot.plot({
aspectRatio: 1,
x: {domain: [-11, 11]},
y: {domain: [-11, 11]},
grid: true,
marks: [
Plot.ruleX([0]), Plot.ruleY([0]),
// Draw the faint full circle
Plot.line(d3.range(0, 2*Math.PI + 0.1, 0.1), {
x: d => r_sec * Math.cos(d),
y: d => r_sec * Math.sin(d),
stroke: "#eee"
}),
// Draw the highlighted Sector/Arc
Plot.line(d3.range(0, theta_sec + 0.05, 0.05), {
x: d => r_sec * Math.cos(d),
y: d => r_sec * Math.sin(d),
stroke: "blue", strokeWidth: 4
}),
// Draw the radii bounding the sector
Plot.line([[0,0], [r_sec, 0]], {stroke: "blue", strokeWidth: 2}),
Plot.line([[0,0], [r_sec * Math.cos(theta_sec), r_sec * Math.sin(theta_sec)]], {stroke: "blue", strokeWidth: 2}),
// Live Calculations
Plot.text([[0, -8]], {text: [`Arc Length (s) = ${(r_sec * theta_sec).toFixed(2)} units`], fontWeight: "bold", fontSize: 16}),
Plot.text([[0, -10]], {text: [`Sector Area (A) = ${(0.5 * r_sec * r_sec * theta_sec).toFixed(2)} sq units`], fontWeight: "bold", fontSize: 16})
]
})For any angle \(\theta\) in standard position, let \((x, y)\) be a point on its terminal side, and let \(r = \sqrt{x^2 + y^2}\) be the distance from the origin.
Sample Problem: The point \((-3, 4)\) is on the terminal side of an angle \(\theta\). Find \(\sec \theta\). . . . Solution: \(r = \sqrt{(-3)^2 + 4^2} = 5\). Therefore, \(\sec \theta = \frac{r}{x} = -\frac{5}{3}\).
We can evaluate trig functions for any angle by finding its reference angle in the first quadrant, utilizing the properties \(\pi - x\), \(\pi + x\), and \(2\pi - x\).
Sample Problem: Determine the exact value of \(\cos(\frac{5\pi}{6})\) without a calculator.
Solution: 1. The angle \(\frac{5\pi}{6}\) is in Quadrant II. 2. The reference angle is \(\pi - \frac{5\pi}{6} = \frac{\pi}{6}\). 3. In Quadrant II, cosine is negative. 4. \(\cos(\frac{5\pi}{6}) = -\cos(\frac{\pi}{6}) = -\frac{\sqrt{3}}{2}\)
To create an inverse function, the original function must pass the horizontal line test. We must restrict the domains of our trigonometric functions to make them one-to-one.
Sample Problem: Evaluate \(\arcsin(-\frac{1}{2})\). . . . Solution: We need an angle in \([-\frac{\pi}{2}, \frac{\pi}{2}]\) whose sine is \(-\frac{1}{2}\). The answer is \(-\frac{\pi}{6}\).
When modeling real-life phenomena, we use inverse functions to solve equations, paying close attention to interval restrictions.
Sample Problem: Solve \(2\sin(x) - \sqrt{3} = 0\) on the interval \([0, 2\pi)\).
. . . Solution: 1. Isolate the trig function: \(\sin(x) = \frac{\sqrt{3}}{2}\) 2. Identify angles in the unit circle where the \(y\)-coordinate is \(\frac{\sqrt{3}}{2}\). 3. \(x = \frac{\pi}{3}\) and \(x = \frac{2\pi}{3}\)
We can find unknown measurements in right and non-right triangles using specific formulas and laws.
Angles can be measured in degrees, but calculus requires radian measure.
By setting a circle’s radius to \(1\), we unlock the core trigonometric values.
Explore how the coordinates change as the angle \(\theta\) (in radians) increases both counterclockwise and clockwise. Notice the parametric interpretation where the coordinates are \((\cos(t), \sin(t))\).
Plot.plot({
aspectRatio: 1,
x: {domain: [-1.5, 1.5], label: "Cosine (x)"},
y: {domain: [-1.5, 1.5], label: "Sine (y)"},
marks: [
Plot.ruleX([0]), Plot.ruleY([0]),
Plot.line({length: 100}, {x: (d, i) => Math.cos(i/100*2*Math.PI), y: (d, i) => Math.sin(i/100*2*Math.PI), stroke: "lightgray"}),
Plot.line([[0,0], [Math.cos(t), Math.sin(t)]], {stroke: "red", strokeWidth: 3}),
Plot.dot([[Math.cos(t), Math.sin(t)]], {fill: "red", r: 6}),
Plot.text([[Math.cos(t), Math.sin(t)]], {
text: [ `(${Math.cos(t).toFixed(2)}, ${Math.sin(t).toFixed(2)})` ],
dy: -15, fontWeight: "bold"
})
]
})The unit circle helps us understand the fundamental properties of trigonometric functions.
Symmetry: We will explain symmetry, identifying which functions are odd and which are even.
Periodicity: We will investigate the periodic nature of these functions by linking unit circle rotations to graphical representations.
We will graph these functions and analyze their structures to model real-life phenomena.
Key Features: We must describe period, midline, amplitude, phase shift, intercepts, asymptotes, symmetries, domain, and range.
Advanced Analysis: We will identify relative extrema and intervals where the function is increasing, decreasing, positive, or negative, using proper interval notation.
Observe how modifying the parameters \(a, b, h,\) and \(k\) affects the amplitude, period, phase shift, and midline of \(y = a \sin(b(x - h)) + k\).
viewof a = Inputs.range([-4, 4], {value: 1, step: 0.5, label: "Amplitude (a)"})
viewof b = Inputs.range([0.5, 4], {value: 1, step: 0.5, label: "Frequency (b)"})
viewof h = Inputs.range([-3.14, 3.14], {value: 0, step: 0.25, label: "Phase Shift (h)"})
viewof k = Inputs.range([-4, 4], {value: 0, step: 0.5, label: "Vertical Shift (k)"})// d3 = require("d3@7")
// import {range} from "d3"
Plot.plot({
x: {domain: [-2*Math.PI, 2*Math.PI], label: "x (radians)"},
y: {domain: [-6, 6], label: "y"},
marks: [
Plot.ruleX([0]), Plot.ruleY([0]),
Plot.line(d3.range(-2*Math.PI, 2*Math.PI, 0.05), {
x: d => d,
y: d => a * Math.sin(b * (d - h)) + k,
stroke: "blue",
strokeWidth: 3
})
]
})