From a0b913eed86681e88d74d413804d046496a0a079 Mon Sep 17 00:00:00 2001 From: jverzani Date: Tue, 4 Oct 2022 17:46:00 -0400 Subject: [PATCH 1/2] WIP --- quarto/_quarto.yml | 2 +- ...-of-Marathon-Finishing-Times-n-9-789-093.png | Bin 0 -> 15922 bytes 2 files changed, 1 insertion(+), 1 deletion(-) create mode 100644 quarto/limits/figures/Distribution-of-Marathon-Finishing-Times-n-9-789-093.png diff --git a/quarto/_quarto.yml b/quarto/_quarto.yml index d794c0a..bd1a318 100644 --- a/quarto/_quarto.yml +++ b/quarto/_quarto.yml @@ -1,4 +1,4 @@ -version: "0.12" +version: "0.13" project: type: book diff --git a/quarto/limits/figures/Distribution-of-Marathon-Finishing-Times-n-9-789-093.png b/quarto/limits/figures/Distribution-of-Marathon-Finishing-Times-n-9-789-093.png new file mode 100644 index 0000000000000000000000000000000000000000..df6977e58e937f5f89c783511e153bca3b525ba8 GIT binary patch literal 15922 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 literal 0 HcmV?d00001 From a9ca131870de991571b9acc22cc49992e15d06eb Mon Sep 17 00:00:00 2001 From: jverzani Date: Mon, 10 Oct 2022 14:28:05 -0400 Subject: [PATCH 2/2] make pdf file generation work --- Project.toml | 3 + quarto/ODEs/differential_equations.qmd | 6 - quarto/ODEs/euler.qmd | 31 +- quarto/ODEs/figures/galileo.png | Bin 0 -> 2510 bytes quarto/ODEs/odes.qmd | 10 +- quarto/README-quarto.md | 2 +- quarto/_common_code.qmd | 33 +- quarto/_quarto.yml | 12 +- quarto/alternatives/SciML.qmd | 10 +- quarto/alternatives/plotly_plotting.qmd | 2 +- quarto/derivatives/derivatives.qmd | 73 ++- .../figures/fcarc-may2016-fig35-350.png | Bin 0 -> 139942 bytes .../figures/fcarc-may2016-fig40-300.png | Bin 0 -> 117825 bytes .../figures/fcarc-may2016-fig43-250.png | Bin 0 -> 108244 bytes .../derivatives/first_second_derivatives.qmd | 2 +- .../derivatives/implicit_differentiation.qmd | 5 +- quarto/derivatives/lhospitals_rule.qmd | 12 +- quarto/derivatives/linearization.qmd | 18 +- quarto/derivatives/mean_value_theorem.qmd | 12 +- quarto/derivatives/more_zeros.qmd | 4 +- quarto/derivatives/newtons_method.qmd | 4 +- quarto/derivatives/optimization.qmd | 23 +- quarto/derivatives/related_rates.qmd | 544 +----------------- .../derivatives/taylor_series_polynomials.qmd | 30 +- .../polar_coordinates.qmd | 13 +- .../scalar_functions.qmd | 90 +-- .../scalar_functions_applications.qmd | 104 ++-- .../vector_fields.qmd | 72 ++- .../vector_valued_functions.qmd | 187 +++--- .../vectors.qmd | 60 +- quarto/index.qmd | 7 +- .../div_grad_curl.qmd | 155 +++-- .../double_triple_integrals.qmd | 108 ++-- .../line_integrals.qmd | 6 +- quarto/integral_vector_calculus/review.qmd | 41 +- .../stokes_theorem.qmd | 62 +- quarto/integrals/arc_length.qmd | 76 ++- quarto/integrals/area.qmd | 41 +- quarto/integrals/area_between_curves.qmd | 12 +- quarto/integrals/center_of_mass.qmd | 15 +- quarto/integrals/ftc.qmd | 29 +- quarto/integrals/improper_integrals.qmd | 1 - quarto/integrals/integration_by_parts.qmd | 40 +- quarto/integrals/mean_value_theorem.qmd | 4 +- quarto/integrals/partial_fractions.qmd | 12 +- quarto/integrals/substitution.qmd | 47 +- quarto/integrals/surface_area.qmd | 29 +- quarto/integrals/volumes_slice.qmd | 28 +- quarto/limits/intermediate_value_theorem.qmd | 12 +- quarto/limits/limits.qmd | 8 +- quarto/precalc/calculator.qmd | 22 +- quarto/precalc/exp_log_functions.qmd | 8 +- quarto/precalc/inversefunctions.qmd | 20 +- quarto/precalc/polynomial.qmd | 6 +- quarto/precalc/polynomials_package.qmd | 12 +- quarto/precalc/transformations.qmd | 4 +- quarto/precalc/trig_functions.qmd | 32 +- quarto/precalc/variables.qmd | 6 +- quarto/precalc/vectors.qmd | 9 +- 59 files changed, 884 insertions(+), 1330 deletions(-) create mode 100644 quarto/ODEs/figures/galileo.png create mode 100644 quarto/derivatives/figures/fcarc-may2016-fig35-350.png create mode 100644 quarto/derivatives/figures/fcarc-may2016-fig40-300.png create mode 100644 quarto/derivatives/figures/fcarc-may2016-fig43-250.png diff --git a/Project.toml b/Project.toml index d1ae8c0..97a7f11 100644 --- a/Project.toml +++ b/Project.toml @@ -29,6 +29,7 @@ Plots = "91a5bcdd-55d7-5caf-9e0b-520d859cae80" Polynomials = "f27b6e38-b328-58d1-80ce-0feddd5e7a45" Primes = "27ebfcd6-29c5-5fa9-bf4b-fb8fc14df3ae" QuadGK = "1fd47b50-473d-5c70-9696-f719f8f3bcdc" +QuizQuestions = "612c44de-1021-4a21-84fb-7261cf5eb2d4" RealPolynomialRoots = "87be438c-38ae-47c4-9398-763eabe5c3be" Revise = "295af30f-e4ad-537b-8983-00126c2a3abe" Richardson = "708f8203-808e-40c0-ba2d-98a6953ed40d" @@ -42,5 +43,7 @@ SymbolicNumericIntegration = "78aadeae-fbc0-11eb-17b6-c7ec0477ba9e" Symbolics = "0c5d862f-8b57-4792-8d23-62f2024744c7" Tables = "bd369af6-aec1-5ad0-b16a-f7cc5008161c" TaylorSeries = "6aa5eb33-94cf-58f4-a9d0-e4b2c4fc25ea" +TermInterface = "8ea1fca8-c5ef-4a55-8b96-4e9afe9c9a3c" +TextWrap = "b718987f-49a8-5099-9789-dcd902bef87d" Unitful = "1986cc42-f94f-5a68-af5c-568840ba703d" UnitfulUS = "7dc9378f-8956-57ef-a780-aa31cc70ff3d" diff --git a/quarto/ODEs/differential_equations.qmd b/quarto/ODEs/differential_equations.qmd index 6fbfce4..642c879 100644 --- a/quarto/ODEs/differential_equations.qmd +++ b/quarto/ODEs/differential_equations.qmd @@ -72,13 +72,11 @@ $$ The author's apply this model to flu statistics from Hong Kong where: -$$ \begin{align*} S(0) &= 7,900,000\\ I(0) &= 10\\ R(0) &= 0\\ \end{align*} -$$ In `Julia` we define these, `N` to model the total population, and `u0` to be the proportions. @@ -133,13 +131,11 @@ The plot shows steady decay, as there is no mixing of infected with others. Adding in the interaction requires a bit more work. We now have what is known as a *system* of equations: -$$ \begin{align*} \frac{ds}{dt} &= -b \cdot s(t) \cdot i(t)\\ \frac{di}{dt} &= b \cdot s(t) \cdot i(t) - k \cdot i(t)\\ \frac{dr}{dt} &= k \cdot i(t)\\ \end{align*} -$$ Systems of equations can be solved in a similar manner as a single ordinary differential equation, though adjustments are made to accommodate the multiple functions. @@ -282,12 +278,10 @@ We now solve numerically the problem of a trajectory with a drag force from air The general model is: -$$ \begin{align*} x''(t) &= - W(t,x(t), x'(t), y(t), y'(t)) \cdot x'(t)\\ y''(t) &= -g - W(t,x(t), x'(t), y(t), y'(t)) \cdot y'(t)\\ \end{align*} -$$ with initial conditions: $x(0) = y(0) = 0$ and $x'(0) = v_0 \cos(\theta), y'(0) = v_0 \sin(\theta)$. diff --git a/quarto/ODEs/euler.qmd b/quarto/ODEs/euler.qmd index aad9038..74f401c 100644 --- a/quarto/ODEs/euler.qmd +++ b/quarto/ODEs/euler.qmd @@ -70,7 +70,6 @@ That is, if we stitched together pieces of the slope field, would we get a curve ```{julia} #| hold: true #| echo: false -#| cache: true ## {{{euler_graph}}} function make_euler_graph(n) x, y = symbols("x, y") @@ -241,17 +240,7 @@ It is more work for the computer, but not for us, and clearly a much better appr ## The Euler method - -```{julia} -#| hold: true -#| echo: false -imgfile ="figures/euler.png" -caption = """ -Figure from first publication of Euler's method. From [Gander and Wanner](http://www.unige.ch/~gander/Preprints/Ritz.pdf). -""" - -ImageFile(:ODEs, imgfile, caption) -``` +![Figure from first publication of Euler's method. From [Gander and Wanner](http://www.unige.ch/~gander/Preprints/Ritz.pdf).](./figures/euler.png) The name of our function reflects the [mathematician](https://en.wikipedia.org/wiki/Leonhard_Euler) associated with the iteration: @@ -361,9 +350,13 @@ caption = """ A child's bead game. What shape wire will produce the shortest time for a bed to slide from a top to the bottom? """ -ImageFile(:ODEs, imgfile, caption) +#ImageFile(:ODEs, imgfile, caption) +nothing ``` +![A child's bead game. What shape wire will produce the shortest time for a bed to slide from a top to the bottom?](./figures/bead-game.jpg) + + Restrict our attention to the $x$-$y$ plane, and consider a path, between the point $(0,A)$ and $(B,0)$. Let $y(x)$ be the distance from $A$, so $y(0)=0$ and at the end $y$ will be $A$. @@ -378,16 +371,22 @@ caption = """ As early as 1638, Galileo showed that an object falling along `AC` and then `CB` will fall faster than one traveling along `AB`, where `C` is on the arc of a circle. From the [History of Math Archive](http://www-history.mcs.st-and.ac.uk/HistTopics/Brachistochrone.html). """ -ImageFile(:ODEs, imgfile, caption) +#ImageFile(:ODEs, imgfile, caption) +nothing ``` +![As early as 1638, Galileo showed that an object falling along `AC` +and then `CB` will fall faster than one traveling along `AB`, where +`C` is on the arc of a circle. From the [History of Math +Archive](http://www-history.mcs.st-and.ac.uk/HistTopics/Brachistochrone.html). +](./figures/galileo.png) + This simulation also suggests that a curved path is better than the shorter straight one: ```{julia} #| hold: true #| echo: false -#| cache: true ##{{{brach_graph}}} function brach(f, x0, vx0, y0, vy0, dt, n) @@ -603,13 +602,11 @@ $$ We can try the Euler method here. A simple approach might be this iteration scheme: -$$ \begin{align*} x_{n+1} &= x_n + h,\\ u_{n+1} &= u_n + h v_n,\\ v_{n+1} &= v_n - h \cdot g/l \cdot \sin(u_n). \end{align*} -$$ Here we need *two* initial conditions: one for the initial value $u(t_0)$ and the initial value of $u'(t_0)$. We have seen if we start at an angle $a$ and release the bob from rest, so $u'(0)=0$ we get a sinusoidal answer to the linearized model. What happens here? We let $a=1$, $L=5$ and $g=9.8$: diff --git a/quarto/ODEs/figures/galileo.png b/quarto/ODEs/figures/galileo.png new file mode 100644 index 0000000000000000000000000000000000000000..83851c345249aae4b7039a8c6ae6776f204c9e68 GIT binary patch literal 2510 zcmY*bdpwkB8-C{?vy+&1$9}@-ZAuM3GlRrTGkOz?Et(KEl0zd#Gh&oMP9+VSmCY%K zq8vv^IYyP?ugDS&oX%Zg%N(uC(sJLZOhz`XqgQT^U1{8_WrG z=jn2|TmKUIuZ|g$>lxs4D$vJ|1Fq@1d-$CWq~q~xM&HI?`waB)`p1dG{ktt$gQT?z zNsmY-ebbgLrLASD2LpVVGUqjY6Fu5j=KtmX_Mws1%>QRIe|7pbD{IvRO(T6fHWTzF z*Vpm@Am3_bw%48qo6d|4P@^cAjhB4-LJCDVQlr3Oc|b8odq%+u*j6{fm`hv@x$ipi z@S#{4{fY4Y*Uu}fxC2O~GLdXdKE&X$uh2-0OMFej4|o-xBWS}9qL=!~VMJTs6Cq%> zv~{5b5QiX#PtgvX{pBAr{rQH+vp2LpO+fi$3I5wL7Gig z0f^F);Eg8=8XUl-Dmc0{W+c=Qv^*F2n1phAeg@ozyc2(+Y2YG!Fv^l`kZoBczUili zG3@glH5se*Qyz?bWh?3GS@`g>MsygGTybnH0{^Qeq1o*ZD_+hHolPs+TT|3p$C#DJ%^ zPQshsMQqeyT-ukTh`g$KY`4P8Lw2PrvFy{}PICoB?ht*L! z+*^`v=hvQ1>L{)A`G?ZE?O`G8I^gjiDxI}-)7Nkm>h4OAdYXkRA}%7X26pbiqt3_R zuaxp*2OW)|%LHM*Q_l=c!4ZNm#np;R3{ymL@ow;qR^={<`L_Ln(T~mWJ57{Yu-X{i+Fec=@<9U#{ekjtTUQaifu-9Zc@1dz`XLT7=-WW=x`J`22 z{gDsT>8+X=x>x?CY?JxL{&eL{+$X~Ft}jdqr912UL}`d?;g%1*>#*L7{qN$tOY*9J zJ6un}RLm;>lza&ai!5h7$@Iyq91EzQuLC@iRmkTiU~t!rMVR7ntLKTC@|2?sCq${8 zLCc%))z4DGRe(k=1uNgjDz8?TWbSO(zcCn`S4DdLdWBnv$+?g)8fF{q>fSO30^y9j$_{9@a7Mqa?d5*c zs53;3RsJYBM@f(F*pYX{z%WEI8Gm0K{pv;oibLMqGi0anfKY98U6e;PSgsdNtoYiX zh?&uFwuaq33)%tmx}>eGgo|?)0nC!*=}B2lqbsuf?5*)@bM8}?8^)@-@|3yb-#uzh zW@LAJvKHH5SZ~psccuqD3oAmv`rO3)qPvE)y&Iv1?mZ%$8^fnxxo?#n5`~Xk@@-$) zpy1-~!5B}WYGlhUF3OU(6`25pZGLn?ajd`Lc8qvpMj!n-Od;{mOM8`-jZSYNTu09U zfK9e_jv0-9lcdaGs2U|LRwtR!SlRI|tiH6VR^!q(i;U7rbq$>v1ggl=B4d3|{Oi@q z0KU1&izJIhUB-L$4&U~intq)~%Od^WR_mx*LSt+1jxzr1+J1{;2J1S5S<}Fc{N4uR zE^}?8tI{!J@tDfo&Kwk2qn7bb6ChI!aS6?Iv43*#oz21erFl50qOig^|9INYY9{NK z1XkOF6e{)ys6smrYs4B8j5qgeanM@6O!YUVHCQh1GT?R~F&7bfp5d&?*_1@vaq$B{ z?D4_QSqZcixV&6k2%QQ0^6|4rIp>+Q=VHge<^vqeyV%g&83(cMXzUZ4DXqvf%uH+% ztm%iNS6SS&1(UitY&^d}%=qL^(XENpJ& z)xiZ&Zi;62_*kdjSSqMJp4!65D5d*XwAh~&C~?PH3a`)nQpGfxc(2}c$+bJ`)%sL; z+pYxbp-$egWHCu+uyDr;Q_a67zlFKk??b3y%V44NJ^15f(9OgEv_#e4)^mAUc3QXF zS@q_^K#Ol^T6fvN49*AvH$6r6p1m_vm-GDWk$;s%oi07nDv;iv^och@;42~hb7~Fo zR?P)cUO1~hFF|zKm(^aN;<``rzWk~5jzmx;t2 zO?LDxZ`v=bjUU|4sy|_;|Ij`oVV3f ![]() as much as possible * use pandoc references(?) * mermaid, ojs? diff --git a/quarto/_common_code.qmd b/quarto/_common_code.qmd index 25e65b9..f7f9cd3 100644 --- a/quarto/_common_code.qmd +++ b/quarto/_common_code.qmd @@ -94,22 +94,22 @@ gif_to_img_tpl = Mustache.mt""" {{{:alt}}} """ + function ImageFile(f::AbstractString, caption, alt, width) fcontent = occursin(r"^http", f) ? read(download(f), String) : read(f, String) data = base64encode(fcontent) content = Mustache.render(gif_to_img_tpl, data=data, alt=alt) - caption = Markdown.parse(caption) ImageFile(f, caption, alt, width, content) end + function Base.show(io::IO, m::MIME"text/html", x::ImageFile) content = x.content if content == nothing data = (read(x.f, String)) content = gif_to_image(data=data, alt="figure") end - caption = sprint(io -> show(io, "text/html", x.caption)) - + caption = (Markdown.html ∘ Markdown.parse)(x.caption) print(io, """
""") print(io, "
") print(io, content) @@ -122,6 +122,24 @@ function Base.show(io::IO, m::MIME"text/html", x::ImageFile) """) end +import TextWrap +function Base.show(io::IO, m::MIME"text/plain", x::ImageFile) + + caption = (TextWrap.wrap ∘ Markdown.plain ∘ Markdown.parse)(x.caption) + println(io, """ +--------------------------------- +| +| see online version for | +| image | +| | +-------------------------------- +""") + println(io, caption) + return nothing +end + + + # hack to work around issue # import Markdown # import CalculusWithJulia @@ -189,4 +207,13 @@ function Base.show(io::IO, ::MIME"text/html", x::HTMLoutput) end print(io, txt) end + +function Base.show(io::IO, m::MIME"text/plain", x::HTMLoutput) + + caption = (TextWrap.wrap ∘ Markdown.plain ∘ Markdown.parse)(x.caption) + println(io, "Content available in online version") + println(io, caption) + return nothing +end + ``` diff --git a/quarto/_quarto.yml b/quarto/_quarto.yml index bd1a318..5c897b9 100644 --- a/quarto/_quarto.yml +++ b/quarto/_quarto.yml @@ -13,6 +13,7 @@ book: search: true repo-url: https://github.com/jverzani/CalculusWithJuliaNotes.jl repo-subdir: quarto/ + downloads: [pdf] repo-actions: [edit, issue] navbar: background: light @@ -133,10 +134,19 @@ website: format: html: - theme: lux #lux # spacelab # lux # sketchy # cosmo # https://quarto.org/docs/output-formats/html-themes.html + theme: lux # spacelab # lux # sketchy # cosmo # https://quarto.org/docs/output-formats/html-themes.html number-depth: 3 toc-depth: 3 link-external-newwindow: true +# pdf: +# documentclass: scrbook +# classoption: [oneside] +# geometry: +# - top=30mm +# - left=10mm +# - right=10mm +# - heightrounded +# colorlinks: true execute: error: true diff --git a/quarto/alternatives/SciML.qmd b/quarto/alternatives/SciML.qmd index e97b3a3..4c224fa 100644 --- a/quarto/alternatives/SciML.qmd +++ b/quarto/alternatives/SciML.qmd @@ -234,14 +234,14 @@ The extra step is to specify a "`NonlinearSystem`." It is a system, as in practi ```{julia} -ns = NonlinearSystem([eq], [x], [α], name=:ns) +ns = NonlinearSystem([eq], [x], [α], name=:ns); ``` The `name` argument is special. The name of the object (`ns`) is assigned through `=`, but the system must also know this same name. However, the name on the left is not known when the name on the right is needed, so it is up to the user to keep them synchronized. The `@named` macro handles this behind the scenes by simply rewriting the syntax of the assignment: ```{julia} -@named ns = NonlinearSystem([eq], [x], [α]) +@named ns = NonlinearSystem([eq], [x], [α]); ``` With the system defined, we can pass this to `NonlinearProblem`, as was done with a function. The parameter is specified here, and in this case is `α => 1.0`. The initial guess is `[1.0]`: @@ -365,7 +365,7 @@ The above should be self explanatory. To put into a form to pass to `solve` we d ```{julia} -@named sys = OptimizationSystem(Area, [x], [P]) +@named sys = OptimizationSystem(Area, [x], [P]); ``` (This step is different, as before an `OptimizationFunction` was defined; we use `@named`, as above, to ensure the system has the same name as the identifier, `sys`.) @@ -409,7 +409,7 @@ could be similarly approached: @variables x y = Area/x # from A = xy P = 2x + 2y -@named sys = OptimizationSystem(P, [x], [Area]) +@named sys = OptimizationSystem(P, [x], [Area]); u0 = [x => 4.0] p = [Area => 25.0] @@ -570,14 +570,12 @@ As well, suppose we wanted to parameterize our function and then differentiate. Consider $d/dp \int_0^\pi \sin(px) dx$. We can do this integral directly to get -$$ \begin{align*} \frac{d}{dp} \int_0^\pi \sin(px)dx &= \frac{d}{dp}\left( \frac{-1}{p} \cos(px)\Big\rvert_0^\pi\right)\\ &= \frac{d}{dp}\left( -\frac{\cos(p\cdot\pi)-1}{p}\right)\\ &= \frac{\cos(p\cdot \pi) - 1)}{p^2} + \frac{\pi\cdot\sin(p\cdot\pi)}{p} \end{align*} -$$ Using `Integrals` with `QuadGK` we have: diff --git a/quarto/alternatives/plotly_plotting.qmd b/quarto/alternatives/plotly_plotting.qmd index 6f776da..c7da694 100644 --- a/quarto/alternatives/plotly_plotting.qmd +++ b/quarto/alternatives/plotly_plotting.qmd @@ -468,7 +468,7 @@ layout = Config(title = "Annotations", Plot(data, layout) ``` -The following example is more complicated use of the elements previously described. It mimics an image from [Wikipedia](https://en.wikipedia.org/wiki/List_of_trigonometric_identities) for trigonometric identities. The use of $\LaTeX$ does not seem to be supported through the `JavaScript` interface; unicode symbols are used instead. The `xanchor` and `yanchor` keys are used to position annotations away from the default. The `textangle` key is used to rotate text, as desired. +The following example is more complicated use of the elements previously described. It mimics an image from [Wikipedia](https://en.wikipedia.org/wiki/List_of_trigonometric_identities) for trigonometric identities. The use of `LaTeX` does not seem to be supported through the `JavaScript` interface; unicode symbols are used instead. The `xanchor` and `yanchor` keys are used to position annotations away from the default. The `textangle` key is used to rotate text, as desired. ```{julia, hold=true} diff --git a/quarto/derivatives/derivatives.qmd b/quarto/derivatives/derivatives.qmd index c5d57b1..7df39ca 100644 --- a/quarto/derivatives/derivatives.qmd +++ b/quarto/derivatives/derivatives.qmd @@ -513,14 +513,14 @@ This holds two rules: the derivative of a constant times a function is the const This example shows a useful template: -$$ + \begin{align*} [2x^2 - \frac{x}{3} + 3e^x]' & = 2[\square]' - \frac{[\square]]}{3} + 3[\square]'\\ &= 2[x^2]' - \frac{[x]'}{3} + 3[e^x]'\\ &= 2(2x) - \frac{1}{3} + 3e^x\\ &= 4x - \frac{1}{3} + 3e^x \end{align*} -$$ + ### Product rule @@ -541,13 +541,13 @@ The output uses the Leibniz notation to represent that the derivative of $u(x) \ This example shows a useful template for the product rule: -$$ + \begin{align*} [(x^2+1)\cdot e^x]' &= [\square]' \cdot (\square) + (\square) \cdot [\square]'\\ &= [x^2 + 1]' \cdot (e^x) + (x^2+1) \cdot [e^x]'\\ &= (2x)\cdot e^x + (x^2+1)\cdot e^x \end{align*} -$$ + ### Quotient rule @@ -565,13 +565,13 @@ limit((f(x+h) - f(x))/h, h => 0) This example shows a useful template for the quotient rule: -$$ + \begin{align*} [\frac{x^2+1}{e^x}]' &= \frac{[\square]' \cdot (\square) - (\square) \cdot [\square]'}{(\square)^2}\\ &= \frac{[x^2 + 1]' \cdot (e^x) - (x^2+1) \cdot [e^x]'}{(e^x)^2}\\ &= \frac{(2x)\cdot e^x - (x^2+1)\cdot e^x}{e^{2x}} \end{align*} -$$ + ##### Examples @@ -731,17 +731,17 @@ Combined, we would end up with: To see that this works in our specific case, we assume the general power rule that $[x^n]' = n x^{n-1}$ to get: -$$ + \begin{align*} f(x) &= x^2 & g(x) &= \sqrt{x}\\ f'(\square) &= 2(\square) & g'(x) &= \frac{1}{2}x^{-1/2} \end{align*} -$$ + We use $\square$ for the argument of `f'` to emphasize that $g(x)$ is the needed value, not just $x$: -$$ + \begin{align*} [(\sqrt{x})^2]' &= [f(g(x)]'\\ &= f'(g(x)) \cdot g'(x) \\ @@ -749,7 +749,7 @@ $$ &= \frac{2\sqrt{x}}{2\sqrt{x}}\\ &=1 \end{align*} -$$ + This is the same as the derivative of $x$ found by first evaluating the composition. For this problem, the chain rule is not necessary, but typically it is a needed rule to fully differentiate a function. @@ -760,12 +760,12 @@ This is the same as the derivative of $x$ found by first evaluating the composit Find the derivative of $f(x) = \sqrt{1 - x^2}$. We identify the composition of $\sqrt{x}$ and $(1-x^2)$. We set the functions and their derivatives into a pattern to emphasize the pieces in the chain-rule formula: -$$ + \begin{align*} f(x) &=\sqrt{x} = x^{1/2} & g(x) &= 1 - x^2 \\ f'(\square) &=(1/2)(\square)^{-1/2} & g'(x) &= -2x \end{align*} -$$ + Then: @@ -824,15 +824,12 @@ $$ Where $h' = (g'(a) + \epsilon_g(h))h \rightarrow 0$ as $h \rightarrow 0$ will be used to simplify the following: - -$$ -\begin{align} +\begin{align*} f(g(a+h)) - f(g(a)) &= f(g(a) + g'(a)h + \epsilon_g(h)h) - f(g(a)) \\ &= f(g(a)) + f'(g(a)) (g'(a)h + \epsilon_g(h)h) + \epsilon_f(h')(h') - f(g(a))\\ &= f'(g(a)) g'(a)h + f'(g(a))(\epsilon_g(h)h) + \epsilon_f(h')(h'). -\end{align} -$$ +\end{align*} Rearranging: @@ -852,17 +849,17 @@ where $\epsilon(h)$ combines the above terms which go to zero as $h\rightarrow 0 The chain rule name could also be simply the "composition rule," as that is the operation the rule works for. However, in practice, there are usually *multiple* compositions, and the "chain" rule is used to chain together the different pieces. To get a sense, consider a triple composition $u(v(w(x())))$. This will have derivative: -$$ + \begin{align*} [u(v(w(x)))]' &= u'(v(w(x))) \cdot [v(w(x))]' \\ &= u'(v(w(x))) \cdot v'(w(x)) \cdot w'(x) \end{align*} -$$ + The answer can be viewed as a repeated peeling off of the outer function, a view with immediate application to many compositions. To see that in action with an expression, consider this derivative problem, shown in steps: -$$ + \begin{align*} [\sin(e^{\cos(x^2-x)})]' &= \cos(e^{\cos(x^2-x)}) \cdot [e^{\cos(x^2-x)}]'\\ @@ -870,7 +867,7 @@ $$ &= \cos(e^{\cos(x^2-x)}) \cdot e^{\cos(x^2-x)} \cdot (-\sin(x^2-x)) \cdot [x^2-x]'\\ &= \cos(e^{\cos(x^2-x)}) \cdot e^{\cos(x^2-x)} \cdot (-\sin(x^2-x)) \cdot (2x-1)\\ \end{align*} -$$ + ##### More examples of differentiation @@ -986,16 +983,13 @@ Find the derivative of $f(x) = x \cdot e^{-x^2}$. Using the product rule and then the chain rule, we have: - -$$ -\begin{align} +\begin{align*} f'(x) &= [x \cdot e^{-x^2}]'\\ &= [x]' \cdot e^{-x^2} + x \cdot [e^{-x^2}]'\\ &= 1 \cdot e^{-x^2} + x \cdot (e^{-x^2}) \cdot [-x^2]'\\ &= e^{-x^2} + x \cdot e^{-x^2} \cdot (-2x)\\ &= e^{-x^2} (1 - 2x^2). -\end{align} -$$ +\end{align*} --- @@ -1006,15 +1000,15 @@ Find the derivative of $f(x) = e^{-ax} \cdot \sin(x)$. Using the product rule and then the chain rule, we have: -$$ -\begin{align} + +\begin{align*} f'(x) &= [e^{-ax} \cdot \sin(x)]'\\ &= [e^{-ax}]' \cdot \sin(x) + e^{-ax} \cdot [\sin(x)]'\\ &= e^{-ax} \cdot [-ax]' \cdot \sin(x) + e^{-ax} \cdot \cos(x)\\ &= e^{-ax} \cdot (-a) \cdot \sin(x) + e^{-ax} \cos(x)\\ &= e^{-ax}(\cos(x) - a\sin(x)). -\end{align} -$$ +\end{align*} + --- @@ -1149,15 +1143,12 @@ Find the first $3$ derivatives of $f(x) = ax^3 + bx^2 + cx + d$. Differentiating a polynomial is done with the sum rule, here we repeat three times: - -$$ -\begin{align} +\begin{align*} f(x) &= ax^3 + bx^2 + cx + d\\ f'(x) &= 3ax^2 + 2bx + c \\ f''(x) &= 3\cdot 2 a x + 2b \\ f'''(x) &= 6a -\end{align} -$$ +\end{align*} We can see, the fourth derivative – and all higher order ones – would be identically $0$. This is part of a general phenomenon: an $n$th degree polynomial has only $n$ non-zero derivatives. @@ -1168,16 +1159,16 @@ We can see, the fourth derivative – and all higher order ones – would be ide Find the first $5$ derivatives of $\sin(x)$. -$$ -\begin{align} + +\begin{align*} f(x) &= \sin(x) \\ f'(x) &= \cos(x) \\ f''(x) &= -\sin(x) \\ f'''(x) &= -\cos(x) \\ f^{(4)} &= \sin(x) \\ f^{(5)} &= \cos(x) -\end{align} -$$ +\end{align*} + We see the derivatives repeat themselves. (We also see alternative notation for higher order derivatives.) @@ -1603,7 +1594,7 @@ The right graph is of $g(x) = \exp(x)$ at $x=1$, the left graph of $f(x) = \sin( Assuming the approximation gets better for $h$ close to $0$, as it visually does, the derivative at $1$ for $f(g(x))$ should be given by this limit: -$$ + \begin{align*} \frac{d(f\circ g)}{dx}\mid_{x=1} &= \lim_{h\rightarrow 0} \frac{f(g(1) + g'(1)h)-f(g(1))}{h}\\ @@ -1611,7 +1602,7 @@ $$ &= \lim_{h\rightarrow 0} \frac{f(g(1) + g'(1)h)-f(g(1))}{g'(1)h} \cdot g'(1)\\ &= \lim_{h\rightarrow 0} (f\circ g)'(1) \cdot g'(1). \end{align*} -$$ + What limit law, described below assuming all limits exist. allows the last equals sign? diff --git a/quarto/derivatives/figures/fcarc-may2016-fig35-350.png b/quarto/derivatives/figures/fcarc-may2016-fig35-350.png new file mode 100644 index 0000000000000000000000000000000000000000..1b2e3e02d99d61a75e877faae6142efd9c4fa621 GIT binary patch literal 139942 zcmY(o1yEeU^DT_K2ZDQWhu{_8YAqb*Cd$l%&y7h)|%QpwMMyzNc1EQ|L}jzY*ZBgMe(o~rqWSVp^$KPv!vi*WoKol5<#J$pb&Diuo6)FF7-dt z|BZyHY&<+%1lZWTyu4VwxLBRttl2pD`T5z{IoUWlS^hCt+<{IWrT`Wvck2HZ`Cpyy zmhR?mwk{sF&Q28n(KR)5_Vf^@qWVvu|NH#+Iz4Qy{$C^~_y0-jUxIA^@vw2Qva|hP z?SE5+{$mwTcC)qo7x_Q>A{;{h#r*%-{wIzQ+kb-pe-`uKnf{mcU#cP~LTvwc+eABpuR!LeizdKKs$8V&s42yZneH{zHfrpr!&OnCXwnA5=_6dQLW`TFsXq&(jE5I7rpT=_jDO(lDc3VePSU{bv_T2-;P9ndV9&@%{rVZuZZ{3Q z^7H8s?Ah`cea)sG@;MaVc)!0p?|S@Q+q}HF@%p~?UcBKT#BjIRuu@WJ#NU;bb}&_; z5Vq%QROR*T+v%?{T{C^=mt?D3#d~0J)pq`)(%>!^(He6+dqB8*ZSnQE_MQ&dvwl8) zX{GBuAe*81V(HV!boUGdo?fm2x<=c)Fydk5hp(>Yz{&OFKXixRjdYohES>$eS~6Wv zFtsd&%KU0uiVci&Qj-dk)V$3v^;17)Uh#oW0>YEr(1bCxmJ9kRcL%I@cfaZs=5)iO*LhOu0BMAeky@AF&<@cGY$7nff3$4$X=Ef%oPnB#1J76n!_Nz;{rX z6s*gi8BF;^iN3P0d$eUL4E zo4jxV#13W`u!4{e(k(?< zZ+c-q4&^L{KOFNp-oCJbx7lt^-N)PA4XSwVMNyqDNv3ZngB$1d+m%JvD-|L|M?5>x z+3D3!CR~ppCd!2L2e+qGfO|iie!v+i=NMO)SYW)5<+btO#lOeEo=!2!Y1&s00i=27 z*FCqdn{1gz@jcL6)E*w)(np_gkEXm0X9_#75Ot{o2r%042iHg8*bP@5$MfzdZZ^}w zoFu3S$3e9m%BB3HT~(z?M+ix_EhuY2v~2 zMB<4uO0Ed4?XLsKaJaV~6Iwe{5m!H+XD)m*cYp08d&5;M?~nm&F*39 zZG!bpL4@Ip+Zg*vYd4jbwM-#*?;F~2e;uj9uKRZQ$Ac+F{%-fdt**)TJc3$wq{GTJd5%xTev*KIq{87}Kvsg*QW_}kdS305uk$DKx7$=FTg`7yjm zg9zzbz3ahrL863dhi&~XNKU98hP9S6l;)M|HRDqlr;zXmtBi*ydqMb-U1Pm9 z+}`)Gx|n*L+U%T^SuCP_lkj(R5Aq;wqm$*Mea$0(I5q(=UR!5>-elfch)=69uyM}# zWxcmd;_%G9-#>;bjh9RLNfNZuTf3VV&p`-thc&@B%Fwh zdx3%T_S!10H~R-(6EUT~Vm)$W+X-wEAl#t6^d=l|;<#;XQcs@wH-}~E0IIk%)VLP= z54<}x>h&!8G@cM_ZM6TDV`sh2Ml!rmF^O@sx(m~KU?7+`rZ^}=tZTn(Z~Ay>dwchM^x z$mL_soo^-8-i59vL|Iob>yrO{TOXZozk}iJ(9hh2nA&-FMf>EWEoqf6H$~UA!qhzm z*_V2wWLt$y)j76Z8@O3u@;cMfx|UzNph*-imT@y_5uo6Fbj*Sv&{LC>`Hh>&d$N~` z09K6_5dNui_OtKMygPT1%i4VI7 zGv+i{%mp*7I)Wh^FQzop2--Y+&I)FP!X6fTS2EbQs}?@jZ?lAI&W`Ed!J?WsChhRf z3@*=+Z#MD{zS%}W6EjvK&=^V7Qm!WlTMG!57!Mm}2cA#+Txz4z2?<^wyu%lq=sLYj z>5Fe$(GkFR#=YvJO|{&aHMdbjqyojOkO9?q+Zi9O$qP8eZ=*MR?X|!lZ&Jnznx%8N zE4BXq*hqq356(tOm^my2_?;|y%NU(y-?+6zN_mM5+>E0+QE~#S`};|5%;o??gc2kD z$w-OjwoSbD=x6W{?JGsFE#f*V0a3_;^|N+*Y{4(yWgD&6Fwod+LmM)a0uvu9oG}(TjK6wT%B$YWT5VY>ywgvzObbeRhX? z)X^}&a-?meb3f8{X z`ExqOq)3NJ){l5|La`Uan!dkW*R@ABm0>H8LO19Qy3zP2rF|&$dscFTZAIc)#|ncS zBQ3I(g3+`!2FP_=lQeWIt)jO)DT1qhSDVxbd;@PZR#V58x3K26%}TagpU+MU;q#@F zRet^xzV-1Wr*3|4fc=CQ(?@jR@{H8<44(Es&dZ#KuZ%>ZB&HveskbIqqm;O7Dd*9^p`+}{PveNGAu3iXjf1Sim6VK4= z^2%7*NCyV1$#tXS?~?<5czfevR9N(0mOXQ3$8aRTKrJ8Rw&qK-ePek!YK#`*!t94@ zHhx?E7*q3Bl;BbR2=!iEcsM-(zOdh2@&(1>x}B2^+vpddC8I(G$wA#E4b&I?73lDH^rb)!y z+obR4^hAs7N0nyiCy*RH2J_>AP_RUa53;CW?UYU|w(=`CywY>8U`vy3FNg270hodb5hp<;{e1;bBQD}vlE{e-DA zfrf;dUwGmfwLbSFSM8J!HWn&`Sx=6HtxODOb|oz7G1Jn%@=QsXsYjGJU$qPl#%jl5n-|uHH0GNe6Ss%Y1x3Tq z3FRp8e|M*Y$g)mkU1g@FL2a@50F(~#r{>eSW>0_N|C~8&cmde|GYqAF`YLU&bZpX+ z3(?1&Lukz;!*NQFPi&uRjLqmB6G?~0xKjzEK2#6e&sd^g`9&v2QO6tZV+g{4rX&pu z;z#0G#@fEVPFVk9YFL_=Cxj-}jqH@xH%G^>bvHGFNKeydA(o>~v&(&Ft3Uj8WL|nU zJ-350eBau5>PFn|c5JV=o%YIM+NGTa-_ppQ;*CNSq7{1T6B)%U^;1saZjKiVoK?%m zZA=grf_xOsbd9kWEbl(W6PYeV)7Guq=+YW`Z8AWTDA&gk;u$KQ>=%p;Sp#NDK?vyrk9Hs&GR`&vD{EykKb&7Huy^;AD_##bt9(#q#PTJ1pO zgkCAe`$AsCW25h_3KFH>i+C;uxAk@vC21nX_R7r2WpkJ<#NI$5JP8bIZf}l3WdY7jnPH-NV(>=?q$W{#JiQrve z81sFo!>vr=m(O~lc1&QnlD2@d08b3%dcQ|**5$$jDPVKm8MA1kOlYSA+wHeSwrR8O z9rHVMDbVZr8Limu({naLPruD2FN546ZI+R`uJg53?KbR)t@~EZ=}WL%tvPQ%WQcb7 z*&C5x-}=;Rl;E<#KDv9)?vT(E)QV=%;fkVh#H*j0v;F;~6E9mDKK>|n7$G0V2tA%h zf^Sn#E9QEY<2Pd4s<)2OLxI#zlS{9V5^bf)hu>j&yS%)$)=ZmDOZQWf%LGMf%P-Wl z6E^BOuxFjTR8Rv|8|k0OU`pMnE)o3SMgL;vkUv8iP$f11X1o53@kQPe&Aou&O%(zL z5^u09z9g+KhXne(avSDRO~W9eNXgsv(3X}mi)RqIiH%5d)3MAMP9EobWHm*MeQB%V zBn{>}oOb^*0>R`Y{EOTl_Nuv}8sSCWGxDXnMCE5e0q|q@g%ONWxD1$bZ^|sQIU5K%e5EZZs7c_38o1A{0LcBTQOY~ixlXD-> z+>&*IyOvpsj3gvb!-e&+t&Wc*>0?{-z(PGToOYJv``7(iUIkx8a+F03F?T1}WaAJ- zTF-oH@xexBL`hYazA=P@bI+qLu@&E|T!2U5kIJ2pM$&nZBTC%xyL|3z_U)e|P^-`* zw=-M3=*M@L^>8m*02*U;h!11Kbdm=e-VypJ9-XXL;K*;8Xb70gZ~O6K+EkN>HQ~ak zrf}4^ySBLSVy4Vnh|#Fa3_UO?HI)5x!dDY&e3>^)0h{ez1Cxu9USs?y!vLB$i^<>H zda(_4m7REhgrc`AR=80ZC2y#=&Twt`aF1zD$b|=40MmEdAoM9G_L6C^sBO*8>`#LG z{Cc&=`0tTpA$?(xz5*|Zj zoPN*S(L3^{OBn$&lZva(cpRDg`42in*{Bh7HfX+56GUI|YC3Dx78vFeewXnC@Fw@b z-iOxSx)|;cWn_^e^z1?ZWbmuz_|D@Q=g%THd)?ff;+&m_?!GGtJjyfMmk&$a|TPzbRJeiXK{17rnbGM?^OMwm!PKPG~-X2rJi|m@=i-oO~EaHhK^)jf?<9h?zGlV z3fHN?u>h*ShX{cIKY#3RRh88l3u|=g2oDkcI2N;6WQ3ke>vd(hqZpheIBC}es|Oyb zx>T1k?LC8JjTTU#GvoucPSzAZQ{ig;>bL4hjtq2;t;3)^M;LfOWa}ZKR6)jyr(jR6 zpj082OJ}{dyEj=Bv`_EN%F%=|#Tky{4X(SQ*2({LH53YY)ivioWtpHx9KnV`uK=HV z0k$^LE{}|WBf#h*!r|dE3!YS3O`EDZ6=@Urkc zzVb4%!)Re#d0am8(Ohr-+jtZWzKg9<>P<$YrC+Bg^CaeSVYEo~Io*|uVX;%0s&zwW z17WO{*I2T!B{%ji4iP*r1K4q4{Gx8Dy=Ra)@Tkny=n^iV0xLi^XI>`9Py0la%8-M?AcObbF<7GkyP_qWX%lp*I8KP$+RG;r+K@sdR>Crw@Eo>$Z(GRWFF5uQRRp4#C;PYF+ zcc7ap-lKtiJG9)PNY0QTPxJxLlgk;yaGN+V@ju4BOKNAhrNZRiN&d@Vtf_`CItE9a+{i9MU|0 zyUW-{;+vuz`F*>Rev0HCjw*hzKB5yQ3UA+zNi$_$O_8_sN98E1vmMp^Fmae(B4dA^ ztxL_w=b`!bzDt^7pHkca-(`Fo15HB>HFKJSzj{r$6)QnKHe@CDhc zN_k5OPPT*~ep?(K72x|14Dw#*E~D!EnKP2U&rejgha~ou*omkMrOe~Hw&p2v_BEDB z;ZwkCmZxQxZ5^a=q{2nJz|N_6bzBL|D~I|P&Vt+YXGtdXeRKDE^{3|MjaWSK5#1_- zbe;g?Dq>CSKeRDiwCCp+GOM%UZtSFs0=Dj*Ov_~Zo+h{>n_HKkq^q0X+ySHfO>Et# zns3bNr)cjVKHN~2%sq`3f?WG2j}iR7>Ji5l(KBD3soJ6%am zj+SQL$iLF(o4qYL`(}f}kB-~9rkk#G(YHr?x!wd-Og($Q z?_Q>`!SJOyYtBQU&%k(R}?g?_$*VVC5S&BQ#xm!!MNF3Ok+ibmKLBXmcua zGco)$M@Ut1EFuaQ%%+?tmOY0A=(&oL5hH~XZno)9OkdMU%=qjsSKg|~zNW*J5+RH8 z9kPnbL^DT>eVUv&HXEuW%XfkNCNi|GUM?+I;7X#4#ZhZTbIb}?#MA)WVQ#u9beZGX zIc73%{xWiP{B||%3Eu@c<9*O0CJh#(Nc}>Dv4e{#LcRGl0M#u|!fvuUaIq45WIVwU zy1R23{ohS{?Tkcs>*p0v==^#`+oE6>tmtXVq2S^2i=G-HBiZso>c~KNcDywS-n-<3g3DP}_FlL}=f?>tm^vdzjVjqVTP; z8^)K2=`}S>ir(HMs!i+W^kRC}_@+Bh5v)b%b}rxf*Yudi@%jfar#2C$j(p4hIHgp> zu-D%2x~%GqbnS8U)0KgT2S_O4sI3H~om+0X{>^BlULFPqs3%b_gm zD&R1n#O9m0(RZRGO!5_8cRC+o^(L5M7PsnRv3_EVHXytWI6J(VMj}i)f?uUlv@F5l z9#ql&dZ+~@sgf}8z}x`L)rvVH`BUH-S<<|~$Jes+;tk3bS`Z0c4Us}x@{LOfG=Lw( z`Y}=xfjvHREq2xG5yQ{;>Nr)@1;_4HUiV9_UVwU&4NlPstL>}Eu42D~3N2APOB8eH zOYbqnFF7naa9WZQ+xY#l?@OI*_-*A_f;C+PjC1 z)x}#JCZWlh`jXINBP^bZ9shc(r37&OF4CyDh4^N)mF>v>|IU_8d z6aXXGJD4h~Zkn=ZD8bEmLN?QmvzhwuP+KNbv1W$*=Y4lVL5x677>;;rByKK^_GX_h zWfIv>?$=HrmC$%qD54zHC6fK5YpOk2-Yt1H^q2-s(_nd(7LeA@GTc4K0mxxMhIs#; zy^SkKtSOXagV8ojV{BZM=iem?iqgxUkeeWD?6vy~KGn&|iJKJS1MQ*Ax37?2;<&t< zOxcAY?IZ1S#s_r#-un`;^JryFKgp9(fzzHCCr8$6Zi>@nrIpaUs5d2&$(Evpdax4~{eClwmVUv4f}UL1Q};oTny(7k+EsVh)}PuE ze8s89BjX@-aUmo)a!HBWn_;q8GK5m#;alX4w9LCrm2Y_tEWQwLFm@WPTTKlHPUmnLj&Xi?u^Mpuhkk9%#{bK{2)^UMf4Tr z%;5KCEUUoqQVx|qny*mhsVPrgewSDU{G^wv{tku=VkrLJ+yKoZ2!mB=On9d@L8$XN z(?fA*Ybv*;!97DdVeT1mM7>Fl+aNameRmPo%1k{^zBE^s1H0NUB0@0!TQG=fu+I+1 z`?ujT?H&C4_T#;`rk>jHOlO`4sZXT1s8wSxhHZntM5#L8YJ#?2hB$u?OD}(Zi;Kto zr`*Gia_hjmBG_>hvgV8yTYzEUMA7&37gG-l00TV*pVi}pq4oUKWo*PP{`!ya5-@7-Yi{62$0h#_ z5osTjSx$+$#c@y3pOV?2X7M&bi;QcDN#@nlDY2>xi7Ovg49F!ivzQ}2DHrc@|8?8 zB`A-dqB^o?3S2tBSEXoyIjJ%=;reSAKd)LJIpd%xslohE?3SH4%hh*ySZdmLs_zWM zMl(O;<-h*P8ngOt0*o z+ny|~i=PPPy(#WRdL;IU$8+lp*GTOa_YwuNM_JhLl!78TQ?)&vCZke=J&0u=(CEPmG8>vW;JTY@!|{_1wK4{JQ#kox(eQ)bkX+ z?V(LZ`Oak><4%Q9N4A3IqbO_Pnhd%xU>Ciq8V0C%Pt57_C$Jjbk)f;4Id1nqPyFrU zg~&ntx|bv5l3MDRvb+4yPpiLyWMtyRY=FJw@#Vhg50Ly05%u*JKX?v!R`( zy!KJzhI1pPQJVw79Fp4j)2>f44C!XuOU#>u!mgBedUb?m(KV`puL_F62?*w7aR=g^ zXF_MpZo$%OUQ8B-&Ku)M=v&)#e{ZF8@bgis&?x)3PxaTUb50O&3*@vdO`Rl*WJmcG z^219}o#SS&Ezp9R5svUNual8F9+i;F#o)w!T_dTu*8?eiH$^jUNG#1aM^q#atRify z^HHWtcz;Wmu_gXc7`#Q>c`yhjTQZciS0~J5t#2pT_a%`qr=ARBVl=8QipWtD=Ph)w z54BXV3lyQYh$+Uoxr*?0>UWq-E=Q8zwn+a-?_`c>B^o42Hy=wdt4qbpFOo4Ps2EM) z{MnYsj*=PV>-wT6bT1*{G+=bi1dANpe#lOevmKJ)p$Hnc3NohU9VrX)Fzua7#naM~ zx(5z$;a6DcFu~9L7!=OXFa6d@i=l~@BZw7>X~4KdAhr4Wn=^Z!!7$f$D#aaslE|J( zLoc0`x&knChn+LXy+%Dovdgh}t#7IUg{yO75Q+kV@t1WjSHMCN)sISTpa@|aPPP8J zBJ%fmFFs8$UPS9-?eB?yAbH$`{|ouw_S^ksAj2#*#x6`E6+Y`VZdG(1d}QiA5dmIM%mO9yUjk=blZo z6w%9BmWd0bw$v{TxyM*9s?bb`f#_}T>jfuOt_fNbZD`I>v4oQTwkoWFW4NhU#4k*x zjONR*2C#KJhKwiYO&$YTzs*vdAF$#f{UIyxv`3TJIbu6X>K-#@M zCU_b`?FHwLTA9X}NL$M)v(|r5Dm?BR!5u7rXnjlA_1btbSeW{fh@e|{<$bFd;u|9U zE8!gat<&ETJaVw2d|*=Qv@H(^vWyV7%19I*7ruH3&UIIgT` z=3Z<)f9K!!%}F_InW!`G2+2g;ex5?pPdL9o3j>srGhi2 zEluaJno@^VFX+j6q~iPrVk6F~5?L;=cillpxJ$-s!pOK!FLG_MXYIVI;VK>e%nhQ4 zWZ1f)my~8`d7|)V$KYirQ{{}db`F?wLx#d>LR*FItx94v)m2x<6*I{{mE%8b#=TPL zm`KKd(j70_QKMPW2|nhF#oqM-q)9t}HjXmhAN{V*!S5qJK-c9OV(({ype4|B*lu(? zse?S@gsPc|6Wf*m75+%7aS(DQFXf!PV_$?%S_rE2?@8F28aS%Ol>wWAVy21KP5gmN zLhIkZkTnu9_DgEuHF&1$BY+1_B!W(!%QfO}R7eXsd|wW9Tlr9OCtH^tlbZYq8##PY z#fSp&#+N3a`NJkRl2z7-n1k-Z)v$ml>2MEvng-Qr6%iU1JU#X(2BEe6wo_n1jMiCs zFV@E+9{n9hsou`)wLBKx2^iu%1`m`=7AL^)D|mXvN^yGetonJiI^obvShN=$w{~d@ zz*fps4fTUZTxZJpYO^~ano^($ZGVSj{m4s$SQg|+qt21noBGCzJ%S;rfw>+y3t)59 zy91s$x}Psl-5Gtz0+TiswGnK3ZZm}PVIoy2iatBx&$%fcm>6eYXWHo{QUUk+JZt2= zpkt0i z>KwTX@Vrv7+b)V7zZ1du*}BnT(!g^AM&_$k495q>;bk*LMmEzo~3)?WZ;)|zqH4*WDX$A-%x_w@yXko~Xyv(*}{ zkYEMM28q*c+mA{2xhih2m-6&N4`2%z>akKSH%8~%6 zrB86SeILi-bhYQ~F`c{LFE<#MmGNCVOM!Oe+@kqBQZiR3O6M%v92O@+rgq4P$BAak za>5#HU~GsO$jI5s`iJM9Dal(VGNu^6(lYt^ON(`;w_AFIUH^f*{cwV;rBm)Fvd{tR zO3TGNQ|JV1nk<-~XY8|R=D3#24B3kKtj*7i9#r~Px0)dM`vQ8=@i+JS4=IW921~CT`X#!fuqeR5@g{*H(?d4X^`c0DR z4SO?sLoP_rUpa5JRM$#rKrWh>_@8qZ*X){eIQ4|?!f{VIq9eS@zPaqo-h8bZS@&9| za=DR4ujqWNyYUDZt|~v-Z@-^t%mMmlQ8%?kwgb0L52;Wd{lI?i&l_9MX3x7!5cdsu zl0uA=LxZ!-`Ns>Gy`6y(gkNb`e# z1ytG#!P^-^;}c@bF%n-*Rjk6p=fz+B`oE&B+UasnMQ^`x-Ck%quiu2+Oy7_`rAyKe z<4RA@U!9M9XhiLbq9i=C{fy@`Ii`9Zy*i*o&sY5O0>KNr(R#LfdP+=aw|Ub7q^GmRioN;;>;CN)DUwwKdfvN}0| zO_xvXmlr++p+SWy$qd5mk|AY)wDS4yk)1kmJ*M4n~y^|e^94ht(6;*##Z74kA;z(&l3!G-&dGb2|#5R zP9703Lg9lPVsA7WCixKan0n6%Mj>>F`?)wJT9&nLDY_QPOBFD|2!QzRT2syU7KX&b zNGlQoHG?uZOQ%rDm4OxCRMVm8Eq-fECk_;~od#8bcRKVStdsTPK-p!90cT!KYgtE<(l2Dg%C!S!rbOFzp55fLiUvTA^p#L|rFJvB z^KCx~;&%1UmMeuF+JY3~fvtqDd)@!eb98D-|x`M0d-;tP}=g&lm37+dE~d> zptlx&rf%Z~#g!|~AjOY;c)S7#X+w?+MCsu)ZX0ugOcf@>_-@+WE-wYk(Egfxhy*k9 zYM=bZzB$tO3b?d8RzJ)P@^%y}FPqJG?DvY58c&mJEI#c|l8S#D8<1)k5Bz$onIl&r zPxK8RuV`xw6Z4D?IDME-ME6V|h5M_eY=0@~LF%cM8$A*7;z!yjl_?N^H$nXQJfGqHU_CU7m~sRMO|x(?^aVK zpJt*rS9|L}Ru({Bb;RNEO5}oNFZyqeCgnpIX1ukh1mwRV3+?_2Y1_z#_vPsc|K2X0 zk0OJVINqQFIfAG{Vg2d%)QLUwK6?0uu5*%F{?&w=Mx37OBBgZefd!lXMkoO5k9>v` z7>ipWFL6g$(VPIj+MvLIlq+;|gCjFTP@D=@Xwrf)?6I9O%uZ(yIe^L3O(DfD#Kf|@ zlJU{y^Fa9I6G?GSSEzOvPUamdR{CzGie z$Xlh~BpN5QCa|!uxsF>hH}kju;Ns`ac&^#V;5#%-7v%xWikS9!X|E}6%-5_7(ZK8c zB2@w62w|T0-WK-*3Uu#7;cZmR<1R&pvh6`2SIk9ML)p(?{Sa3;_Wk}OZmg$y61&($ z#!XxRX0~2mA!gp#4QL}uej3{Q7SYJjyX4|arva2!5x!(>lF65TLaP4X6!@=rk|TZ~rlfR>RETdIDSRb#7b-)Zx- zZB@}6KPKdP-a-3l0TG{=luug1r0n8!hMUq(7g(zyBfbu~A2dp)A}uVT)12Qm%i5Fu zzZ+;0WS5S>3(H9;xbEhktemh1a<>~zyaP1#YPYMCs0BTo9&P8vC)i;hi|M3eTDd0* z$nGpyTj*(8MiIPxm()!wRYz)qGLt{`??j*^Fb7xK|Wxhy00VOnY9!jQvfXod!&ioVFHUD>u_!K%PkH| z8|R2m1^!`w8)LXoWD^bQyJ;SVh)sbtyDD~_4wJea1$8GG%yfDm_7O{|tG{12l^@K- z!;HSsypKjr?)#fON!CK)+|JmHIzdt9lt*9?L$-qQ;(>K1s3xPN0`g6?0R66+E9P5n z)38p)XxieaMlj30pR!z4H*v(?$u4DsERx z^^A6`qmQDcnB%w2>L=DX)rBBmq2c99w?Ofhb3M$Z8R4VP<`HiWhPBaFve4o_*$kM& z_+%+gm(aQ1nM(mzq`Pg`>p|;xZie_`#Aw}Nmz}>Im!wl`^eN&+sC^&p$MzT2>D##Q z+!R15#kwm5ibw+5lfZTawod097ytZ%Dt1AowehppYic2O$({u$V>rP=kUL=IUs|CghpVm0S!1U|a$=?NYxFP87LDjuPVgSQG;k4_2Z1^o3 z!%(Y@TK!*fczJ5axIW6EiVXFW7lY;LD;kF6JvKiYBymX~(d4#QHD84pxa5{7*PK!q z0e>ftjF|rp{C#pi7y&(Pv4Xqz#wwCIyu->`f1*EWoz(muc$i0o+3gIGy&4I{=}IqI z7&4rbSwHv8ec-;z4-Z?Rry4eVyAg34cr6SbnfSHG@3?c)S$S35+^*YYb+T)4yB0PY zd%|(VVnha7vUf^UJ<-B!nj3i~+Bj!B8W+f|p=qYiy;=ShH7AM>clW1zyZvw@hzR4U z9Q^eqG<8OO^S<^*V6UwCATuBs;5$a`%a4s)TqoGmQXdxBA0 zUk$4hBzYS6>ZltMJyTI;|FNQ7%LL)U`)v*+YakX_@av~z=C?j5<Apc zbNQu3WR}$Cv$(#+IbeyFOvTF%`Zep1>>26EXW=_<8c+RfN=Wk^g~s_KGR3+v82Xw! zlQdwXzPckTualJez;FTQmty_!+|}?>v0A1LX`{ZpqBD>+_`#27p6GM5zW#BGIO@?* zdc;#g3{1ibZeO(k{XKB&on}7!sj1Yjbr#4p z>EyjV>-IPHl^$KltrNftRFHkVLV{Kg9v50=`uCZ;r!Pd}=DYQ1JLk7nu$SXq8VQof zd_7rSaM4>~{Z~+O(XnT@)Z;PfwP3^@47TQvC)Cp&5y+qBDAnT#duXnXTYizT*Ko{P zHOVet9(0^$&SQHXtQRVzdPrBA#uFTFX~&kjQcKS>!ZiUcM}tvnX8g05&+Vd-UYTY@pe-j zmq6{jH3W|g<`>I<#N{9q#ad3ajE_85uRa{rCOWXJ6=`|Ge5_}E`S(x$Wmxf`xU+5N z8|cD)8(j1n2-AA8Hkctjs8@OZOqX&9$PCd~`k_yKE^D}SIqv>SPZ2M%2vEvLFwXz>2a{~5W?wi(K!bU!mjImYJ_Zh!T_@rlR$4*+Umac-yy|NM}r9H|#+mU--ui5SCr&@)?ceZH6kRGfW&7s#;@oSMhChFQ3v(y-T4x(B{Q7tVgEGqA|F;xEA(t<`@^MTs*&Jv3@_6@jrNA|q`V!H{pm%FA;#;+4}a2@W1_m2 zL3T>%p+;njNaenM&LR8nWTT*=64ImOMzsLtr@g$>M=(ECO_*pi26(8YN+yY1663ih z?DQ~R;qfeH<=%JA)$4GVxvk}d<)m-by7FKWpFMn2(TxpoALgk~pclWEF!w!P?$6Qt zMFYu2c!Rf#5(aYEA6{n#`UG}aR8o0au(uaZm9-5Fg3Y6Cjr`fJ&#R*OZA%LQRRhwu ziKy!8FgmhTD|dDHZ8|V7%;gK07>r)EQNNwa&txJ%I?m@+1$Y8+R}_a;QK~Dcii0eJ z78IUm9()~}!%wKiHq%3r-!l0c7du_5AKC2yr;cD1<7dVv3h-z~*XxK^Fk%XW9i_*& zPvI{pzx|eyBW&UOwbMQrSe>Vi-hQg`Rz@hh7I_s_xZF(AGEZ;0BNY`=cyFOmd-O-W zpJ_#3$CM}37c1Xe>ZG&lf&-2=C}5Pe0Rs2oV417Qyd;Q|ti1ydJNJFooG~T_5ByGJ zj&4FSQs=||o|lHaqO>cVozCLX7R1KdGIVYty!vm@b+ zR%7mBvqAvp!=bm@GNRkk7i+YAG#~oh(1C=nsNZ7plf7Db4MEB6&bn{O*0O2R&xgRv zG;75nS$}n7XaB*W^r%|wk)Wj^3zO|tU<@~()t!VIJH3;s(gmL_udDmoaR);G2A+s9 z`;TiBR?gPTM?EI}dEw0q1I5?!+QzW{M)x?i`v5xpXEpnn#-HmxzyA*aS3s!0SGE}q zt>*oG_(O%X5=)-#1mpPg% zzoINtAHXIL89j|$_(Zuymf%18P3xZMCN73QKw){h97XE)C?G`K@I=_KmbWZK~zia_eWTLm59g{cJqS%n(ctC zsUpq;I?UZk%q^*bC?nnncAm@PBph@+>Jk5{j|*sE@mAiaBIpefdi-mMf|ohDR*UQK2Bu%rCDw z>y}#82M;*owARPU^tRXTpYrojcutIKe$GX=B?9~8-8-RSA6z~079EZ8MLxVAKSzC`+h+h!>R!dl}c2j zW+~=&^?>p8##MU2j3GTETzC9KuG!mSaSHuM(55bUT5>vZjYYXt$pNFS$zXkNR70f9 zz1CM}O@}Y4;TC4R*mx@NZyW`be`nNGt|}-Epo)|=NnR^$a*&aWulBVXhgYId`7Hg7 zVog7&IJ549ax=erP2N0?Qs26G^cp-a%5nfDGqk?z7&#t89DUm)n*=d}xz(J^Cd6ofk#jnbO79a7=R&LFz=d-FaM6p8nh zUi~pTM{MONzE?Ra!~<5N4IfmFJ%}js&d9+vkGl!KgcGYOjlXtF;7Wrq(nPZ;w= zHu0h|)M)5IfvNNxW<^ojpW_*NYp(re;Wo#%bu*qB{n+fs@u!@W)lP--q^kyNQ@GN| z_ZnTtQbEG%w-JY9v?lx-wjJd`DhS6wzY)Ttq*2hsr4cHb8Hb;;px2QVO4aVZBTQxm zip{yI$SzL#6=~)_MHoE1{Y!uJa*WDLFTGSwACMZrP`&WE&y{m>V@K3H-+PQR7ucfx z?6c3J2=-8>Cs7zr-n&38BKWX~_{?hwuN)K_s$`UYOraO?3s?y;)yiO(gnRQCBBVNeY`XHmom zzLgv2T@^2atl*=lGkHBZt%v6Ye06IADl^36fx!N<5Eoah06Q&33B&!5fNsvonl3Mo#*5~Y+I!%rMw5gPgriDpH z^qDoQ3rkl8u`Z5tN*&$F0h6Q|IwfVo`yd5mXEzJVS!Efo5MnnbXj?(|`32Z`Fj^Vr zQE5{jb&Y9vy}hk?OS zst5E)*tv!yNNC->mKt{R7<7ZHnSTrhoT}HhYxct$V1 z_#y|}ypE7RQH~$ETi*Acrzrt@s=WU@-_Lm;C*|aDFGfRH95WsbfW|;VSEHRTeCeg6 z8lHIcPPs=)!W5Qs_vh%nZ?$=66uuFSJHk|ApZok5%g27}Q{~gY_X3gKaW)P-_f79C z_rB&Gpzc~dvWwC}{{ zlxiQ1sjcy3d+(fWzN&Ps`k1lEikfDKs<^|0D1qwr>WugY2*8CTm6fyuZar5WCj0WY z54~pjmd$>T*nOpAq#oE25zRT8)j8V^SytOdUpFoS@Nh*!dq$-ig^p}BuUI+Wj%&Sst9r<} zC8Q;iF5%%ge)K6WmN*%f_9^2J&b|aeIrPWvws*PTNyyZG=|dvfx?P)!&EjSinxVv& zL$1x8sp#B|CNWgH@jyYhUhXwvp(a7kvfy3J_`yYM_IfaD2+DQCx+xk!Pswuavj=ZP z$oz?G6+rgz>n#JQ@Y#G;Z@}byYq7L^$R-Xvfnx|fk*Qda&|}vSG{qo6qlnD8(n35G znoWb#WA4Hu0nyLd@~2WZ|LZkZI{Edo^dTJEC1Eh)lgUHbUPS52 zAS!U1pnK+Lyd4y>C0s4UN(7=U)5LeJ37{VVA+))JLP|5|3}Z?!^{axXV#tiRZZ7q< z1?Sak4ZZz}=WOD~=VT-W$}xjCUj3}+egl34+p+$2P5g*o(;_`$#j6Lel>4uLqTFB2 z$_p=imhHO_@>q;CV?F!yljVngieCg%a%4c49q5SGU{$#m6 z`wif_Tb_I0bLD-1{N14y=Q*Yi4~dcs8!stTo~t~@{eR;Mp5(h2Ht-Y0(s}yAVAy$# z{In(xEwPjr2K?jCWr_394>`1KN+Yjg^#GY;jEK>lx!0xnT{>zWY+G~Dv+jH?3{H)v z954LCcTJJDYh!+W*ac%ahv!h!@Ya@}=gL{f$c`x@pOw$e<2Hj5#fn^I7otiO{%{RD z&X}Fk!3HJdeJ*gTL@ycFXS~+VFg`RbN~`i*%UT_KluZw0tj)pdNs(%x8(z_U7;k?8 z`GAy!M0RF6F0JG&DGmEXhqtw%=rnZ+oorYHluwN?jU?1-LzV3%CnD)3c$0aVnzO2c zD45lXMU<1z6~QVyUt751q1CPVJ5W1>U~m5s7`qCo1?6)T@D3|8C2UkcvMY#(oCKQe zR``TLWF(p25l)8GyD>kiLN`QK2}m>!O;gF>SLADL&eM?d9OVK? zX~H63YAE#eRJsb2+fCh;E3bIEo?A0>E&$KoHhruyo zGw&(>Oma{(bA&DyMHLT|Y<30!Tbb z`t=NjrZ1G+0fs@PYs$=puXwA-53CwTA)pY++F}I2Z_V>o4>$ec$-Aho9VZorzle&>N%;ftS)H87m<7l zaa4+i0wPl(ur-CZ&#`@31VdQ8C&D2S=?mC{0Cx?#IJH=k-!pXaPfrYHy@G-LRRCcW z&=7zzG6?|%Sychy#i2Z=Y z8idDHNi$#_!DO^}Bf$dF6{=C?Eax-zuN|!WYWB zzV1Ecz0W;YzWJMfxIFu|N3&x|UUDwCijT3!crOuL`baT5T&nWUSkg6%Ex^Nb3x3LI z#TmbPJ;|GgA2oVUEOoOi7}*|PZo_-uNz*7~>Y z!l``VdMX=$)u<5r#Vg)4&dSuYx9Ja?RlQ@BuxUSyfF7_-^;``uZ;<`rF$+v88ax0KceWZx=mwicHcA*A}1+ON|g{P*r zk3|QOS}V5#jtKev)!ZmGh%Mp`_ieCM7*?wmBIxyC4ez5U%$X=GDlc1z7#J%P>&5OU zp~^ilwoE-9pwI|$>_aa^q1%w7j({kD(7**g32lN9-Lh)BMS6r%867M7R=kN!pqi2!entTe(Id+mc{99Zk2pB zv=hgAM+$#%0kbv6cD{#0unE4Ur}H&g;&~Z1U)&; zRcm2-<@Hw+=D+Z{7s;1?I*j~*?|66l!5{pAtfW7IVjnVh4Nc|=pENw$mqPDZ!Hr+G zY%(y!%$c?-Am$K31fLq29EQgHJoneCiE2=*pzssXU7qu;-H?f7ln|7MbaKN&8n8zQ zs+=)#Xo?qS>PvoFZ#kg~I(_@MePj8)qi-!=_=8uPXFMbXU8VmySEnRK+9HS)bQhn6UfM;T!~eAWglf&?o&N%+AGzAYms1ldNgKjmcyty;v7E z{7!-y&h4XwR9G@c4bAJKp=SbYP`Zyk#&323K>8x5Iw$0G(NQlVp%gzCEpvG|yY$MA z9>5WPe_p+%h$0l=qE#;Faf>h4LF3^#2NY5^%TNO5&yb5J|EBzWkxiw41wHK3@m=tA zoXzrr#jID#r#|(m^2tyBOA5m0<&Qu29pxu~>c`9DhyG-D-QKD2u6gbPPc+R0G>73d zx>lT5Z&RFTpgjm_btbON)9P7OTw7x2B93&B7i?`FzM8`=96;~t{%XqtD0H$9!(k4N zA|G5ow@At7ts>AXo1$Qxqr9_%F5Yt+DKM7a^gG}FWKqdl1@VP{^@Z}QzxMI+8^8XK z%ZGp9`^q!VK9le4ry0LODP|%A(g6ynN=Fz~!f^l)_%VyW@>2L)f#_PiNVjL3ibFvC zl>@jKnPT08AO9O;VDejY+;5-a(>|Sxc}y3=#w;=>f>FcJRFILEeBvMac3yglMjTt} zUdJeiKJ-oQ9DK=xp0_Ojn%@tlzzri-e)b*n3GPt#EAXuajnV{O(^&EV-&DEa)mG_6 z|AK~|7@7!`>KgCv3BkiJ$-vR>;#If<%3 zaF~qE4F^731qs&hds_OF@w{G*g3keu1az4;&sD+mzTj5t$aucD zR#)bi0cDmj7u@N5Z1E)N!#;yE=;UioW`kj}-~p~CC>CkkLc#RqI9+Qi>e6rC^({WV zUncbWKl`U2EC2F$Uns9o0`|<)?}#owCB!vl(rD@U8HeZ1@wp&tu$AI^ z=%|vA7BLvitHRqLsjucq$Ap5J6PLtqd!M<}5At=}j#xBtmz;3Q7fr#pHHOfiw1_Dk zm8>3f8u(Q)={;s~iA@l~-VCI4%PKZT`0bCL@b@j{{p5T<^ZPHCU;LHdDD#hgtbG6X zenW>!xIMg?qVjxQAJgH|OSZKtCFR>67PW~# z>376DhYG_fleS2|DG!n0?iO=I9%To~d0+s+Aq&=e!Da(%b6I9ic-ouRatXa#6aPMA zQrY@On*?#38v05sS4y#kPE;gzE1kD_WRU?3_9ZdAt^jip#>L9gpG`~e-y_Fe>Vx#f z4DZor6l}e3`+4G6FG!(OiFJyf&olbU5q=$X2wwM`d2T(bER5C1f>-a~@*72N4CujUckez44F2$<%A)pR-uaxZto~w3 z^*mLsT_?UUb~|azf_y!e)>Oc)HN4bxhek_9!M7-)@B9<*EARZecT%nKnex&9>tp3N z|L>2NAN_$3l(#?gwSh%%R^Ez(z$1pBKC8l&XGsf|GdwpbQa2M+d?~ORTMeNL#5xAz z(y9QDeAKI6;GwpBHbqVJjjX!J1HRfXI2i9c6^~%-gAaw?gLi@l(n;~~QOG@bLs|=y za47RCsI~~CZ(u*lUE?F?f5OvgsZoCO3f)@ufZ=?85SRO06c@*O$Tm|{ea11}rZb|v)Torcc-z)uq!LD;>B7`+Y?dPIq@Y#)gd)H_W+*0(N+#^A$XkjVjQ6 z#X_*}-=MU0DDql4mP)~}!VsXxB2;p}tfG#!23QPN%ww0$#rli7C`5^-S1|{#GMNO9 zr_w12t#F78UnS?!f$fg6mb8{Y_NC%`l|A{E&-A*JoML5pruFTsUR)GE*JYNJoq;e9 zZ?SAmrQ_s0-OBG(RL%`Hyd|<@dX|9*viTX=2(pB$-p>~xTOt~6G{a@zC1_ zt)uAlf?)W-!L z<9GI_Oe(Wh5G5tY^@RSs9)ffEPrlYhcyCk8+r?|7V;&Ff{eB3ad9U$tOjI;u>xhtQ$esLSPSguwG=TD)-FQ!g9eeKMhPfq>MDcu1)JEQ0KrVtU zMUhzyz4c_tPgI8IyWpE^PP{b{VKaB?I+4m#?vJ8H2`t$B&^#r#&iW&XGP0|?F%-Cu z)I%o}Fu!yH?0TIo*P};zNI#EKv*|UJW)q@^mA=9#BOU4*f@GUSj`z!F!%PX{eU4wP zd9CnJ`93@+zw}F_FAy2O0O;oW}yCo1ZIkPB7#(2h>=KWK(Efe(kjU z!Y_QZ{K~KWi}E8s^ry;S_|XrSr{4Y)p7?R--5A;X<6&diDo(tjpqQ6~mJc=YW*MOO z8P?k#4%f`#8uip47R89Ox^9}w1(a2%h@vQYZt2Du7LI1-qERv`6pt%>4Y=K@W=mu< zVG$5-ktcFZL2gaYv*lOKpGFY*vU#{o5qZ3&__H-{wN|uLe0l9PB7$RX`GN0!fBCle zeM9;AU;ef7>woKK%ZLBWhsyiE?R`nB#A!jH8NEaa;Gx>Ai$8fxBU_c;SLb4l9`s_f z-57=KAvDc%e(T%>VH>3+P9KaVvq zDBZ7amT~HtNu>VT<~@vXv(o)>OOQCrB%1IV%b;$pWER^uVR^ANBF7toyHdv&8cBOJpe zD{|S_ukz{!msw?s>Q$mJU=;H_$roC`tCGZuI-v=n$`~LQ$chYU}9pMch183s8#o5sB^uqoJ&9~`EbJ^}#1{<6S?UogJS({TzAyb|l*!Uj_u zQQB-Dl(4XMJWv&DtQ1Px_l+T@o>hx-^!ZJ%=7mxQf{xg9IFaEz<3I*fAy}rSa&*oy zNSs*_M&x^yN)vP$FAHrh=E019j`u@|FT=^?$Ds^E zyoO4{W{q!BHhR_M2yMcw(b7s=V;o7t3$|KflFR-IvM-KJdZv z-~Ts%tvf_~n(BoI7o*_RgV!xZk{_1Rh`UwM8q>@#JNGmcPZSZ#PQ~qgRo*+#S$Sm;(@%-`U^w|l zN6BbPu{vV0Pc5K)<-CH$eUSGE-lNqs6?PZi#s3qegKRmR3Axc3YWY`<**W)cj2n0b zKIjD@JEr;^ZpU+07A&Q$RGzPx7-r^4tTm$zV_}2yE$RW>$ zUwKs*`77Sd`SK^Hl(*;$@(`vltly2y!j~>)*A$cxR2~?Z*H^&fF!R%?irpQ5g36|&^dNbCF&Wq9$}~9?KDczGgeJgOj+D zKm*+OW2`i%(M3UfjO7&AJ@U;mFx!+fdDomZJm5$>dCBAHKn`%S>Al}%isijaZjHk8b`brSN=^=?r-N@mNXS7xN_ee!j z{s<_?YkHswuydimsUELsKOXPs;(*5s4#256^FDKZ`*6GGs=oHxm&^b5 z5B^d4?N5BJeC^ZElpp`GA1vSTC!V7mjMK}YuZqy0Wb&xOdKBok9zRKcDtt56t`1we z?$Li&OU_URo*6=}(%L{zj{)_#Lg$*}DwP)npFT8X`!l>W+%b>Lvw0MueeSWn)8hd> zmQb1r!x#_FGikkc!~OYL8*uY?|NbwQkNoNHDvv*oBDP=XitjuYbBM<(uLhs;jd+L7Ltxr)zJ!jH$2GcOzH%2W z&-<4#8Bdx|(Av=>^y#_2Bhsdx_pK~hdgqaiS13T`RoFaQb>?Os3|-H|N5mi3g{Q&> zuA$us;=5_$W`&Vr{`(p-##AoV0iL@o-0HrZ=JO)<3b6f&}xC^ddb0?RdbK|*A}DVCmX@R*J{0&&B3P6bNkr+0Hh z4rj)*@qU?e0Nk=Gp7*%1|wjC@QOv@&*fN(_3-Jk^TByQVm>>XTw|+CcQo9;Oic6>zUfG zo}YB-DumMCZTJNJ#Dzi#wsNoD)BKWpq_DCZ@(5XSf_0BPj7=BcEC{X3^ti+Id6Yoql7vl|X;kgcw$W1I6mA}2RM z(O51QWy^I#VhvyBPk$;h!{|AA`Qv@6Be-ICKI~PmvW{Pm(2SR)(xy2#kM`4JdiL3; zp&9rA*TSfP%DcAa1?r{R&K|r{CXd{!-?Q8AjLkjM!+rXxe#;wHsrx{i!=~V?YP@|RI^@Rd$j zprSv#N6)X&gH|tiLYR0|oc(N5X0vu80a0x6dbw1i*h<@WulL&~C{TZF^0q<8me$gt zY+g1x6B#3o18wD-3A|#uB54igq@FVMW&bU$VV_%~2S3-*84sP6dVhxmOy?lDjmQ1$ zIWplv<}cm1tOX7J+E4$7&sRk1ad}K#J=|MMG}}9f*A;81g2fVTv66du0D5EEUk^ZE z%ulf*xc5BcLE>7JF(dj55_-sbX<84T(K`5~d?F%LK$o?$91jO1V6oa^zQqV?2c_It+|;bm!UH+W+n z;OxA_%MGcCC0kH0v2A;aHB*Ko97E=WK9+%Nw^ z`JO-d!SX1cx-jZJS1*Wz$l((`<*FQj2czcp+9hG3<7v1@T+`!>*9FYZP0v~n-MLFc83_5XA{7NE>uO5TlGEL66{aG{|8H%pVi* z%t51KK-7Rnk`Ts(C|OwSPJpDlv-Dp3UR_o5e!cJaK3#a`c0cv|{l4G3ewO$B+|S+U zLF9(~Zclw!b=vE1H%l>Th8#xzlCFodhj!AVryDK!T^)SyMv{%lc5k&vZ7;JB^WF%P zE}jn#h^NCW=$5FlBm;=7OCu&1RbGt&qD+5+&ZT@zJ34YyzwQsnh>~?2UBXv#X4Ek} zI2os;{GE|OF2+mbE8$u!e-<{n3(D|JzChW!YQZzXbAM+!&=a(oQRb5jxJl(&2yWzs z{(Y|9Z~1HA_Er`02k2yH!M!0q;+={RxaGl304}ae#0;IskX1ovvq0I^FqnH)1!Da& zBmJbb=aTvT}B2{o=m7tDr`yxfAw> zNq!TKixHZe4iEnyg=m@Ur<@9=i6^c<*ZnyC-z^iprYF8jE`gmfg|}~<4=9hxHb7X# zPkjLFxzv$`OR;q%1&-v=iI3!4Aq_pI;sY?jdw(rI3?WRXas?2I9*|&l-dgbyeDuJhHJvbp_BV zu8VO~N%M-LP7X6+MKzpzK@|Kr8T?gY911I&noq!LlmU`-s_sZ-0RX%2Y ztwHBk#~5= z+LcxZNH_MSjzFuk^Jy2l?umu&y^TMc=|IVyVfNEGOM)@t_K$-(@A;)KeE#yp=?lw` z{rFEVFZz-%T#nv&)8J96T6aT07p<;@dHVt``*%i;0_@75u)r6Mcf>7tCH305@|7$w zLU!ie-hk`A{g#B~S>mGsH;6pk0zxi~xVFciEc7;wq{jm~Co4urc@n)Omn}Qb`9z1F zqz=(*`nu%KU=w zTn*a9y&xou&^=d4g<%`%R4<2@K+z2^;&~4ExYxKC;iM6w&1!gmA%{LYzzc}?I-r1d z^Un?FUBQHpJN7K+;%*{Cm(nSm558Ak8xCuUm^Z!{Y*HD#Txd_yxRJNvQ@u1@P*JP5u~4V9gE_0_n<7J-#|8KY}D5 z^>vSud(;T1cpV0XiONFY)OzF*D{%Uw++QXSmNEB1@78j-d1#s$+>;C(HXL;AZd(ZODU--4<&G-Ge<+We=<;xwn z-W2-{FA_B!=j9aAD@{UYO3inAE<(<7$16NTFIV%FM&VP>I!&Db%t0rT#nR&wW-+s% zjBrl7)+aP$p^_0U5j6BCsC%#bNyks__`g_eH|7ivoeLUko1hNz5~SZ5I-@Z^_9uS# z)5|O3n?9QBegG)CRe?hba}lWODj{_QvUr)&JCd?2Yga~h6L=XA1>#l7_wUOcf~k`` z_>@O303H63%{>|G%kEl68R|@av{g`#>QBDE;Q4=Ox$XAbmv{X0UtEsdkaLBP=2neZ zX25j0IyxnJA6jMS^N&BdeCD&CT^@Vl$^Ko)C~jNyp?9uD_VM_9md9MSfg<&L{Mb`D zZu3*i&H(-1$hExc9}llKB4;Ph+C`XA?VgNeQ+Mv1%}j>jlXjrBj-89In-U_sW7J|Y zIrAckH+6OQ=DyT@7)O9KC{Vxf_O1(NaAk{j{v>qXtmA7j0E`&v68_<{_%kS%OMpAzTJ#Iu&BX|SciaIOuny>54DwnWuxm%=fFcj( zgJxc2$<=vLLi1SP(i_c^S4Nc8HRiI&8=NX00^jf| zW?s@T=vMjdur?J>>{i&4B3C{O4#;rIeJ9&8)Tuu+nfN4_hKV=r%kU@;{i|*|h_IPC zt#36IV{+Gzl(=TBAw2#$d$5)KM(n4L;!Ekhj zrs*1?@ywQPKHAQ_pS`v`cKkETyMF#ZF7NucKfnBiZ~sfnkG(BtD7d*bZ99JQ@obyT zGQHgXpk0@or<%g*i^?)J>qYtbhCegquE8#;Zjy*^%Nk${{VhABXgbMxoS{0{c78S1 z2#ZdKSQ^ia@;PXct9l|c=qNoN#uM3f!j@5O$xrAhln42&?BuiVgJkp@4?Gwmj^SQ? zYLSsRs*~TKjnAu*6J;88bVpLs^N(8iubuubW#h#T>uv`!Ck7rT&AL=bdRF7roaoo@ zX&bA!S38k&aq%qWk#WI6P-k;40{+?cW}f7S-uBbWH^2Vj${>t*`XFt09)3^TJ<$2G~Zpg69GPd{s#>bZT{_00U!)3W8 zt17IyzV$iE8to=8e9BjoH@)6)ykvs<@su;T01_Xz6*7Yd@!My9X56?OYcFn=ovjS++1g=>;<68F1-| zXw7RJzk0{*w=946E%z-S`uOLTU;3qAUXEw;2cw0xM4qcR$-}J=ciwT^@~T(dn=Q%r zEWiC**OrF@!g#|SqaL4n@N>%tKk~rx;O8G%UiT+nvApJ0uW0#nKwg5iy!hapWbz?Y z{(K>8X@5J}yraV~fi6zE;6Xtp`~j{rST`?zuL4>hlKtwlGy!j$V6LZO4XIW4fIpq- zvcbp^Y>}sR?R3|YPJoC<=3waX>|7N`H@mSSdM84DwxHE`$Pz?5+JN!J7$^cf5FecmXEG6nky&&+;t1RX z{3YK;8O2UpTb&f95ro9U37(w=Y_ew>pb$Vuu`tID9z7q+4ft#URnjR)I5VvOGMUm% z#UmIMv|x={@z~Kld1&@tENNv41>X>dpg8!1kUo~H7yy*-f_fkTW)HBA4=98r$e3GD z7jadNVNHjD0Y?ECtAG8A`K^N}c&FS7?3zwo>o9>OkP{}*OXK+z5cHfqwQZ7q11dBY z_vGj9Uygs~_qswv8BQ`|Jpns^I-lktn+O=;nPDoZbSzy5d_VZmgUe66{il{+de4WJ z@4W9jm;2uI4a-Yk@{MG?XUTGs5Q+9$xkT0kGXpCp= z-NTm&G^I_Rdk;tja-*Z1ATIAo8z3lcx15GoV~y(o=*DSBtTP_6pg!$WUCXb3tb`p=cA825?S55y#BSX4qdk|hjYjkAl$VxO93Mj^ZX5< zyVbcxAEtqT7wU^eKu_AKBX~s)Yg{F-(s^wtTyT>EPy|9FzGTt1h_pGG6n;hPXkGHx?&-E>r;Hdshmr>Gj5J*rjFWt zHG}x#(oLs}`F%dd6sx=dAE58^8>23AWDUQLKwZ?i@(34$pL5+Ym)qw* z^XcRn_fB{yoJ#uBS;l7r+Qx7TL`YLGMG+L>7KxtlmEO=UE{z&s7C%Om(n4U$VtCt| zA2Krx_NR+v~Rem&GeoJ?tCu(K4 zS&TP=Ev-NxCIA8oy>G3+2v~d2Fk}Lvc5emB6agZT=pgtlPCJs6D-?Y5iLr!KC$ROG z=Y&QZ8ZS%{w#tbx3Dyo%g4sdcbo=ubf3uyKI6&wbt5A7{YuYnuWUK59>g`&WUwZ!s zmw)ijekK64YkA9G`*X{yUv_Vm*CFf$gjwGt6#w|y&_7lpz`|S0iU1XWrK}VmeT9N` z6mSOhSe_os_ki!Tc_(18@cz|b_LAjazWdjfM?UlUHtEqvAI%Y! zcVsR4?&Wvh^IOXk$By^;?6{`9>KIFt$lb6S$5O`Xet75XUm!FLr)R(keHd40QAn9H z@+UG;s?*)-*y%%LXV7Xa|2&z~_#S`cbIYm6K9}QDAB#T45D6Ap0=OYFLV%zcwN=R! zROL!R5FVhZwBQT`hfYvTz{cA0DLCwzQaiY$2X5q5-3v}NLEy+I;Nuq(u2I>GM2 z91-U015oa8WmS4>PSKN)!T z^y4A^@J$1Z2^5pqTi_6ad*@H*axiry$o-@25v<-U>wB&<7nBKP4<9;OD;G$pr~Uc( z(RG3s^o`D;>5=`RTR^fy(pA2cFANK=Uo$&>VR=sO)3YNIF!xiOR71T4@u#w1 z3om1sjeG-|z=izvGqMRUDzCA4XL@yzhj_DojUOeSvOP*N1P+Y=gSE+NGdjB1#B)H- zJ;Se!cKo#8@@HPVJoxCj<;Q>G?a`g#4&xu?$2Hu4?09Yo$q@E6fBePEnMbeXzPR5F zSaNgiT3&qjZCM5J^zuMR>3nSRa(xHaE&SnSJFmPeh=qpgK?k}UH5FIi8cqS%>5rC1 zJbFYPbjb6bww6&jWCe0%43{IBrek!Fan=x>sw*yZRX^Z6f$wxC?Zj0VI^ePZG*_Q3 z;LbbW8Gzl&KMB2l)^g4F>d-p;_o}>0*<=xR(M{#B)(iHlk>&d=YiE4YtZSoTW%2QH zf7Gp#-*nD_M7v@c<2wVbI1|0v%#9(QIRH#}?(KIjH$V3aGTC`UFI_$U`QKfxoIT$3 z8XK*gF9Cg4sUwL=SkqP#4o>h`8z-GmgPlX^n%hux-QC}0GPaV za;zxU`ta2PmOM*62r1sSBLs3u2N(okl5-5@x{45*-WJ0~<>>w`bis*k^ZkDU6P9hvq}_*%P^e9cq*F*z04iGh+9 zHeHhEQy!yye%dR^-(dhF?u?rpK}N4+yd@obLEGq* z-?sfa@CH8^LqY*67Cspkw2ypqkr5j~oT-;|ukMAl4%6K?uS&>}9UKcQS^;4*tgL zdu-o<2jBy)dcj(Z=J64 zYYvCCheZNFcIR;I8I-4eS$~v`9--fv_^5JYg-{F6dv##A1NB&i?M$^jom6l3&HEYD z=X5rP%!?j-O98n?w}b*(>Pk+))<$m1XdC!fQ;&jf>aU*8i@h2UbIs>e%qnt}XfsDy zQ5e>mI-#8-`Q+i2=PN0%ZU+0$r4Jx?`XJ9c8JOqRXX2?X((~XV9YDb>hw~gda%*`_ z;mOI&rv^e~hweDX09fvhjNg*$?K{*>%LWhzq*FYltemGU_~1KwzVYi`x%}u){#-U% zd~~@ZKHx)fRS2gtWNn8PMgO|jyl}bi2Y)iMa%j2lTfZSou`&d2LmIW^xDmP&k(KA{ zi%1!{wVysxW(TDsd2Y?F5MOC9G15{07rGSwxbaUdGZP7pzKjlrnx5u?% z*;x&nRLiXuI+NMS09N(1YgXXOATL1O8NYBY=Hz(Z)fXeJRS*If&GA#N2;+v#GR^pI z&z{VrXv!TjXwg6n3eh7&Rxs54vFa-Wu_K1G`AkN&8@KuON|M}<3*Z!&RU*7euUs%rN zeyGE_%G?1kJ$);2+MDJRK-Ay3_Tc=E@BP&eF5mw{KeQY?ba46Zzx>9Y4Qq09`bb$< z=rjM&XUKAO0GHY6NMEpwB}st_ z`r!eeacLB3ERXSpMVY@X%T!$>Z-d{dGq8=&)t#lqnosMZ1=Z?F+ zV0q2UzBCtx9_d-cXn%>7mmYlhJSP88(TPmi5)&#kKh2Dk@X zLdUL13N3ED>A8{7bP_R4KL79o%cGAyT;H$jupWQv@nR$V!{Zt#krSux(Ss{jvd;Tb z4!pTw^>nOR{!#!HToP8T957{i{!EEa2KM79((#&CmtYMDhzFv$?o%=E22kR`yh3dZbRN2+DH z=}2axU-`o2m$PH+Rj+(mPW!sEzOIk{=0`*4&?lEbe#KY5dilyPdqtA~#A~(Ia>`d$ zi%`gdMC!Sb_I&dG2fJqTL%;E%<$J&5TXO~Zz2V8h&bpQ!q35{PTPF~!FFXLGpE;H- zv&jRH>O8S=e5T_IZS6o~c>$o=dCui8ltNr}VIiAT$!+XIpi=8vj%k0vl5iz1h(?pm zY=7RC1Lb$eDhPrNaFr%`_GVo?NJk>>&RE^9Ek|HBn8?Of*5Fi}+b^X0l7 zjf`97S$wLI5YRsJcxEAUIDgVzyO5=(xoVZMCz5hq;|^0j_i1?u*EF!|cjf>vFbPI-|g?s&)n0es|ib`PsR|n1;W0#5o0v z>uQ3Foi~=J_Hdl+p|Jx;5a(>R_1Q9Mr;PmUxEpo0YwcjR%AW1^P;swM=eM&M?7p+F zUw!P1Ih|pjZM1&x%X-$PL7S9u&Y1$KiydVTJowo%Spb zz033Nylwfuzxo%Jo8r^7JIXGzT5737cY~>K!8NNgQYX8;>|h#}Vn!l-HT)_Gc7cg& z=hV(?wlZ!{dE>OL-MjZU-8cm-ZOV2>yP51#15{4pvi(=E{rhNU*1K~q+ky?*@w9YL z9c)*{H|GG@*+o_;wy?GPD?7)oX4jG3K0}`3Bcm|kgZLD!Z}OW3KX-$Xn-eFVTK>zg zesuZculys+Z8slT>*d@KJKUlyth?|-GR=)`zsNOX!F$XR{OVVzxkQk1fi(Yy)3+U7fZ`BhUP8 zZ0_$l5Y85P>ez|p{U7|T<;!0Bh0B+I=^tL+@&kWwIS@D5nfRkGMfiXJ!3QJf7nf%} z>siYk&wlpuxhGFA?|IMrmIF83w0v={9y)XU$!rbJdCTF|z5_P~gvJS5b|+>a6hSx@tZZ1X-e9AhQxG{33oZWBnIh+q8_Jk4Sbh(l?223vI%nfcw zJJdGq{t9mNnf{!+5zjY zBdEyQzQ~n2*p+4rv|VaO5jJmc%eG?g{3a{b0v`yycLcZg=J2I`8My|I;y#L@5E|Q! zd*q7E%{j6!0@9u-k<(a#SsmGmzl)Y+808~zoNVMKQlQL2taa-%M2H-< z*Je3vria{@Vbzr=c`w8a!wpAW_2GsAmPoCl^e8O7%}b+PWwZ7=v6G%KbIjd6r*G18 zD32d)SVWm52|?{lyX8Q3!^IzjaPpm@*Olb=Hk-5)<`BNakubHE#*Cc&4G-!PF@#K& z>f%WI!~=qM7n!uWV3-)DjNUK)B7U?mTd)oI%oC3-M>y4Qjpgyk)#W3<`KjeAzvA@r z;3q%5+!}CLHf~vd@3((8LzR0=S6g&<2fXH4x&->BT#bU}@BUB!Y57NQ|JTb~|HfZj zUiaEpWzA)_n#T7yhi4|SSfj0@jw^L5eFLiKH2sK##iD#2zh|t&S^sQF&p82T1iR&2hfuj;cBBG#;1OD4$T9bTj3ym}{ykTO&E z)OEUmLCKnPJQdb!pKqz*;>By;ug`#iuN=`keV&xs84pm7P3( zygINaK3c)Z?A)1inHP9qx%q~;#*927$1l70#ocZA&UgRP^7bG3>uKlV<)PT?n4J}Z|)79vx$I3&PBqt)vB$olz$c@07B;B@@Yr-1fT9x3GGP=W^Ff8XN zbB0L4`35*4_+-)It;7wAq9+4x%dO~mn|3xt-i%=Qe_7-#;4zmJxl8@Z z`$S9^HAXfCRh?N30#1EO%2#1{89#O^7$wLDH$WK@V4D`lwhS9hMqFTmCZ0I_i({*w ziJ%NO;>3?Cg=r%_qKoTq_{#ZIGVIMNgiBXf;qW3=+!KFIyr3z6aGDA{| zo7#1_^jNsZREehsQs`OkJ^S*UWz5~e8 zji7UgJv$|33S;sv^@-)XCu7D7S+qTe6;DLLZpmK!dtUH@<+We+rOPKDIB`=jq@LTebV?|X!W;R{0I=ro);GGtZ+kGH4ty*V3zvrM zhsNPVWoGxbgUc12bK1B&`r=fvIX7}P;OzK;X~@yjmNCI9xd1utDzKouIqb*Bc5dnz zaP1o2D72A^cFo|oH0KWMsc#l7ymh z`eIfSQJPi3W!T;_nX-Q!V`qShzazx;OdeKm08suRaq5#&*qR?d zF5nvXjs;ACPST0zd6!_N9Lw2u20#e9z`7*x1cikmP}XfB_M!NB+)?(%um6hlgvXYD z^R9PwpZ+a3-B7T&?am0d4kwBYbf?8+4fKN#e}4I!f9LNn4?J{idF$W)o1H*I7j^Qd zbHEogU`1Ny(-1)8&SAM5d8iZ14_KhRXXsvEV-#&?z>B|H7?(qiHuORMQKtf6$^*86 z*)g#uLTINR@@+hTDHgJBFO(}EJ&L{bO7W7JsZLoOSVibO_1>%kI-dTc791SC%Gmsfr@2v6cM;nO6jjg zX>^o8V)_Er^cuubC8;w48ej{~38}D=w zEIRF(!86tuW2N-Y=tRc^bhTH0^m|T7Sue{syCd~Kkdc!mS+<{V>5{f5EuE82n7rpw zoYrnTO1gqR^}DL~z!vY+Nji1WISAsZ=M27kr=CE+XD6&aU2)E3bis&_Zq}iG-?d)X z=i^Km*0OQ|y1ZGj1@ZW)rN18A=-vG76BZRWlPL`I%*HaStej&4Bd$dbO*WrA1M93K z50inePqYy9a+ISp(E*S-;W97E3m@YoW_3k4Lr?*+6;7D;UX5U70&2X-xd7>AIHS+! zpme@w=~T{V*q+(GF&sv~?goiq86ufbf=hZA?<_-WK)f7a4JZiHNsGx@ylVrtCr>IM zouw-kqzH}BUfvK;d{2EgbNZ1o z>{{7-Fsl^8rCV+}ni=OCa-Z4BbP5@Ig{i{jrw?zzx?day>t1q z-}DWcNXZ0RmDKFC>86S=9&L?B3ac$J45sPkFht}Ls;cm+ryv=ujlmMK? zXXS0?`fXrP7Zb}c%G|a^egr;#n2L6_TCS~|Sp3#0Q~0%mI=?YfGC;xZu%}(n7#g9cj;oUV&a^&cp;YVa4S7>pG7#R$ZkGv;MJHvbwU{^4!kr0_z=gmxB0XbLt zpc&vcAtjXmY1W}U7pF_3^89jqytPVKcOA(xxw%E-$aA;R<~jW!|MV_`o+rsSzb~b8 zr=NfjRum}1gKJq1XK9|!WVbs5qvu!FJlclPWa?cr%Rkji@lwR>NPw*8U4t8ZI0ryQ zNT3@!0(qm=)%fgcBarQQG4#)Nzk(keBt62jB zphEQY(1LO{S%K-%IxNd?6;;XUcM}IA5Or9MV>qF*lyozb2-BizBO|W`kdzIO_pF!J z@!6ya4Hb^@wXTOMf0%#v48?V-*nu*DP!kMR&cO&E!BE!|*&3-`mIJ8=AJ+(jfwLEv z-unVil(4@uDdVscO8fA`Pc8rI7k@5*dvkWL+|eQ8i(Yh3t)+YJzGwOTXCKP#4Ubd(aZ;~Uxc?m`Rz^e(_A4#0I75yR$u)^DooiQ^}_d~n<% z>`uJMs4dE=^1-Zp5Evl*w!*zHe8KXyU-PxgJO0)Cmhbt_HP9Z;%4Ql4 zJjy{&52Vgp?TQX{cbU#QLB4{#&}odE_*9d}AZ=;Q$32JO z)9^75Fs)VA@^-+TJSJeKX62{fK(;|~Fe2{&op1JE5iES6pWag2= z5Ne^1vbIW`)iCdv4a0uf>_04iO)RsAm~R z@-}nnW(We}Mu(H>nQ}yIXHBi#5IVbgEi>8cY^hrgI_sMAg^wq#+c0_qgqhf_Fb+_6 zc)L0a^KfUYCqDI=N0z7JPdsrdr+po~efivHKbzGHJ97)c^OifFb3+cpz9$yhq2+fz z@rm4!aele?rGI$2^Uk~C65FwS{=wf{-uG+&Ju|4=mLK@;|8@D2yYK2sj<^mJhR^}q z4aYF1&Q>rOf%M$jm}>5E^Bs-wgH^jfmZQVt9YDS}Ba?$US5`1HZFLHk?F}7w2E^9M z-Ol=NX2>ot9jyGeucnXH5oYMk){_IgvP!^Aw)~t|Yi2mnnoj5LEMcJM{8}^XR=ar4 zq5{@}l^0!ok;xWv2mt0`+Gc@ujOgGjUGj7#v+5@@qHw>QL+hPc``iEH_m_KL@{-)P zJJuf0vr@HD`y)olbF6aU55F89b4{q9^I8GTTy?N5Kw%|@S@JC)16s~|4V|6A3Xlrk zsaIg4a_5EwGJ{5^k7u4DH;p{^_UFWBJkFec>d7ZtU#kvoz3tWz=2~w`vFk7#X&pWq zm%@R_%-vsjSKH~vl3i)%ZO?i3@`3;M+wno~Se|oR4xdR{GqVc{*6_w>rd%mFjkeHgwQ;=iKhd`PeLdhmhO! zusi4ZUI}dgp4B3B4+wER;O)7%7oB-6{f55?1bOY`Ti)Y|8z1nXXJn@i4xSe_bB?fc zsV^lDo3x0?rL2Ik`r&G>f|Ae0=-TPi?m-;!>9qR5ACtRt<%;|MOek-r)3d_Hf%{e} zxsk%*=d5I9tzwumA{S}rTc}gqJhGLX&~g zJKteX*7;jum36#nSprK*#d{NK2u0WUMbDr9+;Z&N4a?zV(BWeG*`AXdtH8l08<}pd zWtluw+EByr^vPVea`Z?hj?&ved-&hg0^v+2<6@oE3RZaH@Pi4gBUYS>`ZJuV@TW)F zjCB(3ZduKY8jMbtTdPY#!S3>Q}yMx$~~i zl;%e>OU-}xqi_G`Ir{JU%bUOb8*4e8$aOZG2UiO-_19}!w|Y1;*oMus-mO9SHm!E@ zJKRUPTvVUI5a^IJjoLP>NOiBPAz-8LKA#;pk@HTlnJ84&v^OJD10X{y$2Gd*+HJm_ zgp2Ip_26&X8!&BH%QFGX*KW1Ig`5w(JJ)g_Uqt1gx6z; zJ<2YCB^?XO_uy3mi*^OwfGl6J+huD#$9Q`**UbOt4}3Uad97==ts1usL)vn=stD0{>^pzHt76EF6(M6? za!%B0j7`3Uaa?+%r!3Q)S>Ezl$EE`_9#6SeGdQosL}5-6j9#!fcOBSF zhcMc}KON_MvK+o6{&>WTs{JF)KSO|NPPh~I9 zVc5m1Id&oS+?%;40Uqrrz!Bnv%}fRf{Dk^oLm^?`l;r->rU-ZHXdtAp-8n!Qpmb(G z#4>5JbtGJrVSHkG`bw0dody466p+vpnucU|a8-IfHZ#?jM{oehnC0gq9a|iM^+=a> zt%N>RQCFvl4PRtvJZSoU?}K! z$`dSaV{Q677zMYY0FSc$WGG<3p=)Z>)~j(tsFU_|z9D?uxqZ01&S&L74-QXC^jB}n zyekXrFJE2D%roFCjHN^Qt|N)kbU3*3eZIp_a!zI)W+QNAY)=Qm^4pR8FJ`3(%wyHe zPWkAwZYs#$aO086*S-KLISG~8&cTaixiLpO9*A4Va327kO=o*P7q*@}m0MB5TJc;5 zC|KV1CC|HcdC?c&os-PoyL{`nd_&zB;&phRrj_^AxGvNWWyw{P zrbg10=(xEOI$ieymq_Z0XLBgMCF7DM7?wYsC2$!p^|yb}iI4k2ZaQX!0L_zG<|kh& zdg_D@Z?pWi-0MPi<6XL9_&MZQucjZUfV8q`69wEk zmqp1N8yPW$qb>o4XBWt96vsVu!obDgM%uMIoi5j{l~#iIJ9^+se-03=vge;YxpKRc zFwg#yCiZ1(3drV^6vJ z*Z{gPdk=sCSPt$Pz@Mh(rAZs{2Ix*9(QwLVdE2ZDz|wP#6UWSCj#*s5r~{yU6~5$# z4$8U^LA;b6>*x&!GE~pblYl0sil?6HWN*KrSgn0bj{*Q8))UL^iOgi~x)2~v+h%z5 z@#D+Cd-wYSeCL<9eE;8HzW7UCP(|zdT)y)HZsMoTwag$jyAJ#Hqt(_ND`~ z^8pgeT1`Z%|4^{>@DWm5hO1Di6NN~>(qKizGb%(5(w5{`0giZ4O!YZv5o_8umrZGV zeO7B_&|4?w7UDwz6f5&6d##yt8V3&!Ab9LpeA7|Rf@A73fMCd<`i638^Xb%YfP?-1 zJ7QVZqE7n`ran!Rve1N_Uc4N^j?9gYcdgL+QEPPlZbYDcz!Kn@oMQ1z3)`c6V>4L!?KM z6`lNMz>QoF5XmHT{NUyX$P7R`5UWw!u3jFKm+GrY;sd>_PiMJSp7{-wbj+My=y@^L z;^oNtoJ_-aeAd~U2v#nD@jeN1ZbsYy=|qX-g-ob*Io3*3^`YZBzzEP5=oY*JmL_%S z!1=5P7Ao`koYtuNpfl^W=jmpNS!~C4X5!QTc#npWl8-s*=G_ci*6#X18Xd%?jGQM{ ziL)zMvn}oyK4a}00G|$p@R8l5X}dFm9=aKP3cx!*#exKQyBTA0M_mj_;#1=(tPz65 zm!kBB{d$uVk3ZT|c@TKY;MOo8OLaDK?-@&BH7Keii0@AY#;IbVUn)RhO&YVR%xGd5 z;9_YZVyae`L1GNhU3)LYXX)?(YB;NkaI#DUpeuiqg#_zRt|i(nZC-nxR<$!AU<25I zV+23#1c}le1{UfPT1-pPQn=Gm5MZVK(#vn`eIH<|jWO;LXXM$Xak1cl#nm`aw_!}u z@5xa9^N&Ba{PM4SD8Rpa`R?y})AGD$-&V`h60n;y8PgD;5_EJrmGl=$pMiM5t@T^! zD30(9aI7=uX;W8_R662%i8XvNwAz{7LUXB6EyD(|&TOkoo zVPqj4z^P{dUfWUJ5I?TA0-}+?#rXbbARnDo&x1L6#Ol+|eXG1&ybJ|(B&$g|69bv> za+544Q0M}2K_J_xjgGe%`k{@3}_;^fwn6xCSZqMLH6YqbvH9 zi(Q`r)XTP#!I zd@R?q;o%L3ZYubiO4)5h9l&PP3KJ8eF>Nz9lu`2ly~Ir&<|$}EO{btPMv`0)*U~vF zdvw;KpUj%*7;R~5mqvP(Fh>C6S1=|Sq4$o|gaVR_`K?4Akvd*(qR5Ma#JW0<7{j4I%{9vN_}bcaIu^p0W?0{Qt{oflB+Ao0=7 zMAP_;wGdD$7=%x?w3BY+nV%*jVlB3u_ym3TCw}+Hhc1I>5#kK3&g5K$)?GQ)z9uy9 z0Fsf$1a)#D049QuUM#=MJBB~3GLT2JZCmw)k#fs9g+D;4yaCYeY6$X=I# zbvUjrlp%4*d3Ys|^C|b*IY&=5DAsfocF4`MhuWcOZ>(w^2ENvzLAG^OoHQk1oIZUq4hDlQm_?o8d%m z4yH5o8witOvd)h#p1=f~9%LD9fgL#!bWrMtFRV>~+;&=in6%bZ zD;v;~9bkJAZk#$6mWGbWhm~GHjSP^nVI7ZEHQYwr4%*>4U}xDIMKxZ^*UougB+$M7 zdAKG7B|G<`2J@;0`RDu9is8Ugi$}%fZrBIn7Gz;%~ zM4$d)&S&olw2G=6U=+%@d>Wc~Pf#=j1AQlGmee?}R671%WvJWXBR6+4NIpa82g4gL z!Z$59#KtUnNzaE^OC8ZeY?DdK64XTW%HYBf z$N<106Pr0mN#H}K003X!K=84w{3yWY{ge~+)CT3^r!Zv#?Murj*Q8DBlsGyfbhwx$ zZ4P&Dx`6kTUpxbPQ`SoB@Cu&<`E>#;-?e8xyPh9?xc)PNUb*CCTGCTq=!yDojVi*c z$>UjP;8eb*9%Rhs0+xA!F)oqu>r{)Vr9&C?SX7Tex&J@ zQ8^{IX)_rSlx3o>Wv*=oV#*Te2Ys6W2B@lksn^Ie6G5?#0jP!lb+3enmSDB*`98z^ zjrL^0AHY8ugU84~xM(P}hReADW!z~t^U`@o29qZcOcja;@^CU*^)_j_3R+e=XZ#h{ zpL91Iy<^#Z_>N5AN8UnTM?QMj3AUs&YS7tBzkSy@9ZlWnLoMMjwWFl9jibF>MwZe= z7t;Bd&_fUM+|Lwk!^Av^(d0J0v4PBJ7v9-WmaeBVE^gSwa-pDOh@r8p!1EDeO5m>w zokB2gYll<{o(dukA!M-uBMPj?6W?=x1cwDS!Ht!PP|YLX{Okd%#?u;e#kaM<6PVDwAr_Xp=u{1pg|0o# zDid_?Fgh|2Xe`|uA-@4_*Xv#lc+RG8fVy|r{5EFJCaC;BPeT*Ec5~Xf>jL# zhJ2eYjJmhdu~}(CUZxz2Jli5KVd@K|Z(aIyfCk#*n;VF2I8ul5F+A?~6*MJL*7Kfo z>+)rP{AD>*=i|*q`pVMUfz9@LsjjU45Jzo{?TWvzv_GlHt-P`s{c8#Egmr-`!!>RR}4oz?tU*6pfh2VK>_BnNhPk zNhgpcdaH~%dY+wUBZw1V6?8lTJ#@08yzyzuym#`TKU^roZE3V)-XoUp+DUkiKI919 z&_^54ZsHR|(Vt)xg-$?LS?NAf@8J#TC9{dsy2T&2Awu{vDwRT}b+(c9pTZQ70$&Ki zk~5q^AcX_h4#kqTL)fI@hb8<%w*#j_;wzLNrtdM9RwP_6tSlRiC#2E{hR)L(q0oEx zT7wwn&E^N--7^ys&vF#!s?Jbh46*t?@d$-yf;QWNI*Hte>u^%}>Nd+~`StirLR~9x z3`OLnH!C1CgYgeA1XhA&a_{)rf4h9gcm0#)?f>w5Gl}*^JqhXq|LtST;Tvvl9C0f& zD+4EB^6gEK)j^=abd3NVVbZxvtisC~`1@)B1`rD{0a)P6|2TbswQ!R_o-81I6}KRp z=VqkASgzJ0hS(k>iWCd;gZ7KIEZjl8A5{nK zngNi`P+9~q{^(0yxP0)V_b(58@_}yaop~su7F~doeu(eJjR_FI&m{5Ghu$2M`}3xM zT{%-vW|>`CkUAZRzT2hdPuuX!pD<}XJJlLjYX)2qUA~pyHZ64L+WL;$L7;Q$h|g1h zrWMJ0rf2ko43M4Sb05nBrQf1g_%5J_5jU8TZ|i_hNe?GRURj9{-74>cZLrLBKi#kq zAF>WhI|VKa2lI52F?HdpnH|F|8L8w&b*sndCO&<0uO51kd4~t>Nq+dVgK`PG<3rLA ziY~#PRImiidkHn7ARuA z6$)cwK)qr;QI05lN?yU5<)Q6a<&lNY!e;1Dpj@rdl_x{7Y@f{%8Es_=5@>g!J@Cm- zF2DG5|F~N|DVYP2k6*|UnrY+|7W54jYQay1=x(vNDQcyp9tQ&$?%Gl(bQaLdcWqa$ zcZBR>&WL^dspDNe5Qe1n1WHaf@D;$OpgtcR<*3&H$RVevbkJ#ML+Zzm zxW_UuWd+FqaDCH>FnNxaWaQRo-LSkeyBk0J8y{cpdHy{$Caeb1#?~`wq~G9gPeUxL z0>Xz?HT7flsi%AkbUK277TqF4+5$`+3&4W)tZh9T-X|UK+;#r()|K7>PNxwX!UNgL zblNAsTEy^>Y+lRJn*lL-0kOo$rUawx0iL}jB7Bx^)+H$$KmYo=b)I&0BXW#_u3N7^ zH{aFW4$1U-{f-aS^Ssku^IF^ELa~_yEv!e5N!hr=mm4&Tz6dPcX`!PJD;Z6=JYvR_ zMs#niY-o~f&`2QxeYi3W4f=F3lcz#9jI4kfqE8Um5`;u3umOb#U_;`yXN$Gao+p){ z6z9%`QXwh@I)64NutQl7Y^T1H)($1-S1l-{KRjEF}v&T7zx*ZSD~h8;tQ;L!b|B01m+3=gYaOC8UA6B zWwm0KTY2X9?1`Ho|0q+BZ6qLHR=s6*k3RCy^0qAddF-*rmmmDT`<9ozC<>Ymhawmf zAK9Jrfzw6;LTKe%z-pf9Od{15KYRPZ!@fbL}_Qz*O3Iu^5 zrsDX~}irO{gqA|J8*X8YA;`gDDt`R&ien(BDVExDd2mJY?NJ4l(4Cu?)@)w8Lv zqoWvk;7KiavPZeo?g=uTyt#N{3pfiTt7T5M+7@+5T5WsXm%n`Z)I*Qd>UH;_wkg{? z{DLcskOw)6K1YpJ;flmHPTcg9>Sdn7zgIv)Yc}c(H z+PLDYZH)d+a93@e5`K3W??HGZ-3&UbV$RyxO-$OonVI!909*AX2mSzV>5=#9+_O;R zyXuZ)W28FtpZj6ZWNa(emfni7=3gG*O?EaKtz0hyTrub&4!KmG)gEx9x*(5Lj)!k| z$co1%sAt$wSxn{{3jhd$?}TwIWM6y3nIfMQdxSK^&@<_QdqWuBQ}wOIjN+;cFkl@K zuC27XM$0g?!46{dNu!`-NK6(fx{Bu2m&zTlqat~+n(_W?#p zr@XYqdq+?9;Oe9SES_O_L3ZeW;*Yol);k@Bc!nC;Z&Bh`*^^XfRiVoF>q7x5<(|wL z3UB+Vf06ZydzK&io^M`mzx~#x@6nC3Ls=7U31Dbwz2>EK`x9&li&AudE|FLy*%;s@#Wb^k1j`^eP@N9FgsE0bOa{8l_VIJs9k7iWHo@} zA%RJ)Noz-=U=4&QWf8I|P<@{I3bWI~i)*ajoKxWY;Rxf!oY~7}(BrdwZC>zhjuM(d z@}aosa5z5uVZjgo@H6=X+#z5_1>}XG3xb{$)uI+=sbqmcMD-2|5ZT+Es?inD7o zOUaxO!D3C|XBNo%=!A1-iSr&}1(p8sX6?xC%pKW2Z_92XYR&F#C=*;`K;gqW5%x#@1Sb!nhP-d)X5 zAZ(Cm2!FZiu0Lu4 z2H5@DLw!;v%YGVMCz!ofNyRd}yc%NVb=EL<#lgyV$Cz5a3G~$MiX$R}S%Q@cz;Ocl z)G@x-ZQ-vLT!@QsU*h8j%RdMaevFPKc6@c~On4;7w?1f{5t@{ir}KQ!!V=0Ev`snO z3cGS<$*JW)aMY0q!2^7h*zUvc0H-=h%Qrub>X}S*K z!G|AQe()dtbS&Nz%YAQr-E#ECTgEDa_Qa`wdOCTXI&rKWmfrV?4Bf5|@}C{ziTH@c zR}PD^%dmiMf_R=A9T-Mw4|l!Wx2b%sgV6ADTuJy=e_qmB%`oY~dVM-Oz)YqA z*x9L|am&fG*1HCEhsBhZuHsw(tpRB1`c;N>Cu$B|Q ztU?)}JLsrx{>V&$hiv6fdh&v|=uWwMqF3Z?cgk-FzbM;${s>S6s&w}N=`Dh-lP zEtgnw>Olt4oQhsN_gGhQn5d~@<~gg+29TR?zO}L;-yC?kWgVT!lCY=Z<^lM%mQo+{ z5$eiED9nz;cSBnB>~6>KZclt16W}TQpSr6L(^g|C0 z*@{f#BXDG)0XE;sitlrB4E?p+73=i=;`tK;bW?A}6gn%ve|c8$NdkEQ;URlQzGH&P z`;+IhJkiQ10F^x83oId@{_ssYzR?k%g*)`WOE%-8u=580X1qzOi4p2b_JOVoD4S>K zqF(-h?hI&7=g6uFF1yFzjuDyiS+3-V5jHxc38q8;XFk>pPYg&ArI*cOK-Q`aD;UT( z7lYk!U46B>Mdl1<>%X9aPE%e$Gu*7w=90=o6M=HPsLB4ct&WsY_r84j_{Tn0 zSrPYgtTpmr#e%#Ae77nAFaV7SP}bQB0=`oY$Q4|g1_aqckLh{<`o*m^F}kXoIDpk3tO1CO z19C|3bolf_M`&a;C;PTO`!2?vjy^n>#z|{@yV8x0BO|QUII$&IyBUMdQxO<4wR{t2 z8mnX%$PXWH2rFRdWOf0iAUG^7NZ&Yn5mAuJ{yif_j15Eh1V{2qBH;{+h7v+Fk7JW`&^NjdA$Qoa}} zk8vArCYmC!op6g~UuBLp(>xE7caUVIkKV7%Gjz~z=2<{;FEL|p*#rR zPoIr-n>)+M5dR_B+T4H3a?=e*3X-*$$Yp|dT`%V>B%yMUyo??wXf4eA_8gtnx9iRG z+aXVsikvH}03N;x6C}}T%8EGh5v(iaPgEzJ;k3+q{K%XJk)W zKrJ0z6SSvbp6BW_TxqFW+<2^B`mvD_Jb9sym*YmU#(jrbW7|lV^w6xb5+urT&6%p{ ziD#f7^#R6WxDaF~^tO*;C;$~K^QvG+NGW&0E_n$+R3#{#Fu~Kh098P$zg((&YbGj$ z$a?E=A%`LdMSDPo=LD)lVLxJn5F!oZI|00NXB|aVuJR7$&N5|E>YZ0C;#bn>ZQY^d z>{RU#hu{f%+Gu^A4@Dh4REUMq36}_e+yerO4>0}a1D{y_-VguK@-2V%P1ziA@0L)B z!%BDP4#g{&r5FnII8}|k002M$Nkl<0~ zk(sr@LT_~22!NR6Byb1NCI5F#Xk?-mMtH5R=L4X}^Q`=*SV>QAl;zpQ^L+n^8bwVB zy@5A%Z7Y)pt{JVc#K(qpo3p&P7;A*J;#EHpeQ=N!F;Ms-fUyY!!it^W*PJVYk_txdc+wWMO z_}r&*1nHNx9J1krFhDZ8>)#)jE&~tmemJ%xVDEc@NRCRO-5* zv)Tf;@W4oMXRa8!oVgVKQWj=M``3|I8wR8T(J>$K=n0p*jtp@~&7#nb5J`QQmV#MSN>!_y2V0YVy) z0!0F@w;c_kBS5uI^R8ePMWdXUUMnyJY7ZQJnWt7&SY~A~D-|6*+aS`xqU5l0EMeM= zpr;E_g@$2mB~AQ~mc=;reIvcGhN!eg33*z@rx4RsP)e&)(w)qV__f@BcKGIid4#tN z&z(n8DKT;eWqLj>4(d<%TtCj5=)oOfKu=SOrRQL4%BM~iyZ`z}vjzC4-nsnsH-AUY z*L`V)3dl|i2gvvi02=~~0P@aU?S3|wezNd@NpW8}i6`&2HRTi74%2h)1G;;zjVuwv z9UV-%$&q(>wwVqEj~v`{GQ1=(2Qxb>-H9iUg@++zhSmqzP1Z6k<`$~nG*x>0A)B4gW+(tq3+wm@0j(MQ4Bs-iaADAN$0S8 z6N$;k{b@j`ybWI*24tcweQm>4OC2NY0y^$GaC3a1<~kBLmZT6jci;IQ$4S~8n&jDB=q zU^N0_>wI;hTyAqI9RQlvqqwD4^4aa|6rcp*5*(Qb)SOu&kW=Am&L%z;xgRd4u~9*X zEieek*15>Wk?cqn#{@q4BHwf<>}?rF9y3osd+A!{Kr)Ir7!*`L{den{JkXd7baFHG zF)>ztB;DocN>SW{$bZEzla?mt&}eU#o24O*!fhka4?gqVyN9c$^;7rAM^8D^v#;_` z78xIO!btsm&gi}z460$5ymr`*h{_e>%p79Ax)9E*8+?9VM~tFy1d&f`GlEu=Jq#V7 zoJK_SyxRjjQg}}oOGP!>kWttIqkKQOfA|ZPJKqC;R-|i1Qees*J^!8n+{F`-gb+); zfTj9SkO7XVPkfIKJQke5bk%j*St3+Ir#&nS}4-6FtUDF8V=mi7T{%RlsZ+2)H(II>vlfyQ5T~C zOvOm<7-gT#I#FTnc;P>CgRFJTf!9^gaCA_H~+KJ^qp zy3kbzv1zMJC(dQpS}d12>S@LDPq!@(y-gihEb*tMe)xq~pR$%+F*-EOm0b^_J965csA>(<-vSbq8aA6*`O!bPjMRJN6i7V2^J z%Kq>#?tsXGlU^AZhSXOO8u;e$@-TUTRqh}YF6VxF$07E6J_}@kFuvHNh4=UFW8~_Bq2weqOjN*UYY$B$XmXHF&qxGYy~0j>ql z$gi^L@C>7a81A9s&pOI;01vQMrs(4F>2}?2_^Uk|In8iy08;2W<&gQ&Cr(6e$rRvD zKvuFAr!Ei1ZDF@V(+JcWBR42GZH#rRcPDTv zl;4Ci#CHtc1Toe`j+d&^4!=t#$*Me&`BZf4yi3X*!p4p&QOB@9Gz~~~xSv)4;5mF# zIlxq6WOIc^0D%iRcJA=FNMR^_qF|iiqux?rDPP)Q#*uF^?=6r|`Ff+#cTsJ_mvMkI zAyn5>6tFpre<Gw{7F#|>L+EQjCxRj zHaZPUVAOSnZK3%bHF#Fw3_xQjx}#S?D#AtC4(TY?&PCh;WrT2d0M(?Bop>dE+GDLH zCE-tN#~I2W*qIaf1FY`qDvG6kPN2erF0V?RuVe{W&$?X!o}W!Qz`Q#K*N)Y*9HU}T0E*yWXs|03;#DFNM0?`~NS#ZpE&&V}7@kti0 z2V?1_?ZNKh>y23fu{&3OpE?(PU=@Wnj1QkWYojFbo4+AV_`wHl8I*@c5my|`CnSwd zMxeNc`PyO0ADxRJL>42{u2=vbu`P#XIaYd{Nk@I_O-Gj(+00La>KK3Nt^&z zbcRLTJo1~1jq8oib62e0YiYOoP1zL>Upo1g=MzlHWC1510^Q>CHBvGe?B?pqa^6i} zFc~H9%DlFkz~)i5Uj!@zZ;Wj1ildoFvUHN3vUWSsOa{AwN8##-261zQ1f$M=hnJD9 zok{1}Sgsd|%qXK*5Lp2d0H0x762r|2y1TO6&OQNo&P#mLw5=`S(g9trA)OTV3YDK6 zxkg4VW&P`xF#%^1bZ&0%wo}b1ZPxC0ULfyx#UR+I)wqHI##0)9HRl6hEXoRFGPCSN zZ6xoFR-KBfTpnS$#A;Dk$4sUG|+F#i%3(jno<7IE^RR+^&TS{KSIZ6#i!U1 zE~$fjOk81*t)f5nlmBvg+yC*s%WGcs($VAU(bkO((shC(?Y2D0#25?FM917ddoVsR zASK^gQc2@`CqveTh$|n#Y6NsEmDYCkMgEaq{(O(}0J`c4bo{oU-)A?1ByKy=)UDfJ z*G$w=I+pM}IH#|Y2e2zYLo*<)9$X~Cl#PyBba)}#yzdPE0T3Pyz=?uJF4_r7n~B-V zP(TNb{R!ktzW!!M1%z7G3T}NDnZZNh;)PiAD^In1j#9LVReC+>_B)_UXVrFyAGw=t zx)xumcFw#jPbov^(mG@(rH-XrY$G3J3w_&}CEwCsrLv3B(!`FMl9>^Mz;D}6Y1Tjv z=XQPVa2_uZoW4xo=Y%9s^jkSVl11w~Yxw5e^Y_pr$NOAoYE7}=eRp!@JJ2=1(9IE{ z-&TFsc*>~{I{C3&YY^le-raKZ&Gjwsh}%fIzK=oSMsIw+b_JL}vxc^`Nges4n@?yB zK*{;AZpXy)&ABCd>V`D(u3V>cpK{HRpr?>?(vaK>eCy*&I+uL6uA0TFE#=uN6W3P2 zmyJAt?vz34FXoIId`HX6kx#eD2(04$doqW`(oYbl@{zibw;7CBwR5`TRIhHPL}>d{ zx9&(~Sq>14P({JK^oMvd)_CtJfSzdffE3O3G?vs5I6$rE^QX5Wh+WPU0IZTEz3X@! zm@;Q*=XKqByfF+PN?o8#9Ry4;L{<+#aZ}bgj_1w|9!tiw0n=*9sDFs2mm+xbl6J1y zH1SajH0`qrLJ#TS3xQysI`c#bd8X+pueysbAN#j~?tS0;SC_B z6(D?~ONA$3hPircb=n(lIM&YrFSTlFg^nybl*`xBJanh@hVGVIb#3PgZt7KmN?e_U z?|?+8wG|;%CjN9AZQl$YuU~5s<15h~oy)qeH4$`btwTV-;nw1H69jM!PfdUUh-W}F z`Q#_rk&Zl={Z}t88_&p&PiYFWsbA|Iki+L%IVrp4raWbOPN8dwtz_=br{ptdmfbw@ zdk>Doyt^QtT!yzgLJHO!bpx8@gOd21K&K2rJqn)6U&lS*7}tm7({LWF%Xw- ze|SVblqX*I_(x{&preW8OQ*Yo{0^j(1`^6?dm?X^ zH7T#azJd;Lc>e82nos388F%=ePcmv|Uc1$yqtiTBCqTwmYzQvDhSmS-y>dHJ0`e&X zO|%^d%6A)=NqCI+yOLgffQPo^0FI!qfOi625Gq$I|0^4LhTkT01uI#KL7{Uy{XBzH z*9UEJ7R3yF>wK{$GTYv?*;;7&NRH^3;*Ap4YBZ^(j)IP?A-rp6njc)NmV)wsi$=$a zh4Qp+nXfn4mq^u}rVn3g9LD0E)~@Gdf5#uVTBosx6$l);8cJ|h4uWS17REEJh20qj z4PoX7O)nEaoL~YYB&)@W85qHwLg_dDgLU?;qrEUP6XaYFq)AwC6_7TC6D zTa~8Jy9xwL&87+r?Cf&V^Dj5Qp;OJ%KV`lurrx|q2eT_lSqM4WHOfS60(hm98!Vc^ zh!214{^iZz_XEp!ecPLtuYK*8w<9o%>#sv#0G)gZh~c%M{#9NAmpYsIeJTPm*G_Kr zmT8-zF-E!T4&XFke#7v==HL8^Py?`4;l}&;7vpM}6L6lXM-TXsCUJF8vnSSOG(%UH zQ*yJMPn@rGzdPp%c@IdpLXI$=?kb03lA=2AeHrkk7WrSo|N$ zl~~U^b(%Wol`!Oi9t^M_z&3$!TK$%IoxH>+J>+Mm(Vp&-yLdX+pJnTAcFSE!d+Y+! zhuoH3lG_4;pME%3OWpe1x?)y5N%aQM^WIzmhyh2y=s9yUI9N=VrY|&orMZ4 zpFEz9A^O0L;-bhI0Mpsrt0(M9+-(84i}4S0DX@x_W3$15$PM~fUTO{mzF1AQEykB% zgM$v-(TRrS?b{RQ>N*+^B$q@uKMXP#fh zqsScqwjAzicF0}Ks;tggNmjb(1ji|4@^T4+O()tQoxpQam(Y5~j8!>TFP#m*$CaQ% z4u7>*aNk?5dTV@QKyPwEX2604wkmoRAdIY~5yjQ}jKq938G;0mC^VtmmrW9c5Fxv4 zDj>)@ta%@%8jek1sgSNch*R?&b}gQu_nbZPmI46Qf$yoySV_?LA4rFS7kS!3VGTZI`OS-WQiL=7wo1J_=M#*hjdnNVuo%^No z6dGD8bvVAkoqKLfuB!!^NmXS{%Y}^ko5N9M6_8t#xC7H9+k^3q?4SwxvF%nUK*rZ- zN2XBA*O!z(<(u0|gG<^Uj>z@abA-a}u090}b@Hkp!(h!zZD2jPIDd%}z^va^=r= zaXMI*tUL$y{YYMq!rvu*B(2c5eNxj^^DQC3ud0 z2i60!CML5*b;sv^r|#O8#;&bd3qFQ*v((WrLs-ET0}y9E`5wCIJxY zjidFrV|4ih6#7{@P0!MAoeWwK3Lg6pq}oyr-ii7z0Qh3b!;I#6p z0r_NH84-n^~)a>Kj_KJmcv`al0ymp}SPUbKAO*SxO7KnLESjexddQ)#>2c0@zOIlB;6dMZKV%@0mXT@m-xa>S-Z>yBd7xb0M2uG z%uhZ#+Kn!UYsCC>DNE(FV=IKmX76LC^pSi3Dqf?VPXJR8OgU(~1$I@`F(jKifv&_t zQ=h3YzM~5OAaj0GxSoENwy~f{J(20t|m# zF4urSWWsZDAvlMj+i=NB;us~6IWlR8N`{BLWjn0&I_|`sy!L6d;S(tP#4mD*PGoA- zGcQ6L%bLWQ9kuWNtirjb4#}e+mrpta5DJ))dm!RZKF(A?llpPa@oL%49!i1t4GUf7KeISt5elHc$OFxzm^jTS(u`C7S=xucky;s`8ZMuWWQ z71=j3K|?h1oDNQmX=j^v0=JCOmB3Zv9l3NMqwhYi55RU;ChRshuhbQ(bLHO^(9al5 zaBi~Ta3V&@JPxvxpXms+i3~G-=GtWO&7o`%jDlJSE7B0i36KMjff{hUoL+z1u6-3e zg6KrDf@~U9!6e8btnV18!gibyV$8u5j0T_xHCH?kfXB0vf-qn@=FCYnN`T-jvRX#c zhQNZ)9?Z^)@|SQ!j>==1Okb5YvBZ1|gCV2013>DcJW8hS{$^Z)?CgcV_qKN|_x;&# zT;BAjzq(eVxboBKp_B zf{p+Joplm;<-4}~Q}$K}4bT}F*6L1v+GsV!un>pa1dzBoNthFCv*Yw^c9sA}`7JwT z`d;gEtxr3`d@rv97y^J1)B~OP#Lz_>fLetxJ$^gQ@Vi0U&{BI(XXr;>+=JD8Maa9> zGx5r&JfdLa2E8nJKl$WCP0z|M4bic3IpVes%8%R$TY2X@BSKr0t78y4@<@Bjx0EmR z3Z4v=DSHn~S=+3ftC>_18{A;GvCj+nFUF@`*O| z#dCkt>c&?VaIN2zg%-EmbVCliInp{9CU1r0(^>!ZK}4fEXEq;j0#@}^uR|u1!b27! zYcZ`a_`w2!+)FQ>2{pj@oLKAXDlhAe0TCJXOb|z477b341vH&B1D-nPNq6tjO_;`j4q!)ixy{geqEX^?g+oRF{JH|mn2QJf z=$!hv?fk^K(>as*iT>_9mB_1qeE#10435!X_1~eHPj ziiA_~V{0@CN4U(ycR~~^>DZGe0*ba7rbkL1z#w8-KcdwEO|$kG8nL8OoxF*FsnbpS z2l0oKeOSBGvP8^NxfoD+f|JKs$kMS;FUJQRnb``4oECyRti#e0w46iDY1v}ZRB9HO z0Gxj69q(H1`NCV5``+}8U4-7HY4O6xDHu@ig7f!LFUj0ae-L11SW z2wJ2~9I?9zE0F{?B!Pfgq;Qb}3PgaAA{4Z{QSt|yo8-h8#UWX-aaa;3OJe8Zj4kiR z&Mw3=6MLq+XQu1Y-BrI|RaX_y$NPLwb&bWl`&ZxZ_j5Uy_j$ix=Y8Jiea@LAV&(#? zZHXFUnTTwrWlk;C!3|FuWqkF0lS?VeF%O{5_v#Qv`(~&gumaxRv$h;aD)S4=EAWy3 z?4ky&z!c?sS4PnhB&?Dld-To-%ni-)H_?3Pzp` zA1}m5VNH*pzIS-VGH&>l{8`z^`k&6GI@nWIJ~=kWg`vI4jgC}Y^jF_n06TzGxmU+q z$dx))*5Y@1KIsLPiW2FZ)EBYtQ^~-g6-ULyPJ}`HpKwOuNY#lfljD((IU5auwLZNeCq)7t+(DPybKr~c~_g7tv|G{^ZUo>AO_8>G&^>VWIE9q zFeBUMZU(&4OTODFBfcCv9c8Qarn~^Vv(HPP{w!-2cuQvk_14*)7M&F)hnzxee{Aot zXmvo(o`fUEodRdHPgE>o9Bm-HV)t9*z&dwJIsOz};5+WVzP$N!qJb(_6wg9+k zl?!l11ccSLElST3Sf7M&S#%hM*^4N{^;g%nihuzV5k`(RR^$78z1|X(zfupk(psCj zOsGhe#WdHY;d22^33U&6j};ZDPY+b*;gCZFXv3GO151X*F$z|L`VMpf9im{$F0@9u zH@W`@{^);GUT25z|82i{VuV>lYnZvLg8l3_d;+UTnf#3(yh%j#Ldh$fQ*l3NS?ay~ zu>{Xhl^|&p!av{5mKv7EB|?V)7n%b=0|NKdNu$qS4Xlv|bW0b{mUX!z6Yv9A63_v% zNo}>w{i^3(2a4(hDZr+Q?JYm=7=dsVO*+R144>Sya*3=^4s{@;z>@`u2J;O3M zd-DERn~xr3fmiPhU}T1jDZ^OSeA&n1?DpO=db>!K@A&0>yvb&5NNy+;A~$3h@BMAJ zhBlw}2t>%U_sH1{1IrUw1LF%Vw6NUVh`{Ipk&OXCI$#*ve8>L7S7`}F8Uj+$_`CTT zySIJMK9y(UjeACYoqlkw4&rjI9`}LB&WnuV5peKbnBXhrKh*VYX}R|geD*WFx8&M= zd?hE_GG?u9>(!{zJ$%Ab<=94u>-fp4RF>%o^_r3P)z0r}-~Q&EWJDV?w(J1t`X=qT z+hIl^)x-PK35P-Ce(Uf8GJCY(PtaaDcBICOj=NY{9l^H#ji&96ChT=+;+sdVV<+tCD$7`oAMY-0nl;Evli3VQ^JHD;4 z)IS<(NoOA>$+9H8FZ@frsVq~+zUx`vJFnh*S#s9~a1)r#+u?QBue29~WxEUfvXbPJ zz={BAT6xlC9a%**du8z#o}z$ z`^5R*(Yzb~0OqD$2I){_{^$wOirTx}v?2Ls~Re4VLi0J@2?^)5powaMCM$?LQM)mePr`Y`wECLq`Ay&eOhql7n$a^)xv@D{pnX8lNnd;D>HHGG4$Me*X-+Tsp(|u3gsPXaggI z#XA1;X^@02!St{Ou}Sxx3Wg>&v`U|~2788`^>Bc1hH5noV52Yta0$KlP4buw8Y@iW zCD0n)GEmEXxh^y++XyK5zBleUn=leNFEHL^nk&P>)zCnUcw(AzP1s2nA1AzfL-xA0 zC2)Y$3xS+Iir^5?zxd;S^Y8d$$8d&- z;gv8u!lV)IXbg)X5;er~^dB}=>PyYISu2|oYUyi?g00G4*-`?z>=D_l+J zwHF|odX_(nS(L%HRJ@}T1L2oj#fRquwDEz900C!wobU1KVij=>X*cPQ|E!s7S~z8G zr4VcJnKtVk9TARGN`Oy6g3Tq2wI4+kDe`KQFqHmTs~*v8(oykyloyLBcE_)tthmzj=<0;8)EQooZj&n7d=L4JrcA7n6X2p_9G4Dc>>AJo zxVwWM{!2eyP`By8`xIlkHuqj`GU;!Z!<9OehqLi_lUM-&ix?>}j@r%WQ3ZAm-?A>7m#ID?P#6fF#b@D(=Z(xr-$W*i zo~0Kmd$D~vGWW<<8Zn>JJ!`{y9V5`LYnnO@FgL-bJ~PT_!b=jT>ByDvg25)N%Y8i1 zS}u%8)!C%v^Wvh1jy_u7S;yK&-E0g* zq>=odCpQ<57p~oU^KjCr&N+udEwORa;}6$JXY{X&u;cRfuS~CyGVc(YiwV$+NtR;@ z1alvVN2&P_XEH)Bo`YRnpTuX?R}8d66U$WEHm)(rn>v(0`s_r>+=Cx=hIai?bh*wJ+nFJ`BuPEJub?*X5yvsHfpRK+OKP=a8HByWGu zQvMH)R>lDC5kQsEZ@{tKLGoMH7$7xiIs!on6DlK;{SKge8gC877oaU(pXy`+C>`yAz&r;ip9C1d z<-pZao6e@_$1}}5vn^TjwRENqqURn>z76@OY|Xs)&Xb;D-U5vc;#b=W^1eKdE&=*9 zr0s&h0kvEo+HA?*5-g*<1SNfIF$W+etC5LevH3PL68qoOSv=(szZ76zuY+9eE!`G* zPbYv!Tc^m&$m66|39^n^w-*mwQY(FY;j@JhFNjt8ypt%jQ{kmt3pLK+cF%F=X$v%F zW6wT*{Lv~j5jT$>n>1S;<4NzIoaQEoU*pq_Uys9%u>SD$7&3_8+Lb&r*tYe4F(U)8 zA}8vM6`Z`3Q0di%Z3&4lmq%$0-%`S{iV{Q$$G>H0IKz&3ZMQ36P#Yz{rFvA>l)LEC~opq7>LYL8#-l!Z-tdthQS7Vl`VpL^&2;Sc?xKXUjtf6H$=eD*v4 zp|R?Lr~F6A697GG@ICL?dT{HAx$gUwMu7G zljAVCU+P16*KoFBZB@O-wMBV)pS3^MZET-5kH5>E(cD0WuAT0_{7!M^M-bMYXZ8b# z$QD+wS{{xEa^Z;KK4F%_T>JoNIcOw%2(NrL>Hz! zM74Gs8USAax<_yT%Y^^Gg! zR$KyO;UA3@7(gaQKXtnCM}2=Wv2Isq{ZZR`#)`J#-^ka}QgxV7XtJxUjD#n71I`M~ zJ4u$@dvd9TB(o}|cT!aC{Jc3Oo|MZ3q)jQ)r6qt~%0*P+KibyMFy~fhR_&#y8kr)n z5VobVE9cO{SvXO$&+S@OALH5Wvm1~E0P(^kz`2D3m=cqK0wsJN2mo<=lU~1ky#~KI z8%>Duv>69Kw0w1>%M#PM)zg;7X1<2S92=4dFz?aQ2S&A2`Axm62W2y~xu3H92mi@` z5y;)1rNBA_+vu5Sq@Wu3Qh8(EwmPLBrxq|AR3l z7txFImlm*Hzq6bS6HCj8WqmHKe*xm1e`#8ZSdzRjdtr6{Y7!81y2k>5C`Vm+%ruaw!-X1ItxcA=f z5R6zvdJOd(qilD4+IRLIF7sb@bE6nTJSp{2Tq;=O#WB`&Id!w%3XqOb=ti)PM+aw_ZIl9aVa+2>FYi zvxXu-{#<|2i^m6zD?gz7gMae>nGg8w!*Bf;fBjgjQ-J>2@x@yhCoE;(Joe^(%Kv4W zMs~eAB6%aqZ`S(DUwD3ax7cN%J`n-OWzU|GmQH2II}+yE_rlF+M>Z@=F`&r;oH*QF zo<4UBrRNEN0Pojsy*m~nrz4=DRtx%c(pH(^*Xp_<82Vlxe zN6!+~j_Whm090dLGNdZUghH0rfNtrXANNRE6Uwy<_r$R*<}8eu+%r+P-8Sy;Jw22e zf5yu0y7K9~)?on2PI)u3HaS6rPa0ozQ2tD)qKVUuuk>5H%_L{nxBCj9d)FU1c~SR@ z4A1a{pPSt1m?k17ptaCy69B$Yc^=+x63@lw&ZDYv0O#IlMNg~22&@POLOg!1gh5ZM zQCPCTiy{z2*H|Kcdw*NLK*UgW0JnFU zj73vk<6|x_0`4?Z4tDh$u%h^pd&qS&;&>qq-(Mc$Zt&iF?H;aX-bGFlUa^YxoRx1} zIbC0XIFAg_Xw*B+#yUiDc6aKQcw!Sg7IX~o9m}+q{SxxpFHpMLB-f*dU!AhzC5nSt zqLndTY@XsPBG5WJpHq(7OddAu;bV1}sr(#AL^ubidQTeJ~_v%6ZUN!Jh{Avi`qha z?<2fNrdg}yW$CQn{-%Sh!&27W;VXmP_Rvnlcbh5sJ)DTc={gg+XDnOw_WS)o0zAFI9 z{ryK~)%9s$G5MFScvKc85(g~p4TcVtbkB(+>JCJdMZ4PGG9ejo^*oTpLlec*0asu5 zft7aKE52MFKt1l$z~v!dWt$1Wj5=UVhPUo`e#+N1<-TmKK<~`85~TYZZ1;8d$gy|T zLE9Li_!CJXZ9GGMdrw%I>n7eltb@S633Kfk=@!_{d3gk`p5bxhJ&NR1g%N_IGvCUPF`Jv<(RTnBG|C%eD8aQhP5z)E5(Pdv z|DfI0-)(=8JJWEip#{#pee6Z~(>zO|4Pi9kR``|ru|cZ%P{T$-&H5TpZm0nS=6IGK z0FtASH{R>|@~@s{v5oarK7?GkSvH>Yo$vtUzw*~VfB0R$`#(GU{{QRmIehN#`?i&z zd>cNn+C?LsfmlAaXCtL7U54nm*Uf(k<{VK!|3jNFrX-a z@)&|ewQWO<0dyPi@6KF(0PB{637<=j)XH~2ih$(FiTRJ}v?*Siq$G1lU6gs!NCvqQ znl_y@#;s6?<^7VKcA$4V{|&VEvYu<{iEUe_qe^DX5uC+K@+qH@{p4aVhrXJ;US7kw z8r(xF97d=Z(DM7FnOmEa5C{R=h^4TG>?wQ&VhOHZrUKl2ZKV^8+-!!^3bPk^s4yoN z;7}tC7|mqyeEVocVD@~oQxAFc?k0-I zIsiz2=SyEW{E;8{Q-|O2TmSjPXWQOtga25&rB6vl$a;C-BlIjaf^YcGpLq$|Rjw=b z=qzgGqBt6B>RF>tL-&sBzS{)-_MK0R#W?3wz1q>}bx0cBZ;BzGsp|;P0*f=2N^XhM zE0niGLQ{zP++}Ikpwp3dg%I#>A7wGD43PQ_geZmk0Mu{fuu!YUK)4Z#d-F{9#|4pP zi=Su~SBOb0jrV57T<+Z~Xe(vWc4w+6oZ9fHojaWVc{$FX&04FSr@>UlyuuoMm+ilNt(WKa3BD^pZ8F)AMN~GK6+0fNsCF%UGb*c^Q2REO)%_N!Wy^ z=YvIDnzs(`4{jyYHTQ^E?M<&>mqlae>6Hb$)A@AoO_Rq~VikrWM!Z zDP6yLqoHUizW}WoOEm$22^4}W4`4WZt`@VW{D4D%x2(J?>>yZzrYq^l0% zA<-y1C9C9w__KdcLGqzDz9`$wnjY(7RTyI7Teb7(OvpxMIi^LpFSNnVMb=!agPs>w zrmX9vObJG^rEN!E6wgSE|v!br^jkV4t|v(7p0I z_4y?$+s}$kEeK{5 z3!np(nKiF`NAWy%>I?K%)I=6WlVNe>a5rF?j_n94lTrWR?<{xkx)pNu12ys+t5eMX zO&&(b6BtVQYV!|qcHXmW`S9sa&ys0<2f&&WOM1ltjAsEE(4`9nBurgSxa{gg0jE=B z&fDHmyNhsna@-7kmJ|05Ahb`e=#UG6G?x#fLWmO=5@JQu=T`zjV6cYJYcxU+MI0?z zO@N(>0JM*KCQbaEZ7|Dc^Jlpia%mh#L64Ga^5oQDzEPdhSi#lhLcaceI>W@}ihzl> z46xvq?$mp@UYi2i>AZbZezauN#43I)3Ab7H_osgNiDzTY9`lAP!ZP`+8$iu{^_*yqMi>YHZ(pz9I<*=7_l`1; ztKz7ec4xa6`0j~9Q>l2cCk^*V;C|~IbV|+{RAUo={Jxhxyid@T*;sa&5~POF#u|B+dxDj#VOgr4AFKEH9hi=vCw+O`B+<d98dzOX!AW*Gu8;qZN7-j>dAYeD*G=54oyXIF{ez1Ly zwLmb$D$n+GDY;`)5NmIM-%vB=O!{-D(i$of&N@$fp3ZaK1IQY2TpU^U+KjSZDO~34 z=*sXcH^9ASdv!oN_Vw0DirKLzXcVe^J?oekv_?zhLriJ;ls#)kxwgFUm7#I>#M>8j z&~e2V&pQR-)pk;OH*vd};+ha zz#qN@*sMYNNB&=?J*XJJaiF1|=gB!^V|=3v_tq=j2OJC(mM&dcdq6L_x=^0L?D@mu z@AZIz0`PqlFZOCl^2RSaM5#=c`HN;TMDNe2^Joo!STDoRep;JIi?3Jv3t2&Tu?XToDNkS+neSIi&*>ucV}uNx8klPb@s`=Iyo0YIf>Mxa0>S$LDoJJ-rf+XM7>g3$bV?}U0D{X}3Fzj#>nZ7ryywXm z|8Ny~o}%k)9xHF}ts!A&vE690VBzF|;tV5udxwzCCN192V$+drxv{r!jUPIF)IoY@ ze4dqu00YF?$`RnbM1Yeol52<1KNvIiqY)6kq1~3ORQa&*#2a615zAgiddkeKZMkX0 zcdHw>!aHAot9m~_e9Jd2-f=&m)3%D_zvX5S!sPqzOhy(pc&`9zd1h0L@j(!zcX-@< z$Wcxi739j%E(-?5@U1q#)S;9kv+2&eb=uczd?5O&;QZ)*D=T4& z&B$k!WjbJkAe}R##x{)dTn8~G*Z~BvMed_n@*8OA00&$EZ-0PwEq~40Z_xq$DutoT z4WVh#bedcgfi$;+rN30{R#_Ok$ioO#Ii>^5_}GB#noWGJI+x7#^oK5O{?bLL;gbu7 zo5~1)wF)?`Kzr5%iOI-ES)@bN6`xN#VcSyj=gExdlPjm9M=DtNy(^7P_yf$z;_QIf z4c9DJzu0IK*gvnFbby>r1V&L9LQ^*xowI=VraAjMAO8z+Ca4r_`(Vdxq`CZxqey%G~Q zaA1fI_6gyw2Opu9z>)kOz?A=hgVk+oRg(!Kt7@**!1fjZ9Czx8|IW|9d-&r&{Qo%o zp5OIPw*U%Y{+*Bc+pOkl@~s-30` zm2-h`pp%jhKpo$kGFL{t*jBIm1e_9{H~Vm0(K`x7ptSdZW38xNSf0pxPJ!kByVfv{ zP~Ok784J4mhL04CLIVNMn*y_k2Vm~XD7S-CS@8FAVX)f1n*8huo#}{jnY?F{ngFqy z&5&>B!P2`}jPt_}K1ic0|D%>09|^GOxJ~fL8=u5j4*2z(d_QP(aGso4O{IfUH)Zzj ztpN3QLu$LS0sm)}i!p&%WI$QW_l@>xKonX>vH)=|jWz7|v}2dx@micvO=>^jG0W_a zz`|997%2e3^Yd=84Sep#}*_`{mMx*!MedloP6L$h9N3&Os$_uEphlmm&xIqo< z4X{lvJr`)cOuN1IwOMQtue)>+>J0oAbGuaJp|i3&5$Lk!J1|L4Kqx6B5a@g0F+(W5f8X~rhCgG?mXN}E2J-KT zCmFElHYj=b+Hp%l_a@!a@Sb-7Q61C_$J}QfpENeuLJ0^B3+&iL0Qtz2QwM;i7p#oR zJxZ8@P#}VfG52z10HcQ=IIaY^oE`q~AOEw3jNLr^hW6H7=dZ1Ffg8G=OTvy~6FS## zv$6m{Sd0F{vR6R=Feb$kDJ}_Lb@oe3QC?HVVXEzZ@^>t0S z&IVcgR%lQ$j;qc~ShbJ3?E^aH;S>r4WXCl#yab3V8bF=K3aCBgXL5{{V?PU^IiW@P z8W;`OrhxL6-i~3kfwss6f%4w*oX<`7mAB{ZUNsw@>>J8eyWA&)%9oo0Z9m@tK#FHX zpqvOG6aG=;K7HSAh>*Kc#F|UM2TDvX0qA}n2)O`mK#{*kkw(dr50)(@_j~F%Ipv{& zY>`u|-zXx%#y&RrnT@w+)m%W((r@=?l8n-g^?ppCk9QG)j{pEb07*naRPB1$fZ`5$ z^=Bj^T8Q6q7LoKmA~$c{%ePzEg*EAjJWqz_-F}N;ut~RAReJH+Z~yeTgO*>nvZq^~ zMP%6=i;j7CQr*$gSyu3ha+!<%$+!U){@fc&)$eq0g9w1ZQxi&%UW_=<9WV)0ufN(P zcWsJ+bi`dFr*s8bpz^{%^KLSqxDJ>K zZ(N|Lv*WidzYGg!upySRWVmvSRuIef{)4p{{QKpj&RjDSI51C?M)E&p>||-WI3tMo zgJ$#^U({#nUp;-^D=J3EG&rh*g_rT-GBBHooiZ6vt@8G>1r`93#r9aGDL_LDz5ax9 zb)Q862wx@%Kk8(OCl0`y$tJOy_4*i?KypZM4t zhp(l~1YddFSKqy%iKV&-;0_}zgQ2+Rc8J$IDer|H;n^zgj^ zCf=Lyy*R?R%57xz;O;x6YwJ;qi^zQCwUJ8-MV>aO2&2+=ta}{|u>)We%@H7JPi?Q= zeF9SMopUb3BLP;OrA}@@_jr8)upe!tp5EWiwJ((F9Kf0=?;YtrF2u&Ok3~c^Qqq== zlNz9^)8{HN>M|d*b|uTm%H1;l;nKR@_wm6V^VQL4U-fYPr20O;D!NJ$>y*=fE{F5l zdyhIkEcA6_iH>hp8Wwh@!_gr>EkXA`;zP0$?~P>5d03P)3yS*9g+i83i_&@aEN7~= zshs$`bvLyls+GNdsMtyN6P9t)JXbR{3}sh+!@Pbf3j#2xe22 zx!+l`l@!18i-3EF9igk3g z@>0Nw9w;BfLe|2FUwK_Uo)hO;Wav92k3q4Nl=79PbdhI)EnXm>_wIi%E{TiH$nNVb zl4adhrvdw_Q^U?iL&r_(2i&D!oTg`4&>Lh4N7HIqhVdc5o7wpC>*;tR=RRvUE7%M@ z3HrW9&~`ct^j1glpfndyHz`oQq7L@y0EEh-hqvz9faJpA^@NH0Xg1(Ef|?^yShe_j zB?0F~(#h&1PlZO6zItn80LLX{a%V~%zk%&^?kSN?X1@M)+p1h@DfDueJo|8^=j3WD z*DkdSn^9R^e3nnY`<~`aJ;}pZK^4IF4WwL1S44=^(Neni#eWBqETXZBdY0vgYTa32 zgct5@->y29;gi;)>-RVxBZ9=2o zHmS0Vn2advc79&D((ZkgQN4!q={Q%x+Tm*&OU6w0bYa#-2KNmoxNYv?%m)2|)V9$$AIDZZ0U-M{kbkgq-CXQxMt zxAHdnQgwO&j}cGNSgQ%qpHszru_F`VVe8cE3pNYCCqJgaBC z)o{xWUXJ@NMxsI__$-0mU4ZM|ib%+E`VUp`GhKX<5P)-{A4-=3+U4qDmNbiua@=c0 z+KpE`Ig}OUjHMXz{=*p5@YH_4-udAE+moz@q>ST_t*o;|F@N*@hR?tE_x--ZKlkhY z4~Osh?(aI5D;`%aN=PsP+0$mZZ)Ba!Qqvf0QpjZ5)#^VR(Xc4^;V}P51KLNc%0$oF zn7Rh;`%Y(iW_&(^@3YdgB=OOEcgHpJ0+?f)^7uWxD23*@GKP zfz_Mbus~g36H^tnvhMh70&F9b2LS_6R{lLQk?#OcN_ipcU-18QQe-92rKlH5`%x>o z9zR{c$0c!YYQN5Wwf}lYz3vsqYgmithJm*W7pCxIjeB4yUesA!c$RWiroGr^?+@*f zwb4!;UXAvCuH)G-97u@|jp&7XSBfb=uv?&ZY`d;|R~zohS@rY`zK<1{&rnRLYg`5f zd-$)sZ@qo*aN#>XHOf!^#f#f|^)5eSq>W}VL@uqpdQk@;4bxorI!Exr<=Q3C(`i!p z-6r=ss%z2ebb;fxNR2)wA|Y4d8Vyvjz*YbJ;l&OtsOU3iQu|mXx{pFXCfNNt^=9o^ zt9vXiWx+|ky$gXCw581>x!bhDi)@}EV>kE*NJnZJ) z!*`uO$M8!=0#2&Q-Ec`vS8`1k=_vp1`{~#A`$}`+V3Tg;F4zVelYPgbqLkpiJQT(wMW(xFfqniXn^FwmW0cb_b)0gbMY zMOT6sVvM~+5C8+(dV&Gnxw@{8)uD%oY%zFJ9y)8WY&TxHF+-)Z_DHxI;7ME9i{-N# zLfIZa&AI@(eP?|uqI|9;P|7@YZ+6kX!2rsNHD$S);O&ivf8@`9{_ycPKXv%tfBYYq za`@+EiyGLWr=&M)Y5|Zm(vC=6vz~dZ^Ks1_!|L1vjwkB~X~1gq?fWq3G4>I&Csft$#HB2C7DLBaAvs`vfaHr9gN_Ajcowry=H2 zBK2L0ZG#uF$gZ;trz7oMN+8~umH$@5R4r{i*39s-VrgmT!4Z}tH%kNq3#=&R@dNn$CXrm zHc={_S=RmhQl|hczxHyOXuq{GPkzeHqI!8GLZ&J9zQ)3uj;J(UcVze_h0Eg6navJv z$=s#dd)#w9hel4V_DcqZC|zjM4oTw|lO^XLMSGCz_3U&)wZZwL4+g~SfW~kE)^~2d zez=-(bJj#5xo7!`RybT(A$xIrIzKD(%-pkTjhfCgOum5(LmTn}G>assmQ7LM#uv$Z^$~8(MS;inI0W55nZR@JO3{ILU=F~ za3i4n#>bi0*{Me6w{_q!m^v4eW_P_d@65uxmsBYE^jb$g7>IGn} z2%}tf$}+@KcfIqWMzR*&5NWomtdY@aqXN%3?`8-~|G#1Op(je^e5iSKq3h3!s`{3-I{2C4Dk5v3^n<0kK{mor0alt~at_u?a`oLtWsuhsP}L1Ym~M zTSm`90Rrv!>(^`lWJYI+W(Y|+G)C8_<4#Fu&*bg{NY>6+r0D@5_Ioe>@moi|cfh+; z$8sr|895KU`3I+mEiI8bz;BasBb~C&n7n(>th`Q?n@nEX?RI-Wy!qOlbgxj$LJuu} zHjG}r&2%hX0NkvQH@mlqVX`c}D{Tka20E>`(e_3oz)v&}U?EdF%&SLGnD=XY>^xr+ z7Ar}JcBG5O&XG3bZ??{XRr^63Rz2y=z+3q*@%6k$o+EEU6r+`X&3mWm(&`A4liVnV z-xf)bG2fp({_ybVY9?U$?+NXBv44yTb~xN6x)a~GF~nazTMic5hq#MoMAb;Zd2V@3 z(i3{Ie8BUNf2z9?0+}2CZLS2Q9gxlEXScQKLSUY_|3)F_=}t6{KH~=GbYHT$1b;FzX*ppfnxbcmUdVUY>0yZzV*F?o6)l81R#(#TBeU zL@=G`u!-;aL20l`EEuuf;c3FmiX5vaXe4M05Z7Dkb$SFI^&ShVIw8;PAqn@%X`P2j z1T((&PN0bVkmINB`s_j5C6O2=1&2}&L$W292F#1xOTr;kFbt|gh{KfC}j(34OK_AymuTi#>izf5}jI5(1Wzx_QluGA?t*|ai zLK!wq+^r|7_X|?52(aq_ocJ-6Vl047{sN8HM79Jl)^1Fj)W)Y-Ho0+u}9Zgw%Hc(vM{Pij`VfV*t~hv>T*-Zcd}5&6F_d$g*wV<>&nU^^$bwBpUj=Lw=w>VIoS)`4?4dO+5t`dCfeYo z4XMo9Z(pxTIqBVRUy5_1iRo_8N-m~g=?drDX z6(TupT|r4t8GvUgP1_oc%;ru@unp>aifinnc4B1E@q7TId$*EJD_zf9LXW?f zH9Ub>8DK!YOib3p+k0Su6X+fZ&`$VIz-U*k#{$sOB>{bY3V!V3;2V0Vx8hA%sT(48+$3)I8^z0kf=xwVT=k^>LN#Sj*n~qd)ZL z4&VDLKXLf(@A}ROKLJ+i1(bp4xJOERTfZ|zms#)fRU=m2M=q84(>3XAFy-D*wijp6 zbzk`}#gC_1d-|5ix8FA0na(PHp({_b9DA1jZi~db&i7hw1QuN7=zpiy?sA*#(JtD8 z!a1>IALql`@V6(?SPd*`)|BV*RU1$2VL~(fPVjEFW?WebxjZlC?ztErfVYlVPx{8z+Kp={6sokn7YP2U!N;8F;6+Y!dIfZ>Ghhx4^OOR}Z zx%IE5&*z@bU2lVFZB2f52Xy;-dxSjt`U?=13tsBf%VpY|Bx!%;+-<#f^;(m+XBixO zQb<{b7zM2kd4_i;j(c|~(2zfw1SaYylHuBzQLDc0iMx$8qndQ>c6tDuwYT^AqpkN( z3VP}B;jMSyD@5#*lf?#hI-m`;mGa@~g^U-1;e?7SS*W{Qej{$09c2Iv@4XX17M)^} zOb2ST#ac^&YTMqab0WhJtp>fmtiTr_X*gZkwCfPY_IK|=b*>Vp{5_X*swX?z?lC

Cfh(`yG{dm@CT7Meo_svpuZ+GI)lY}o?1j{QQ~0nslV{u8V9 z`g|iHP1?H?9yE%39FOUZ$!PTvYkpzYgD<(fI5Dr2RR0j}tTzIHc4I2c45$0VAU%@A zDE|m|&k`a%qo8H?361xUZ8YimzJM=921K(+p=&W{!qUnYAfidPMzC$6zg;Hp6GYDq zKvbR=L^uLB_4|<@{qe)QZ-3$N8~^$5n;1-rVPXUr$anm}%CpPS{V7j9Cm)!wA)iiC zU>(>)7EQTcDknk16H7yph>v}6r{A7;AE_rdi#nXti(a~MBLGO?5=MgMS$rW-8yGz6 zeLb+Y@>?4L(Mh+mAm7JQ=>G6P8?>@Yy-RX{Y7d>|!(MvS$qhl82M_TAXX&9nP zV?y-0M-D8IV3B<7{udjmRIy0D)p}%dTQ&IUkDMAhqFn~x$KvjjH4fbH?PXFfeA+z4 z|E-w7L|Rjq%BTJO9!oktZqhj+_3}3za{M%$W&JsK@Yb#5`&eoD*$GRX@tr?d`IL>D z2Jyd(JKePEkyVwYIU!EnAiqHO-17g10*3y;cb@6FaUrE^6WuayoZ9=P_gSSThHT12 z24du7ce`E4Ou){hT=EA{$=Xd@l;%tM#UmRsw_~+|>{yb=f^S~%Q{x@{@P}uX3Ijrx z?R=_JJf}PG2IZ$IJ(L(n~wX|uYu{*49f{VO_)@}gVz3NgyqxTOtQw_A6% zeC!Tce6jM+;*t2WyxWs~x|Azv+Nsml?SBBdc@y zjFoZH=vDl@5>Od}+`qeg=$!mySwkDn8lrLC5V)FbfMS(_0%tvScGj#{2aGA4C=kzD zR}NHIF3QNaN=R?k`vO(>^yCEm!BH*=2OZx+zw1*fFO*+;7fSy^J_E~6)zv$moy~D7 zGkO*<8XeSXGpuEi?%^$kCTsxh{OCgZ2Bqw+vC#SyuL)=#^VMyuGZ{sm!J|iYDAGef z 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≻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 literal 0 HcmV?d00001 diff --git a/quarto/derivatives/figures/fcarc-may2016-fig40-300.png b/quarto/derivatives/figures/fcarc-may2016-fig40-300.png new file mode 100644 index 0000000000000000000000000000000000000000..71fd55be581d0e632052d68c3e21ae8721b8de89 GIT binary patch literal 117825 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

xGRKZ=C+&5sk~VU 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%0D!3cR+k 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

d?h&R4$;{Ceg_SoT-<5 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\#@{7%xCKSbWUWV`CNLbqYo$-f0YB*?RS)} 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Π{^?d_WL7UXLqFjE-iGew9&P*xgY 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 literal 0 HcmV?d00001 diff --git a/quarto/derivatives/first_second_derivatives.qmd b/quarto/derivatives/first_second_derivatives.qmd index 365ae2a..2a3aa56 100644 --- a/quarto/derivatives/first_second_derivatives.qmd +++ b/quarto/derivatives/first_second_derivatives.qmd @@ -1016,7 +1016,7 @@ This accurately summarizes how the term is used outside of math books. Does it a ```{julia} -#| hold: true, echo +#| echo: false choices = ["Yes. Same words, same meaning", """No, but it is close. An inflection point is when the *acceleration* changes from positive to negative, so if "results" are about how a company's rate of change is changing, then it is in the ballpark."""] radioq(choices, 2) diff --git a/quarto/derivatives/implicit_differentiation.qmd b/quarto/derivatives/implicit_differentiation.qmd index b1526ed..186d9ac 100644 --- a/quarto/derivatives/implicit_differentiation.qmd +++ b/quarto/derivatives/implicit_differentiation.qmd @@ -902,9 +902,12 @@ imgfile = "figures/fcarc-may2016-fig35-350.gif" caption = """ Image number 35 from L'Hospitals calculus book (the first). Given a description of the curve, identify the point ``E`` which maximizes the height. """ -ImageFile(:derivatives, imgfile, caption) +#ImageFile(:derivatives, imgfile, caption) +nothing ``` +![Image number 35 from L'Hospitals calculus book (the first). Given a description of the curve, identify the point ``E`` which maximizes the height.](figures/fcarc-may2016-fig35-350.png) + The figure above shows a problem appearing in L'Hospital's first calculus book. Given a function defined implicitly by $x^3 + y^3 = axy$ (with $AP=x$, $AM=y$ and $AB=a$) find the point $E$ that maximizes the height. In the [AMS feature column](http://www.ams.org/samplings/feature-column/fc-2016-05) this problem is illustrated and solved in the historical manner, with the comment that the concept of implicit differentiation wouldn't have occurred to L'Hospital. diff --git a/quarto/derivatives/lhospitals_rule.qmd b/quarto/derivatives/lhospitals_rule.qmd index 2a94e75..5bc2cce 100644 --- a/quarto/derivatives/lhospitals_rule.qmd +++ b/quarto/derivatives/lhospitals_rule.qmd @@ -307,24 +307,24 @@ L'Hospital's rule generalizes to other indeterminate forms, in particular the in The value $c$ in the limit can also be infinite. Consider this case with $c=\infty$: -$$ + \begin{align*} \lim_{x \rightarrow \infty} \frac{f(x)}{g(x)} &= \lim_{x \rightarrow 0} \frac{f(1/x)}{g(1/x)} \end{align*} -$$ + L'Hospital's limit applies as $x \rightarrow 0$, so we differentiate to get: -$$ + \begin{align*} \lim_{x \rightarrow 0} \frac{[f(1/x)]'}{[g(1/x)]'} &= \lim_{x \rightarrow 0} \frac{f'(1/x)\cdot(-1/x^2)}{g'(1/x)\cdot(-1/x^2)}\\ &= \lim_{x \rightarrow 0} \frac{f'(1/x)}{g'(1/x)}\\ &= \lim_{x \rightarrow \infty} \frac{f'(x)}{g'(x)}, \end{align*} -$$ + *assuming* the latter limit exists, L'Hospital's rule assures the equality @@ -414,12 +414,12 @@ Be just saw that $\lim_{x \rightarrow 0+}\log(x)/(1/x) = 0$. So by the rules for A limit $\lim_{x \rightarrow c} f(x) - g(x)$ of indeterminate form $\infty - \infty$ can be reexpressed to be of the from $0/0$ through the transformation: -$$ + \begin{align*} f(x) - g(x) &= f(x)g(x) \cdot (\frac{1}{g(x)} - \frac{1}{f(x)}) \\ &= \frac{\frac{1}{g(x)} - \frac{1}{f(x)}}{\frac{1}{f(x)g(x)}}. \end{align*} -$$ + Applying this to diff --git a/quarto/derivatives/linearization.qmd b/quarto/derivatives/linearization.qmd index 318b885..f09c849 100644 --- a/quarto/derivatives/linearization.qmd +++ b/quarto/derivatives/linearization.qmd @@ -505,22 +505,22 @@ $$ Suppose $f(x)$ and $g(x)$ are represented by their tangent lines about $c$, respectively: -$$ + \begin{align*} f(x) &= f(c) + f'(c)(x-c) + \mathcal{O}((x-c)^2), \\ g(x) &= g(c) + g'(c)(x-c) + \mathcal{O}((x-c)^2). \end{align*} -$$ + Consider the sum, after rearranging we have: -$$ + \begin{align*} f(x) + g(x) &= \left(f(c) + f'(c)(x-c) + \mathcal{O}((x-c)^2)\right) + \left(g(c) + g'(c)(x-c) + \mathcal{O}((x-c)^2)\right)\\ &= \left(f(c) + g(c)\right) + \left(f'(c)+g'(c)\right)(x-c) + \mathcal{O}((x-c)^2). \end{align*} -$$ + The two big "Oh" terms become just one as the sum of a constant times $(x-c)^2$ plus a constant time $(x-c)^2$ is just some other constant times $(x-c)^2$. What we can read off from this is the term multiplying $(x-c)$ is just the derivative of $f(x) + g(x)$ (from the sum rule), so this too is a tangent line approximation. @@ -528,7 +528,7 @@ The two big "Oh" terms become just one as the sum of a constant times $(x-c)^2$ Is it a coincidence that a basic algebraic operation with tangent lines approximations produces a tangent line approximation? Let's try multiplication: -$$ + \begin{align*} f(x) \cdot g(x) &= [f(c) + f'(c)(x-c) + \mathcal{O}((x-c)^2)] \cdot [g(c) + g'(c)(x-c) + \mathcal{O}((x-c)^2)]\\ &=[(f(c) + f'(c)(x-c)] \cdot [g(c) + g'(c)(x-c)] + (f(c) + f'(c)(x-c) \cdot \mathcal{O}((x-c)^2)) + g(c) + g'(c)(x-c) \cdot \mathcal{O}((x-c)^2)) + [\mathcal{O}((x-c)^2))]^2\\ @@ -536,7 +536,7 @@ f(x) \cdot g(x) &= [f(c) + f'(c)(x-c) + \mathcal{O}((x-c)^2)] \cdot [g(c) + g'( &= f(c) \cdot g(c) + [f'(c)\cdot g(c) + f(c)\cdot g'(c)] \cdot (x-c) + [f'(c)\cdot g'(c) \cdot (x-c)^2 + \mathcal{O}((x-c)^2)] \\ &= f(c) \cdot g(c) + [f'(c)\cdot g(c) + f(c)\cdot g'(c)] \cdot (x-c) + \mathcal{O}((x-c)^2) \end{align*} -$$ + The big "oh" notation just sweeps up many things including any products of it *and* the term $f'(c)\cdot g'(c) \cdot (x-c)^2$. Again, we see from the product rule that this is just a tangent line approximation for $f(x) \cdot g(x)$. @@ -612,7 +612,7 @@ Automatic differentiation (forward mode) essentially uses this technique. A "dua Dual(0, 1) ``` -Then what is $\(x)$? It should reflect both $(\sin(0), \cos(0))$ the latter being the derivative of $\sin$. We can see this is *almost* what is computed behind the scenes through: +Then what is $x$? It should reflect both $(\sin(0), \cos(0))$ the latter being the derivative of $\sin$. We can see this is *almost* what is computed behind the scenes through: ```{julia} @@ -798,14 +798,14 @@ numericq(abs(answ)) The [Birthday problem](https://en.wikipedia.org/wiki/Birthday_problem) computes the probability that in a group of $n$ people, under some assumptions, that no two share a birthday. Without trying to spoil the problem, we focus on the calculus specific part of the problem below: -$$ + \begin{align*} p &= \frac{365 \cdot 364 \cdot \cdots (365-n+1)}{365^n} \\ &= \frac{365(1 - 0/365) \cdot 365(1 - 1/365) \cdot 365(1-2/365) \cdot \cdots \cdot 365(1-(n-1)/365)}{365^n}\\ &= (1 - \frac{0}{365})\cdot(1 -\frac{1}{365})\cdot \cdots \cdot (1-\frac{n-1}{365}). \end{align*} -$$ + Taking logarithms, we have $\log(p)$ is diff --git a/quarto/derivatives/mean_value_theorem.qmd b/quarto/derivatives/mean_value_theorem.qmd index 9774f42..5eab0f8 100644 --- a/quarto/derivatives/mean_value_theorem.qmd +++ b/quarto/derivatives/mean_value_theorem.qmd @@ -161,9 +161,15 @@ at a relative minimum, the tangent line is parallel to the $x$-axis. This of course is true when the tangent line is well defined by Fermat's observation. """ -ImageFile(:derivatives, imgfile, caption) +# ImageFile(:derivatives, imgfile, caption) +nothing ``` +![Image number $32$ from L'Hopitals calculus book (the first) showing that +at a relative minimum, the tangent line is parallel to the +$x$-axis. This of course is true when the tangent line is well defined +by Fermat's observation.](./figures/lhopital-32.png) + ### Numeric derivatives @@ -247,10 +253,10 @@ Here the maximum occurs at an endpoint. The critical point $c=0.67\dots$ does no :::{.callout-note} ## Note -::: - **Absolute minimum** We haven't discussed the parallel problem of absolute minima over a closed interval. By considering the function $h(x) = - f(x)$, we see that the any thing true for an absolute maximum should hold in a related manner for an absolute minimum, in particular an absolute minimum on a closed interval will only occur at a critical point or an end point. +::: + ## Rolle's theorem diff --git a/quarto/derivatives/more_zeros.qmd b/quarto/derivatives/more_zeros.qmd index 64c87fb..d287dfc 100644 --- a/quarto/derivatives/more_zeros.qmd +++ b/quarto/derivatives/more_zeros.qmd @@ -127,13 +127,13 @@ Though the derivative is related to the slope of the secant line, that is in the Let $\epsilon_{n+1} = x_{n+1}-\alpha$, where $\alpha$ is assumed to be the *simple* zero of $f(x)$ that the secant method converges to. A [calculation](https://math.okstate.edu/people/binegar/4513-F98/4513-l08.pdf) shows that -$$ + \begin{align*} \epsilon_{n+1} &\approx \frac{x_n-x_{n-1}}{f(x_n)-f(x_{n-1})} \frac{(1/2)f''(\alpha)(e_n-e_{n-1})}{x_n-x_{n-1}} \epsilon_n \epsilon_{n-1}\\ & \approx \frac{f''(\alpha)}{2f'(\alpha)} \epsilon_n \epsilon_{n-1}\\ &= C \epsilon_n \epsilon_{n-1}. \end{align*} -$$ + The constant `C` is similar to that for Newton's method, and reveals potential troubles for the secant method similar to those of Newton's method: a poor initial guess (the initial error is too big), the second derivative is too large, the first derivative too flat near the answer. diff --git a/quarto/derivatives/newtons_method.qmd b/quarto/derivatives/newtons_method.qmd index 39f258d..40fe42d 100644 --- a/quarto/derivatives/newtons_method.qmd +++ b/quarto/derivatives/newtons_method.qmd @@ -684,7 +684,7 @@ $$ For this value, we have -$$ + \begin{align*} x_{i+1} - \alpha &= \left(x_i - \frac{f(x_i)}{f'(x_i)}\right) - \alpha\\ @@ -694,7 +694,7 @@ x_{i+1} - \alpha \right)\\ &= \frac{1}{2}\frac{f''(\xi)}{f'(x_i)} \cdot(x_i - \alpha)^2. \end{align*} -$$ + That is diff --git a/quarto/derivatives/optimization.qmd b/quarto/derivatives/optimization.qmd index 7128038..5d58c06 100644 --- a/quarto/derivatives/optimization.qmd +++ b/quarto/derivatives/optimization.qmd @@ -534,9 +534,20 @@ http://www.ams.org/samplings/feature-column/fc-2016-05.) """ -ImageFile(:derivatives, imgfile, caption) +#ImageFile(:derivatives, imgfile, caption) +nothing ``` +![Image number $43$ from l'Hospital's calculus book (the first). A +traveler leaving location $C$ to go to location $F$ must cross two +regions separated by the straight line $AEB$. We suppose that in the +region on the side of $C$, he covers distance $a$ in time $c$, and +that on the other, on the side of $F$, distance $b$ in the same time +$c$. We ask through which point $E$ on the line $AEB$ he should pass, +so as to take the least possible time to get from $C$ to $F$? (From +http://www.ams.org/samplings/feature-column/fc-2016-05.)](./figures/fcarc-may2016-fig43-250.png) + + The last example is a modern day illustration of a problem of calculus dating back to l'Hospital. His parameterization is a bit different. Let's change his by taking two points $(0, a)$ and $(L,-b)$, with $a,b,L$ positive values. Above the $x$ axis travel happens at rate $r_0$, and below, travel happens at rate $r_1$, again, both positive. What value $x$ in $[0,L]$ will minimize the total travel time? @@ -1227,9 +1238,13 @@ caption = L""" Image number $40$ from l'Hospital's calculus book (the first calculus book). Among all the cones that can be inscribed in a sphere, determine which one has the largest lateral area. (From http://www.ams.org/samplings/feature-column/fc-2016-05) """ -ImageFile(:derivatives, imgfile, caption) +#ImageFile(:derivatives, imgfile, caption) +nothing ``` +![Image number $40$ from l'Hospital's calculus book (the first calculus book). Among all the cones that can be inscribed in a sphere, determine which one has the largest lateral area. (From [AMS](http://www.ams.org/samplings/feature-column/fc-2016-05)).](./figures/fcarc-may2016-fig40-300.png) + + The figure above poses a problem about cones in spheres, which can be reduced to a two-dimensional problem. Take a sphere of radius $r=1$, and imagine a secant line of length $l$ connecting $(-r, 0)$ to another point $(x,y)$ with $y>0$. Rotating that line around the $x$ axis produces a cone and its lateral surface is given by $SA=\pi \cdot y \cdot l$. Write $SA$ as a function of $x$ and solve. @@ -1345,12 +1360,12 @@ solve(x/b ~ (x+a)/(b + b*p), x) With $x = a/p$ we get by Pythagorean's theorem that -$$ + \begin{align*} c^2 &= (a + a/p)^2 + (b + bp)^2 \\ &= a^2(1 + \frac{1}{p})^2 + b^2(1+p)^2. \end{align*} -$$ + The ladder problem minimizes $c$ or equivalently $c^2$. diff --git a/quarto/derivatives/related_rates.qmd b/quarto/derivatives/related_rates.qmd index 1e0c862..af38045 100644 --- a/quarto/derivatives/related_rates.qmd +++ b/quarto/derivatives/related_rates.qmd @@ -247,549 +247,7 @@ Often, this problem is presented with $db/dt$ having a constant rate. In this ca caption = "A man and woman walk towards the light." imgfile = "figures/long-shadow-noir.png" -ImageFile(:derivatives, imgfile, caption) -``` - -Shadows are a staple of film noir. In the photo, suppose a man and a woman walk towards a street light. As they approach the light the length of their shadow changes. - - -Suppose, we focus on the $5$ foot tall woman. Her shadow comes from a streetlight $15$ feet high. She is walking at $3$ feet per second towards the light. What is the rate of change of her shadow? - - -The setup for this problem involves drawing a right triangle with height $12$ and base given by the distance $x$ from the light the woman is *plus* the length $l$ of the shadow. There is a similar triangle formed by the woman's height with length $l$. Equating the ratios of the sided gives: - - -$$ -\frac{5}{l} = \frac{12}{x + l} -$$ - -As we need to take derivatives, we work with the reciprocal relationship: - - -$$ -\frac{l}{5} = \frac{x + l}{12} -$$ - -Differentiating in $t$ gives: - - -$$ -\frac{l'}{5} = \frac{x' + l'}{12} -$$ - -Or - - -$$ -l' \cdot (\frac{1}{5} - \frac{1}{12}) = \frac{x'}{12} -$$ - -Solving for $l'$ gives an answer in terms of $x'$ the rate the woman is walking. In this description $x$ is getting shorter, so $x'$ would be $-3$ feet per second and the shadow length would be decreasing at a rate proportional to the walking speed. - - -##### Example - - -```{julia} -#| hold: true -#| echo: false -p = plot(; axis=nothing, border=:none, legend=false, aspect_ratio=:equal) -scatter!(p, [0],[50], color=:yellow, markersize=50) -plot!(p, [0, 50], [0,0], linestyle=:dash) -plot!(p, [0,50], [50,0], linestyle=:dot) -plot!(p, [25,25],[25,0], linewidth=5, color=:black) -plot!(p, [25,50], [0,0], linewidth=2, color=:black) -``` - -The sun is setting at the rate of $1/20$ radian/min, and appears to be dropping perpendicular to the horizon, as depicted in the figure. How fast is the shadow of a $25$ meter wall lengthening at the moment when the shadow is $25$ meters long? - - -Let the shadow length be labeled $x$, as it appears on the $x$ axis above. Then we have by right-angle trigonometry: - - -$$ -\tan(\theta) = \frac{25}{x} -$$ - -of $x\tan(\theta) = 25$. - - -As $t$ evolves, we know $d\theta/dt$ but what is $dx/dt$? Using implicit differentiation yields: - - -$$ -\frac{dx}{dt} \cdot \tan(\theta) + x \cdot (\sec^2(\theta)\cdot \frac{d\theta}{dt}) = 0 -$$ - -Substituting known values and identifying $\theta=\pi/4$ when the shadow length, $x$, is $25$ gives: - - -$$ -\frac{dx}{dt} \cdot \tan(\pi/4) + 25 \cdot((4/2) \cdot \frac{-1}{20} = 0 -$$ - -This can be solved for the unknown: $dx/dt = 50/20$. - - -##### Example - - -A batter hits a ball toward third base at $75$ ft/sec and runs toward first base at a rate of $24$ ft/sec. At what rate does the distance between the ball and the batter change when $2$ seconds have passed? - - -We will answer this with `SymPy`. First we create some symbols for the movement of the ball towardsthird base, `b(t)`, the runner toward first base, `r(t)`, and the two velocities. We use symbolic functions for the movements, as we will be differentiating them in time: - - -```{julia} -@syms b() r() v_b v_r -d = sqrt(b(t)^2 + r(t)^2) -``` - -The distance formula applies to give $d$. As the ball and runner are moving in a perpendicular direction, the formula is easy to apply. - - -We can differentiate `d` in terms of `t` and in process we also find the derivatives of `b` and `r`: - - -```{julia} -db, dr = diff(b(t),t), diff(r(t),t) # b(t), r(t) -- symbolic functions -dd = diff(d,t) # d -- not d(t) -- an expression -``` - -The slight difference in the commands is due to `b` and `r` being symbolic functions, whereas `d` is a symbolic expression. Now we begin substituting. First, from the problem `db` is just the velocity in the ball's direction, or `v_b`. Similarly for `v_r`: - - -```{julia} -ddt = subs(dd, db => v_b, dr => v_r) -``` - -Now, we can substitute in for `b(t)`, as it is `v_b*t`, etc.: - - -```{julia} -ddt₁ = subs(ddt, b(t) => v_b * t, r(t) => v_r * t) -``` - -This finds the rate of change of time for any `t` with symbolic values of the velocities. (And shows how the answer doesn't actually depend on $t$.) The problem's answer comes from a last substitution: - - -```{julia} -ddt₁(t => 2, v_b => 75, v_r => 24) -``` - -Were this done by "hand," it would be better to work with distance squared to avoid the expansion of complexity from the square root. That is, using implicit differentiation: - - -$$ -\begin{align*} -d^2 &= b^2 + r^2\\ -2d\cdot d' &= 2b\cdot b' + 2r\cdot r'\\ -d' &= (b\cdot b' + r \cdot r')/d\\ -d' &= (tb'\cdot b' + tr' \cdot r')/d\\ -d' &= \left((b')^2 + (r')^2\right) \cdot \frac{t}{d}. -\end{align*} -$$ - -##### Example - - -```{julia} -#| hold: true -#| echo: false -#| cache: true -###{{{baseball_been_berry_good}}} -## Secant line approaches tangent line... -function baseball_been_berry_good_graph(n) - - v0 = 15 - x = (t) -> 50t - y = (t) -> v0*t - 5 * t^2 - - - ns = range(.25, stop=3, length=8) - - t = ns[n] - ts = range(0, stop=t, length=50) - xs = map(x, ts) - ys = map(y, ts) - - degrees = atand(y(t)/(100-x(t))) - degrees = degrees < 0 ? 180 + degrees : degrees - - plt = plot(xs, ys, legend=false, size=fig_size, xlim=(0,150), ylim=(0,15)) - plot!(plt, [x(t), 100], [y(t), 0.0], color=:orange) - annotate!(plt, [(55, 4,"θ = $(round(Int, degrees)) degrees"), - (x(t), y(t), "($(round(Int, x(t))), $(round(Int, y(t))))")]) - -end -caption = L""" - -The flight of the ball as being tracked by a stationary outfielder. This ball will go over the head of the player. What can the player tell from the quantity $d\theta/dt$? - -""" -n = 8 - - -anim = @animate for i=1:n - baseball_been_berry_good_graph(i) -end - - -imgfile = tempname() * ".gif" -gif(anim, imgfile, fps = 1) - -ImageFile(imgfile, caption) -``` - -A baseball player stands $100$ meters from home base. A batter hits the ball directly at the player so that the distance from home plate is $x(t)$ and the height is $y(t)$. - - -The player tracks the flight of the ball in terms of the angle $\theta$ made between the ball and the player. This will satisfy: - - -$$ -\tan(\theta) = \frac{y(t)}{100 - x(t)}. -$$ - -What is the rate of change of $\theta$ with respect to $t$ in terms of that of $x$ and $y$? - - -We have by the chain rule and quotient rule: - - -$$ -\sec^2(\theta) \theta'(t) = \frac{y'(t) \cdot (100 - x(t)) - y(t) \cdot (-x'(t))}{(100 - x(t))^2}. -$$ - -If we have $x(t) = 50t$ and $y(t)=v_{0y} t - 5 t^2$ when is the rate of change of the angle happening most quickly? - - -The formula for $\theta'(t)$ is - - -$$ -\theta'(t) = \cos^2(\theta) \cdot \frac{y'(t) \cdot (100 - x(t)) - y(t) \cdot (-x'(t))}{(100 - x(t))^2}. -$$ - -This question requires us to differentiate *again* in $t$. Since we have fairly explicit function for $x$ and $y$, we will use `SymPy` to do this. - - -```{julia} -@syms theta() - -v0 = 5 -x(t) = 50t -y(t) = v0*t - 5 * t^2 -eqn = tan(theta(t)) - y(t) / (100 - x(t)) -``` - -```{julia} -thetap = diff(theta(t),t) -dtheta = solve(diff(eqn, t), thetap)[1] -``` - -We could proceed directly by evaluating: - - -```{julia} -d2theta = diff(dtheta, t)(thetap => dtheta) -``` - -That is not so tractable, however. - - -It helps to simplify $\cos^2(\theta(t))$ using basic right-triangle trigonometry. Recall, $\theta$ comes from a right triangle with height $y(t)$ and length $(100 - x(t))$. The cosine of this angle will be $100 - x(t)$ divided by the length of the hypotenuse. So we can substitute: - - -```{julia} -dtheta₁ = dtheta(cos(theta(t))^2 => (100 -x(t))^2/(y(t)^2 + (100-x(t))^2)) -``` - -Plotting reveals some interesting things. For $v_{0y} < 10$ we have graphs that look like: - - -```{julia} -plot(dtheta₁, 0, v0/5) -``` - -The ball will drop in front of the player, and the change in $d\theta/dt$ is monotonic. - - -But let's rerun the code with $v_{0y} > 10$: - - -```{julia} -#| hold: true -v0 = 15 -x(t) = 50t -y(t) = v0*t - 5 * t^2 -eqn = tan(theta(t)) - y(t) / (100 - x(t)) -thetap = diff(theta(t),t) -dtheta = solve(diff(eqn, t), thetap)[1] -dtheta₁ = subs(dtheta, cos(theta(t))^2, (100 - x(t))^2/(y(t)^2 + (100 - x(t))^2)) -plot(dtheta₁, 0, v0/5) -``` - -In the second case we have a different shape. The graph is not monotonic, and before the peak there is an inflection point. Without thinking too hard, we can see that the greatest change in the angle is when it is just above the head ($t=2$ has $x(t)=100$). - - -That these two graphs differ so, means that the player may be able to read if the ball is going to go over his or her head by paying attention to the how the ball is being tracked. - - -##### Example - - -Hipster pour-over coffee is made with a conical coffee filter. The cone is actually a [frustum](http://en.wikipedia.org/wiki/Frustum) of a cone with small diameter, say $r_0$, chopped off. We will parameterize our cone by a value $h \geq 0$ on the $y$ axis and an angle $\theta$ formed by a side and the $y$ axis. Then the coffee filter is the part of the cone between some $h_0$ (related $r_0=h_0 \tan(\theta)$) and $h$. - - -The volume of a cone of height $h$ is $V(h) = \pi/3 h \cdot R^2$. From the geometry, $R = h\tan(\theta)$. The volume of the filter then is: - - -$$ -V = V(h) - V(h_0). -$$ - -What is $dV/dh$ in terms of $dR/dh$? - - -Differentiating implicitly gives: - - -$$ -\frac{dV}{dh} = \frac{\pi}{3} ( R(h)^2 + h \cdot 2 R \frac{dR}{dh}). -$$ - -We see that it depends on $R$ and the change in $R$ with respect to $h$. However, we visualize $h$ - the height - so it is better to re-express. Clearly, $dR/dh = \tan\theta$ and using $R(h) = h \tan(\theta)$ we get: - - -$$ -\frac{dV}{dh} = \pi h^2 \tan^2(\theta). -$$ - -The rate of change goes down as $h$ gets smaller ($h \geq h_0$) and gets bigger for bigger $\theta$. - - -How do the quantities vary in time? - - -For an incompressible fluid, by balancing the volume leaving with how it leaves we will have $dh/dt$ is the ratio of the cross-sectional area at bottom over that at the height of the fluid $(\pi \cdot (h_0\tan(\theta))^2) / (\pi \cdot ((h\tan\theta))^2)$ times the outward velocity of the fluid. - - -That is $dh/dt = (h_0/h)^2 \cdot v$. Which makes sense - larger openings ($h_0$) mean more fluid lost per unit time so the height change follows, higher levels ($h$) means the change in height is slower, as the cross-sections have more volume. - - -By [Torricelli's](http://en.wikipedia.org/wiki/Torricelli's_law) law, the out velocity follows the law $v = \sqrt{2g(h-h_0)}$. This gives: - - -$$ -\frac{dh}{dt} = \frac{h_0^2}{h^2} \cdot v = \frac{h_0^2}{h^2} \sqrt{2g(h-h_0)}. -$$ - -If $h >> h_0$, then $\sqrt{h-h_0} = \sqrt{h}\sqrt(1 - h_0/h) \approx \sqrt{h}(1 - (1/2)(h_0/h)) \approx \sqrt{h}$. So the rate of change of height in time is like $1/h^{3/2}$. - - -Now, by the chain rule, we have then the rate of change of volume with respect to time, $dV/dt$, is: - - -$$ -\begin{align*} -\frac{dV}{dt} &= -\frac{dV}{dh} \cdot \frac{dh}{dt}\\ -&= \pi h^2 \tan^2(\theta) \cdot \frac{h_0^2}{h^2} \sqrt{2g(h-h_0)} \\ -&= \pi \sqrt{2g} \cdot (r_0)^2 \cdot \sqrt{h-h_0} \\ -&\approx \pi \sqrt{2g} \cdot r_0^2 \cdot \sqrt{h}. -\end{align*} -$$ - -This rate depends on the square of the size of the opening ($r_0^2$) and the square root of the height ($h$), but not the angle of the cone. - - -## Questions - - -###### Question - - -Supply and demand. Suppose demand for product $XYZ$ is $d(x)$ and supply is $s(x)$. The excess demand is $d(x) - s(x)$. Suppose this is positive. How does this influence price? Guess the "law" of economics that applies: - - -```{julia} -#| hold: true -#| echo: false -choices = [ -"The rate of change of price will be ``0``", -"The rate of change of price will increase", -"The rate of change of price will be positive and will depend on the rate of change of excess demand." -] -answ = 3 -radioq(choices, answ, keep_order=true) -``` - -(Theoretically, when demand exceeds supply, prices increase.) - - -###### Question - - -Which makes more sense from an economic viewpoint? - - -```{julia} -#| hold: true -#| echo: false -choices = [ -"If the rate of change of unemployment is negative, the rate of change of wages will be negative.", -"If the rate of change of unemployment is negative, the rate of change of wages will be positive." -] -answ = 2 -radioq(choices, answ, keep_order=true) -``` - -(Colloquially, "the rate of change of unemployment is negative" means the unemployment rate is going down, so there are fewer workers available to fill new jobs.) - - -###### Question - - -In chemistry there is a fundamental relationship between pressure ($P$), temperature ($T)$ and volume ($V$) given by $PV=cT$ where $c$ is a constant. Which of the following would be true with respect to time? - - -```{julia} -#| hold: true -#| echo: false -choices = [ -L"The rate of change of pressure is always increasing by $c$", -"If volume is constant, the rate of change of pressure is proportional to the temperature", -"If volume is constant, the rate of change of pressure is proportional to the rate of change of temperature", -"If pressure is held constant, the rate of change of pressure is proportional to the rate of change of temperature"] -answ = 3 -radioq(choices, answ, keep_order=true) -``` - -###### Question - - -A pebble is thrown into a lake causing ripples to form expanding circles. Suppose one of the circles expands at a rate of $1$ foot per second and the radius of the circle is $10$ feet, what is the rate of change of the area enclosed by the circle? - - -```{julia} -#| hold: true -#| echo: false -# a = pi*r^2 -# da/dt = pi * 2r * drdt -r = 10; drdt = 1 -val = pi * 2r * drdt -numericq(val, units=L"feet$^2$/second") -``` - -###### Question - - -A pizza maker tosses some dough in the air. The dough is formed in a circle with radius $10$. As it rotates, its area increases at a rate of $1$ inch$^2$ per second. What is the rate of change of the radius? - - -```{julia} -#| hold: true -#| echo: false -# a = pi*r^2 -# da/dt = pi * 2r * drdt -r = 10; dadt = 1 -val = dadt /( pi * 2r) -numericq(val, units="inches/second") -``` - -###### Question - - -An FBI agent with a powerful spyglass is located in a boat anchored 400 meters offshore. A gangster under surveillance is driving along the shore. Assume the shoreline is straight and that the gangster is 1 km from the point on the shore nearest to the boat. If the spyglasses must rotate at a rate of $\pi/4$ radians per minute to track the gangster, how fast is the gangster moving? (In kilometers per minute.) [Source.](http://oregonstate.edu/instruct/mth251/cq/Stage9/Practice/ratesProblems.html) - - -```{julia} -#| hold: true -#| echo: false -## tan(theta) = x/y -## sec^2(theta) dtheta/dt = 1/y dx/dt (y is constant) -## dxdt = y sec^2(theta) dtheta/dt -dthetadt = pi/4 -y0 = .4; x0 = 1.0 -theta = atan(x0/y0) -val = y0 * sec(theta)^2 * dthetadt -numericq(val, units="kilometers/minute") -``` - -###### Question - - -A flood lamp is installed on the ground 200 feet from a vertical wall. A six foot tall man is walking towards the wall at the rate of 4 feet per second. How fast is the tip of his shadow moving down the wall when he is 50 feet from the wall? [Source.](http://oregonstate.edu/instruct/mth251/cq/Stage9/Practice/ratesProblems.html) (As the question is written the answer should be positive.) - - -```{julia} -#| hold: true -#| echo: false -## y/200 = 6/x -## dydt = 200 * 6 * -1/x^2 dxdt -x0 = 200 - 50 -dxdt = 4 -val = 200 * 6 * (1/x0^2) * dxdt -numericq(val, units="feet/second") -``` - -###### Question - - -Consider the hyperbola $y = 1/x$ and think of it as a slide. A particle slides along the hyperbola so that its x-coordinate is increasing at a rate of $f(x)$ units/sec. If its $y$-coordinate is decreasing at a constant rate of $1$ unit/sec, what is $f(x)$? [Source.](http://oregonstate.edu/instruct/mth251/cq/Stage9/Practice/ratesProblems.html) - - -```{julia} -#| hold: true -#| echo: false -choices = [ -"``f(x) = 1/x``", -"``f(x) = x^0``", -"``f(x) = x``", -"``f(x) = x^2``" -] -answ = 4 -radioq(choices, answ, keep_order=true) -``` - -###### Question - - -A balloon is in the shape of a sphere, fortunately, as this gives a known formula, $V=4/3 \pi r^3$, for the volume. If the balloon is being filled with a rate of change of volume per unit time is $2$ and the radius is $3$, what is rate of change of radius per unit time? - - -```{julia} -#| hold: true -#| echo: false -r, dVdt = 3, 2 -drdt = dVdt / (4 * pi * r^2) -numericq(drdt, units="units per unit time") -``` - -###### Question - - -Consider the curve $f(x) = x^2 - \log(x)$. For a given $x$, the tangent line intersects the $y$ axis. Where? - - -```{julia} -#| hold: true -#| echo: false -choices = [ -"``y = 1 - x^2 - \\log(x)``", -"``y = 1 - x^2``", -"``y = 1 - \\log(x)``", -"``y = x(2x - 1/x)``" -] -answ = 1 -radioq(choices, answ) -``` - -If $dx/dt = -1$, what is $dy/dt$? - - -```{julia} +#ImageFile(:der #| hold: true #| echo: false choices = [ diff --git a/quarto/derivatives/taylor_series_polynomials.qmd b/quarto/derivatives/taylor_series_polynomials.qmd index e7adbe4..77be7bc 100644 --- a/quarto/derivatives/taylor_series_polynomials.qmd +++ b/quarto/derivatives/taylor_series_polynomials.qmd @@ -113,7 +113,7 @@ The term "best" is deserved, as any other straight line will differ at least in (This is a consequence of Cauchy's mean value theorem with $F(c) = f(c) - f'(c)\cdot(c-x)$ and $G(c) = (c-x)^2$ -$$ + \begin{align*} \frac{F'(\xi)}{G'(\xi)} &= \frac{f'(\xi) - f''(\xi)(\xi-x) - f(\xi)\cdot 1}{2(\xi-x)} \\ @@ -122,7 +122,7 @@ $$ &= \frac{f(c) - f'(c)(c-x) - (f(x) - f'(x)(x-x))}{(c-x)^2 - (x-x)^2} \\ &= \frac{f(c) + f'(c)(x-c) - f(x)}{(x-c)^2} \end{align*} -$$ + That is, $f(x) = f(c) + f'(c)(x-c) + f''(\xi)/2\cdot(x-c)^2$, or $f(x)-tl(x)$ is as described.) @@ -153,14 +153,12 @@ As in the linear case, there is flexibility in the exact points chosen for the i Now, we take a small detour to define some notation. Instead of writing our two points as $c$ and $c+h,$ we use $x_0$ and $x_1$. For any set of points $x_0, x_1, \dots, x_n$, define the **divided differences** of $f$ inductively, as follows: -$$ -\begin{align} +\begin{align*} f[x_0] &= f(x_0) \\ f[x_0, x_1] &= \frac{f[x_1] - f[x_0]}{x_1 - x_0}\\ \cdots &\\ f[x_0, x_1, x_2, \dots, x_n] &= \frac{f[x_1, \dots, x_n] - f[x_0, x_1, x_2, \dots, x_{n-1}]}{x_n - x_0}. -\end{align} -$$ +\end{align*} We see the first two values look familiar, and to generate more we just take certain ratios akin to those formed when finding a secant line. @@ -252,12 +250,12 @@ A proof based on Rolle's theorem appears in the appendix. Why the fuss? The answer comes from a result of Newton on *interpolating* polynomials. Consider a function $f$ and $n+1$ points $x_0$, $x_1, \dots, x_n$. Then an interpolating polynomial is a polynomial of least degree that goes through each point $(x_i, f(x_i))$. The [Newton form](https://en.wikipedia.org/wiki/Newton_polynomial) of such a polynomial can be written as: -$$ + \begin{align*} f[x_0] &+ f[x_0,x_1] \cdot (x-x_0) + f[x_0, x_1, x_2] \cdot (x-x_0) \cdot (x-x_1) + \\ & \cdots + f[x_0, x_1, \dots, x_n] \cdot (x-x_0)\cdot \cdots \cdot (x-x_{n-1}). \end{align*} -$$ + The case $n=0$ gives the value $f[x_0] = f(c)$, which can be interpreted as the slope-$0$ line that goes through the point $(c,f(c))$. @@ -485,12 +483,12 @@ On inspection, it is seen that this is Newton's method applied to $f'(x)$. This Starting with the Newton form of the interpolating polynomial of smallest degree: -$$ + \begin{align*} f[x_0] &+ f[x_0,x_1] \cdot (x - x_0) + f[x_0, x_1, x_2] \cdot (x - x_0)\cdot(x-x_1) + \\ & \cdots + f[x_0, x_1, \dots, x_n] \cdot (x-x_0) \cdot \cdots \cdot (x-x_{n-1}). \end{align*} -$$ + and taking $x_i = c + i\cdot h$, for a given $n$, we have in the limit as $h > 0$ goes to zero that coefficients of this polynomial converge to the coefficients of the *Taylor Polynomial of degree n*: @@ -850,24 +848,24 @@ The actual code is different, as the Taylor polynomial isn't used. The Taylor p For notational purposes, let $g(x)$ be the inverse function for $f(x)$. Assume *both* functions have a Taylor polynomial expansion: -$$ + \begin{align*} f(x_0 + \Delta_x) &= f(x_0) + a_1 \Delta_x + a_2 (\Delta_x)^2 + \cdots a_n + (\Delta_x)^n + \dots\\ g(y_0 + \Delta_y) &= g(y_0) + b_1 \Delta_y + b_2 (\Delta_y)^2 + \cdots b_n + (\Delta_y)^n + \dots \end{align*} -$$ + Then using $x = g(f(x))$, we have expanding the terms and using $\approx$ to drop the $\dots$: -$$ + \begin{align*} x_0 + \Delta_x &= g(f(x_0 + \Delta_x)) \\ &\approx g(f(x_0) + \sum_{j=1}^n a_j (\Delta_x)^j) \\ &\approx g(f(x_0)) + \sum_{i=1}^n b_i \left(\sum_{j=1}^n a_j (\Delta_x)^j \right)^i \\ &\approx x_0 + \sum_{i=1}^{n-1} b_i \left(\sum_{j=1}^n a_j (\Delta_x)^j\right)^i + b_n \left(\sum_{j=1}^n a_j (\Delta_x)^j\right)^n \end{align*} -$$ + That is: @@ -1207,7 +1205,7 @@ $$ These two polynomials are of degree $n$ or less and have $u(x) = h(x)-g(x)=0$, by uniqueness. So the coefficients of $u(x)$ are $0$. We have that the coefficient of $x^n$ must be $a_n-b_n$ so $a_n=b_n$. Our goal is to express $a_n$ in terms of $a_{n-1}$ and $b_{n-1}$. Focusing on the $x^{n-1}$ term, we have: -$$ + \begin{align*} b_n(x-x_n)(x-x_{n-1})\cdot\cdots\cdot(x-x_1) &- a_n\cdot(x-x_0)\cdot\cdots\cdot(x-x_{n-1}) \\ @@ -1215,7 +1213,7 @@ b_n(x-x_n)(x-x_{n-1})\cdot\cdots\cdot(x-x_1) a_n [(x-x_1)\cdot\cdots\cdot(x-x_{n-1})] [(x- x_n)-(x-x_0)] \\ &= -a_n \cdot(x_n - x_0) x^{n-1} + p_{n-2}, \end{align*} -$$ + where $p_{n-2}$ is a polynomial of at most degree $n-2$. (The expansion of $(x-x_1)\cdot\cdots\cdot(x-x_{n-1}))$ leaves $x^{n-1}$ plus some lower degree polynomial.) Similarly, we have $a_{n-1}(x-x_0)\cdot\cdots\cdot(x-x_{n-2}) = a_{n-1}x^{n-1} + q_{n-2}$ and $b_{n-1}(x-x_n)\cdot\cdots\cdot(x-x_2) = b_{n-1}x^{n-1}+r_{n-2}$. Combining, we get that the $x^{n-1}$ term of $u(x)$ is diff --git a/quarto/differentiable_vector_calculus/polar_coordinates.qmd b/quarto/differentiable_vector_calculus/polar_coordinates.qmd index eb1fb17..7380787 100644 --- a/quarto/differentiable_vector_calculus/polar_coordinates.qmd +++ b/quarto/differentiable_vector_calculus/polar_coordinates.qmd @@ -409,27 +409,24 @@ The answer is the difference: The length of the arc traced by a polar graph can also be expressed using an integral. Again, we partition the interval $[a,b]$ and consider the wedge from $(r(t_{i-1}), t_{i-1})$ to $(r(t_i), t_i)$. The curve this wedge approximates will have its arc length approximated by the line segment connecting the points. Expressing the points in Cartesian coordinates and simplifying gives the distance squared as: -$$ -\begin{align} +\begin{align*} d_i^2 &= (r(t_i) \cos(t_i) - r(t_{i-1})\cos(t_{i-1}))^2 + (r(t_i) \sin(t_i) - r(t_{i-1})\sin(t_{i-1}))^2\\ &= r(t_i)^2 - 2r(t_i)r(t_{i-1}) \cos(t_i - t_{i-1}) + r(t_{i-1})^2 \\ &\approx r(t_i)^2 - 2r(t_i)r(t_{i-1}) (1 - \frac{(t_i - t_{i-1})^2}{2})+ r(t_{i-1})^2 \quad(\text{as} \cos(x) \approx 1 - x^2/2)\\ &= (r(t_i) - r(t_{i-1}))^2 + r(t_i)r(t_{i-1}) (t_i - t_{i-1})^2. -\end{align} -$$ +\end{align*} + As was done with arc length we multiply $d_i$ by $(t_i - t_{i-1})/(t_i - t_{i-1})$ and move the bottom factor under the square root: -$$ -\begin{align} +\begin{align*} d_i &= d_i \frac{t_i - t_{i-1}}{t_i - t_{i-1}} \\ &\approx \sqrt{\frac{(r(t_i) - r(t_{i-1}))^2}{(t_i - t_{i-1})^2} + \frac{r(t_i)r(t_{i-1}) (t_i - t_{i-1})^2}{(t_i - t_{i-1})^2}} \cdot (t_i - t_{i-1})\\ &= \sqrt{(r'(\xi_i))^2 + r(t_i)r(t_{i-1})} \cdot (t_i - t_{i-1}).\quad(\text{the mean value theorem}) -\end{align} -$$ +\end{align*} Adding the approximations to the $d_i$ looks like a Riemann sum approximation to the integral $\int_a^b \sqrt{(r'(\theta)^2) + r(\theta)^2} d\theta$ (with the extension to the Riemann sum formula needed to derive the arc length for a parameterized curve). That is: diff --git a/quarto/differentiable_vector_calculus/scalar_functions.qmd b/quarto/differentiable_vector_calculus/scalar_functions.qmd index 21e9ab6..b6a6596 100644 --- a/quarto/differentiable_vector_calculus/scalar_functions.qmd +++ b/quarto/differentiable_vector_calculus/scalar_functions.qmd @@ -36,13 +36,11 @@ nothing Consider a function $f: R^n \rightarrow R$. It has multiple arguments for its input (an $x_1, x_2, \dots, x_n$) and only one, *scalar*, value for an output. Some simple examples might be: -$$ -\begin{align} +\begin{align*} f(x,y) &= x^2 + y^2\\ g(x,y) &= x \cdot y\\ h(x,y) &= \sin(x) \cdot \sin(y) -\end{align} -$$ +\end{align*} For two examples from real life consider the elevation Point Query Service (of the [USGS](https://nationalmap.gov/epqs/)) returns the elevation in international feet or meters for a specific latitude/longitude within the United States. The longitude can be associated to an $x$ coordinate, the latitude to a $y$ coordinate, and the elevation a $z$ coordinate, and as long as the region is small enough, the $x$-$y$ coordinates can be thought to lie on a plane. (A flat earth assumption.) @@ -468,9 +466,12 @@ imgfile = "figures/daily-map.jpg" caption = """ Image from [weather.gov](https://www.weather.gov/unr/1943-01-22) of a contour map showing atmospheric pressures from January 22, 1943 in Rapid City, South Dakota. """ -ImageFile(:differentiable_vector_calculus, imgfile, caption) +# ImageFile(:differentiable_vector_calculus, imgfile, caption) +nothing ``` +![Image from [weather.gov](https://www.weather.gov/unr/1943-01-22) of a contour map showing atmospheric pressures from January 22, 1943 in Rapid City, South Dakota.](./figures/daily-map.jpg) + This day is highlighted as "The most notable temperature fluctuations occurred on January 22, 1943 when temperatures rose and fell almost 50 degrees in a few minutes. This phenomenon was caused when a frontal boundary separating extremely cold Arctic air from warmer Pacific air rolled like an ocean tide along the northern and eastern slopes of the Black Hills." @@ -490,9 +491,18 @@ imgfile = "figures/australia.png" caption = """ Image from [IRI](https://iridl.ldeo.columbia.edu/maproom/Global/Ocean_Temp/Monthly_Temp.html) shows mean sea surface temperature near Australia in January 1982. IRI has zoomable graphs for this measurement from 1981 to the present. The contour lines are in 2 degree Celsius increments. """ -ImageFile(:differentiable_vector_calculus, imgfile, caption) +#ImageFile(:differentiable_vector_calculus, imgfile, caption) +nothing ``` +![Image from +[IRI](https://iridl.ldeo.columbia.edu/maproom/Global/Ocean_Temp/Monthly_Temp.html) +shows mean sea surface temperature near Australia in January 1982. IRI +has zoomable graphs for this measurement from 1981 to the present. The +contour lines are in 2 degree Celsius +increments.](./figures/australia.png) + + ##### Example @@ -621,26 +631,23 @@ Before answering this, we discuss *directional* derivatives along the simplified If we compose $f \circ \vec\gamma_x$, we can visualize this as a curve on the surface from $f$ that moves in the $x$-$y$ plane along the line $y=c$. The derivative of this curve will satisfy: -$$ -\begin{align} +\begin{align*} (f \circ \vec\gamma_x)'(x) &= \lim_{t \rightarrow x} \frac{(f\circ\vec\gamma_x)(t) - (f\circ\vec\gamma_x)(x)}{t-x}\\ &= \lim_{t\rightarrow x} \frac{f(t, c) - f(x,c)}{t-x}\\ &= \lim_{h \rightarrow 0} \frac{f(x+h, c) - f(x, c)}{h}. -\end{align} -$$ +\end{align*} The latter expresses this to be the derivative of the function that holds the $y$ value fixed, but lets the $x$ value vary. It is the rate of change in the $x$ direction. There is special notation for this: -$$ -\begin{align} +\begin{align*} \frac{\partial f(x,y)}{\partial x} &= \lim_{h \rightarrow 0} \frac{f(x+h, y) - f(x, y)}{h},\quad\text{and analogously}\\ \frac{\partial f(x,y)}{\partial y} &= \lim_{h \rightarrow 0} \frac{f(x, y+h) - f(x, y)}{h}. -\end{align} -$$ +\end{align*} + These are called the *partial* derivatives of $f$. The symbol $\partial$, read as "partial", is reminiscent of "$d$", but indicates the derivative is only in a given direction. Other notations exist for this: @@ -678,12 +685,10 @@ Let $f(x,y) = x^2 - 2xy$, then to compute the partials, we just treat the other Then -$$ -\begin{align} +\begin{align*} \frac{\partial (x^2 - 2xy)}{\partial x} &= 2x - 2y\\ \frac{\partial (x^2 - 2xy)}{\partial y} &= 0 - 2x = -2x. -\end{align} -$$ +\end{align*} Combining, gives $\nabla{f} = \langle 2x -2y, -2x \rangle$. @@ -691,13 +696,12 @@ Combining, gives $\nabla{f} = \langle 2x -2y, -2x \rangle$. If $g(x,y,z) = \sin(x) + z\cos(y)$, then -$$ -\begin{align} + +\begin{align*} \frac{\partial g }{\partial x} &= \cos(x) + 0 = \cos(x),\\ \frac{\partial g }{\partial y} &= 0 + z(-\sin(y)) = -z\sin(y),\\ \frac{\partial g }{\partial z} &= 0 + \cos(y) = \cos(y). -\end{align} -$$ +\end{align*} Combining, gives $\nabla{g} = \langle \cos(x), -z\sin(y), \cos(y) \rangle$. @@ -1379,16 +1383,14 @@ $$ The last expression is a suggestion, as it is an abuse of previously used notation: the dot product isn't between vectors of the same type, as the rightmost vector is representing a vector of vectors. The [Jacobian](https://en.wikipedia.org/wiki/Jacobian_matrix_and_determinant) matrix combines these vectors into a rectangular array, though with the vectors written as *row* vectors. If $G: R^m \rightarrow R^n$, then the Jacobian is the $n \times m$ matrix with $(i,j)$ entry given by $\partial G_i, \partial u_j$: - $$ -J = \left[ -\begin{align} +J = +\begin{bmatrix} \frac{\partial G_1}{\partial u_1} & \frac{\partial G_1}{\partial u_2} & \dots \frac{\partial G_1}{\partial u_m}\\ \frac{\partial G_2}{\partial u_1} & \frac{\partial G_2}{\partial u_2} & \dots \frac{\partial G_2}{\partial u_m}\\ & \vdots & \\ \frac{\partial G_n}{\partial u_1} & \frac{\partial G_n}{\partial u_2} & \dots \frac{\partial G_n}{\partial u_m} -\end{align} -\right]. +\end{bmatrix} $$ With this notation, and matrix multiplication we have $(\nabla(f\circ G))^t = \nabla(f)^t J$. @@ -1406,20 +1408,17 @@ Let $f(x,y) = x^2 + y^2$ be a scalar function. We have if $G(r, \theta) = \langl Were this computed through the chain rule, we have: -$$ -\begin{align} +\begin{align*} \nabla G_1 &= \langle \frac{\partial r\cos(\theta)}{\partial r}, \frac{\partial r\cos(\theta)}{\partial \theta} \rangle= \langle \cos(\theta), -r \sin(\theta) \rangle,\\ \nabla G_2 &= \langle \frac{\partial r\sin(\theta)}{\partial r}, \frac{\partial r\sin(\theta)}{\partial \theta} \rangle= \langle \sin(\theta), r \cos(\theta) \rangle. -\end{align} -$$ +\end{align*} We have $\partial f/\partial x = 2x$ and $\partial f/\partial y = 2y$, which at $G$ are $2r\cos(\theta)$ and $2r\sin(\theta)$, so by the chain rule, we should have -$$ -\begin{align} +\begin{align*} \frac{\partial (f\circ G)}{\partial r} &= \frac{\partial{f}}{\partial{x}}\frac{\partial G_1}{\partial r} + \frac{\partial{f}}{\partial{y}}\frac{\partial G_2}{\partial r} = @@ -1429,8 +1428,8 @@ $$ \frac{\partial f}{\partial x}\frac{\partial G_1}{\partial \theta} + \frac{\partial f}{\partial y}\frac{\partial G_2}{\partial \theta} = 2r\cos(\theta)(-r\sin(\theta)) + 2r\sin(\theta)(r\cos(\theta)) = 0. -\end{align} -$$ +\end{align*} + ## Higher order partial derivatives @@ -1487,14 +1486,11 @@ is uniquely defined. That is, which order the partial derivatives are taken is u The [Hessian](https://en.wikipedia.org/wiki/Hessian_matrix) matrix is the matrix of mixed partials defined (for $n=2$) by: - $$ -H = \left[ -\begin{align} +H = \begin{bmatrix} \frac{\partial^2 f}{\partial x \partial x} & \frac{\partial^2 f}{\partial x \partial y}\\ \frac{\partial^2 f}{\partial y \partial x} & \frac{\partial^2 f}{\partial y \partial y} -\end{align} -\right]. +\end{bmatrix}. $$ For symbolic expressions, the Hessian may be computed directly in `SymPy` with its `hessian` function: @@ -1673,9 +1669,12 @@ The figure (taken from [openstreetmap.org](https://www.openstreetmap.org/way/537 ```{julia} #| hold: true #| echo: false -ImageFile(:differentiable_vector_calculus, "figures/stelvio-pass.png", "Stelvio Pass") +#ImageFile(:differentiable_vector_calculus, "figures/stelvio-pass.png", "Stelvio Pass") +nothing ``` +![Stelvio Pass](./figures/stelvio-pass.png) + The road through the pass (on the right) makes a series of switch backs. @@ -1903,9 +1902,12 @@ The figure shows climbers on their way to summit Mt. Everest: #| echo: false imgfile = "figures/everest.png" caption = "Climbers en route to the summit of Mt. Everest" -ImageFile(:differentiable_vector_calculus, imgfile, caption) +#ImageFile(:differentiable_vector_calculus, imgfile, caption) +nothing ``` +![Climbers en route to the summit of Mt. Everest](./figures/everest.png) + If the surface of the mountain is given by a function $z=f(x,y)$ then the climbers move along a single path parameterized, say, by $\vec{\gamma}(t) = \langle x(t), y(t)\rangle$, as set up by the Sherpas. @@ -2301,7 +2303,7 @@ $$ \frac{f(x+\Delta x, y + \Delta y) - f(x, y+\Delta{y}) - f(x+\Delta x,y) + f(x,y)}{\Delta x \Delta y}. $$ -At $(0,0)$ what is $ \frac{\partial \frac{\partial f}{\partial x}}{ \partial y}$? +At $(0,0)$ what is $\frac{\partial \frac{\partial f}{\partial x}}{ \partial y}$? ```{julia} @@ -2311,7 +2313,7 @@ answ = -1 numericq(answ) ``` -At $(0,0)$ what is $ \frac{\partial \frac{\partial f}{\partial y}}{ \partial x}$? +At $(0,0)$ what is $\frac{\partial \frac{\partial f}{\partial y}}{ \partial x}$? ```{julia} diff --git a/quarto/differentiable_vector_calculus/scalar_functions_applications.qmd b/quarto/differentiable_vector_calculus/scalar_functions_applications.qmd index bebc462..aaeb22c 100644 --- a/quarto/differentiable_vector_calculus/scalar_functions_applications.qmd +++ b/quarto/differentiable_vector_calculus/scalar_functions_applications.qmd @@ -340,12 +340,12 @@ The level curve $f(x,y)=0$ and the level curve $g(x,y)=0$ may intersect. Solving To elaborate, consider two linear equations written in a general form: -$$ -\begin{align} + +\begin{align*} ax + by &= u\\ cx + dy &= v -\end{align} -$$ +\end{align*} + A method to solve this by hand would be to solve for $y$ from one equation, replace this expression into the second equation and then solve for $x$. From there, $y$ can be found. A more advanced method expresses the problem in a matrix formulation of the form $Mx=b$ and solves that equation. This form of solving is implemented in `Julia`, through the "backslash" operator. Here is the general solution: @@ -421,22 +421,22 @@ We look to find the intersection point near $(1,1)$ using Newton's method We have by linearization: -$$ -\begin{align} + +\begin{align*} f(x,y) &\approx f(x_n, y_n) + \frac{\partial f}{\partial x}\Delta x + \frac{\partial f}{\partial y}\Delta y \\ g(x,y) &\approx g(x_n, y_n) + \frac{\partial g}{\partial x}\Delta x + \frac{\partial g}{\partial y}\Delta y, -\end{align} -$$ +\end{align*} + where $\Delta x = x- x_n$ and $\Delta y = y-y_n$. Setting $f(x,y)=0$ and $g(x,y)=0$, leaves these two linear equations in $\Delta x$ and $\Delta y$: -$$ -\begin{align} + +\begin{align*} \frac{\partial f}{\partial x} \Delta x + \frac{\partial f}{\partial y} \Delta y &= -f(x_n, y_n)\\ \frac{\partial g}{\partial x} \Delta x + \frac{\partial g}{\partial y} \Delta y &= -g(x_n, y_n). -\end{align} -$$ +\end{align*} + One step of Newton's method defines $(x_{n+1}, y_{n+1})$ to be the values $(x,y)$ that make the linearized functions about $(x_n, y_n)$ both equal to $\vec{0}$. @@ -855,12 +855,11 @@ The gradient is easily found: $\nabla{f} = \langle 2x - 1, 6y \rangle$, and is $ $$ -H = \left[ -\begin{array}{} +H = +\begin{bmatrix} 2 & 0\\ 0 & 6 -\end{array} -\right]. +\end{bmatrix}. $$ At $\vec{a}$ this has positive determinant and $f_{xx} > 0$, so $\vec{a}$ corresponds to a *local* minimum with values $f(\vec{a}) = (1/2)^2 + 3(0) - 1/2 = -1/4$. The absolute maximum and minimum may occur here (well, not the maximum) or on the boundary, so that must be considered. In this case we can easily parameterize the boundary and turn this into the univariate case: @@ -1069,12 +1068,10 @@ $$ Another might be the vertical squared distance to the line: -$$ \begin{align*} d2(\alpha, \beta) &= (y_1 - l(x_1))^2 + (y_2 - l(x_2))^2 + (y_3 - l(x_3))^2 \\ &= (y1 - (\alpha + \beta x_1))^2 + (y3 - (\alpha + \beta x_3))^2 + (y3 - (\alpha + \beta x_3))^2 \end{align*} -$$ Another might be the *shortest* distance to the line: @@ -1411,12 +1408,12 @@ We can still identify the tangent and normal directions. What is different about > *The method of Lagrange multipliers*: To optimize $f(x,y)$ subject to a constraint $g(x,y) = k$ we solve for all *simultaneous* solutions to > -> $$ -> \begin{align} +> +> \begin{align*} > \nabla{f}(x,y) &= \lambda \nabla{g}(x,y), \text{and}\\ > g(x,y) &= k. -> \end{align} -> $$ +> \end{align*} +> > > These *possible* points are evaluated to see if they are maxima or minima. @@ -1473,13 +1470,13 @@ $$ The we have -$$ -\begin{align} + +\begin{align*} \frac{\partial L}{\partial{x}} &= \frac{\partial{f}}{\partial{x}} - \lambda \frac{\partial{g}}{\partial{x}}\\ \frac{\partial L}{\partial{y}} &= \frac{\partial{f}}{\partial{y}} - \lambda \frac{\partial{g}}{\partial{y}}\\ \frac{\partial L}{\partial{\lambda}} &= 0 + (g(x,y) - k). -\end{align} -$$ +\end{align*} + But if the Lagrange condition holds, each term is $0$, so Lagrange's method can be seen as solving for point $\nabla{L} = \vec{0}$. The optimization problem in two variables with a constraint becomes a problem of finding and classifying zeros of a function with *three* variables. @@ -1557,14 +1554,14 @@ The starting point is a *perturbation*: $\hat{y}(x) = y(x) + \epsilon_1 \eta_1(x With this notation, and fixing $y$ we can re-express the equations in terms ot $\epsilon_1$ and $\epsilon_2$: -$$ -\begin{align} + +\begin{align*} F(\epsilon_1, \epsilon_2) &= \int f(x, \hat{y}, \hat{y}') dx = \int f(x, y + \epsilon_1 \eta_1 + \epsilon_2 \eta_2, y' + \epsilon_1 \eta_1' + \epsilon_2 \eta_2') dx,\\ G(\epsilon_1, \epsilon_2) &= \int g(x, \hat{y}, \hat{y}') dx = \int g(x, y + \epsilon_1 \eta_1 + \epsilon_2 \eta_2, y' + \epsilon_1 \eta_1' + \epsilon_2 \eta_2') dx. -\end{align} -$$ +\end{align*} + Then our problem is restated as: @@ -1591,18 +1588,19 @@ $$ Computing just the first one, we have using the chain rule and assuming interchanging the derivative and integral is possible: -$$ -\begin{align} + +\begin{align*} \frac{\partial{F}}{\partial{\epsilon_1}} &= \int \frac{\partial}{\partial{\epsilon_1}}( f(x, y + \epsilon_1 \eta_1 + \epsilon_2 \eta_2, y' + \epsilon_1 \eta_1' + \epsilon_2 \eta_2')) dx\\ &= \int \left(\frac{\partial{f}}{\partial{y}} \eta_1 + \frac{\partial{f}}{\partial{y'}} \eta_1'\right) dx\quad\quad(\text{from }\nabla{f} \cdot \langle 0, \eta_1, \eta_1'\rangle)\\ &=\int \eta_1 \left(\frac{\partial{f}}{\partial{y}} - \frac{d}{dx}\frac{\partial{f}}{\partial{y'}}\right) dx. -\end{align} -$$ +\end{align*} -The last line by integration by parts: $\int u'(x) v(x) dx = (u \cdot v)(x)\mid_{x_0}^{x_1} - \int u(x) \frac{d}{dx} v(x) dx = - \int u(x) \frac{d}{dx} v(x) dx $. The last lines, as $\eta_1 = 0$ at $x_0$ and $x_1$ by assumption. We get: +The last line by integration by parts: +$\int u'(x) v(x) dx = (u \cdot v)(x)\mid_{x_0}^{x_1} - \int u(x) \frac{d}{dx} v(x) dx = - \int u(x) \frac{d}{dx} v(x) dx$. +The last lines, as $\eta_1 = 0$ at $x_0$ and $x_1$ by assumption. We get: $$ 0 = \int \eta_1\left(\frac{\partial{f}}{\partial{y}} - \frac{d}{dx}\frac{\partial{f}}{\partial{y'}}\right). @@ -1664,12 +1662,12 @@ ex2 = Eq(ex1.lhs()^2 - 1, simplify(ex1.rhs()^2) - 1) Now $y'$ can be integrated using the substitution $y + C = \lambda \cos\theta$ to give: $-\lambda\int\cos\theta d\theta = x + D$, $D$ some constant. That is: -$$ -\begin{align} + +\begin{align*} x + D &= - \lambda \sin\theta\\ y + C &= \lambda\cos\theta. -\end{align} -$$ +\end{align*} + Squaring gives the equation of a circle: $(x +D)^2 + (y+C)^2 = \lambda^2$. @@ -1680,12 +1678,12 @@ We center and *rescale* the problem so that $x_0 = -1, x_1 = 1$. Then $L > 2$ as We have $y=0$ at $x=1$ and $-1$ giving: -$$ -\begin{align} + +\begin{align*} (-1 + D)^2 + (0 + C)^2 &= \lambda^2\\ (+1 + D)^2 + (0 + C)^2 &= \lambda^2. -\end{align} -$$ +\end{align*} + Squaring out and solving gives $D=0$, $1 + C^2 = \lambda^2$. That is, an arc of circle with radius $1+C^2$ and centered at $(0, -C)$. @@ -1776,15 +1774,15 @@ where $R_k(x) = f^{k+1}(\xi)/(k+1)!(x-a)^{k+1}$ for some $\xi$ between $a$ and $ This theorem can be generalized to scalar functions, but the notation can be cumbersome. Following [Folland](https://sites.math.washington.edu/~folland/Math425/taylor2.pdf) we use *multi-index* notation. Suppose $f:R^n \rightarrow R$, and let $\alpha=(\alpha_1, \alpha_2, \dots, \alpha_n)$. Then define the following notation: -$$ + \begin{align*} |\alpha| &= \alpha_1 + \cdots + \alpha_n, \\ \alpha! &= \alpha_1!\alpha_2!\cdot\cdots\cdot\alpha_n!, \\ \vec{x}^\alpha &= x_1^{\alpha_1}x_2^{\alpha_2}\cdots x_n^{\alpha^n}, \\ \partial^\alpha f &= \partial_1^{\alpha_1}\partial_2^{\alpha_2}\cdots \partial_n^{\alpha_n} f \\ & = \frac{\partial^{|\alpha|}f}{\partial x_1^{\alpha_1} \partial x_2^{\alpha_2} \cdots \partial x_n^{\alpha_n}}. -\endalign*} -$$ +\end{align*} + This notation makes many formulas from one dimension carry over to higher dimensions. For example, the binomial theorem says: @@ -1819,13 +1817,11 @@ where $R_{\vec{a},k} = \sum_{|\alpha|=k+1}\partial^\alpha \frac{f(\vec{a} + c\ve The elegant notation masks what can be complicated expressions. Consider the simple case $f:R^2 \rightarrow R$ and $k=2$. Then this says: -$$ \begin{align*} f(x + dx, y+dy) &= f(x, y) + \frac{\partial f}{\partial x} dx + \frac{\partial f}{\partial y} dy \\ &+ \frac{\partial^2 f}{\partial x^2} \frac{dx^2}{2} + 2\frac{\partial^2 f}{\partial x\partial y} \frac{dx dy}{2}\\ &+ \frac{\partial^2 f}{\partial y^2} \frac{dy^2}{2} + R_{\langle x, y \rangle, k}(\langle dx, dy \rangle). \end{align*} -$$ Using $\nabla$ and $H$ for the Hessian and $\vec{x} = \langle x, y \rangle$ and $d\vec{x} = \langle dx, dy \rangle$, this can be expressed as: @@ -2211,12 +2207,10 @@ Is this the Hessian of $f$? $$ -\left[ -\begin{array}{} +\begin{bmatrix} 2a & 2b\\ 2b & 2c -\end{array} -\right] +\end{bmatrix} $$ ```{julia} @@ -2229,12 +2223,10 @@ Or is this the Hessian of $f$? $$ -\left[ -\begin{array}{} +\begin{bmatrix} 2ax & by\\ bx & 2cy -\end{array} -\right] +\end{bmatrix} $$ ```{julia} diff --git a/quarto/differentiable_vector_calculus/vector_fields.qmd b/quarto/differentiable_vector_calculus/vector_fields.qmd index 0c2cf07..1dc466a 100644 --- a/quarto/differentiable_vector_calculus/vector_fields.qmd +++ b/quarto/differentiable_vector_calculus/vector_fields.qmd @@ -61,9 +61,14 @@ caption = """ Illustration of the magnetic field of the earth using field lines to indicate the field. From [Wikipedia](https://en.wikipedia.org/wiki/Magnetic_field). """ -ImageFile(:differentiable_vector_calculus, imgfile, caption) +# ImageFile(:differentiable_vector_calculus, imgfile, caption) +nothing ``` +![Illustration of the magnetic field of the earth using field lines to indicate the field. From +[Wikipedia](https://en.wikipedia.org/wiki/Magnetic_field). +](./figures/magnetic-field.png) + --- @@ -192,12 +197,12 @@ surface(unzip(Phi.(thetas, phis'))...) The partial derivatives of each component, $\partial{\Phi}/\partial{\theta}$ and $\partial{\Phi}/\partial{\phi}$, can be computed directly: -$$ + \begin{align*} \partial{\Phi}/\partial{\theta} &= \langle -\sin(\phi)\sin(\theta), \sin(\phi)\cos(\theta),0 \rangle,\\ \partial{\Phi}/\partial{\phi} &= \langle \cos(\phi)\cos(\theta), \cos(\phi)\sin(\theta), -\sin(\phi) \rangle. \end{align*} -$$ + Using `SymPy`, we can compute through: @@ -257,28 +262,27 @@ For a multivariable function $F:R^n \rightarrow R^m$, we may express the functio $$ -J = \left[ -\begin{align*} +J = +\begin{bmatrix} \frac{\partial f_1}{\partial x_1} &\quad \frac{\partial f_1}{\partial x_2} &\dots&\quad\frac{\partial f_1}{\partial x_n}\\ \frac{\partial f_2}{\partial x_1} &\quad \frac{\partial f_2}{\partial x_2} &\dots&\quad\frac{\partial f_2}{\partial x_n}\\ &&\vdots&\\ \frac{\partial f_m}{\partial x_1} &\quad \frac{\partial f_m}{\partial x_2} &\dots&\quad\frac{\partial f_m}{\partial x_n} -\end{align*} -\right]. +\end{bmatrix}. $$ This may also be viewed as: $$ -J = \left[ -\begin{align*} +J = +\begin{bmatrix} &\nabla{f_1}'\\ &\nabla{f_2}'\\ &\quad\vdots\\ &\nabla{f_m}' -\end{align*} -\right] = +\end{bmatrix} + = \left[ \frac{\partial{F}}{\partial{x_1}}\quad \frac{\partial{F}}{\partial{x_2}} \cdots @@ -312,24 +316,21 @@ $$ $$ \text{Hessian} = -\left[ -\begin{align*} +\begin{bmatrix} \frac{\partial^2 f}{\partial x^2} &\quad \frac{\partial^2 f}{\partial x \partial y}\\ \frac{\partial^2 f}{\partial y \partial x} &\quad \frac{\partial^2 f}{\partial y \partial y} -\end{align*} -\right] +\end{bmatrix} $$ This is equivalent to: $$ -\left[ -\begin{align*} +\begin{bmatrix} \frac{\partial \frac{\partial f}{\partial x}}{\partial x} &\quad \frac{\partial \frac{\partial f}{\partial x}}{\partial y}\\ \frac{\partial \frac{\partial f}{\partial y}}{\partial x} &\quad \frac{\partial \frac{\partial f}{\partial y}}{\partial y}\\ -\end{align*} -\right]. +\end{bmatrix} +. $$ As such, the total derivative is a generalization of what we have previously discussed. @@ -338,12 +339,11 @@ As such, the total derivative is a generalization of what we have previously dis ## The chain rule -If $G:R^k \rightarrow R^n$ and $F:R^n \rightarrow R^m$, then the composition $F\circ G$ takes $R^k \rightarrow R^m$. If all three functions are totally differentiable, then a chain rule will hold (total derivative of $F\circ G$ at point $a$): +If $G:R^k \rightarrow R^n$ and $F:R^n \rightarrow R^m$, then the composition $F\circ G$ takes $R^k \rightarrow R^m.$ If all three functions are totally differentiable, then a chain rule will hold (total derivative of $F\circ G$ at point $a$): $$ d(F\circ G)_a = dF_{G(a)} \cdot dG_a - $$ If correct, this has the same formulation as the chain rule for the univariate case: derivative of outer at the inner *times* the derivative of the inner. @@ -365,7 +365,7 @@ where $\epsilon(h) \rightarrow \vec{0}$ as $h \rightarrow \vec{0}$. We have, using this for *both* $F$ and $G$: -$$ + \begin{align*} F(G(a + \vec{h})) - F(G(a)) &= F(G(a) + (dG_a \cdot \vec{h} + \epsilon_G \vec{h})) - F(G(a))\\ @@ -373,19 +373,19 @@ F(G(a) + (dG_a \cdot \vec{h} + \epsilon_G \vec{h})) - F(G(a))\\ &+ \quad\epsilon_F (dG_a \cdot \vec{h} + \epsilon_G \vec{h}) - F(G(a))\\ &= dF_{G(a)} \cdot (dG_a \cdot \vec{h}) + dF_{G(a)} \cdot (\epsilon_G \vec{h}) + \epsilon_F (dG_a \cdot \vec{h}) + (\epsilon_F \cdot \epsilon_G\vec{h}) \end{align*} -$$ + The last line uses the linearity of $dF$ to isolate $dF_{G(a)} \cdot (dG_a \cdot \vec{h})$. Factoring out $\vec{h}$ and taking norms gives: -$$ + \begin{align*} \frac{\| F(G(a+\vec{h})) - F(G(a)) - dF_{G(a)}dG_a \cdot \vec{h} \|}{\| \vec{h} \|} &= \frac{\| dF_{G(a)}\cdot(\epsilon_G\vec{h}) + \epsilon_F (dG_a\cdot \vec{h}) + (\epsilon_F\cdot\epsilon_G\vec{h}) \|}{\| \vec{h} \|} \\ &\leq \| dF_{G(a)}\cdot\epsilon_G + \epsilon_F (dG_a) + \epsilon_F\cdot\epsilon_G \|\frac{\|\vec{h}\|}{\| \vec{h} \|}\\ &\rightarrow 0. \end{align*} -$$ + ### Examples @@ -666,17 +666,17 @@ det(A1), 1/det(A2) The technique of *implicit differentiation* is a useful one, as it allows derivatives of more complicated expressions to be found. The main idea, expressed here with three variables is if an equation may be viewed as $F(x,y,z) = c$, $c$ a constant, then $z=\phi(x,y)$ may be viewed as a function of $x$ and $y$. Hence, we can use the chain rule to find: $\partial z / \partial x$ and $\partial z /\partial x$. Let $G(x,y) = \langle x, y, \phi(x,y) \rangle$ and then differentiation $(F \circ G)(x,y) = c$: -$$ + \begin{align*} 0 &= dF_{G(x,y)} \circ dG_{\langle x, y\rangle}\\ &= [\frac{\partial F}{\partial x}\quad \frac{\partial F}{\partial y}\quad \frac{\partial F}{\partial z}](G(x,y)) \cdot -\left[\begin{array}{} +\begin{bmatrix} 1 & 0\\ 0 & 1\\ \frac{\partial \phi}{\partial x} & \frac{\partial \phi}{\partial y} -\end{array}\right]. +\end{bmatrix}. \end{align*} -$$ + Solving yields @@ -903,12 +903,11 @@ The transformation $F(x, y) = \langle 2x + 3y + 1, 4x + y + 2\rangle$ is an exam $$ -J = \left[ -\begin{array}{} +J = +\begin{bmatrix} 2 & 4\\ 3 & 1 -\end{array} -\right]. +\end{bmatrix}. $$ ```{julia} @@ -929,12 +928,11 @@ Does the transformation $F(u,v) = \langle u^2 - v^2, u^2 + v^2 \rangle$ have Jac $$ -J = \left[ -\begin{array}{} +J = +\begin{bmatrix} 2u & -2v\\ 2u & 2v -\end{array} -\right]? +\end{bmatrix}? $$ ```{julia} diff --git a/quarto/differentiable_vector_calculus/vector_valued_functions.qmd b/quarto/differentiable_vector_calculus/vector_valued_functions.qmd index 603b233..06302c5 100644 --- a/quarto/differentiable_vector_calculus/vector_valued_functions.qmd +++ b/quarto/differentiable_vector_calculus/vector_valued_functions.qmd @@ -793,7 +793,7 @@ Vector-valued functions do not have multiplication or division defined for them, For the dot product, the combination $\vec{f}(t) \cdot \vec{g}(t)$ we have a univariate function of $t$, so we know a derivative is well defined. Can it be represented in terms of the vector-valued functions? In terms of the component functions, we have this calculation specific to $n=2$, but that which can be generalized: -$$ + \begin{align*} \frac{d}{dt}(\vec{f}(t) \cdot \vec{g}(t)) &= \frac{d}{dt}(f_1(t) g_1(t) + f_2(t) g_2(t))\\ @@ -801,7 +801,7 @@ $$ &= f_1'(t) g_1(t) + f_2'(t) g_2(t) + f_1(t) g_1'(t) + f_2(t) g_2'(t)\\ &= \vec{f}'(t)\cdot \vec{g}(t) + \vec{f}(t) \cdot \vec{g}'(t). \end{align*} -$$ + Suggesting the that a product rule like formula applies for dot products. @@ -832,12 +832,12 @@ diff.(uₛ × vₛ, tₛ) - (diff.(uₛ, tₛ) × vₛ + uₛ × diff.(vₛ, t In summary, these two derivative formulas hold for vector-valued functions $R \rightarrow R^n$: -$$ -\begin{align} + +\begin{align*} (\vec{u} \cdot \vec{v})' &= \vec{u}' \cdot \vec{v} + \vec{u} \cdot \vec{v}',\\ (\vec{u} \times \vec{v})' &= \vec{u}' \times \vec{v} + \vec{u} \times \vec{v}'. -\end{align} -$$ +\end{align*} + ##### Application. Circular motion and the tangent vector. @@ -889,12 +889,12 @@ Combining, Newton states $\vec{a} = -(GM/r^2) \hat{x}$. Now to show the first law. Consider $\vec{x} \times \vec{v}$. It is constant, as: -$$ -\begin{align} + +\begin{align*} (\vec{x} \times \vec{v})' &= \vec{x}' \times \vec{v} + \vec{x} \times \vec{v}'\\ &= \vec{v} \times \vec{v} + \vec{x} \times \vec{a}. -\end{align} -$$ +\end{align*} + Both terms are $\vec{0}$, as $\vec{a}$ is parallel to $\vec{x}$ by the above, and clearly $\vec{v}$ is parallel to itself. @@ -905,35 +905,35 @@ This says, $\vec{x} \times \vec{v} = \vec{c}$ is a constant vector, meaning, the Now, by differentiating $\vec{x} = r \hat{x}$ we have: -$$ -\begin{align} + +\begin{align*} \vec{v} &= \vec{x}'\\ &= (r\hat{x})'\\ &= r' \hat{x} + r \hat{x}', -\end{align} -$$ +\end{align*} + and so -$$ -\begin{align} + +\begin{align*} \vec{c} &= \vec{x} \times \vec{v}\\ &= (r\hat{x}) \times (r'\hat{x} + r \hat{x}')\\ &= r^2 (\hat{x} \times \hat{x}'). -\end{align} -$$ +\end{align*} + From this, we can compute $\vec{a} \times \vec{c}$: -$$ -\begin{align} + +\begin{align*} \vec{a} \times \vec{c} &= (-\frac{GM}{r^2})\hat{x} \times r^2(\hat{x} \times \hat{x}')\\ &= -GM \hat{x} \times (\hat{x} \times \hat{x}') \\ &= GM (\hat{x} \times \hat{x}')\times \hat{x}. -\end{align} -$$ +\end{align*} + The last line by anti-commutativity. @@ -941,23 +941,23 @@ The last line by anti-commutativity. But, the triple cross product can be simplified through the identify $(\vec{u}\times\vec{v})\times\vec{w} = (\vec{u}\cdot\vec{w})\vec{v} - (\vec{v}\cdot\vec{w})\vec{u}$. So, the above becomes: -$$ -\begin{align} + +\begin{align*} \vec{a} \times \vec{c} &= GM ((\hat{x}\cdot\hat{x})\hat{x}' - (\hat{x} \cdot \hat{x}')\hat{x})\\ &= GM (1 \hat{x}' - 0 \hat{x}). -\end{align} -$$ +\end{align*} + Now, since $\vec{c}$ is constant, we have: -$$ -\begin{align} + +\begin{align*} (\vec{v} \times \vec{c})' &= (\vec{a} \times \vec{c})\\ &= GM \hat{x}'\\ &= (GM\hat{x})'. -\end{align} -$$ +\end{align*} + The two sides have the same derivative, hence differ by a constant: @@ -972,8 +972,8 @@ As $\vec{u}$ and $\vec{v}\times\vec{c}$ lie in the same plane - orthogonal to $\ Now -$$ -\begin{align} + +\begin{align*} c^2 &= \|\vec{c}\|^2 \\ &= \vec{c} \cdot \vec{c}\\ &= (\vec{x} \times \vec{v}) \cdot \vec{c}\\ @@ -981,8 +981,8 @@ c^2 &= \|\vec{c}\|^2 \\ &= r\hat{x} \cdot (GM\hat{x} + \vec{d})\\ &= GMr + r \hat{x} \cdot \vec{d}\\ &= GMr + rd \cos(\theta). -\end{align} -$$ +\end{align*} + Solving, this gives the first law. That is, the radial distance is in the form of an ellipse: @@ -1502,13 +1502,13 @@ $$ As before, but further, we have if $\kappa$ is the curvature and $\tau$ the torsion, these relationships expressing the derivatives with respect to $s$ in terms of the components in the frame: -$$ + \begin{align*} \hat{T}'(s) &= &\kappa \hat{N}(s) &\\ \hat{N}'(s) &= -\kappa \hat{T}(s) & &+ \tau \hat{B}(s)\\ \hat{B}'(s) &= &-\tau \hat{N}(s) & \end{align*} -$$ + These are the [Frenet-Serret](https://en.wikipedia.org/wiki/Frenet%E2%80%93Serret_formulas) formulas. @@ -1619,13 +1619,13 @@ end Levi and Tabachnikov prove in their Proposition 2.4: -$$ + \begin{align*} \kappa(u) &= \frac{d\alpha(u)}{du} + \frac{\sin(\alpha(u))}{a},\\ |\frac{du}{dv}| &= |\cos(\alpha)|, \quad \text{and}\\ k &= \frac{\tan(\alpha)}{a}. \end{align*} -$$ + The first equation relates the steering angle with the curvature. If the steering angle is not changed ($d\alpha/du=0$) then the curvature is constant and the motion is circular. It will be greater for larger angles (up to $\pi/2$). As the curvature is the reciprocal of the radius, this means the radius of the circular trajectory will be smaller. For the same constant steering angle, the curvature will be smaller for longer wheelbases, meaning the circular trajectory will have a larger radius. For cars, which have similar dynamics, this means longer wheelbase cars will take more room to make a U-turn. @@ -1639,14 +1639,14 @@ The last equation, relates the curvature of the back wheel track to the steering To derive the first one, we have previously noted that when a curve is parameterized by arc length, the curvature is more directly computed: it is the magnitude of the derivative of the tangent vector. The tangent vector is of unit length, when parametrized by arc length. This implies its derivative will be orthogonal. If $\vec{r}(t)$ is a parameterization by arc length, then the curvature formula simplifies as: -$$ + \begin{align*} \kappa(s) &= \frac{\| \vec{r}'(s) \times \vec{r}''(s) \|}{\|\vec{r}'(s)\|^3} \\ &= \frac{\| \vec{r}'(s) \times \vec{r}''(s) \|}{1} \\ &= \| \vec{r}'(s) \| \| \vec{r}''(s) \| \sin(\theta) \\ &= 1 \| \vec{r}''(s) \| 1 = \| \vec{r}''(s) \|. \end{align*} -$$ + So in the above, the curvature is $\kappa = \| \vec{F}''(u) \|$ and $k = \|\vec{B}''(v)\|$. @@ -1673,8 +1673,8 @@ $$ It must be that the tangent line of $\vec{B}$ is parallel to $\vec{U} \cos(\alpha) + \vec{V} \sin(\alpha)$. To utilize this, we differentiate $\vec{B}$ using the facts that $\vec{U}' = \kappa \vec{V}$ and $\vec{V}' = -\kappa \vec{U}$. These coming from $\vec{U} = \vec{F}'$ and so it's derivative in $u$ has magnitude yielding the curvature, $\kappa$, and direction orthogonal to $\vec{U}$. -$$ -\begin{align} + +\begin{align*} \vec{B}'(u) &= \vec{F}'(u) -a \vec{U}' \cos(\alpha) -a \vec{U} (-\sin(\alpha)) \alpha' +a \vec{V}' \sin(\alpha) + a \vec{V} \cos(\alpha) \alpha'\\ @@ -1684,14 +1684,14 @@ a (-\kappa) \vec{U} \sin(\alpha) + a \vec{V} \cos(\alpha) \alpha' \\ &= \vec{U} + a(\alpha' - \kappa) \sin(\alpha) \vec{U} + a(\alpha' - \kappa) \cos(\alpha)\vec{V}. -\end{align} -$$ +\end{align*} + Extend the $2$-dimensional vectors to $3$ dimensions, by adding a zero $z$ component, then: -$$ -\begin{align} + +\begin{align*} \vec{0} &= (\vec{U} + a(\alpha' - \kappa) \sin(\alpha) \vec{U} + a(\alpha' - \kappa) \cos(\alpha)\vec{V}) \times @@ -1702,8 +1702,8 @@ a(\alpha' - \kappa) \cos(\alpha)\vec{V} \times \vec{U} \cos(\alpha) \\ &= (\sin(\alpha) + a(\alpha'-\kappa) \sin^2(\alpha) + a(\alpha'-\kappa) \cos^2(\alpha)) \vec{U} \times \vec{V} \\ &= (\sin(\alpha) + a (\alpha' - \kappa)) \vec{U} \times \vec{V}. -\end{align} -$$ +\end{align*} + The terms $\vec{U} \times\vec{U}$ and $\vec{V}\times\vec{V}$ being $\vec{0}$, due to properties of the cross product. This says the scalar part must be $0$, or @@ -1715,39 +1715,20 @@ $$ As for the second equation, from the expression for $\vec{B}'(u)$, after setting $a(\alpha'-\kappa) = -\sin(\alpha)$: -$$ -\begin{align} + +\begin{align*} \|\vec{B}'(u)\|^2 &= \| (1 -\sin(\alpha)\sin(\alpha)) \vec{U} -\sin(\alpha)\cos(\alpha) \vec{V} \|^2\\ &= \| \cos^2(\alpha) \vec{U} -\sin(\alpha)\cos(\alpha) \vec{V} \|^2\\ &= (\cos^2(\alpha))^2 + (\sin(\alpha)\cos(\alpha))^2\quad\text{using } \vec{U}\cdot\vec{V}=0\\ &= \cos^2(\alpha)(\cos^2(\alpha) + \sin^2(\alpha))\\ &= \cos^2(\alpha). -\end{align} -$$ +\end{align*} + From this $\|\vec{B}(u)\| = |\cos(\alpha)\|$. But $1 = \|d\vec{B}/dv\| = \|d\vec{B}/du \| \cdot |du/dv|$ and $|dv/du|=|\cos(\alpha)|$ follows. -```{julia} -#| echo: false -#How to compute the curvature k? -#```math -#\begin{align} -#\frac{d^2\hat{B}}{dv} -#&= \frac{d^2\hat{B}}{du^2} \cdot (\frac{dv}{du})^2 + \frac{d^2v}{du^2} \cdot \hat{B}'(u)\\ -#&= \cos^2(\alpha) \cdot (-2\sin(\alpha)\cos(\alpha}\alpha'\vec{U} + \cos^2(\alpha) \kappa \vec{V} - (\cos^2(\alph#a)-\sin^2(\alpha))\alpha'\vec{V} + \sin(\alpha)\cos(\alpha)\kappa \vec{U}) + \frac{\sin(\alpha)}{\cos^2(\alpha) \#cdot (\cos^2(\alpha)\vec{U} - \sin(\alpha)\cos(\alpha) \vec{V})\\ -#&= -# -# -#&= \| (1 -\sin(alpha)\sin(\alpha) \vec{U} -\sin(\alpha)\cos(\alpha) \vec{V} \|^2\\ -#&= \| \cos^2(\alpha) \vec{U} -\sin(\alpha)\cos(\alpha) \vec{V} \|^2\\ -#&= ((\cos^2(alpha))^2 + (\sin(\alpha)\cos(\alpha))^2\quad\text{using } \vec{U}\cdot\vec{V}=0\\ -#&= \cos(\alpha)^2. -#\end{align} -#``` -nothing -``` ## Evolutes and involutes @@ -1779,12 +1760,12 @@ Consider a parameterization of a curve by arc-length, $\vec\gamma(s) = \langle u Consider two nearby points $t$ and $t+\epsilon$ and the intersection of $l_t$ and $l_{t+\epsilon}$. That is, we need points $a$ and $b$ with: $l_t(a) = l_{t+\epsilon}(b)$. Setting the components equal, this is: -$$ -\begin{align} + +\begin{align*} u(t) - av'(t) &= u(t+\epsilon) - bv'(t+\epsilon) \\ v(t) - au'(t) &= v(t+\epsilon) - bu'(t+\epsilon). -\end{align} -$$ +\end{align*} + This is a linear equation in two unknowns ($a$ and $b$) which can be solved. Here is the value for `a`: @@ -1802,25 +1783,25 @@ out[a] Letting $\epsilon \rightarrow 0$ we get an expression for $a$ that will describe the evolute at time $t$ in terms of the function $\gamma$. Looking at the expression above, we can see that dividing the *numerator* by $\epsilon$ and taking a limit will yield $u'(t)^2 + v'(t)^2$. If the *denominator* has a limit after dividing by $\epsilon$, then we can find the description sought. Pursuing this leads to: -$$ + \begin{align*} \frac{u'(t) v'(t+\epsilon) - v'(t) u'(t+\epsilon)}{\epsilon} &= \frac{u'(t) v'(t+\epsilon) -u'(t)v'(t) + u'(t)v'(t)- v'(t) u'(t+\epsilon)}{\epsilon} \\ &= \frac{u'(t)(v'(t+\epsilon) -v'(t))}{\epsilon} + \frac{(u'(t)- u'(t+\epsilon))v'(t)}{\epsilon}, \end{align*} -$$ + which in the limit will give $u'(t)v''(t) - u''(t) v'(t)$. All told, in the limit as $\epsilon \rightarrow 0$ we get -$$ + \begin{align*} a &= \frac{u'(t)^2 + v'(t)^2}{u'(t)v''(t) - v'(t) u''(t)} \\ &= 1/(\|\vec\gamma'\|\kappa) \\ &= 1/(\|\hat{T}\|\kappa) \\ &= 1/\kappa, \end{align*} -$$ + with $\kappa$ being the curvature of the planar curve. That is, the evolute of $\vec\gamma$ is described by: @@ -1845,14 +1826,14 @@ plot_parametric!(0..2pi, t -> (rₑ₃(t) + Normal(rₑ₃, t)/curvature(rₑ₃ We computed the above illustration using $3$ dimensions (hence the use of `[1:2]...`) as the curvature formula is easier to express. Recall, the curvature also appears in the [Frenet-Serret](https://en.wikipedia.org/wiki/Frenet%E2%80%93Serret_formulas) formulas: $d\hat{T}/ds = \kappa \hat{N}$ and $d\hat{N}/ds = -\kappa \hat{T}+ \tau \hat{B}$. In a planar curve, as under consideration, the binormal is $\vec{0}$. This allows the computation of $\vec\beta(s)'$: -$$ -\begin{align} + +\begin{align*} \vec{\beta}' &= \frac{d(\vec\gamma + (1/k) \hat{N})}{dt}\\ &= \hat{T} + (-\frac{k'}{k^2}\hat{N} + \frac{1}{k} \hat{N}')\\ &= \hat{T} - \frac{k'}{k^2}\hat{N} + \frac{1}{k} (-\kappa \hat{T})\\ &= - \frac{k'}{k^2}\hat{N}. -\end{align} -$$ +\end{align*} + We see $\vec\beta'$ is zero (the curve is non-regular) when $\kappa'(s) = 0$. The curvature changes from increasing to decreasing, or vice versa at each of the $4$ crossings of the major and minor axes - there are $4$ non-regular points, and we see $4$ cusps in the evolute. @@ -1916,12 +1897,12 @@ $$ If $\vec\gamma(s)$ is parameterized by arc length, then this simplifies quite a bit, as the unit tangent is just $\vec\gamma'(s)$ and the remaining arc length just $(s-a)$: -$$ + \begin{align*} \vec\beta_a(s) &= \vec\gamma(s) - \vec\gamma'(s) (s-a) \\ &=\vec\gamma(s) - \hat{T}_{\vec\gamma}(s)(s-a).\quad (a \text{ is the arc-length parameter}) \end{align*} -$$ + With this characterization, we see several properties: @@ -1941,12 +1922,12 @@ $$ In the following we show that: -$$ -\begin{align} + +\begin{align*} \kappa_{\vec\beta_a}(s) &= 1/(s-a),\\ \hat{N}_{\vec\beta_a}(s) &= \hat{T}_{\vec\beta_a}'(s)/\|\hat{T}_{\vec\beta_a}'(s)\| = -\hat{T}_{\vec\gamma}(s). -\end{align} -$$ +\end{align*} + The first shows in a different way that when $s=a$ the curve is not regular, as the curvature fails to exists. In the above figure, when the involute touches $\vec\gamma$, there will be a cusp. @@ -1954,7 +1935,7 @@ The first shows in a different way that when $s=a$ the curve is not regular, as With these two identifications and using $\vec\gamma'(s) = \hat{T}_{\vec\gamma(s)}$, we have the evolute simplifies to -$$ + \begin{align*} \vec\beta_a(s) + \frac{1}{\kappa_{\vec\beta_a}(s)}\hat{N}_{\vec\beta_a}(s) &= @@ -1963,7 +1944,7 @@ $$ \vec\gamma(s) + \hat{T}_{\vec\gamma}(s)(s-a) + \frac{1}{1/(s-a)} (-\hat{T}_{\vec\gamma}(s)) \\ &= \vec\gamma(s). \end{align*} -$$ + That is the evolute of an involute of $\vec\gamma(s)$ is $\vec\gamma(s)$. @@ -1971,13 +1952,13 @@ That is the evolute of an involute of $\vec\gamma(s)$ is $\vec\gamma(s)$. We have: -$$ -\begin{align} + +\begin{align*} \beta_a(s) &= \vec\gamma - \vec\gamma'(s)(s-a)\\ \beta_a'(s) &= -\kappa_{\vec\gamma}(s)(s-a)\hat{N}_{\vec\gamma}(s)\\ \beta_a''(s) &= (-\kappa_{\vec\gamma}(s)(s-a))' \hat{N}_{\vec\gamma}(s) + (-\kappa_{\vec\gamma}(s)(s-a))(-\kappa_{\vec\gamma}\hat{T}_{\vec\gamma}(s)), -\end{align} -$$ +\end{align*} + the last line by the Frenet-Serret formula for *planar* curves which show $\hat{T}'(s) = \kappa(s) \hat{N}$ and $\hat{N}'(s) = -\kappa(s)\hat{T}(s)$. @@ -1985,12 +1966,12 @@ the last line by the Frenet-Serret formula for *planar* curves which show $\hat To compute the curvature of $\vec\beta_a$, we need to compute both: -$$ -\begin{align} + +\begin{align*} \| \vec\beta' \|^3 &= |\kappa^3 (s-a)^3|\\ \| \vec\beta' \times \vec\beta'' \| &= |\kappa(s)^3 (s-a)^2|, -\end{align} -$$ +\end{align*} + the last line using both $\hat{N}\times\hat{N} = \vec{0}$ and $\|\hat{N}\times\hat{T}\| = 1$. The curvature then is $\kappa_{\vec\beta_a}(s) = 1/(s-a)$. @@ -2673,14 +2654,14 @@ radioq(choices, answ) The evolute comes from the formula $\vec\gamma(T) - (1/\kappa(t)) \hat{N}(t)$. For hand computation, this formula can be explicitly given by two components $\langle X(t), Y(t) \rangle$ through: -$$ -\begin{align} + +\begin{align*} r(t) &= x'(t)^2 + y'(t)^2\\ k(t) &= x'(t)y''(t) - x''(t) y'(t)\\ X(t) &= x(t) - y'(t) r(t)/k(t)\\ Y(t) &= x(t) + x'(t) r(t)/k(t) -\end{align} -$$ +\end{align*} + Let $\vec\gamma(t) = \langle t, t^2 \rangle = \langle x(t), y(t)\rangle$ be a parameterization of a parabola. diff --git a/quarto/differentiable_vector_calculus/vectors.qmd b/quarto/differentiable_vector_calculus/vectors.qmd index bcc7360..3cecba7 100644 --- a/quarto/differentiable_vector_calculus/vectors.qmd +++ b/quarto/differentiable_vector_calculus/vectors.qmd @@ -444,25 +444,22 @@ $$ The left hand sides are in the form of a dot product, in this case $\langle a,b \rangle \cdot \langle x, y\rangle$ and $\langle a,b,c \rangle \cdot \langle x, y, z\rangle$ respectively. When there is a system of equations, something like: -$$ -\begin{array}{} -3x &+& 4y &- &5z &= 10\\ -3x &-& 5y &+ &7z &= 11\\ --3x &+& 6y &+ &9z &= 12, -\end{array} -$$ +\begin{align*} +3x &+ 4y &- 5z &= 10\\ +3x &- 5y &+ 7z &= 11\\ +-3x &+ 6y &+ 9z &= 12, +\end{align*} Then we might think of $3$ vectors $\langle 3,4,-5\rangle$, $\langle 3,-5,7\rangle$, and $\langle -3,6,9\rangle$ being dotted with $\langle x,y,z\rangle$. Mathematically, matrices and their associated algebra are used to represent this. In this example, the system of equations above would be represented by a matrix and two vectors: $$ -M = \left[ -\begin{array}{} +M = +\begin{bmatrix} 3 & 4 & -5\\ 5 &-5 & 7\\ -3& 6 & 9 -\end{array} -\right],\quad +\end{bmatrix},\quad \vec{x} = \langle x, y , z\rangle,\quad \vec{b} = \langle 10, 11, 12\rangle, $$ @@ -512,38 +509,33 @@ Matrices have other operations defined on them. We mention three here: $$ -\left| -\begin{array}{} +\begin{vmatrix} a&b\\ c&d -\end{array} -\right| = +\end{vmatrix} + = ad - bc, \quad -\left| -\begin{array}{} +\begin{vmatrix} a&b&c\\ d&e&f\\ g&h&i -\end{array} -\right| = -a \left| -\begin{array}{} +\end{vmatrix} + = +a +\begin{vmatrix} e&f\\ h&i -\end{array} -\right| -- b \left| -\begin{array}{} +\end{vmatrix} +- b +\begin{vmatrix} d&f\\ g&i -\end{array} -\right| -+c \left| -\begin{array}{} +\end{vmatrix} ++c +\begin{vmatrix} d&e\\ g&h -\end{array} -\right|. +\end{vmatrix} $$ The $3\times 3$ case shows how determinants may be [computed recursively](https://en.wikipedia.org/wiki/Determinant#Definition), using "cofactor" expansion. @@ -776,13 +768,11 @@ There is a matrix notation that can simplify this computation. If we *formally* $$ -\left[ -\begin{array}{} +\begin{bmatrix} \hat{i} & \hat{j} & \hat{k}\\ u_1 & u_2 & u_3\\ v_1 & v_2 & v_3 -\end{array} -\right] +\end{bmatrix} $$ From the $\sin(\theta)$ term in the definition, we see that $\vec{u}\times\vec{u}=0$. In fact, the cross product is $0$ only if the two vectors involved are parallel or there is a zero vector. diff --git a/quarto/index.qmd b/quarto/index.qmd index a53ab24..41777fe 100644 --- a/quarto/index.qmd +++ b/quarto/index.qmd @@ -68,12 +68,9 @@ and loads some useful packages that will be used repeatedly. These notes are presented as a Quarto book. To learn more about Quarto books visit . -These notes may also be compiled into `Pluto` notebooks. As such, to -accommodate `Pluto`'s design of only one global variable definition -being allowed per notebook, there is frequent use of -[Unicode](./misc/unicode.html) symbols for variable names. +These notes may be compiled into a `pdf` file through Quarto. As the result is rather large, we do not provide that file for download. For the interested reader, downloading the repository, instantiating the environment, and running `quarto` to render to `pdf` in the `quarto` subdirectory should produce that file (after some time). -To contribute -- say by suggesting addition topics, correcting a +To *contribute* -- say by suggesting addition topics, correcting a mistake, or fixing a typo -- click the "Edit this page" link and join the list of [contributors](https://github.com/jverzani/CalculusWithJuliaNotes.jl/graphs/contributors). ---- diff --git a/quarto/integral_vector_calculus/div_grad_curl.qmd b/quarto/integral_vector_calculus/div_grad_curl.qmd index ea27257..503a6fc 100644 --- a/quarto/integral_vector_calculus/div_grad_curl.qmd +++ b/quarto/integral_vector_calculus/div_grad_curl.qmd @@ -216,8 +216,8 @@ annotate!([ Let $F=\langle F_x, F_y\rangle$. For small enough values of $\Delta{x}$ and $\Delta{y}$ the line integral, $\oint_C F\cdot d\vec{r}$ can be *approximated* by $4$ terms: -$$ -\begin{align} + +\begin{align*} \left(F(x,y) \cdot \hat{i}\right)\Delta{x} &+ \left(F(x+\Delta{x},y) \cdot \hat{j}\right)\Delta{y} + \left(F(x,y+\Delta{y}) \cdot (-\hat{i})\right)\Delta{x} + @@ -228,8 +228,8 @@ F_x(x, y+\Delta{y}) (-\Delta{x}) + F_y(x,y) (-\Delta{y})\\ &= (F_y(x + \Delta{x}, y) - F_y(x, y))\Delta{y} - (F_x(x, y+\Delta{y})-F_x(x,y))\Delta{x}. -\end{align} -$$ +\end{align*} + The Riemann approximation allows a choice of evaluation point for Riemann integrable functions, and the choice here lends itself to further analysis. Were the above divided by $\Delta{x}\Delta{y}$, the area of the box, and a limit taken, partial derivatives appear to suggest this formula: @@ -325,18 +325,18 @@ p Now we compute the *line integral*. Consider the top face, $S_1$, connecting $(x,y,z+\Delta z), (x + \Delta x, y, z + \Delta z), (x + \Delta x, y + \Delta y, z + \Delta z), (x, y + \Delta y, z + \Delta z)$, Using the *right hand rule*, parameterize the boundary curve, $C_1$, in a counter clockwise direction so the right hand rule yields the outward pointing normal ($\hat{k}$). Then the integral $\oint_{C_1} F\cdot \hat{T} ds$ is *approximated* by the following Riemann sum of $4$ terms: -$$ + \begin{align*} F(x,y, z+\Delta{z}) \cdot \hat{i}\Delta{x} &+ F(x+\Delta x, y, z+\Delta{z}) \cdot \hat{j} \Delta y \\ &+ F(x, y+\Delta y, z+\Delta{z}) \cdot (-\hat{i}) \Delta{x} \\ &+ F(x, y, z+\Delta{z}) \cdot (-\hat{j}) \Delta{y}. \end{align*} -$$ + (The points $c_i$ are chosen from the endpoints of the line segments.) -$$ + \begin{align*} \oint_{C_1} F\cdot \hat{T} ds &\approx (F_y(x+\Delta x, y, z+\Delta{z}) \\ @@ -344,18 +344,18 @@ $$ &- (F_x(x,y + \Delta{y}, z+\Delta{z}) \\ &- F_x(x, y, z+\Delta{z})) \Delta{x} \end{align*} -$$ + As before, were this divided by the *area* of the surface, we have after rearranging and cancellation: -$$ + \begin{align*} \frac{1}{\Delta{S_1}} \oint_{C_1} F \cdot \hat{T} ds &\approx \frac{F_y(x+\Delta x, y, z+\Delta{z}) - F_y(x, y, z+\Delta{z})}{\Delta{x}}\\ &- \frac{F_x(x, y+\Delta y, z+\Delta{z}) - F_x(x, y, z+\Delta{z})}{\Delta{y}}. \end{align*} -$$ + In the limit, as $\Delta{S} \rightarrow 0$, this will converge to $\partial{F_y}/\partial{x}-\partial{F_x}/\partial{y}$. @@ -366,7 +366,7 @@ Had the bottom of the box been used, a similar result would be found, up to a mi Unlike the two dimensional case, there are other directions to consider and here the other sides will yield different answers. Consider now the face connecting $(x,y,z), (x+\Delta{x}, y, z), (x+\Delta{x}, y, z + \Delta{z})$, and $ (x,y,z+\Delta{z})$ with outward pointing normal $-\hat{j}$. Let $S_2$ denote this face and $C_2$ describe its boundary. Orient this curve so that the right hand rule points in the $-\hat{j}$ direction (the outward pointing normal). Then, as before, we can approximate: -$$ + \begin{align*} \oint_{C_2} F \cdot \hat{T} ds &\approx @@ -377,7 +377,7 @@ F(x,y,z) \cdot \hat{i} \Delta{x} \\ &= (F_z(x+\Delta{x},y,z) - F_z(x, y, z))\Delta{z} - (F_x(x,y,z+\Delta{z}) - F(x,y,z)) \Delta{x}. \end{align*} -$$ + Dividing by $\Delta{S}=\Delta{x}\Delta{z}$ and taking a limit will give: @@ -423,13 +423,12 @@ The curl has a formal representation in terms of a $3\times 3$ determinant, simi $$ -\text{curl}(F) = \det\left[ -\begin{array}{} +\text{curl}(F) = \det +\begin{bmatrix} \hat{i} & \hat{j} & \hat{k}\\ \frac{\partial}{\partial{x}} & \frac{\partial}{\partial{y}} & \frac{\partial}{\partial{z}}\\ F_x & F_y & F_z -\end{array} -\right] +\end{bmatrix} $$ --- @@ -474,7 +473,7 @@ The divergence, gradient, and curl all involve partial derivatives. There is a n This is a *vector differential operator* that acts on functions and vector fields through the typical notation to yield the three operations: -$$ + \begin{align*} \nabla{f} &= \langle \frac{\partial{f}}{\partial{x}}, @@ -502,17 +501,17 @@ $$ \frac{\partial}{\partial{y}}, \frac{\partial}{\partial{z}} \rangle \times F = -\det\left[ -\begin{array}{} +\det +\begin{bmatrix} \hat{i} & \hat{j} & \hat{k} \\ \frac{\partial}{\partial{x}}& \frac{\partial}{\partial{y}}& \frac{\partial}{\partial{z}}\\ F_x & F_y & F_z -\end{array} -\right],\quad\text{the curl}. +\end{bmatrix} +,\quad\text{the curl}. \end{align*} -$$ + :::{.callout-note} ## Note @@ -842,13 +841,13 @@ Let $f$ and $g$ denote scalar functions, $R^3 \rightarrow R$ and $F$ and $G$ be As with the sum rule of univariate derivatives, these operations satisfy: -$$ -\begin{align} + +\begin{align*} \nabla(f + g) &= \nabla{f} + \nabla{g}\\ \nabla\cdot(F+G) &= \nabla\cdot{F} + \nabla\cdot{G}\\ \nabla\times(F+G) &= \nabla\times{F} + \nabla\times{G}. -\end{align} -$$ +\end{align*} + ### Product rule @@ -856,13 +855,13 @@ $$ The product rule $(uv)' = u'v + uv'$ has related formulas: -$$ -\begin{align} + +\begin{align*} \nabla{(fg)} &= (\nabla{f}) g + f\nabla{g} = g\nabla{f} + f\nabla{g}\\ \nabla\cdot{fF} &= (\nabla{f})\cdot{F} + f(\nabla\cdot{F})\\ \nabla\times{fF} &= (\nabla{f})\times{F} + f(\nabla\times{F}). -\end{align} -$$ +\end{align*} + ### Rules over cross products @@ -870,13 +869,13 @@ $$ The cross product of two vector fields is a vector field for which the divergence and curl may be taken. There are formulas to relate to the individual terms: -$$ -\begin{align} + +\begin{align*} \nabla\cdot(F \times G) &= (\nabla\times{F})\cdot G - F \cdot (\nabla\times{G})\\ \nabla\times(F \times G) &= F(\nabla\cdot{G}) - G(\nabla\cdot{F} + (G\cdot\nabla)F-(F\cdot\nabla)G\\ &= \nabla\cdot(BA^t - AB^t). -\end{align} -$$ +\end{align*} + The curl formula is more involved. @@ -921,7 +920,7 @@ Second, This is not as clear, but can be seen algebraically as terms cancel. First: -$$ + \begin{align*} \nabla\cdot(\nabla\times{F}) &= \langle @@ -938,7 +937,7 @@ $$ \left(\frac{\partial^2{F_x}}{\partial{z}\partial{y}} - \frac{\partial^2{F_z}}{\partial{x}\partial{y}}\right) + \left(\frac{\partial^2{F_y}}{\partial{x}\partial{z}} - \frac{\partial^2{F_x}}{\partial{y}\partial{z}}\right) \end{align*} -$$ + Focusing on one component function, $F_z$ say, we see this contribution: @@ -1014,7 +1013,7 @@ This is because of how the line integrals are oriented so that the right-hand ru The [invariance of charge](https://en.wikipedia.org/wiki/Maxwell%27s_equations#Charge_conservation) can be derived as a corollary of Maxwell's equation. The divergence of the curl of the magnetic field is $0$, leading to: -```{mat} + \begin{align*} 0 &= \nabla\cdot(\nabla\times{B}) \\ &= @@ -1024,7 +1023,7 @@ The [invariance of charge](https://en.wikipedia.org/wiki/Maxwell%27s_equations#C &= \mu_0(\nabla\cdot{J} + \frac{\partial{\rho}}{\partial{t}}). \end{align*} -``` + That is $\nabla\cdot{J} = -\partial{\rho}/\partial{t}$. This says any change in the charge density in time ($\partial{\rho}/\partial{t}$) is balanced off by a divergence in the electric current density ($\nabla\cdot{J}$). That is, charge can't be created or destroyed in an isolated system. @@ -1048,25 +1047,25 @@ $$ Without explaining why, these values can be computed using volume and surface integrals: -$$ -\begin{align} + +\begin{align*} \phi(\vec{r}') &= \frac{1}{4\pi} \int_V \frac{\nabla \cdot F(\vec{r})}{\|\vec{r}'-\vec{r} \|} dV - \frac{1}{4\pi} \oint_S \frac{F(\vec{r})}{\|\vec{r}'-\vec{r} \|} \cdot \hat{N} dS\\ A(\vec{r}') &= \frac{1}{4\pi} \int_V \frac{\nabla \times F(\vec{r})}{\|\vec{r}'-\vec{r} \|} dV + \frac{1}{4\pi} \oint_S \frac{F(\vec{r})}{\|\vec{r}'-\vec{r} \|} \times \hat{N} dS. -\end{align} -$$ +\end{align*} + If $V = R^3$, an unbounded domain, *but* $F$ *vanishes* faster than $1/r$, then the theorem still holds with just the volume integrals: -$$ -\begin{align} + +\begin{align*} \phi(\vec{r}') &=\frac{1}{4\pi} \int_V \frac{\nabla \cdot F(\vec{r})}{\|\vec{r}'-\vec{r} \|} dV\\ A(\vec{r}') &= \frac{1}{4\pi} \int_V \frac{\nabla \times F(\vec{r})}{\|\vec{r}'-\vec{r}\|} dV. -\end{align} -$$ +\end{align*} + ## Change of variable @@ -1080,8 +1079,8 @@ Some details are [here](https://en.wikipedia.org/wiki/Curvilinear_coordinates), We restrict to $n=3$ and use $(x,y,z)$ for Cartesian coordinates and $(u,v,w)$ for an *orthogonal* curvilinear coordinate system, such as spherical or cylindrical. If $\vec{r} = \langle x,y,z\rangle$, then -$$ -\begin{align} + +\begin{align*} d\vec{r} &= \langle dx,dy,dz \rangle = J \langle du,dv,dw\rangle\\ &= \left[ \frac{\partial{\vec{r}}}{\partial{u}} \vdots @@ -1090,8 +1089,8 @@ d\vec{r} &= \langle dx,dy,dz \rangle = J \langle du,dv,dw\rangle\\ &= \frac{\partial{\vec{r}}}{\partial{u}} du + \frac{\partial{\vec{r}}}{\partial{v}} dv \frac{\partial{\vec{r}}}{\partial{w}} dw. -\end{align} -$$ +\end{align*} + The term ${\partial{\vec{r}}}/{\partial{u}}$ is tangent to the curve formed by *assuming* $v$ and $w$ are constant and letting $u$ vary. Similarly for the other partial derivatives. Orthogonality assumes that at every point, these tangent vectors are orthogonal. @@ -1138,7 +1137,7 @@ This uses orthogonality, so $\hat{e}_v \times \hat{e}_w$ is parallel to $\hat{e} The volume element is found by *projecting* $d\vec{r}$ onto the $\hat{e}_u$, $\hat{e}_v$, $\hat{e}_w$ coordinate system through $(d\vec{r} \cdot\hat{e}_u) \hat{e}_u$, $(d\vec{r} \cdot\hat{e}_v) \hat{e}_v$, and $(d\vec{r} \cdot\hat{e}_w) \hat{e}_w$. Then forming the triple scalar product to compute the volume of the parallelepiped: -$$ + \begin{align*} \left[(d\vec{r} \cdot\hat{e}_u) \hat{e}_u\right] \cdot \left( @@ -1149,7 +1148,7 @@ $$ &= h_u h_v h_w du dv dw, \end{align*} -$$ + as the unit vectors are orthonormal, their triple scalar product is $1$ and $d\vec{r}\cdot\hat{e}_u = h_u du$, etc. @@ -1214,21 +1213,21 @@ p The tangent vectors found from the partial derivatives of $\vec{r}$: -$$ -\begin{align} + +\begin{align*} \frac{\partial{\vec{r}}}{\partial{r}} &= \langle \cos(\theta) \cdot \sin(\phi), \sin(\theta) \cdot \sin(\phi), \cos(\phi)\rangle,\\ \frac{\partial{\vec{r}}}{\partial{\theta}} &= \langle -r\cdot\sin(\theta)\cdot\sin(\phi), r\cdot\cos(\theta)\cdot\sin(\phi), 0\rangle,\\ \frac{\partial{\vec{r}}}{\partial{\phi}} &= \langle r\cdot\cos(\theta)\cdot\cos(\phi), r\cdot\sin(\theta)\cdot\cos(\phi), -r\cdot\sin(\phi) \rangle. -\end{align} -$$ +\end{align*} + With this, we have $h_r=1$, $h_\theta=r\sin(\phi)$, and $h_\phi = r$. So that -$$ + \begin{align*} dl &= \sqrt{dr^2 + (r\sin(\phi)d\theta^2) + (rd\phi)^2},\\ dS_r &= r^2\sin(\phi)d\theta d\phi,\\ @@ -1236,7 +1235,7 @@ dS_\theta &= rdr d\phi,\\ dS_\phi &= r\sin(\phi)dr d\theta, \quad\text{and}\\ dV &= r^2\sin(\phi) drd\theta d\phi. \end{align*} -$$ + The following visualizes the volume and the surface elements. @@ -1292,7 +1291,7 @@ p If $f$ is a scalar function then $df = \nabla{f} \cdot d\vec{r}$ by the chain rule. Using the curvilinear coordinates: -$$ + \begin{align*} df &= \frac{\partial{f}}{\partial{u}} du + @@ -1303,7 +1302,7 @@ df &= \frac{1}{h_v}\frac{\partial{f}}{\partial{v}} h_vdv + \frac{1}{h_w}\frac{\partial{f}}{\partial{w}} h_wdw. \end{align*} -$$ + But, as was used above, $d\vec{r} \cdot \hat{e}_u = h_u du$, etc. so $df$ can be re-expressed as: @@ -1379,13 +1378,12 @@ where $S$ is a surface perpendicular to $\hat{N}$ with boundary $C$. For a small $$ -\nabla\times{F} = \det \left[ -\begin{array}{} +\nabla\times{F} = \det +\begin{bmatrix} h_u\hat{e}_u & h_v\hat{e}_v & h_w\hat{e}_w \\ \frac{\partial}{\partial{u}} & \frac{\partial}{\partial{v}} & \frac{\partial}{\partial{w}} \\ h_uF_u & h_v F_v & h_w F_w -\end{array} -\right]. +\end{bmatrix}. $$ --- @@ -1395,32 +1393,30 @@ For example, in cylindrical coordinates, the curl is: $$ -\det\left[ -\begin{array}{} +\det +\begin{bmatrix} \hat{r} & r\hat{\theta} & \hat{k} \\ \frac{\partial}{\partial{r}} & \frac{\partial}{\partial{\theta}} & \frac{\partial}{\partial{z}} \\ F_r & rF_\theta & F_z -\end{array} -\right] +\end{bmatrix} $$ Applying this to the function $F(r,\theta, z) = \hat{\theta}$ we get: $$ -\text{curl}(F) = \det\left[ -\begin{array}{} +\text{curl}(F) = \det +\begin{bmatrix} \hat{r} & r\hat{\theta} & \hat{k} \\ \frac{\partial}{\partial{r}} & \frac{\partial}{\partial{\theta}} & \frac{\partial}{\partial{z}} \\ 0 & r & 0 -\end{array} -\right] = -\hat{k} \det\left[ -\begin{array}{} +\end{bmatrix} += +\hat{k} \det +\begin{bmatrix} \frac{\partial}{\partial{r}} & \frac{\partial}{\partial{\theta}}\\ 0 & r -\end{array} -\right] = +\end{bmatrix} = \hat{k}. $$ @@ -1646,13 +1642,12 @@ The curl then will then be $$ -\nabla\times{F} = \det \left[ -\begin{array}{} +\nabla\times{F} = \det +\begin{bmatrix} \hat{e}_r & r\sin\phi\hat{e}_\theta & r\hat{e}_\phi \\ \frac{\partial}{\partial{r}} & \frac{\partial}{\partial{\theta}} & \frac{\partial}{\partial{phi}} \\ F_r & r\sin\phi F_\theta & r F_\phi -\end{array} -\right]. +\end{bmatrix}. $$ For a *radial* function $F = h(r)e_r$. (That is $F_r = h(r)$, $F_\theta=0$, and $F_\phi=0$. What is the curl of $F$? diff --git a/quarto/integral_vector_calculus/double_triple_integrals.qmd b/quarto/integral_vector_calculus/double_triple_integrals.qmd index 74a5cfe..07cf8d6 100644 --- a/quarto/integral_vector_calculus/double_triple_integrals.qmd +++ b/quarto/integral_vector_calculus/double_triple_integrals.qmd @@ -46,9 +46,12 @@ The multidimensional case will prove to be similar where a Riemann sum is used t #| echo: false imgfile = "figures/chrysler-building-in-new-york.jpg" caption = """How to estimate the volume contained within the Chrysler Building? One way might be to break the building up into tall vertical blocks based on its skyline; compute the volume of each block using the formula of volume as area of the base times the height; and, finally, adding up the computed volumes This is the basic idea of finding volumes under surfaces using Riemann integration.""" -ImageFile(:integral_vector_calculus, imgfile, caption) +#ImageFile(:integral_vector_calculus, imgfile, caption) +nothing ``` +![How to estimate the volume contained within the Chrysler Building? One way might be to break the building up into tall vertical blocks based on its skyline; compute the volume of each block using the formula of volume as area of the base times the height; and, finally, adding up the computed volumes This is the basic idea of finding volumes under surfaces using Riemann integration.](./figures/chrysler-building-in-new-york.jpg) + ```{julia} #| hold: true #| echo: false @@ -57,9 +60,14 @@ caption = """ Computing the volume of a nano-block construction of the Chrysler building is easier than trying to find an actual tree at the Chrysler building, as we can easily compute the volume of columns of equal-sized blocks. Riemann sums are similar. """ -ImageFile(:integral_vector_calculus, imgfile, caption) +#ImageFile(:integral_vector_calculus, imgfile, caption) +nothing ``` +![ +Computing the volume of a nano-block construction of the Chrysler building is easier than trying to find an actual tree at the Chrysler building, as we can easily compute the volume of columns of equal-sized blocks. Riemann sums are similar. +](./figures/chrysler-nano-block.png) + The definition of the multi-dimensional integral is more involved then the one-dimensional case due to the possibly increased complexity of the region. This will require additional [steps](https://math.okstate.edu/people/lebl/osu4153-s16/chapter10-ver1.pdf). The basic approach is as follows. @@ -410,9 +418,12 @@ In [Ferzola](https://doi.org/10.2307/2687130) we can read a summary of Euler's t imgfile ="figures/strang-slicing.png" caption = L"""Figure 14.2 of Strang illustrating the slice when either $x$ is fixed or $y$ is fixed. The inner integral computes the shared area, the outer integral adds the areas up to compute volume.""" -ImageFile(:integral_vector_calculus, imgfile, caption) +# ImageFile(:integral_vector_calculus, imgfile, caption) +nothing ``` +![Figure 14.2 of Strang illustrating the slice when either $x$ is fixed or $y$ is fixed. The inner integral computes the shared area, the outer integral adds the areas up to compute volume.](./figures/strang-slicing.png) + In [Volumes](../integrals/volumes_slice.html) the formula for a volume with a known cross-sectional area is given by $V = \int_a^b CA(x) dx$. The inner integral, $\int_{R_x} f(x,y) dy$ is a function depending on $x$ that yields the area of the slice (where $R_x$ is the region sliced by the line of constant $x$ value). This is consistent with Euler's view of the iterated integral. @@ -925,12 +936,12 @@ In [Katz](http://www.jstor.org/stable/2689856) a review of the history of "chang We view $R$ in two coordinate systems $(x,y)$ and $(u,v)$. We have that -$$ -\begin{align} + +\begin{align*} dx &= A du + B dv\\ dy &= C du + D dv, -\end{align} -$$ +\end{align*} + where $A = \partial{x}/\partial{u}$, $B = \partial{x}/\partial{v}$, $C= \partial{y}/\partial{u}$, and $D = \partial{y}/\partial{v}$. Lagrange, following Euler, first sets $x$ to be constant (as is done in iterated integration). Hence, $dx = 0$ and so $du = -C(B/A) dv$ and, after substitution, $dy = (D-C(B/A))dv$. Then Lagrange set $y$ to be a constant, so $dy = 0$ and hence $dv=0$ so $dx = Adu$. The area "element" $dx dy = A du \cdot (D - (B/A)) dv = (AD - BC) du dv$. Since areas and volumes are non-negative, the absolute value is used. With this, we have "$dxdy = |AD-BC|du dv$" as the analog of $dx = g'(u) du$. @@ -938,12 +949,11 @@ where $A = \partial{x}/\partial{u}$, $B = \partial{x}/\partial{v}$, $C= \partial The expression $AD - BC$ was also derived by Euler, by related means. Lagrange extended the analysis to 3 dimensions. Before doing so, it is helpful to understand the problem from a geometric perspective. Euler was attempting to understand the effects of the following change of variable: -$$ -\begin{align} + +\begin{align*} x &= a + mt + \sqrt{1-m^2} v\\ y & = b + \sqrt{1-m^2}t -mv -\end{align} -$$ +\end{align*} Euler knew this to be a clockwise *rotation* by an angle $\theta$ with $\cos(\theta) = m$, a *reflection* through the $x$ axis, and a translation by $\langle a, b\rangle$. All these *should* preserve the area represented by $dx dy$, so he was *expecting* $dx dy = dt dv$. @@ -953,9 +963,12 @@ Euler knew this to be a clockwise *rotation* by an angle $\theta$ with $\cos(\th #| echo: false imgfile ="figures/euler-rotation.png" caption = "Figure from Katz showing rotation of Euler." -ImageFile(:integral_vector_calculus, imgfile, caption) +# ImageFile(:integral_vector_calculus, imgfile, caption) +nothing ``` +![Figure from Katz showing rotation of Euler.](figures/euler-rotation.png) + The figure, taken from Katz, shows the translation, and rotation that should preserve area on a differential scale. @@ -1047,28 +1060,25 @@ The arrows are the images of the standard unit vectors. We see some transformati $$ -\| \det\left(\left[ -\begin{array}{} +\| \det\left( +\begin{bmatrix} \hat{i} & \hat{j} & \hat{k}\\ u_1 & u_2 & 0\\ v_1 & v_2 & 0 -\end{array} -\right] +\end{bmatrix} \right) \| = -\| \hat{k} \det\left(\left[ -\begin{array}{} +\| \hat{k} \det\left( +\begin{bmatrix} u_1 & u_2\\ v_1 & v_2 -\end{array} -\right] +\end{bmatrix} \right) \| -= | \det\left(\left[ -\begin{array}{} += | \det\left( +\begin{bmatrix} u_1 & u_2\\ v_1 & v_2 -\end{array} -\right] +\end{bmatrix} \right)|. $$ @@ -1108,12 +1118,11 @@ We have [seen](../differentiable_vector_calculus/polar_coordinates.html) how to $$ -J_G = \left[ -\begin{array}{} +J_G = +\begin{bmatrix} \cos(\theta) & - r\sin(\theta)\\ \sin(\theta) & r\cos(\theta) -\end{array} -\right], +\end{bmatrix}, $$ with determinant $r$. @@ -1156,24 +1165,20 @@ Some [transformations](https://en.wikipedia.org/wiki/Transformation_matrix#Examp $$ -\left[ -\begin{array}{} +\begin{bmatrix} x\\ y -\end{array} -\right] = -\left[ -\begin{array}{} +\end{bmatrix} += +\begin{bmatrix} a & b\\ c & d -\end{array} -\right] -\left[ -\begin{array}{} +\end{bmatrix} +\begin{bmatrix} u\\ v -\end{array} -\right], +\end{bmatrix} +, $$ or $G(u,v) = \langle au+bv, cu+dv\rangle$. The Jacobian of this *linear* transformation is the matrix itself. @@ -1219,12 +1224,10 @@ showG(G) $$ \frac{1}{\| \vec{l} \|^2} -\left[ -\begin{array}{} +\begin{bmatrix} l_x^2 - l_y^2 & 2 l_x l_y\\ 2l_x l_y & l_y^2 - l_x^2 -\end{array} -\right] +\end{bmatrix} $$ For some simple cases: $\langle l_x, l_y \rangle = \langle 1, 1\rangle$, the diagonal, this is $G(u,v) = (1/2) \langle 2v, 2u \rangle$; $\langle l_x, l_y \rangle = \langle 0, 1\rangle$ (the $y$-axis) this is $G(u,v) = \langle -u, v\rangle$. @@ -1268,12 +1271,10 @@ The determinant of the Jacobian is $$ \det(J_G) = \det\left( -\left[ -\begin{array}{} +\begin{bmatrix} 1 & 0\\ v & u -\end{array} -\right] +\end{bmatrix} \right) = u. $$ @@ -1304,13 +1305,13 @@ What about other triangles, say the triangle bounded by $x=0$, $y=0$ and $y-x=1$ This can be seen as a reflection through the line $x=1/2$ of the triangle above. If $G_1$ represents the mapping from $U [0,1]\times[0,1]$ into the triangle of the last problem, and $G_2$ represents the reflection through the line $x=1/2$, then the transformation $G_2 \circ G_1$ will map the box $U$ into the desired region. By the chain rule, we have: -$$ + \begin{align*} \int_{(G_2\circ G_1)(U))} f dx &= \int_U (f\circ G_2 \circ G_1) |\det(J_{G_2 \circ G_1}| du \\ &= \int_U (f\circ G_2 \circ G_1) |\det(J_{G_2}(G_1(u))||\det J_{G_1}(u)| du. \end{align*} -$$ + (In [Katz](http://www.jstor.org/stable/2689856) it is mentioned that Jacobi showed this in 1841.) @@ -1449,7 +1450,7 @@ $$ \int_{r=0}^1 r^2 dr \int_{\theta=0}^{\pi}\sin(\theta) = \frac{1}{3} \cdot 2. $$ -The third equals sign uses separability. The answer for $\bar{ is this value divided by the area, or $2/(3\pi)$. +The third equals sign uses separability. The answer for $\bar{y}$ is this value divided by the area, or $2/(3\pi)$. ##### Example: Moment of inertia @@ -1656,9 +1657,12 @@ $$ imgfile = "figures/spherical-coordinates.png" caption = "Figure showing the parameterization by spherical coordinates. (Wikipedia)" -ImageFile(:integral_vector_calculus, imgfile, caption) +# ImageFile(:integral_vector_calculus, imgfile, caption) +nothing ``` +![Figure showing the parameterization by spherical coordinates. (Wikipedia)](./figures/spherical-coordinates.png) + The Jacobian can be computed to be $\rho^2\sin(\phi)$. diff --git a/quarto/integral_vector_calculus/line_integrals.qmd b/quarto/integral_vector_calculus/line_integrals.qmd index f02e239..a1fce07 100644 --- a/quarto/integral_vector_calculus/line_integrals.qmd +++ b/quarto/integral_vector_calculus/line_integrals.qmd @@ -611,9 +611,13 @@ imgfile = "figures/kapoor-cloud-gate.jpg" caption = """ The Anish Kapoor sculpture Cloud Gate maps the Cartesian grid formed by its concrete resting pad onto a curved surface showing the local distortions. Knowing the areas of the reflected grid after distortion would allow the computation of the surface area of the sculpture through addition. (Wikipedia) """ -ImageFile(:integral_vector_calculus, imgfile, caption) +#ImageFile(:integral_vector_calculus, imgfile, caption) +nothing ``` +![The Anish Kapoor sculpture Cloud Gate maps the Cartesian grid formed by its concrete resting pad onto a curved surface showing the local distortions. Knowing the areas of the reflected grid after distortion would allow the computation of the surface area of the sculpture through addition. (Wikipedia) +](./figures/kapoor-cloud-gate.jpg) + We next turn attention to a generalization of line integrals to surface integrals. Surfaces were described in one of three ways: directly through a function as $z=f(x,y)$, as a level curve through $f(x,y,z) = c$, and parameterized through a function $\Phi: R^2 \rightarrow R^3$. The level curve description is locally a function description, and the function description leads to a parameterization ($\Phi(u,v) = \langle u,v,f(u,v)\rangle$) so we restrict to the parameterized case. diff --git a/quarto/integral_vector_calculus/review.qmd b/quarto/integral_vector_calculus/review.qmd index 2c6c47e..bb02fd7 100644 --- a/quarto/integral_vector_calculus/review.qmd +++ b/quarto/integral_vector_calculus/review.qmd @@ -98,13 +98,13 @@ In dimension $m=3$, the **binormal** vector, $\hat{B}$, is the unit vector $\hat The [Frenet-Serret]() formulas define the **curvature**, $\kappa$, and the **torsion**, $\tau$, by -$$ -\begin{align} + +\begin{align*} \frac{d\hat{T}}{ds} &= & \kappa \hat{N} &\\ \frac{d\hat{N}}{ds} &= -\kappa\hat{T} & & + \tau\hat{B}\\ \frac{d\hat{B}}{ds} &= & -\tau\hat{N}& -\end{align} -$$ +\end{align*} + These formulas apply in dimension $m=2$ with $\hat{B}=\vec{0}$. @@ -121,14 +121,14 @@ The chain rule says $(\vec{r}(g(t))' = \vec{r}'(g(t)) g'(t)$. A scalar function, $f:R^n\rightarrow R$, $n > 1$ has a **partial derivative** defined. For $n=2$, these are: -$$ -\begin{align} + +\begin{align*} \frac{\partial{f}}{\partial{x}}(x,y) &= \lim_{h\rightarrow 0} \frac{f(x+h,y)-f(x,y)}{h}\\ \frac{\partial{f}}{\partial{y}}(x,y) &= \lim_{h\rightarrow 0} \frac{f(x,y+h)-f(x,y)}{h}. -\end{align} -$$ +\end{align*} + The generalization to $n>2$ is clear - the partial derivative in $x_i$ is the derivative of $f$ when the *other* $x_j$ are held constant. @@ -198,14 +198,13 @@ For $F=\langle f_1, f_2, \dots, f_m\rangle$ the total derivative is the **Jacob $$ -J_f = \left[ -\begin{align}{} +J_f = +\begin{bmatrix} \frac{\partial f_1}{\partial x_1} &\quad \frac{\partial f_1}{\partial x_2} &\dots&\quad\frac{\partial f_1}{\partial x_n}\\ \frac{\partial f_2}{\partial x_1} &\quad \frac{\partial f_2}{\partial x_2} &\dots&\quad\frac{\partial f_2}{\partial x_n}\\ &&\vdots&\\ \frac{\partial f_m}{\partial x_1} &\quad \frac{\partial f_m}{\partial x_2} &\dots&\quad\frac{\partial f_m}{\partial x_n} -\end{align} -\right]. +\end{bmatrix}. $$ This can be viewed as being comprised of row vectors, each being the individual gradients; or as column vectors each being the vector of partial derivatives for a given variable. @@ -225,7 +224,7 @@ A scalar function $f:R^n \rightarrow R$ and a parameterized curve $\vec{r}:R\rig $$ -d_f(\vec{r}) d_\vec{r} = \nabla{f}(\vec{r}(t))' \vec{r}'(t) = +d_f(\vec{r}) d\vec{r} = \nabla{f}(\vec{r}(t))' \vec{r}'(t) = \nabla{f}(\vec{r}(t)) \cdot \vec{r}'(t), $$ @@ -356,29 +355,29 @@ $$ In two dimensions, we have the following interpretations: -$$ -\begin{align} + +\begin{align*} \iint_R dA &= \text{area of } R\\ \iint_R \rho dA &= \text{mass with constant density }\rho\\ \iint_R \rho(x,y) dA &= \text{mass of region with density }\rho\\ \frac{1}{\text{area}}\iint_R x \rho(x,y)dA &= \text{centroid of region in } x \text{ direction}\\ \frac{1}{\text{area}}\iint_R y \rho(x,y)dA &= \text{centroid of region in } y \text{ direction} -\end{align} -$$ +\end{align*} + In three dimensions, we have the following interpretations: -$$ -\begin{align} + +\begin{align*} \iint_VdV &= \text{volume of } V\\ \iint_V \rho dV &= \text{mass with constant density }\rho\\ \iint_V \rho(x,y) dV &= \text{mass of volume with density }\rho\\ \frac{1}{\text{volume}}\iint_V x \rho(x,y)dV &= \text{centroid of volume in } x \text{ direction}\\ \frac{1}{\text{volume}}\iint_V y \rho(x,y)dV &= \text{centroid of volume in } y \text{ direction}\\ \frac{1}{\text{volume}}\iint_V z \rho(x,y)dV &= \text{centroid of volume in } z \text{ direction} -\end{align} -$$ +\end{align*} + To compute integrals over non-box-like regions, Fubini's theorem may be utilized. Alternatively, a **transformation** of variables diff --git a/quarto/integral_vector_calculus/stokes_theorem.qmd b/quarto/integral_vector_calculus/stokes_theorem.qmd index de6a654..fafd4b0 100644 --- a/quarto/integral_vector_calculus/stokes_theorem.qmd +++ b/quarto/integral_vector_calculus/stokes_theorem.qmd @@ -270,12 +270,12 @@ r(t) = [a*cos(t),b*sin(t)] To compute the area of the triangle with vertices $(0,0)$, $(a,0)$ and $(0,b)$ we can orient the boundary counter clockwise. Let $A$ be the line segment from $(0,b)$ to $(0,0)$, $B$ be the line segment from $(0,0)$ to $(a,0)$, and $C$ be the other. Then -$$ -\begin{align} + +\begin{align*} \frac{1}{2} \int_A F\cdot\hat{T} ds &=\frac{1}{2} \int_A -ydx = 0\\ \frac{1}{2} \int_B F\cdot\hat{T} ds &=\frac{1}{2} \int_B xdy = 0, -\end{align} -$$ +\end{align*} + as on $A$, $y=0$ and $dy=0$ and on $B$, $x=0$ and $dx=0$. @@ -310,7 +310,7 @@ For the two dimensional case the curl is a scalar. *If* $F = \langle F_x, F_y\ra Now assume $\partial{F_y}/\partial{x} - \partial{F_x}/\partial{y} = 0$. Let $P$ and $Q$ be two points in the plane. Take any path, $C_1$ from $P$ to $Q$ and any return path, $C_2$, from $Q$ to $P$ that do not cross and such that $C$, the concatenation of the two paths, satisfies Green's theorem. Then, as $F$ is continuous on an open interval containing $D$, we have: -$$ + \begin{align*} 0 &= \iint_D 0 dA \\ &= @@ -320,7 +320,7 @@ $$ &= \int_{C_1} F \cdot \hat{T} ds + \int_{C_2}F \cdot \hat{T} ds. \end{align*} -$$ + Reversing $C_2$ to go from $P$ to $Q$, we see the two work integrals are identical, that is the field is conservative. @@ -338,14 +338,14 @@ For example, let $F(x,y) = \langle \sin(xy), \cos(xy) \rangle$. Is this a conser We can check by taking partial derivatives. Those of interest are: -$$ -\begin{align} + +\begin{align*} \frac{\partial{F_y}}{\partial{x}} &= \frac{\partial{(\cos(xy))}}{\partial{x}} = -\sin(xy) y,\\ \frac{\partial{F_x}}{\partial{y}} &= \frac{\partial{(\sin(xy))}}{\partial{y}} = \cos(xy)x. -\end{align} -$$ +\end{align*} + It is not the case that $\partial{F_y}/\partial{x} - \partial{F_x}/\partial{y}=0$, so this vector field is *not* conservative. @@ -416,25 +416,25 @@ p Let $A$ label the red line, $B$ the green curve, $C$ the blue line, and $D$ the black line. Then the area is given from Green's theorem by considering half of the the line integral of $F(x,y) = \langle -y, x\rangle$ or $\oint_C (xdy - ydx)$. To that matter we have: -$$ -\begin{align} + +\begin{align*} \int_A (xdy - ydx) &= a f(a)\\ \int_C (xdy - ydx) &= b(-f(b))\\ \int_D (xdy - ydx) &= 0\\ -\end{align} -$$ +\end{align*} + Finally the integral over $B$, using integration by parts: -$$ -\begin{align} + +\begin{align*} \int_B F(\vec{r}(t))\cdot \frac{d\vec{r}(t)}{dt} dt &= \int_b^a \langle -f(t),t)\rangle\cdot\langle 1, f'(t)\rangle dt\\ &= \int_a^b f(t)dt - \int_a^b tf'(t)dt\\ &= \int_a^b f(t)dt - \left(tf(t)\mid_a^b - \int_a^b f(t) dt\right). -\end{align} -$$ +\end{align*} + Combining, we have after cancellation $\oint (xdy - ydx) = 2\int_a^b f(t) dt$, or after dividing by $2$ the signed area under the curve. @@ -469,16 +469,16 @@ The cut leads to a counter-clockwise orientation on the outer ring and a clockw To see that the area integral of $F(x,y) = (1/2)\langle -y, x\rangle$ produces the area for this orientation we have, using $C_1$ as the outer ring, and $C_2$ as the inner ring: -$$ -\begin{align} + +\begin{align*} \oint_{C_1} F \cdot \hat{T} ds &= \int_0^{2\pi} (1/2)(2)\langle -\sin(t), \cos(t)\rangle \cdot (2)\langle-\sin(t), \cos(t)\rangle dt \\ &= (1/2) (2\pi) 4 = 4\pi\\ \oint_{C_2} F \cdot \hat{T} ds &= \int_{0}^{2\pi} (1/2) \langle \sin(t), \cos(t)\rangle \cdot \langle-\sin(t), -\cos(t)\rangle dt\\ &= -(1/2)(2\pi) = -\pi. -\end{align} -$$ +\end{align*} + (Using $\vec{r}(t) = 2\langle \cos(t), \sin(t)\rangle$ for the outer ring and $\vec{r}(t) = 1\langle \cos(t), -\sin(t)\rangle$ for the inner ring.) @@ -716,9 +716,13 @@ imgfile ="figures/jiffy-pop.png" caption =""" The Jiffy Pop popcorn design has a top surface that is designed to expand to accommodate the popped popcorn. Viewed as a surface, the surface area grows, but the boundary - where the surface meets the pan - stays the same. This is an example that many different surfaces can have the same bounding curve. Stokes' theorem will relate a surface integral over the surface to a line integral about the bounding curve. """ -ImageFile(:integral_vector_calculus, imgfile, caption) +# ImageFile(:integral_vector_calculus, imgfile, caption) +nothing ``` +![The Jiffy Pop popcorn design has a top surface that is designed to expand to accommodate the popped popcorn. Viewed as a surface, the surface area grows, but the boundary - where the surface meets the pan - stays the same. This is an example that many different surfaces can have the same bounding curve. Stokes' theorem will relate a surface integral over the surface to a line integral about the bounding curve. +](./figures/jiffy-pop.png) + Were the figure of Jiffy Pop popcorn animated, the surface of foil would slowly expand due to pressure of popping popcorn until the popcorn was ready. However, the boundary would remain the same. Many different surfaces can have the same boundary. Take for instance the upper half unit sphere in $R^3$ it having the curve $x^2 + y^2 = 1$ as a boundary curve. This is the same curve as the surface of the cone $z = 1 - (x^2 + y^2)$ that lies above the $x-y$ plane. This would also be the same curve as the surface formed by a Mickey Mouse glove if the collar were scaled and positioned onto the unit circle. @@ -736,7 +740,7 @@ $$ This gives the series of approximations: -$$ + \begin{align*} \oint_C F\cdot\hat{T} ds &= \sum \oint_{C_i} F\cdot\hat{T} ds \\ @@ -747,7 +751,7 @@ $$ &\approx \iint_S \nabla\times{F}\cdot\hat{N} dS. \end{align*} -$$ + In terms of our expanding popcorn, the boundary integral - after accounting for cancellations, as in Green's theorem - can be seen as a microscopic sum of boundary integrals each of which is approximated by a term $\nabla\times{F}\cdot\hat{N} \Delta{S}$ which is viewed as a Riemann sum approximation for the the integral of the curl over the surface. The cancellation depends on a proper choice of orientation, but with that we have: @@ -1127,13 +1131,13 @@ The divergence theorem provides two means to compute a value, the point here is Following Schey, we now consider a continuous analog to the crowd counting problem through a flow with a non-uniform density that may vary in time. Let $\rho(x,y,z;t)$ be the time-varying density and $v(x,y,z;t)$ be a vector field indicating the direction of flow. Consider some three-dimensional volume, $V$, with boundary $S$ (though two-dimensional would also be applicable). Then these integrals have interpretations: -$$ -\begin{align} + +\begin{align*} \iiint_V \rho dV &&\quad\text{Amount contained within }V\\ \frac{\partial}{\partial{t}} \iiint_V \rho dV &= \iiint_V \frac{\partial{\rho}}{\partial{t}} dV &\quad\text{Change in time of amount contained within }V -\end{align} -$$ +\end{align*} + Moving the derivative inside the integral requires an assumption of continuity. Assume the material is *conserved*, meaning that if the amount in the volume $V$ changes it must flow in and out through the boundary. The flow out through $S$, the boundary of $V$, is diff --git a/quarto/integrals/arc_length.qmd b/quarto/integrals/arc_length.qmd index 88af745..69b3cd0 100644 --- a/quarto/integrals/arc_length.qmd +++ b/quarto/integrals/arc_length.qmd @@ -26,9 +26,13 @@ caption = """ A kids' jump rope by Lifeline is comprised of little plastic segments of uniform length around a cord. The length of the rope can be computed by adding up the lengths of each segment, regardless of how the rope is arranged. """ -ImageFile(:integrals, imgfile, caption) +# ImageFile(:integrals, imgfile, caption) +nothing ``` +![A kids' jump rope by Lifeline is comprised of little plastic segments of uniform length around a cord. The length of the rope can be computed by adding up the lengths of each segment, regardless of how the rope is arranged. +](./figures/jump-rope.png) + The length of the jump rope in the picture can be computed by either looking at the packaging it came in, or measuring the length of each plastic segment and multiplying by the number of segments. The former is easier, the latter provides the intuition as to how we can find the length of curves in the $x-y$ plane. The idea is old, [Archimedes](http://www.maa.org/external_archive/joma/Volume7/Aktumen/Polygon.html) used fixed length segments of polygons to approximate $\pi$ using the circumference of circle producing the bounds $3~\frac{1}{7} > \pi > 3~\frac{10}{71}$. @@ -64,7 +68,6 @@ To see why, any partition of the interval $[a,b]$ by $a = t_0 < t_1 < \cdots < t ```{julia} #| hold: false #| echo: false -#| cache: true ## {{{arclength_graph}}} function make_arclength_graph(n) @@ -120,7 +123,7 @@ $$ But looking at each term, we can push the denominator into the square root as: -$$ + \begin{align*} d_i &= d_i \cdot \frac{t_i - t_{i-1}}{t_i - t_{i-1}} \\ @@ -128,7 +131,7 @@ d_i &= d_i \cdot \frac{t_i - t_{i-1}}{t_i - t_{i-1}} \left(\frac{f(t_i)-f(t_{i-1})}{t_i-t_{i-1}}\right)^2} \cdot (t_i - t_{i-1}) \\ &= \sqrt{ g'(\xi_i)^2 + f'(\psi_i)^2} \cdot (t_i - t_{i-1}). \end{align*} -$$ + The values $\xi_i$ and $\psi_i$ are guaranteed by the mean value theorem and must be in $[t_{i-1}, t_i]$. @@ -257,9 +260,12 @@ This picture of Jasper John's [Near the Lagoon](http://www.artic.edu/aic/collect #| echo: false imgfile = "figures/johns-catenary.jpg" caption = "One of Jasper Johns' Catenary series. Art Institute of Chicago." -ImageFile(:integrals, imgfile, caption) +# ImageFile(:integrals, imgfile, caption) +nothing ``` +![One of Jasper Johns' Catenary series. Art Institute of Chicago.](./figures/johns-catenary.jpg) + The museum notes have @@ -342,9 +348,12 @@ imgfile="figures/verrazzano-unloaded.jpg" caption = """ The Verrazzano-Narrows Bridge during construction. The unloaded suspension cables form a catenary. """ -ImageFile(:integrals, imgfile, caption) +# ImageFile(:integrals, imgfile, caption) +nothing ``` +![The Verrazzano-Narrows Bridge during construction. The unloaded suspension cables form a catenary.](./figures/verrazzano-unloaded.jpg) + ```{julia} #| hold: true #| echo: false @@ -352,21 +361,25 @@ imgfile="figures/verrazzano-loaded.jpg" caption = """ A rendering of the Verrazzano-Narrows Bridge after construction (cf. [nycgovparks.org](https://www.nycgovparks.org/highlights/verrazano-bridge)). The uniformly loaded suspension cables would form a parabola, presumably a fact the artist of this rendering knew. (The spelling in the link is not the official spelling, which carries two zs.) """ -ImageFile(:integrals, imgfile, caption) +# ImageFile(:integrals, imgfile, caption) +nothing ``` +![A rendering of the Verrazzano-Narrows Bridge after construction (cf. [nycgovparks.org](https://www.nycgovparks.org/highlights/verrazano-bridge)). The uniformly loaded suspension cables would form a parabola, presumably a fact the artist of this rendering knew. (The spelling in the link is not the official spelling, which carries two zs.) +](./figures/verrazzano-loaded.jpg) + ##### Example The [nephroid](http://www-history.mcs.st-and.ac.uk/Curves/Nephroid.html) is a curve that can be described parametrically by -$$ + \begin{align*} g(t) &= a(3\cos(t) - \cos(3t)), \\ f(t) &= a(3\sin(t) - \sin(3t)). \end{align*} -$$ + Taking $a=1$ we have this graph: @@ -391,7 +404,7 @@ quadgk(t -> sqrt(𝒈'(t)^2 + 𝒇'(t)^2), 0, 2pi)[1] The answer seems like a floating point approximation of $24$, which suggests that this integral is tractable. Pursuing this, the integrand simplifies: -$$ + \begin{align*} \sqrt{g'(t)^2 + f'(t)^2} &= \sqrt{(-3\sin(t) + 3\sin(3t))^2 + (3\cos(t) - 3\cos(3t))^2} \\ @@ -401,7 +414,7 @@ $$ &= 3\sqrt{2}\sqrt{1 - \cos(2t)}\\ &= 3\sqrt{2}\sqrt{2\sin(t)^2}. \end{align*} -$$ + The second to last line comes from a double angle formula expansion of $\cos(3t - t)$ and the last line from the half angle formula for $\cos$. @@ -423,6 +436,7 @@ The following link shows how the perimeter of a complex figure relates to the pe tweet = """

""" + HTMLoutput(tweet) ``` @@ -435,14 +449,14 @@ A teacher of small children assigns his students the task of computing the lengt Mathematically, suppose a curve is described parametrically by $(g(t), f(t))$ for $a \leq t \leq b$. A new parameterization is provided by $\gamma(t)$. Suppose $\gamma$ is strictly increasing, so that an inverse function exists. (This assumption is implicitly made by the teacher, as it implies the student won't start counting in the wrong direction.) Then the same curve is described by composition through $(g(\gamma(u)), f(\gamma(u)))$, $\gamma^{-1}(a) \leq u \leq \gamma^{-1}(b)$. That the arc length is the same follows from substitution: -$$ + \begin{align*} \int_{\gamma^{-1}(a)}^{\gamma^{-1}(b)} \sqrt{([g(\gamma(t))]')^2 + ([f(\gamma(t))]')^2} dt &=\int_{\gamma^{-1}(a)}^{\gamma^{-1}(b)} \sqrt{(g'(\gamma(t) )\gamma'(t))^2 + (f'(\gamma(t) )\gamma'(t))^2 } dt \\ &=\int_{\gamma^{-1}(a)}^{\gamma^{-1}(b)} \sqrt{g'(\gamma(t))^2 + f'(\gamma(t))^2} \gamma'(t) dt\\ &=\int_a^b \sqrt{g'(u)^2 + f'(u)^2} du = L \end{align*} -$$ + (Using $u=\gamma(t)$ for the substitution.) @@ -466,13 +480,13 @@ For a simple example, we have $g(t) = R\cos(t)$ and $f(t)=R\sin(t)$ parameterizi What looks at first glance to be just a slightly more complicated equation is that of an ellipse, with $g(t) = a\cos(t)$ and $f(t) = b\sin(t)$. Taking $a=1$ and $b = a + c$, for $c > 0$ we get the equation for the arc length as a function of $t$ is just -$$ + \begin{align*} s(u) &= \int_0^u \sqrt{(-\sin(t))^2 + b\cos(t)^2} dt\\ &= \int_0^u \sqrt{\sin(t))^2 + \cos(t)^2 + c\cos(t)^2} dt \\ &=\int_0^u \sqrt{1 + c\cos(t)^2} dt. \end{align*} -$$ + But, despite it not looking too daunting, this integral is not tractable through our techniques and has an answer involving elliptic integrals. We can work numerically though. Letting $a=1$ and $b=2$, we have the arc length is given by: @@ -571,12 +585,12 @@ $$ So -$$ + \begin{align*} \int_0^1 (tf'(u) + (1-t)f'(v)) dt &< \int_0^1 f'(tu + (1-t)v) dt, \text{or}\\ \frac{f'(u) + f'(v)}{2} &< \frac{1}{v-u}\int_u^v f'(w) dw, \end{align*} -$$ + by the substitution $w = tu + (1-t)v$. Using the fundamental theorem of calculus to compute the mean value of the integral of $f'$ over $[u,v]$ gives the following as a consequence of strict concavity of $f'$: @@ -667,25 +681,25 @@ which holds by the strict concavity of $f'$, as found previously. Using the substitution $x = f_i^{-1}(u)$ as needed to see: -$$ + \begin{align*} \int_a^u f(x) dx &= \int_0^{f(u)} u [f_1^{-1}]'(u) du \\ &> -\int_0^h u [f_2^{-1}]'(u) du \\ &= \int_h^0 u [f_2^{-1}]'(u) du \\ &= \int_v^b f(x) dx. \end{align*} -$$ + For the latter claim, integrating in the $y$ variable gives -$$ + \begin{align*} \int_u^c (f(x)-h) dx &= \int_h^m (c - f_1^{-1}(y)) dy\\ &> \int_h^m (c - f_2^{-1}(y)) dy\\ &= \int_c^v (f(x)-h) dx \end{align*} -$$ + Now, the area under $h$ over $[u,c]$ is greater than that over $[c,v]$ as $(u+v)/2 < c$ or $v-c < c-u$. That means the area under $f$ over $[u,c]$ is greater than that over $[c,v]$. @@ -707,7 +721,7 @@ or $\phi'(z) < 0$. Moreover, we have by the first assertion that $f'(z) < -f'(\p Using the substitution $x = \phi(z)$ gives: -$$ + \begin{align*} \int_v^b \sqrt{1 + f'(x)^2} dx &= \int_u^a \sqrt{1 + f'(\phi(z))^2} \phi'(z) dz\\ @@ -716,7 +730,7 @@ $$ &= \int_a^u \sqrt{\phi'(z)^2 + f'(z)^2} dz\\ &< \int_a^u \sqrt{1 + f'(z)^2} dz \end{align*} -$$ + Letting $h=f(u) \rightarrow c$ we get the *inequality* @@ -765,12 +779,12 @@ $$ with the case above corresponding to $W = -m(k/m)$. The set of equations then satisfy: -$$ + \begin{align*} x''(t) &= - W(t,x(t), x'(t), y(t), y'(t)) \cdot x'(t)\\ y''(t) &= -g - W(t,x(t), x'(t), y(t), y'(t)) \cdot y'(t)\\ \end{align*} -$$ + with initial conditions: $x(0) = y(0) = 0$ and $x'(0) = v_0 \cos(\theta), y'(0) = v_0 \sin(\theta)$. @@ -778,28 +792,28 @@ with initial conditions: $x(0) = y(0) = 0$ and $x'(0) = v_0 \cos(\theta), y'(0) Only with certain drag forces, can this set of equations be be solved exactly, though it can be approximated numerically for admissible $W$, but if $W$ is strictly positive then it can be shown $x(t)$ is increasing on $[0, x_\infty)$ and so invertible, and $f(u) = y(x^{-1}(u))$ is three times differentiable with both $f$ and $f'$ being strictly concave, as it can be shown that (say $x(v) = u$ so $dv/du = 1/x'(v) > 0$): -$$ + \begin{align*} f''(u) &= -\frac{g}{x'(v)^2} < 0\\ f'''(u) &= \frac{2gx''(v)}{x'(v)^3} \\ &= -\frac{2gW}{x'(v)^2} \cdot \frac{dv}{du} < 0 \end{align*} -$$ + The latter by differentiating, the former a consequence of the following formulas for derivatives of inverse functions -$$ + \begin{align*} [x^{-1}]'(u) &= 1 / x'(v) \\ [x^{-1}]''(u) &= -x''(v)/(x'(v))^3 \end{align*} -$$ + For then -$$ + \begin{align*} f(u) &= y(x^{-1}(u)) \\ f'(u) &= y'(x^{-1}(u)) \cdot {x^{-1}}'(u) \\ @@ -808,7 +822,7 @@ f''(u) &= y''(x^{-1}(u))\cdot[x^{-1}]'(u)^2 + y'(x^{-1}(u)) \cdot [x^{-1}]''(u) &= -g/(x'(v))^2 - W y'/(x'(v))^2 - y'(v) \cdot (- W \cdot x'(v)) / x'(v)^3\\ &= -g/x'(v)^2. \end{align*} -$$ + ## Questions diff --git a/quarto/integrals/area.qmd b/quarto/integrals/area.qmd index 80946ec..bb33919 100644 --- a/quarto/integrals/area.qmd +++ b/quarto/integrals/area.qmd @@ -74,7 +74,6 @@ In a previous section, we saw this animation: ```{julia} #| hold: true #| echo: false -#| cache: true ## {{{archimedes_parabola}}} @@ -154,10 +153,16 @@ approximations by geometric figures with known area is the basis of Riemann sums. """ -ImageFile(:integrals, imgfile, caption) +#ImageFile(:integrals, imgfile, caption) nothing ``` +![Figure of Beeckman (1618) showing a means to compute the area under a +curve, in this example the line connecting points $A$ and $B$. Using +approximations by geometric figures with known area is the basis of +Riemann sums. +](./figures/beeckman-1618.png) + Beeckman actually did more than find the area. He generalized the relationship of rate $\times$ time $=$ distance. The line was interpreting a velocity, the "squares", then, provided an approximate distance traveled when the velocity is taken as a constant on the small time interval. Then the distance traveled can be approximated by a smaller quantity - just add the area of the rectangles squarely within the desired area ($6+16+6$) - and a larger quantity - by including all rectangles that have a portion of their area within the desired area ($10 + 16 + 10$). Beeckman argued that the error vanishes as the rectangles get smaller. @@ -222,7 +227,7 @@ To successfully compute a good approximation for the area, we would need to choo For Archimedes' problem - finding the area under $f(x)=x^2$ between $0$ and $1$ - if we take as a partition $x_i = i/n$ and $c_i = x_i$, then the above sum becomes: -$$ + \begin{align*} S_n &= f(c_1) \cdot (x_1 - x_0) + f(c_2) \cdot (x_2 - x_1) + \cdots + f(c_n) \cdot (x_n - x_{n-1})\\ &= (x_1)^2 \cdot \frac{1}{n} + (x_2)^2 \cdot \frac{1}{n} + \cdot + (x_n)^2 \cdot \frac{1}{n}\\ @@ -230,7 +235,7 @@ S_n &= f(c_1) \cdot (x_1 - x_0) + f(c_2) \cdot (x_2 - x_1) + \cdots + f(c_n) \cd &= \frac{1}{n^3} \cdot (1^2 + 2^2 + \cdots + n^2) \\ &= \frac{1}{n^3} \cdot \frac{n\cdot(n-1)\cdot(2n+1)}{6}. \end{align*} -$$ + The latter uses a well-known formula for the sum of squares of the first $n$ natural numbers. @@ -460,7 +465,7 @@ Using the definition, we can compute a few definite integrals: This is just the area of a trapezoid with heights $a$ and $b$ and side length $b-a$, or $1/2 \cdot (b + a) \cdot (b - a)$. The right sum would be: -$$ + \begin{align*} S &= x_1 \cdot (x_1 - x_0) + x_2 \cdot (x_2 - x_1) + \cdots x_n \cdot (x_n - x_{n-1}) \\ &= (a + 1\frac{b-a}{n}) \cdot \frac{b-a}{n} + (a + 2\frac{b-a}{n}) \cdot \frac{b-a}{n} + \cdots (a + n\frac{b-a}{n}) \cdot \frac{b-a}{n}\\ @@ -469,7 +474,7 @@ S &= x_1 \cdot (x_1 - x_0) + x_2 \cdot (x_2 - x_1) + \cdots x_n \cdot (x_n - x_{ & \rightarrow a \cdot(b-a) + \frac{(b-a)^2}{2} \\ &= \frac{b^2}{2} - \frac{a^2}{2}. \end{align*} -$$ + > $$ > \int_a^b x^2 dx = \frac{b^3}{3} - \frac{a^3}{3}. @@ -491,7 +496,7 @@ This is similar to the Archimedes case with $a=0$ and $b=1$ shown above. Cauchy showed this using a *geometric series* for the partition, not the arithmetic series $x_i = a + i (b-a)/n$. The series defined by $1 + \alpha = (b/a)^{1/n}$, then $x_i = a \cdot (1 + \alpha)^i$. Here the bases $x_{i+1} - x_i$ simplify to $x_i \cdot \alpha$ and $f(x_i) = (a\cdot(1+\alpha)^i)^k = a^k (1+\alpha)^{ik}$, or $f(x_i)(x_{i+1}-x_i) = a^{k+1}\alpha[(1+\alpha)^{k+1}]^i$, so, using $u=(1+\alpha)^{k+1}=(b/a)^{(k+1)/n}$, $f(x_i) \cdot(x_{i+1} - x_i) = a^{k+1}\alpha u^i$. This gives -$$ + \begin{align*} S &= a^{k+1}\alpha u^0 + a^{k+1}\alpha u^1 + \cdots + a^{k+1}\alpha u^{n-1} &= a^{k+1} \cdot \alpha \cdot (u^0 + u^1 + \cdot u^{n-1}) \\ @@ -499,7 +504,7 @@ S &= a^{k+1}\alpha u^0 + a^{k+1}\alpha u^1 + \cdots + a^{k+1}\alpha u^{n-1} &= (b^{k+1} - a^{k+1}) \cdot \frac{\alpha}{(1+\alpha)^{k+1} - 1} \\ &\rightarrow \frac{b^{k+1} - a^{k+1}}{k+1}. \end{align*} -$$ + > $$ > \int_a^b x^{-1} dx = \log(b) - \log(a), \quad (0 < a < b). @@ -761,14 +766,12 @@ So $\pi$ is about `2a`. We have the well-known triangle [inequality](http://en.wikipedia.org/wiki/Triangle_inequality) which says for an individual sum: $\lvert a + b \rvert \leq \lvert a \rvert +\lvert b \rvert$. Applying this recursively to a partition with $a < b$ gives: -$$ -\begin{align*} -\lvert f(c_1)(x_1-x_0) + f(c_2)(x_2-x_1) + \cdots + f(c_n) (x_n-x_1) \rvert -& \leq +\begin{multline*} +\lvert f(c_1)(x_1-x_0) + f(c_2)(x_2-x_1) + \cdots + f(c_n) (x_n-x_1) \rvert\\ +\leq \lvert f(c_1)(x_1-x_0) \rvert + \lvert f(c_2)(x_2-x_1)\rvert + \cdots +\lvert f(c_n) (x_n-x_1) \rvert \\ -&= \lvert f(c_1)\rvert (x_1-x_0) + \lvert f(c_2)\rvert (x_2-x_1)+ \cdots +\lvert f(c_n) \rvert(x_n-x_1). -\end{align*} -$$ += \lvert f(c_1)\rvert (x_1-x_0) + \lvert f(c_2)\rvert (x_2-x_1)+ \cdots +\lvert f(c_n) \rvert(x_n-x_1). +\end{multline*} This suggests that the following inequality holds for integrals: @@ -793,7 +796,7 @@ While such bounds are disappointing, often, when looking for specific values, th The Riemann sum above is actually extremely inefficient. To see how much, we can derive an estimate for the error in approximating the value using an arithmetic progression as the partition. Let's assume that our function $f(x)$ is increasing, so that the right sum gives an upper estimate and the left sum a lower estimate, so the error in the estimate will be between these two values: -$$ + \begin{align*} \text{error} &\leq \left[ @@ -803,7 +806,7 @@ f(x_1) \cdot (x_{1} - x_0) + f(x_2) \cdot (x_{2} - x_1) + \cdots + f(x_{n-1})( &= \frac{b-a}{n} \cdot (\left[f(x_1) + f(x_2) + \cdots f(x_n)\right] - \left[f(x_0) + \cdots f(x_{n-1})\right]) \\ &= \frac{b-a}{n} \cdot (f(b) - f(a)). \end{align*} -$$ + We see the error goes to $0$ at a rate of $1/n$ with the constant depending on $b-a$ and the function $f$. In general, a similar bound holds when $f$ is not monotonic. @@ -847,12 +850,12 @@ This formula will actually be exact for any 3rd degree polynomial. In fact an en The formulas for an approximation to the integral $\int_{-1}^1 f(x) dx$ discussed so far can be written as: -$$ + \begin{align*} S &= f(x_1) \Delta_1 + f(x_2) \Delta_2 + \cdots + f(x_n) \Delta_n\\ &= w_1 f(x_1) + w_2 f(x_2) + \cdots + w_n f(x_n). \end{align*} -$$ + The $w$s are "weights" and the $x$s are nodes. A [Gaussian](http://en.wikipedia.org/wiki/Gaussian_quadrature) *quadrature rule* is a set of weights and nodes for $i=1, \dots n$ for which the sum is *exact* for any $f$ which is a polynomial of degree $2n-1$ or less. Such choices then also approximate well the integrals of functions which are not polynomials of degree $2n-1$, provided $f$ can be well approximated by a polynomial over $[-1,1]$. (Which is the case for the "nice" functions we encounter.) Some examples are given in the questions. diff --git a/quarto/integrals/area_between_curves.qmd b/quarto/integrals/area_between_curves.qmd index 9cc716e..e78c17c 100644 --- a/quarto/integrals/area_between_curves.qmd +++ b/quarto/integrals/area_between_curves.qmd @@ -688,9 +688,13 @@ imgfile="figures/cycloid-companion-curve.png" caption = """ Figure from Martin showing the companion curve to the cycloid. As the generating circle rolls, from ``A`` to ``C``, the original point of contact, ``D``, traces out an arch of the cycloid. The companion curve is that found by congruent line segments. In the figure, when ``D`` was at point ``P`` the line segment ``PQ`` is congruent to ``EF`` (on the original position of the generating circle). """ -ImageFile(:integrals, imgfile, caption) +# ImageFile(:integrals, imgfile, caption) +nothing ``` +![Figure from Martin showing the companion curve to the cycloid. As the generating circle rolls, from ``A`` to ``C``, the original point of contact, ``D``, traces out an arch of the cycloid. The companion curve is that found by congruent line segments. In the figure, when ``D`` was at point ``P`` the line segment ``PQ`` is congruent to ``EF`` (on the original position of the generating circle).](./figures/cycloid-companion-curve.png) + + In particular, it can be read that Roberval proved that the area between the cycloid and its companion curve is half the are of the generating circle. Roberval didn't know integration, so finding the area between two curves required other tricks. One is called "Cavalieri's principle." From the figure above, which of the following would you guess this principle to be: @@ -738,5 +742,9 @@ imgfile="figures/companion-curve-bisects-rectangle.png" caption = """ Roberval, avoiding a trignometric integral, instead used symmetry to show that the area under the companion curve was half the area of the rectangle, which in this figure is ``2\\pi``. """ -ImageFile(:integrals, imgfile, caption) +# ImageFile(:integrals, imgfile, caption) +nothing ``` + +![Roberval, avoiding a trignometric integral, instead used symmetry to show that the area under the companion curve was half the area of the rectangle, which in this figure is ``2\\pi``. +](./figures/companion-curve-bisects-rectangle.png) diff --git a/quarto/integrals/center_of_mass.qmd b/quarto/integrals/center_of_mass.qmd index c2a6c17..7e47074 100644 --- a/quarto/integrals/center_of_mass.qmd +++ b/quarto/integrals/center_of_mass.qmd @@ -32,9 +32,18 @@ m_2$. This means if the two children weigh the same the balance will tip in favor of the child farther away, and if both are the same distance, the balance will tip in favor of the heavier. """ -ImageFile(:integrals, imgfile, caption) +# ImageFile(:integrals, imgfile, caption) +nothing ``` +![A silhouette of two children on a seesaw. The seesaw can be balanced +only if the distance from the central point for each child reflects +their relative weights, or masses, through the formula $d_1m_1 = d_2 +m_2$. This means if the two children weigh the same the balance will +tip in favor of the child farther away, and if both are the same +distance, the balance will tip in favor of the heavier. +](./figures/seesaw.png) + The game of seesaw is one where children earn an early appreciation for the effects of distance and relative weight. For children with equal weights, the seesaw will balance if they sit an equal distance from the center (on opposite sides, of course). However, with unequal weights that isn't the case. If one child weighs twice as much, the other must sit twice as far. @@ -148,13 +157,13 @@ The figure shows the approximating rectangles and circles representing their mas Generalizing from this figure shows the center of mass for such an approximation will be: -$$ + \begin{align*} &\frac{\rho f(c_1) (x_1 - x_0) \cdot x_1 + \rho f(c_2) (x_2 - x_1) \cdot x_1 + \cdots + \rho f(c_n) (x_n- x_{n-1}) \cdot x_{n-1}}{\rho f(c_1) (x_1 - x_0) + \rho f(c_2) (x_2 - x_1) + \cdots + \rho f(c_n) (x_n- x_{n-1})} \\ &=\\ &\quad\frac{f(c_1) (x_1 - x_0) \cdot x_1 + f(c_2) (x_2 - x_1) \cdot x_1 + \cdots + f(c_n) (x_n- x_{n-1}) \cdot x_{n-1}}{f(c_1) (x_1 - x_0) + f(c_2) (x_2 - x_1) + \cdots + f(c_n) (x_n- x_{n-1})}. \end{align*} -$$ + But the top part is an approximation to the integral $\int_a^b x f(x) dx$ and the bottom part the integral $\int_a^b f(x) dx$. The ratio of these defines the center of mass. diff --git a/quarto/integrals/ftc.qmd b/quarto/integrals/ftc.qmd index 507ed13..60a2b5d 100644 --- a/quarto/integrals/ftc.qmd +++ b/quarto/integrals/ftc.qmd @@ -99,7 +99,7 @@ where we define $g(i) = f(a + ih)h$. In the above, $n$ relates to $b$, but we co Again, we fix a large $n$ and let $h=(b-a)/n$. And suppose $x = a + Mh$ for some $M$. Then writing out the approximations to both the definite integral and the derivative we have -$$ + \begin{align*} F'(x) = & \frac{d}{dx} \int_a^x f(u) du \\ & \approx \frac{F(x) - F(x-h)}{h} \\ @@ -112,18 +112,18 @@ F'(x) = & \frac{d}{dx} \int_a^x f(u) du \\ \left(f(a + 1h) + f(a + 2h) + \cdots + f(a + (M-1)h) \right) \\ &= f(a + Mh). \end{align*} -$$ + If $g(i) = f(a + ih)$, then the above becomes -$$ + \begin{align*} F'(x) & \approx D(S(g))(M) \\ &= f(a + Mh)\\ &= f(x). \end{align*} -$$ + That is $F'(x) \approx f(x)$. @@ -365,26 +365,26 @@ This statement is nothing more than the derivative formula $[cf(x) + dg(x)]' = c * The antiderivative of the polynomial $p(x) = a_n x^n + \cdots a_1 x + a_0$ follows from the linearity of the integral and the general power rule: -$$ -\begin{align} + +\begin{align*} \int (a_n x^n + \cdots a_1 x + a_0) dx &= \int a_nx^n dx + \cdots \int a_1 x dx + \int a_0 dx \\ &= a_n \int x^n dx + \cdots + a_1 \int x dx + a_0 \int dx \\ &= a_n\frac{x^{n+1}}{n+1} + \cdots + a_1 \frac{x^2}{2} + a_0 \frac{x}{1}. -\end{align} -$$ +\end{align*} + * More generally, a [Laurent](https://en.wikipedia.org/wiki/Laurent_polynomial) polynomial allows for terms with negative powers. These too can be handled by the above. For example -$$ -\begin{align} + +\begin{align*} \int (\frac{2}{x} + 2 + 2x) dx &= \int \frac{2}{x} dx + \int 2 dx + \int 2x dx \\ &= 2\int \frac{1}{x} dx + 2 \int dx + 2 \int xdx\\ &= 2\log(x) + 2x + 2\frac{x^2}{2}. -\end{align} -$$ +\end{align*} + * Consider this integral: @@ -433,7 +433,6 @@ The value of $a$ does not matter, as long as the integral is defined. ```{julia} #| hold: true #| echo: false -#| cache: true ##{{{ftc_graph}}} function make_ftc_graph(n) @@ -645,14 +644,14 @@ Under assumptions that the $X$ are identical and independent, the largest value, This problem is constructed to take advantage of the FTC, and we have: -$$ + \begin{align*} \left[P(M \leq a)\right]' &= \left[F(a)^n\right]'\\ &= n \cdot F(a)^{n-1} \left[F(a)\right]'\\ &= n F(a)^{n-1}f(a) \end{align*} -$$ + ##### Example diff --git a/quarto/integrals/improper_integrals.qmd b/quarto/integrals/improper_integrals.qmd index dfad285..3168ad8 100644 --- a/quarto/integrals/improper_integrals.qmd +++ b/quarto/integrals/improper_integrals.qmd @@ -26,7 +26,6 @@ To define integrals with either functions having singularities or infinite doma ```{julia} #| hold: true #| echo: false -#| cache: true ### {{{sqrt_graph}}} function make_sqrt_x_graph(n) diff --git a/quarto/integrals/integration_by_parts.qmd b/quarto/integrals/integration_by_parts.qmd index 793fc48..03d68c8 100644 --- a/quarto/integrals/integration_by_parts.qmd +++ b/quarto/integrals/integration_by_parts.qmd @@ -94,7 +94,7 @@ An illustration can clarify. Consider the integral $\int_0^\pi x\sin(x) dx$. If we let $u=x$ and $dv=\sin(x) dx$, then $du = 1dx$ and $v=-\cos(x)$. The above then says: -$$ + \begin{align*} \int_0^\pi x\sin(x) dx &= \int_0^\pi u dv\\ &= uv\big|_0^\pi - \int_0^\pi v du\\ @@ -103,7 +103,7 @@ $$ &= \pi + \sin(x)\big|_0^\pi\\ &= \pi. \end{align*} -$$ + The technique means one part is differentiated and one part integrated. The art is to break the integrand up into a piece that gets easier through differentiation and a piece that doesn't get much harder through integration. @@ -128,7 +128,7 @@ $$ Putting together gives: -$$ + \begin{align*} \int_1^2 x \log(x) dx &= (\log(x) \cdot \frac{x^2}{2}) \big|_1^2 - \int_1^2 \frac{x^2}{2} \frac{1}{x} dx\\ @@ -136,7 +136,7 @@ $$ &= 2\log(2) - (1 - \frac{1}{4}) \\ &= 2\log(2) - \frac{3}{4}. \end{align*} -$$ + ##### Example @@ -144,14 +144,14 @@ $$ This related problem, $\int \log(x) dx$, uses the same idea, though perhaps harder to see at first glance, as setting `dv=dx` is almost too simple to try: -$$ + \begin{align*} u &= \log(x) & dv &= dx\\ du &= \frac{1}{x}dx & v &= x \end{align*} -$$ -$$ + + \begin{align*} \int \log(x) dx &= \int u dv\\ @@ -160,7 +160,7 @@ $$ &= x \log(x) - \int dx\\ &= x \log(x) - x \end{align*} -$$ + Were this a definite integral problem, we would have written: @@ -243,14 +243,14 @@ $$ Positive integer powers of trigonometric functions can be addressed by this technique. Consider $\int \cos(x)^n dx$. We let $u=\cos(x)^{n-1}$ and $dv=\cos(x) dx$. Then $du = (n-1)\cos(x)^{n-2}(-\sin(x))dx$ and $v=\sin(x)$. So, -$$ + \begin{align*} \int \cos(x)^n dx &= \cos(x)^{n-1} \cdot (\sin(x)) - \int (\sin(x)) ((n-1)\sin(x) \cos(x)^{n-2}) dx \\ &= \sin(x) \cos(x)^{n-1} + (n-1)\int \sin^2(x) \cos(x)^{n-1} dx\\ &= \sin(x) \cos(x)^{n-1} + (n-1)\int (1 - \cos(x)^2) \cos(x)^{n-2} dx\\ &= \sin(x) \cos(x)^{n-1} + (n-1)\int \cos(x)^{n-2}dx - (n-1)\int \cos(x)^n dx. \end{align*} -$$ + We can then solve for the unknown ($\int \cos(x)^{n}dx$) to get this *reduction formula*: @@ -278,13 +278,13 @@ The visual interpretation of integration by parts breaks area into two pieces, t Let $uv = x f^{-1}(x)$. Then we have $[uv]' = u'v + uv' = f^{-1}(x) + x [f^{-1}(x)]'$. So, up to a constant $uv = \int [uv]'dx = \int f^{-1}(x) + \int x [f^{-1}(x)]'$. Re-expressing gives: -$$ + \begin{align*} \int f^{-1}(x) dx &= xf^{-1}(x) - \int x [f^{-1}(x)]' dx\\ &= xf^{-1}(x) - \int f(u) du.\\ \end{align*} -$$ + The last line follows from the $u$-substitution: $u=f^{-1}(x)$ for then $du = [f^{-1}(x)]' dx$ and $x=f(u)$. @@ -292,13 +292,13 @@ The last line follows from the $u$-substitution: $u=f^{-1}(x)$ for then $du = [f We use this to find an antiderivative for $\sin^{-1}(x)$: -$$ + \begin{align*} \int \sin^{-1}(x) dx &= x \sin^{-1}(x) - \int \sin(u) du \\ &= x \sin^{-1}(x) + \cos(u) \\ &= x \sin^{-1}(x) + \cos(\sin^{-1}(x)). \end{align*} -$$ + Using right triangles to simplify, the last value $\cos(\sin^{-1}(x))$ can otherwise be written as $\sqrt{1 - x^2}$. @@ -321,12 +321,12 @@ This [proof](http://www.math.ucsd.edu/~ebender/20B/77_Trap.pdf) for the error es First, for convenience, we consider the interval $x_i$ to $x_i+h$. The actual answer over this is just $\int_{x_i}^{x_i+h}f(x) dx$. By a $u$-substitution with $u=x-x_i$ this becomes $\int_0^h f(t + x_i) dt$. For analyzing this we integrate once by parts using $u=f(t+x_i)$ and $dv=dt$. But instead of letting $v=t$, we choose to add - as is our prerogative - a constant of integration $A$, so $v=t+A$: -$$ + \begin{align*} \int_0^h f(t + x_i) dt &= uv \big|_0^h - \int_0^h v du\\ &= f(t+x_i)(t+A)\big|_0^h - \int_0^h (t + A) f'(t + x_i) dt. \end{align*} -$$ + We choose $A$ to be $-h/2$, any constant is possible, for then the term $f(t+x_i)(t+A)\big|_0^h$ becomes $(1/2)(f(x_i+h) + f(x_i)) \cdot h$, or the trapezoid approximation. This means, the error over this interval - actual minus estimate - satisfies: @@ -338,12 +338,12 @@ $$ For this, we *again* integrate by parts with -$$ + \begin{align*} u &= f'(t + x_i) & dv &= (t + A)dt\\ du &= f''(t + x_i) & v &= \frac{(t + A)^2}{2} + B \end{align*} -$$ + Again we added a constant of integration, $B$, to $v$. The error becomes: @@ -417,14 +417,14 @@ We added a rectangle for a Riemann sum for $t_i = \pi/3$ and $t_{i+1} = \pi/3 + Taking this Riemann sum approach, we can approximate the area under the curve parameterized by $(u(t), v(t))$ over the time range $[t_i, t_{i+1}]$ as a rectangle with height $y(t_i)$ and base $x(t_{i}) - x(t_{i+1})$. Then we get, as expected: -$$ + \begin{align*} A &\approx \sum_i y(t_i) \cdot (x(t_{i}) - x(t_{i+1}))\\ &= - \sum_i y(t_i) \cdot (x(t_{i+1}) - x(t_{i}))\\ &= - \sum_i y(t_i) \cdot \frac{x(t_{i+1}) - x(t_i)}{t_{i+1}-t_i} \cdot (t_{i+1}-t_i)\\ &\approx -\int_a^b y(t) x'(t) dt. \end{align*} -$$ + So with a counterclockwise rotation, the actual answer for the area includes a minus sign. If the area is traced out in a *clockwise* manner, there is no minus sign. diff --git a/quarto/integrals/mean_value_theorem.qmd b/quarto/integrals/mean_value_theorem.qmd index f329b24..0e376aa 100644 --- a/quarto/integrals/mean_value_theorem.qmd +++ b/quarto/integrals/mean_value_theorem.qmd @@ -88,14 +88,14 @@ Though not continuous, $f(x)$ is integrable as it contains only jumps. The integ What is the average value of the function $e^{-x}$ between $0$ and $\log(2)$? -$$ + \begin{align*} \text{average} = \frac{1}{\log(2) - 0} \int_0^{\log(2)} e^{-x} dx\\ &= \frac{1}{\log(2)} (-e^{-x}) \big|_0^{\log(2)}\\ &= -\frac{1}{\log(2)} (\frac{1}{2} - 1)\\ &= \frac{1}{2\log(2)}. \end{align*} -$$ + Visualizing, we have diff --git a/quarto/integrals/partial_fractions.qmd b/quarto/integrals/partial_fractions.qmd index 17e0293..e91a709 100644 --- a/quarto/integrals/partial_fractions.qmd +++ b/quarto/integrals/partial_fractions.qmd @@ -109,7 +109,7 @@ What remains is to establish that we can take $A(x) = a(x)\cdot P(x)$ with a deg In Proposition 3.8 of [Bradley](http://www.m-hikari.com/imf/imf-2012/29-32-2012/cookIMF29-32-2012.pdf) and Cook we can see how. Recall the division algorithm, for example, says there are $q_k$ and $r_k$ with $A=q\cdot q_k + r_k$ where the degree of $r_k$ is less than that of $q$, which is linear or quadratic. This is repeatedly applied below: -$$ + \begin{align*} \frac{A}{q^k} &= \frac{q\cdot q_k + r_k}{q^k}\\ &= \frac{r_k}{q^k} + \frac{q_k}{q^{k-1}}\\ @@ -119,7 +119,7 @@ $$ &= \cdots\\ &= \frac{r_k}{q^k} + \frac{r_{k-1}}{q^{k-1}} + \cdots + q_1. \end{align*} -$$ + So the term $A(x)/q(x)^k$ can be expressed in terms of a sum where the numerators or each term have degree less than $q(x)$, as expected by the statement of the theorem. @@ -208,14 +208,14 @@ integrate(B/((a*x)^2 - 1)^4, x) In [Bronstein](http://www-sop.inria.fr/cafe/Manuel.Bronstein/publications/issac98.pdf) this characterization can be found - "This method, which dates back to Newton, Leibniz and Bernoulli, should not be used in practice, yet it remains the method found in most calculus texts and is often taught. Its major drawback is the factorization of the denominator of the integrand over the real or complex numbers." We can also find the following formulas which formalize the above exploratory calculations ($j>1$ and $b^2 - 4c < 0$ below): -$$ + \begin{align*} \int \frac{A}{(x-a)^j} &= \frac{A}{1-j}\frac{1}{(x-a)^{1-j}}\\ \int \frac{A}{x-a} &= A\log(x-a)\\ \int \frac{Bx+C}{x^2 + bx + c} &= \frac{B}{2} \log(x^2 + bx + c) + \frac{2C-bB}{\sqrt{4c-b^2}}\cdot \arctan\left(\frac{2x+b}{\sqrt{4c-b^2}}\right)\\ \int \frac{Bx+C}{(x^2 + bx + c)^j} &= \frac{B' x + C'}{(x^2 + bx + c)^{j-1}} + \int \frac{C''}{(x^2 + bx + c)^{j-1}} \end{align*} -$$ + The first returns a rational function; the second yields a logarithm term; the third yields a logarithm and an arctangent term; while the last, which has explicit constants available, provides a reduction that can be recursively applied; @@ -482,12 +482,12 @@ How to see that these give rise to real answers on integration is the point of t Breaking the terms up over $a$ and $b$ we have: -$$ + \begin{align*} I &= \frac{a}{x - (\alpha + i \beta)} + \frac{a}{x - (\alpha - i \beta)} \\ II &= i\frac{b}{x - (\alpha + i \beta)} - i\frac{b}{x - (\alpha - i \beta)} \end{align*} -$$ + Integrating $I$ leads to two logarithmic terms, which are combined to give: diff --git a/quarto/integrals/substitution.qmd b/quarto/integrals/substitution.qmd index 1b26a1e..6c79150 100644 --- a/quarto/integrals/substitution.qmd +++ b/quarto/integrals/substitution.qmd @@ -40,14 +40,14 @@ $$ So, -$$ + \begin{align*} \int_a^b g(u(t)) \cdot u'(t) dt &= \int_a^b (G \circ u)'(t) dt\\ &= (G\circ u)(b) - (G\circ u)(a) \quad\text{(the FTC, part II)}\\ &= G(u(b)) - G(u(a)) \\ &= \int_{u(a)}^{u(b)} g(x) dx. \quad\text{(the FTC part II)} \end{align*} -$$ + That is, this substitution formula applies: @@ -173,21 +173,22 @@ $$ So the answer is: the area under the transformed function over $a$ to $b$ is the area of the function over the transformed region. -For example, consider the "hat" function $f(x) = 1 - \lvert x \rvert $ when $-1 \leq x \leq 1$ and $0$ otherwise. The area under $f$ is just $1$ - the graph forms a triangle with base of length $2$ and height $1$. If we take any values of $c$ and $h$, what do we find for the area under the curve of the transformed function? +For example, consider the "hat" function $f(x) = 1 - \lvert x \rvert$ +when $-1 \leq x \leq 1$ and $0$ otherwise. The area under $f$ is just $1$ - the graph forms a triangle with base of length $2$ and height $1$. If we take any values of $c$ and $h$, what do we find for the area under the curve of the transformed function? Let $u(x) = (x-c)/h$ and $g(x) = h f(u(x))$. Then, as $du = 1/h dx$ -$$ -\begin{align} + +\begin{align*} \int_{c-h}^{c+h} g(x) dx &= \int_{c-h}^{c+h} h f(u(x)) dx\\ &= \int_{u(c-h)}^{u(c+h)} f(u) du\\ &= \int_{-1}^1 f(u) du\\ &= 1. -\end{align} -$$ +\end{align*} + So the area of this transformed function is still $1$. The shifting by $c$ we know doesn't effect the area, the scaling by $h$ inside of $f$ does, but is balanced out by the multiplication by $h$ outside of $f$. @@ -246,14 +247,14 @@ $$ But $u^3/3 - 4u/3 = (1/3) \cdot u(u-1)(u+2)$, so between $-2$ and $0$ it is positive and between $0$ and $1$ negative, so this integral is: -$$ + \begin{align*} \int_{-2}^0 (u^3/3 - 4u/3 ) du + \int_{0}^1 -(u^3/3 - 4u/3) du &= (\frac{u^4}{12} - \frac{4}{3}\frac{u^2}{2}) \big|_{-2}^0 - (\frac{u^4}{12} - \frac{4}{3}\frac{u^2}{2}) \big|_{0}^1\\ &= \frac{4}{3} - -\frac{7}{12}\\ &= \frac{23}{12}. \end{align*} -$$ + ##### Example @@ -268,14 +269,14 @@ $$ Integrals involving this function are typically transformed by substitution. For example: -$$ + \begin{align*} \int_a^b f(x; \mu, \sigma) dx &= \int_a^b \frac{1}{\sqrt{2\pi}}\frac{1}{\sigma} \exp(-\frac{1}{2}\left(\frac{x-\mu}{\sigma}\right)^2) dx \\ &= \int_{u(a)}^{u(b)} \frac{1}{\sqrt{2\pi}} \exp(-\frac{1}{2}u^2) du \\ &= \int_{u(a)}^{u(b)} f(u; 0, 1) du, \end{align*} -$$ + where $u = (x-\mu)/\sigma$, so $du = (1/\sigma) dx$. @@ -293,13 +294,13 @@ $$ A further change of variables by $t = u/\sqrt{2}$ (with $\sqrt{2}dt = du$) gives: -$$ + \begin{align*} \int_a^b f(x; \mu, \sigma) dx &= \int_{t(u(a))}^{t(u(b))} \frac{\sqrt{2}}{\sqrt{2\pi}} \exp(-t^2) dt\\ &= \frac{1}{2} \int_{t(u(a))}^{t(u(b))} \frac{2}{\sqrt{\pi}} \exp(-t^2) dt \end{align*} -$$ + Up to a factor of $1/2$ this is `erf`. @@ -307,14 +308,14 @@ Up to a factor of $1/2$ this is `erf`. So we would have, for example, with $\mu=1$,$\sigma=2$ and $a=1$ and $b=3$ that: -$$ + \begin{align*} t(u(a)) &= (1 - 1)/2/\sqrt{2} = 0\\ t(u(b)) &= (3 - 1)/2/\sqrt{2} = \frac{1}{\sqrt{2}}\\ \int_1^3 f(x; 1, 2) &= \frac{1}{2} \int_0^{1/\sqrt{2}} \frac{2}{\sqrt{\pi}} \exp(-t^2) dt. \end{align*} -$$ + Or @@ -486,7 +487,7 @@ integrate(1 / (a^2 + (b*x)^2), x) The expression $1-x^2$ can be attacked by the substitution $\sin(u) =x$ as then $1-x^2 = 1-\cos(u)^2 = \sin(u)^2$. Here we see this substitution being used successfully: -$$ + \begin{align*} \int \frac{1}{\sqrt{9 - x^2}} dx &= \int \frac{1}{\sqrt{9 - (3\sin(u))^2}} \cdot 3\cos(u) du\\ &=\int \frac{1}{3\sqrt{1 - \sin(u)^2}}\cdot3\cos(u) du \\ @@ -494,7 +495,7 @@ $$ &= u \\ &= \sin^{-1}(x/3). \end{align*} -$$ + Further substitution allows the following integral to be solved for an antiderivative: @@ -511,24 +512,24 @@ integrate(1 / sqrt(a^2 - b^2*x^2), x) The expression $x^2 - 1$ is a bit different, this lends itself to $\sec(u) = x$ for a substitution, for $\sec(u)^2 - 1 = \tan(u)^2$. For example, we try $\sec(u) = x$ to integrate: -$$ + \begin{align*} \int \frac{1}{\sqrt{x^2 - 1}} dx &= \int \frac{1}{\sqrt{\sec(u)^2 - 1}} \cdot \sec(u)\tan(u) du\\ &=\int \frac{1}{\tan(u)}\sec(u)\tan(u) du\\ &= \int \sec(u) du. \end{align*} -$$ + This doesn't seem that helpful, but the antiderivative to $\sec(u)$ is $\log\lvert (\sec(u) + \tan(u))\rvert$, so we can proceed to get: -$$ + \begin{align*} \int \frac{1}{\sqrt{x^2 - 1}} dx &= \int \sec(u) du\\ &= \log\lvert (\sec(u) + \tan(u))\rvert\\ &= \log\lvert x + \sqrt{x^2-1} \rvert. \end{align*} -$$ + SymPy gives a different representation using the arccosine: @@ -564,14 +565,14 @@ $$ The identify $\cos(u)^2 = (1 + \cos(2u))/2$ makes this tractable: -$$ + \begin{align*} 4ab \int \cos(u)^2 du &= 4ab\int_0^{\pi/2}(\frac{1}{2} + \frac{\cos(2u)}{2}) du\\ &= 4ab(\frac{1}{2}u + \frac{\sin(2u)}{4})\big|_0^{\pi/2}\\ &= 4ab (\pi/4 + 0) = \pi ab. \end{align*} -$$ + Keeping in mind that that a circle with radius $a$ is an ellipse with $b=a$, we see that this gives the correct answer for a circle. diff --git a/quarto/integrals/surface_area.qmd b/quarto/integrals/surface_area.qmd index 550255e..885e84b 100644 --- a/quarto/integrals/surface_area.qmd +++ b/quarto/integrals/surface_area.qmd @@ -34,9 +34,19 @@ revolution, there is an easier way. (Photo credit to [firepanjewellery](http://firepanjewellery.com/).) """ -ImageFile(:integrals, imgfile, caption) +# ImageFile(:integrals, imgfile, caption) +nothing ``` +![The exterior of the Jimi Hendrix Museum in Seattle has the signature +style of its architect Frank Gehry. The surface is comprised of +patches. A general method to find the amount of material to cover the +surface - the surface area - might be to add up the area of *each* of the +patches. However, in this section we will see for surfaces of +revolution, there is an easier way. (Photo credit to +[firepanjewellery](http://firepanjewellery.com/).) +](./figures/gehry-hendrix.jpg) + > The surface area generated by rotating the graph of $f(x)$ between $a$ and $b$ about the $x$-axis is given by the integral > > $$ @@ -110,7 +120,6 @@ If we assume integrability of the integrand, then as our partition size goes to ```{julia} #| hold: true #| echo: false -#| cache: true ## {{{approximate_surface_area}}} xs,ys = range(-1, stop=1, length=50), range(-1, stop=1, length=50) @@ -154,7 +163,7 @@ Lets see that the surface area of an open cone follows from this formula, even t A cone be be envisioned as rotating the function $f(x) = x\tan(\theta)$ between $0$ and $h$ around the $x$ axis. This integral yields the surface area: -$$ + \begin{align*} \int_0^h 2\pi f(x) \sqrt{1 + f'(x)^2}dx &= \int_0^h 2\pi x \tan(\theta) \sqrt{1 + \tan(\theta)^2}dx \\ @@ -162,7 +171,7 @@ $$ &= \pi \tan(\theta) \sec(\theta) h^2 \\ &= \pi r^2 / \sin(\theta). \end{align*} -$$ + (There are many ways to express this, we used $r$ and $\theta$ to match the work above. If the cone is parameterized by a height $h$ and radius $r$, then the surface area of the sides is $\pi r\sqrt{h^2 + r^2}$. If the base is included, there is an additional $\pi r^2$ term.) @@ -350,14 +359,14 @@ plot(g, f, 0, 1pi) The integrand simplifies to $8\sqrt{2}\pi \sin(t) (1 + \cos(t))^{3/2}$. This lends itself to $u$-substitution with $u=\cos(t)$. -$$ + \begin{align*} \int_0^\pi 8\sqrt{2}\pi \sin(t) (1 + \cos(t))^{3/2} &= 8\sqrt{2}\pi \int_1^{-1} (1 + u)^{3/2} (-1) du\\ &= 8\sqrt{2}\pi (2/5) (1+u)^{5/2} \big|_{-1}^1\\ &= 8\sqrt{2}\pi (2/5) 2^{5/2} = \frac{2^7 \pi}{5}. \end{align*} -$$ + ## The first Theorem of Pappus @@ -406,12 +415,12 @@ surface(ws..., legend=false, zlims=(-12,12)) The surface area of sphere will be SA$=2\pi \rho (\pi r) = 2 \pi^2 r \cdot \rho$. What is $\rho$? The centroid of an arc formula can be derived in a manner similar to that of the centroid of a region. The formulas are: -$$ -\begin{align} + +\begin{align*} \text{cm}_x &= \frac{1}{L} \int_a^b g(t) \sqrt{g'(t)^2 + f'(t)^2} dt\\ \text{cm}_y &= \frac{1}{L} \int_a^b f(t) \sqrt{g'(t)^2 + f'(t)^2} dt. -\end{align} -$$ +\end{align*} + Here, $L$ is the arc length of the curve. diff --git a/quarto/integrals/volumes_slice.qmd b/quarto/integrals/volumes_slice.qmd index 12d629b..4c3b6ca 100644 --- a/quarto/integrals/volumes_slice.qmd +++ b/quarto/integrals/volumes_slice.qmd @@ -34,9 +34,12 @@ caption = """ Hey Michelin Man, how much does that costume weigh? """ -ImageFile(:integrals, imgfile, caption) +# ImageFile(:integrals, imgfile, caption) +nothing ``` +![Hey Michelin Man, how much does that costume weigh?](./figures/michelin-man.jpg) + An ad for a summer job says work as the Michelin Man! Sounds promising, but how much will that costume weigh? A very hot summer may make walking around in a heavy costume quite uncomfortable. @@ -96,9 +99,15 @@ curve about the $x$ axis. The radius of revolution varies as a function of $x$ between about $0$ and $6.2$cm. """ -ImageFile(:integrals, imgfile, caption) +#ImageFile(:integrals, imgfile, caption) +nothing ``` +![A wine glass oriented so that it is seen as generated by revolving a +curve about the $x$ axis. The radius of revolution varies as a function of $x$ +between about $0$ and $6.2$cm. +](./figures/integration-glass.jpg) + If $r(x)$ is the radius as a function of $x$, then the cross sectional area is $\pi r(x)^2$ so the volume is given by: @@ -166,9 +175,12 @@ Before Solo "squared" the cup, the Solo cup had markings that - [some thought](h #| echo: false imgfile = "figures/red-solo-cup.jpg" caption = "Markings on the red Solo cup indicated various volumes" -ImageFile(:integrals, imgfile, caption) +# ImageFile(:integrals, imgfile, caption) +nothing ``` +![Markings on the red Solo cup indicated various volumes.](./figures/red-solo-cup.jpg) + What is the height for $5$ ounces (for a glass of wine)? $12$ ounces (for a beer unit)? @@ -515,9 +527,12 @@ Consider this big Solo cup: #| echo: false imgfile ="figures/big-solo-cup.jpg" caption = " Big solo cup. " -ImageFile(:integrals, imgfile, caption) +# ImageFile(:integrals, imgfile, caption) +nothing ``` +![Big solo cup.](./figures/big-solo-cup.jpg) + It has approximate dimensions: smaller radius 5 feet, upper radius 8 feet and height 15 feet. How many gallons is it? At $8$ pounds a gallon this would be pretty heavy! @@ -552,9 +567,12 @@ This figure shows some of the wide variety of beer-serving glasses: #| echo: false imgfile ="figures/beer_glasses.jpg" caption = "A variety of different serving glasses for beer." -ImageFile(:integrals, imgfile, caption) +#ImageFile(:integrals, imgfile, caption) +nothing ``` +![A variety of different serving glasses for beer.](./figures/beer_glasses.jpg) + We work with metric units, as there is a natural relation between volume in cm$^3$ and liquid measure ($1$ liter = $1000$ cm$^3$, so a $16$-oz pint glass is roughly $450$ cm$^3$.) diff --git a/quarto/limits/intermediate_value_theorem.qmd b/quarto/limits/intermediate_value_theorem.qmd index 19270e8..3b5f1c3 100644 --- a/quarto/limits/intermediate_value_theorem.qmd +++ b/quarto/limits/intermediate_value_theorem.qmd @@ -672,9 +672,13 @@ caption = """ Elevation profile of the Hardrock 100 ultramarathon. Treating the elevation profile as a function, the absolute maximum is just about 14,000 feet and the absolute minimum about 7600 feet. These are of interest to the runner for different reasons. Also of interest would be each local maxima and local minima - the peaks and valleys of the graph - and the total elevation climbed - the latter so important/unforgettable its value makes it into the chart's title. """ -ImageFile(:limits, imgfile, caption) +# ImageFile(:limits, imgfile, caption) +nothing ``` +[![Elevation profile of the Hardrock 100 ultramarathon. Treating the elevation profile as a function, the absolute maximum is just about 14,000 feet and the absolute minimum about 7600 feet. These are of interest to the runner for different reasons. Also of interest would be each local maxima and local minima - the peaks and valleys of the graph - and the total elevation climbed - the latter so important/unforgettable its value makes it into the chart's title. +](figures/hardrock-100.png)](https://hardrock100.com) + The extreme value theorem discusses an assumption that ensures absolute maximum and absolute minimum values exist. @@ -885,9 +889,13 @@ figure= "figures/cannonball.jpg" caption = """ Trajectories of potential cannonball fires with air-resistance included. (http://ej.iop.org/images/0143-0807/33/1/149/Full/ejp405251f1_online.jpg) """ -ImageFile(:limits, figure, caption) +# ImageFile(:limits, figure, caption) +nothing ``` +![Trajectories of potential cannonball fires with air-resistance included. (http://ej.iop.org/images/0143-0807/33/1/149/Full/ejp405251f1_online.jpg) +](./figures/cannonball.jpg) + In 1638, according to Amir D. [Aczel](http://books.google.com/books?id=kvGt2OlUnQ4C&pg=PA28&lpg=PA28&dq=mersenne+cannon+ball+tests&source=bl&ots=wEUd7e0jFk&sig=LpFuPoUvODzJdaoug4CJsIGZZHw&hl=en&sa=X&ei=KUGcU6OAKJCfyASnioCoBA&ved=0CCEQ6AEwAA#v=onepage&q=mersenne%20cannon%20ball%20tests&f=false), an experiment was performed in the French Countryside. A monk, Marin Mersenne, launched a cannonball straight up into the air in an attempt to help Descartes prove facts about the rotation of the earth. Though the experiment was not successful, Mersenne later observed that the time for the cannonball to go up was greater than the time to come down. ["Vertical Projection in a Resisting Medium: Reflections on Observations of Mersenne".](http://www.maa.org/publications/periodicals/american-mathematical-monthly/american-mathematical-monthly-contents-junejuly-2014) diff --git a/quarto/limits/limits.qmd b/quarto/limits/limits.qmd index b7ed2e4..a62305e 100644 --- a/quarto/limits/limits.qmd +++ b/quarto/limits/limits.qmd @@ -262,14 +262,14 @@ xs = [1/10^i for i in 1:5] This progression can be seen to be increasing. Cauchy, in his treatise, can see this through: -$$ + \begin{align*} (1 + \frac{1}{m})^n &= 1 + \frac{1}{1} + \frac{1}{1\cdot 2}(1 = \frac{1}{m}) + \\ & \frac{1}{1\cdot 2\cdot 3}(1 - \frac{1}{m})(1 - \frac{2}{m}) + \cdots \\ &+ \frac{1}{1 \cdot 2 \cdot \cdots \cdot m}(1 - \frac{1}{m}) \cdot \cdots \cdot (1 - \frac{m-1}{m}). \end{align*} -$$ + These values are clearly increasing as $m$ increases. Cauchy showed the value was bounded between $2$ and $3$ and had the approximate value above. Then he showed the restriction to integers was not necessary. Later we will use this definition for the exponential function: @@ -836,7 +836,7 @@ This accurately shows the limit does not exist mathematically, but `limit(ceil(x The `limit` function doesn't compute limits from the definition, rather it applies some known facts about functions within a set of rules. Some of these rules are the following. Suppose the individual limits of $f$ and $g$ always exist (and are finite) below. -$$ + \begin{align*} \lim_{x \rightarrow c} (a \cdot f(x) + b \cdot g(x)) &= a \cdot \lim_{x \rightarrow c} f(x) + b \cdot \lim_{x \rightarrow c} g(x) @@ -850,7 +850,7 @@ $$ \frac{\lim_{x \rightarrow c} f(x)}{\lim_{x \rightarrow c} g(x)} &(\text{provided }\lim_{x \rightarrow c} g(x) \neq 0)\\ \end{align*} -$$ + These are verbally described as follows, when the individual limits exist and are finite then: diff --git a/quarto/precalc/calculator.qmd b/quarto/precalc/calculator.qmd index 4e06db2..5553e4c 100644 --- a/quarto/precalc/calculator.qmd +++ b/quarto/precalc/calculator.qmd @@ -20,9 +20,13 @@ The following image is the calculator that Google presents upon searching for "c # imgfile = "figures/calculator.png" caption = "Screenshot of a calculator provided by the Google search engine." -ImageFile(:precalc, imgfile, caption) +# ImageFile(:precalc, imgfile, caption) +nothing ``` +![Screenshot of a calculator provided by the Google search engine.](./figures/calculator.png) + + This calculator should have a familiar appearance with a keypad of numbers, a set of buttons for arithmetic operations, a set of buttons for some common mathematical functions, a degree/radian switch, and buttons for interacting with the calculator: `Ans`, `AC` (also `CE`), and `=`. @@ -43,7 +47,7 @@ txt = """ """ -HTMLoutput(txt) +a = HTMLoutput(txt) ``` ## Operations @@ -204,6 +208,16 @@ Below we use the underscore as a separator, which is parsed as commas are to sep Or not quite a million per pound. +Using a pound is $2.2$ killograms or $2,200$ grams, we can this many ants per gram: + + +```{julia} +20_000_000_000_000_000 / (1_000_000 * 12 * 2000) / 2200 +``` + +Such combinations will be easier to check for correctness when variable names are assigned the respective values. + + ## Order of operations @@ -816,7 +830,7 @@ radioq(choices, answ) ###### Question -In the U.S. version of the Office, the opening credits include a calculator calculation. The key sequence shown is `9653 +` which produces `11532`. What value was added to? +In the U.S. version of the Office, the opening credits include a calculator calculation. The key sequence shown is `9653 +` which produces `11532`. What value was added to `9653`? ```{julia} @@ -1040,7 +1054,7 @@ radioq(choices, answ) A twitter post from popular mechanics generated some attention. -![](https://raw.githubusercontent.com/jverzani/CalculusWithJuliaNotes.jl/master/CwJ/precalc/figures/order_operations_pop_mech.png) +![Order of operations](./figures/order_operations_pop_mech.png) What is the answer? diff --git a/quarto/precalc/exp_log_functions.qmd b/quarto/precalc/exp_log_functions.qmd index 5d88d21..6b00c3a 100644 --- a/quarto/precalc/exp_log_functions.qmd +++ b/quarto/precalc/exp_log_functions.qmd @@ -27,7 +27,7 @@ The family of exponential functions is defined by $f(x) = a^x, -\infty< x < \inf For a given $a$, defining $a^n$ for positive integers is straightforward, as it means multiplying $n$ copies of $a.$ From this, for *integer powers*, the key properties of exponents: $a^x \cdot a^y = a^{x+y}$, and $(a^x)^y = a^{x \cdot y}$ are immediate consequences. For example with $x=3$ and $y=2$: -$$ + \begin{align*} a^3 \cdot a^2 &= (a\cdot a \cdot a) \cdot (a \cdot a) \\ &= (a \cdot a \cdot a \cdot a \cdot a) \\ @@ -36,7 +36,7 @@ a^3 \cdot a^2 &= (a\cdot a \cdot a) \cdot (a \cdot a) \\ &= (a\cdot a \cdot a \cdot a\cdot a \cdot a) \\ &= a^6 = a^{3\cdot 2}. \end{align*} -$$ + For $a \neq 0$, $a^0$ is defined to be $1$. @@ -388,13 +388,13 @@ In short, we have these three properties of logarithmic functions: If $a, b$ are positive bases; $u,v$ are positive numbers; and $x$ is any real number then: -$$ + \begin{align*} \log_a(uv) &= \log_a(u) + \log_a(v), \\ \log_a(u^x) &= x \log_a(u), \text{ and} \\ \log_a(u) &= \log_b(u)/\log_b(a). \end{align*} -$$ + ##### Example diff --git a/quarto/precalc/inversefunctions.qmd b/quarto/precalc/inversefunctions.qmd index 076f0a6..b94bf48 100644 --- a/quarto/precalc/inversefunctions.qmd +++ b/quarto/precalc/inversefunctions.qmd @@ -69,13 +69,13 @@ However, typically we have a rule describing our function. What is the process t When we solve algebraically for $x$ in $y=9/5 \cdot x + 32$ we do the same thing as we do verbally: we subtract $32$ from each side, and then divide by $9/5$ to isolate $x$: -$$ -\begin{align} + +\begin{align*} y &= 9/5 \cdot x + 32\\ y - 32 &= 9/5 \cdot x\\ (y-32) / (9/5) &= x. -\end{align} -$$ +\end{align*} + From this, we have the function $g(y) = (y-32) / (9/5)$ is the inverse function of $f(x) = 9/5\cdot x + 32$. @@ -101,7 +101,7 @@ Suppose a transformation of $x$ is given by $y = f(x) = (ax + b)/(cx+d)$. This f From the expression $y=f(x)$ we *algebraically* solve for $x$: -$$ + \begin{align*} y &= \frac{ax +b}{cx+d}\\ y \cdot (cx + d) &= ax + b\\ @@ -109,7 +109,7 @@ ycx - ax &= b - yd\\ (cy-a) \cdot x &= b - dy\\ x &= -\frac{dy - b}{cy-a}. \end{align*} -$$ + We see that to solve for $x$ we need to divide by $cy-a$, so this expression can not be zero. So, using $x$ as the dummy variable, we have @@ -127,14 +127,14 @@ The function $f(x) = (x-1)^5 + 2$ is strictly increasing and so will have an inv Again, we solve algebraically starting with $y=(x-1)^5 + 2$ and solving for $x$: -$$ + \begin{align*} y &= (x-1)^5 + 2\\ y - 2 &= (x-1)^5\\ (y-2)^{1/5} &= x - 1\\ (y-2)^{1/5} + 1 &= x. \end{align*} -$$ + We see that $f^{-1}(x) = 1 + (x - 2)^{1/5}$. The fact that the power $5$ is an odd power is important, as this ensures a unique (real) solution to the fifth root of a value, in the above $y-2$. @@ -170,14 +170,14 @@ The [inverse function theorem](https://en.wikipedia.org/wiki/Inverse_function_th Consider the function $f(x) = (1+x^2)^{-1}$. This bell-shaped function is even (symmetric about $0$), so can not possibly be one-to-one. However, if the domain is restricted to $[0,\infty)$ it is. The restricted function is strictly decreasing and its inverse is found, as follows: -$$ + \begin{align*} y &= \frac{1}{1 + x^2}\\ 1+x^2 &= \frac{1}{y}\\ x^2 &= \frac{1}{y} - 1\\ x &= \sqrt{(1-y)/y}, \quad 0 \leq y \leq 1. \end{align*} -$$ + Then $f^{-1}(x) = \sqrt{(1-x)/x}$ where $0 < x \leq 1$. The somewhat complicated restriction for the the domain coincides with the range of $f(x)$. We shall see next that this is no coincidence. diff --git a/quarto/precalc/polynomial.qmd b/quarto/precalc/polynomial.qmd index b31d0c4..dee8223 100644 --- a/quarto/precalc/polynomial.qmd +++ b/quarto/precalc/polynomial.qmd @@ -122,7 +122,11 @@ Thinking in terms of transformations, this looks like the function $f(x) = x$ (w The indeterminate value `x` (or some other symbol) in a polynomial, is like a variable in a function and unlike a variable in `Julia`. Variables in `Julia` are identifiers, just a means to look up a specific, already determined, value. Rather, the symbol `x` is not yet determined, it is essentially a place holder for a future value. Although we have seen that `Julia` makes it very easy to work with mathematical functions, it is not the case that base `Julia` makes working with expressions of algebraic symbols easy. This makes sense, `Julia` is primarily designed for technical computing, where numeric approaches rule the day. However, symbolic math can be used from within `Julia` through add-on packages. -Symbolic math programs include well-known ones like the commercial programs Mathematica and Maple. Mathematica powers the popular [WolframAlpha](www.wolframalpha.com) website, which turns "natural" language into the specifics of a programming language. The open-source Sage project is an alternative to these two commercial giants. It includes a wide-range of open-source math projects available within its umbrella framework. (`Julia` can even be run from within the free service [cloud.sagemath.com](https://cloud.sagemath.com/projects).) A more focused project for symbolic math, is the [SymPy](www.sympy.org) Python library. SymPy is also used within Sage. However, SymPy provides a self-contained library that can be used standalone within a Python session. That is great for `Julia` users, as the `PyCall` and `PythonCall` packages glue `Julia` to Python in a seamless manner. This allows the `Julia` package `SymPy` to provide functionality from SymPy within `Julia`. +Symbolic math programs include well-known ones like the commercial programs Mathematica and Maple. Mathematica powers the popular [WolframAlpha](www.wolframalpha.com) website, which turns "natural" language into the specifics of a programming language. The open-source [Sage](https://www.sagemath.org/) project is an alternative to these two commercial giants. It includes a wide-range of open-source math projects available within its umbrella framework. (`Julia` can even be run from within the free service [cloud.sagemath.com](https://cloud.sagemath.com/projects).) A more focused project for symbolic math, is the [SymPy](www.sympy.org) Python library. SymPy is also used within Sage. However, SymPy provides a self-contained library that can be used standalone within a Python session. + +The [Symbolics](https://github.com/JuliaSymbolics/Symbolics.jl) package for `Julia` provides a "fast and modern CAS for fast and modern language." It is described further in [Symbolics.jl](../alternatives/symbolics.qmd). + +As `SymPy` has some features not yet implemented in `Symbolics`, we use that her. The `PyCall` and `PythonCall` packages are available to glue `Julia` to Python in a seamless manner. These allow the `Julia` package `SymPy` to provide functionality from SymPy within `Julia`. :::{.callout-note} diff --git a/quarto/precalc/polynomials_package.qmd b/quarto/precalc/polynomials_package.qmd index eff4c27..35b3d1f 100644 --- a/quarto/precalc/polynomials_package.qmd +++ b/quarto/precalc/polynomials_package.qmd @@ -249,13 +249,13 @@ A line, $y=mx+b$ can be a linear polynomial or a constant depending on $m$, so w Knowing we can succeed, we approach the problem of $3$ points, say $(x_0, y_0)$, $(x_1,y_1)$, and $(x_2, y_2)$. There is a polynomial $p = a\cdot x^2 + b\cdot x + c$ with $p(x_i) = y_i$. This gives $3$ equations for the $3$ unknown values $a$, $b$, and $c$: -$$ + \begin{align*} a\cdot x_0^2 + b\cdot x_0 + c &= y_0\\ a\cdot x_1^2 + b\cdot x_1 + c &= y_1\\ a\cdot x_2^2 + b\cdot x_2 + c &= y_2\\ \end{align*} -$$ + Solving this with `SymPy` is tractable. A comprehension is used below to create the $3$ equations; the `zip` function is a simple means to iterate over $2$ or more iterables simultaneously: @@ -388,13 +388,13 @@ radioq(choices, answ, keep_order=true) Consider the polynomial $p(x) = a_1 x - a_3 x^3 + a_5 x^5$ where -$$ + \begin{align*} a_1 &= 4(\frac{3}{\pi} - \frac{9}{16}) \\ a_3 &= 2a_1 -\frac{5}{2}\\ a_5 &= a_1 - \frac{3}{2}. \end{align*} -$$ + * Form the polynomial `p` by first computing the $a$s and forming `p=Polynomial([0,a1,0,-a3,0,a5])` * Form the polynomial `q` by these commands `x=variable(); q=p(2x/pi)` @@ -544,13 +544,13 @@ This last answer is why $p$ is called an *interpolating* polynomial and this que The Chebyshev ($T$) polynomials are polynomials which use a different basis from the standard basis. Denote the basis elements $T_0$, $T_1$, ... where we have $T_0(x) = 1$, $T_1(x) = x$, and for bigger indices $T_{i+1}(x) = 2xT_i(x) - T_{i-1}(x)$. The first others are then: -$$ + \begin{align*} T_2(x) &= 2xT_1(x) - T_0(x) = 2x^2 - 1\\ T_3(x) &= 2xT_2(x) - T_1(x) = 2x(2x^2-1) - x = 4x^3 - 3x\\ T_4(x) &= 2xT_3(x) - T_2(x) = 2x(4x^3-3x) - (2x^2-1) = 8x^4 - 8x^2 + 1 \end{align*} -$$ + With these definitions what is the polynomial associated to the coefficients $[0,1,2,3]$ with this basis? diff --git a/quarto/precalc/transformations.qmd b/quarto/precalc/transformations.qmd index b33fed2..00d1f8f 100644 --- a/quarto/precalc/transformations.qmd +++ b/quarto/precalc/transformations.qmd @@ -111,13 +111,13 @@ $$ If can be helpful to think of the argument to $f$ as a "box" that gets filled in by $g$: -$$ + \begin{align*} g(x) &=e^x - x\\ f(\square) &= (\square)^2 + 2(\square) - 1\\ f(g(x)) &= (g(x))^2 + 2(g(x)) - 1 = (e^x - x)^2 + 2(e^x - x) - 1. \end{align*} -$$ + Here we look at a few compositions: diff --git a/quarto/precalc/trig_functions.qmd b/quarto/precalc/trig_functions.qmd index 5673f05..05d9b6b 100644 --- a/quarto/precalc/trig_functions.qmd +++ b/quarto/precalc/trig_functions.qmd @@ -44,13 +44,13 @@ annotate!([(.75, .25, "θ"), (4.0, 1.25, "opposite"), (2, -.25, "adjacent"), (1. With these, the basic definitions for the primary trigonometric functions are -$$ + \begin{align*} \sin(\theta) &= \frac{\text{opposite}}{\text{hypotenuse}} &\quad(\text{the sine function})\\ \cos(\theta) &= \frac{\text{adjacent}}{\text{hypotenuse}} &\quad(\text{the cosine function})\\ \tan(\theta) &= \frac{\text{opposite}}{\text{adjacent}}. &\quad(\text{the tangent function}) \end{align*} -$$ + :::{.callout-note} ## Note @@ -119,12 +119,12 @@ Julia has the $6$ basic trigonometric functions defined through the functions `s Two right triangles - the one with equal, $\pi/4$, angles; and the one with angles $\pi/6$ and $\pi/3$ can have the ratio of their sides computed from basic geometry. In particular, this leads to the following values, which are usually committed to memory: -$$ + \begin{align*} \sin(0) &= 0, \quad \sin(\pi/6) = \frac{1}{2}, \quad \sin(\pi/4) = \frac{\sqrt{2}}{2}, \quad\sin(\pi/3) = \frac{\sqrt{3}}{2},\text{ and } \sin(\pi/2) = 1\\ \cos(0) &= 1, \quad \cos(\pi/6) = \frac{\sqrt{3}}{2}, \quad \cos(\pi/4) = \frac{\sqrt{2}}{2}, \quad\cos(\pi/3) = \frac{1}{2},\text{ and } \cos(\pi/2) = 0. \end{align*} -$$ + Using the circle definition allows these basic values to inform us of values throughout the unit circle. @@ -360,8 +360,9 @@ As can be seen, even a somewhat simple combination can produce complicated graph ```{julia} #| echo: false txt =""" - + """ + HTMLoutput(txt; centered=true, caption="Julia logo animated") ``` @@ -391,21 +392,24 @@ According to [Wikipedia](https://en.wikipedia.org/wiki/Trigonometric_functions#I ```{julia} #| echo: false -ImageFile(:precalc, "figures/summary-sum-and-difference-of-two-angles.jpg", "Relations between angles") +# ImageFile(:precalc, "figures/summary-sum-and-difference-of-two-angles.jpg", "Relations between angles") +nothing ``` +![Relations between angles](figures/summary-sum-and-difference-of-two-angles.jpg) + To read this, there are three triangles: the bigger (green with pink part) has hypotenuse $1$ (and adjacent and opposite sides that form the hypotenuses of the other two); the next biggest (yellow) hypotenuse $\cos(\beta)$, adjacent side (of angle $\alpha$) $\cos(\beta)\cdot \cos(\alpha)$, and opposite side $\cos(\beta)\cdot\sin(\alpha)$; and the smallest (pink) hypotenuse $\sin(\beta)$, adjacent side (of angle $\alpha$) $\sin(\beta)\cdot \cos(\alpha)$, and opposite side $\sin(\beta)\sin(\alpha)$. This figure shows the following sum formula for sine and cosine: -$$ + \begin{align*} \sin(\alpha + \beta) &= \sin(\alpha)\cos(\beta) + \cos(\alpha)\sin(\beta), & (\overline{CE} + \overline{DF})\\ \cos(\alpha + \beta) &= \cos(\alpha)\cos(\beta) - \sin(\alpha)\sin(\beta). & (\overline{AC} - \overline{DE}) \end{align*} -$$ + Using the fact that $\sin$ is an odd function and $\cos$ an even function, related formulas for the difference $\alpha - \beta$ can be derived. @@ -413,12 +417,12 @@ Using the fact that $\sin$ is an odd function and $\cos$ an even function, relat Taking $\alpha = \beta$ we immediately get the "double-angle" formulas: -$$ + \begin{align*} \sin(2\alpha) &= 2\sin(\alpha)\cos(\alpha)\\ \cos(2\alpha) &= \cos(\alpha)^2 - \sin(\alpha)^2. \end{align*} -$$ + The latter looks like the Pythagorean identify, but has a minus sign. In fact, the Pythagorean identify is often used to rewrite this, for example $\cos(2\alpha) = 2\cos(\alpha)^2 - 1$ or $1 - 2\sin(\alpha)^2$. @@ -432,12 +436,12 @@ Applying the above with $\alpha = \beta/2$, we get that $\cos(\beta) = 2\cos(\be Consider the expressions $\cos((n+1)\theta)$ and $\cos((n-1)\theta)$. These can be re-expressed as: -$$ + \begin{align*} \cos((n+1)\theta) &= \cos(n\theta + \theta) = \cos(n\theta) \cos(\theta) - \sin(n\theta)\sin(\theta), \text{ and}\\ \cos((n-1)\theta) &= \cos(n\theta - \theta) = \cos(n\theta) \cos(-\theta) - \sin(n\theta)\sin(-\theta). \end{align*} -$$ + But $\cos(-\theta) = \cos(\theta)$, whereas $\sin(-\theta) = -\sin(\theta)$. Using this, we add the two formulas above to get: @@ -663,12 +667,12 @@ end These values are more commonly expressed using the exponential function as: -$$ + \begin{align*} \sinh(x) &= \frac{e^x - e^{-x}}{2}\\ \cosh(x) &= \frac{e^x + e^{-x}}{2}. \end{align*} -$$ + The hyperbolic tangent is then the ratio of $\sinh$ and $\cosh$. As well, three inverse hyperbolic functions can be defined. diff --git a/quarto/precalc/variables.qmd b/quarto/precalc/variables.qmd index 999d5c4..3e86674 100644 --- a/quarto/precalc/variables.qmd +++ b/quarto/precalc/variables.qmd @@ -18,9 +18,13 @@ nothing #| echo: false imgfile = "figures/calculator.png" caption = "Screenshot of a calculator provided by the Google search engine." -ImageFile(:precalc, imgfile, caption) +# ImageFile(:precalc, imgfile, caption) +nothing ``` +![Screenshot of a calculator provided by the Google search engine.](figures/calculator.png) + + The Google calculator has a button `Ans` to refer to the answer to the previous evaluation. This is a form of memory. The last answer is stored in a specific place in memory for retrieval when `Ans` is used. In some calculators, more advanced memory features are possible. For some, it is possible to push values onto a stack of values for them to be referred to at a later time. This proves useful for complicated expressions, say, as the expression can be broken into smaller intermediate steps to be computed. These values can then be appropriately combined. This strategy is a good one, though the memory buttons can make its implementation a bit cumbersome. diff --git a/quarto/precalc/vectors.qmd b/quarto/precalc/vectors.qmd index 61fe3f5..4c33956 100644 --- a/quarto/precalc/vectors.qmd +++ b/quarto/precalc/vectors.qmd @@ -83,13 +83,14 @@ For the motion in the above figure, the object's $x$ and $y$ values change accor It is common to work with *both* formulas at once. Mathematically, when graphing, we naturally pair off two values using Cartesian coordinates (e.g., $(x,y)$). Another means of combining related values is to use a *vector*. The notation for a vector varies, but to distinguish them from a point we will use $\langle x,~ y\rangle$. With this notation, we can use it to represent the position, the velocity, and the acceleration at time $t$ through: -$$ -\begin{align} + +\begin{align*} \vec{x} &= \langle x_0 + v_{0x}t,~ -(1/2) g t^2 + v_{0y}t + y_0 \rangle,\\ \vec{v} &= \langle v_{0x},~ -gt + v_{0y} \rangle, \text{ and }\\ \vec{a} &= \langle 0,~ -g \rangle. -\end{align} -$$ +\end{align*} + + Don't spend time thinking about the formulas if they are unfamiliar. The point emphasized here is that we have used the notation $\langle x,~ y \rangle$ to collect the two values into a single object, which we indicate through a label on the variable name. These are vectors, and we shall see they find use far beyond this application.