1946 lines
189 KiB
HTML
1946 lines
189 KiB
HTML
|
<!DOCTYPE html>
|
|||
|
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en"><head>
|
|||
|
|
|||
|
<meta charset="utf-8">
|
|||
|
<meta name="generator" content="quarto-1.0.32">
|
|||
|
|
|||
|
<meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=yes">
|
|||
|
|
|||
|
|
|||
|
<title>Calculus with Julia - 41 Improper Integrals</title>
|
|||
|
<style>
|
|||
|
code{white-space: pre-wrap;}
|
|||
|
span.smallcaps{font-variant: small-caps;}
|
|||
|
span.underline{text-decoration: underline;}
|
|||
|
div.column{display: inline-block; vertical-align: top; width: 50%;}
|
|||
|
div.hanging-indent{margin-left: 1.5em; text-indent: -1.5em;}
|
|||
|
ul.task-list{list-style: none;}
|
|||
|
pre > code.sourceCode { white-space: pre; position: relative; }
|
|||
|
pre > code.sourceCode > span { display: inline-block; line-height: 1.25; }
|
|||
|
pre > code.sourceCode > span:empty { height: 1.2em; }
|
|||
|
.sourceCode { overflow: visible; }
|
|||
|
code.sourceCode > span { color: inherit; text-decoration: inherit; }
|
|||
|
div.sourceCode { margin: 1em 0; }
|
|||
|
pre.sourceCode { margin: 0; }
|
|||
|
@media screen {
|
|||
|
div.sourceCode { overflow: auto; }
|
|||
|
}
|
|||
|
@media print {
|
|||
|
pre > code.sourceCode { white-space: pre-wrap; }
|
|||
|
pre > code.sourceCode > span { text-indent: -5em; padding-left: 5em; }
|
|||
|
}
|
|||
|
pre.numberSource code
|
|||
|
{ counter-reset: source-line 0; }
|
|||
|
pre.numberSource code > span
|
|||
|
{ position: relative; left: -4em; counter-increment: source-line; }
|
|||
|
pre.numberSource code > span > a:first-child::before
|
|||
|
{ content: counter(source-line);
|
|||
|
position: relative; left: -1em; text-align: right; vertical-align: baseline;
|
|||
|
border: none; display: inline-block;
|
|||
|
-webkit-touch-callout: none; -webkit-user-select: none;
|
|||
|
-khtml-user-select: none; -moz-user-select: none;
|
|||
|
-ms-user-select: none; user-select: none;
|
|||
|
padding: 0 4px; width: 4em;
|
|||
|
color: #aaaaaa;
|
|||
|
}
|
|||
|
pre.numberSource { margin-left: 3em; border-left: 1px solid #aaaaaa; padding-left: 4px; }
|
|||
|
div.sourceCode
|
|||
|
{ }
|
|||
|
@media screen {
|
|||
|
pre > code.sourceCode > span > a:first-child::before { text-decoration: underline; }
|
|||
|
}
|
|||
|
code span.al { color: #ff0000; font-weight: bold; } /* Alert */
|
|||
|
code span.an { color: #60a0b0; font-weight: bold; font-style: italic; } /* Annotation */
|
|||
|
code span.at { color: #7d9029; } /* Attribute */
|
|||
|
code span.bn { color: #40a070; } /* BaseN */
|
|||
|
code span.bu { } /* BuiltIn */
|
|||
|
code span.cf { color: #007020; font-weight: bold; } /* ControlFlow */
|
|||
|
code span.ch { color: #4070a0; } /* Char */
|
|||
|
code span.cn { color: #880000; } /* Constant */
|
|||
|
code span.co { color: #60a0b0; font-style: italic; } /* Comment */
|
|||
|
code span.cv { color: #60a0b0; font-weight: bold; font-style: italic; } /* CommentVar */
|
|||
|
code span.do { color: #ba2121; font-style: italic; } /* Documentation */
|
|||
|
code span.dt { color: #902000; } /* DataType */
|
|||
|
code span.dv { color: #40a070; } /* DecVal */
|
|||
|
code span.er { color: #ff0000; font-weight: bold; } /* Error */
|
|||
|
code span.ex { } /* Extension */
|
|||
|
code span.fl { color: #40a070; } /* Float */
|
|||
|
code span.fu { color: #06287e; } /* Function */
|
|||
|
code span.im { } /* Import */
|
|||
|
code span.in { color: #60a0b0; font-weight: bold; font-style: italic; } /* Information */
|
|||
|
code span.kw { color: #007020; font-weight: bold; } /* Keyword */
|
|||
|
code span.op { color: #666666; } /* Operator */
|
|||
|
code span.ot { color: #007020; } /* Other */
|
|||
|
code span.pp { color: #bc7a00; } /* Preprocessor */
|
|||
|
code span.sc { color: #4070a0; } /* SpecialChar */
|
|||
|
code span.ss { color: #bb6688; } /* SpecialString */
|
|||
|
code span.st { color: #4070a0; } /* String */
|
|||
|
code span.va { color: #19177c; } /* Variable */
|
|||
|
code span.vs { color: #4070a0; } /* VerbatimString */
|
|||
|
code span.wa { color: #60a0b0; font-weight: bold; font-style: italic; } /* Warning */
|
|||
|
</style>
|
|||
|
|
|||
|
|
|||
|
<script src="../site_libs/quarto-nav/quarto-nav.js"></script>
|
|||
|
<script src="../site_libs/quarto-nav/headroom.min.js"></script>
|
|||
|
<script src="../site_libs/clipboard/clipboard.min.js"></script>
|
|||
|
<script src="../site_libs/quarto-search/autocomplete.umd.js"></script>
|
|||
|
<script src="../site_libs/quarto-search/fuse.min.js"></script>
|
|||
|
<script src="../site_libs/quarto-search/quarto-search.js"></script>
|
|||
|
<meta name="quarto:offset" content="../">
|
|||
|
<link href="../integrals/mean_value_theorem.html" rel="next">
|
|||
|
<link href="../integrals/partial_fractions.html" rel="prev">
|
|||
|
<script src="../site_libs/quarto-html/quarto.js"></script>
|
|||
|
<script src="../site_libs/quarto-html/popper.min.js"></script>
|
|||
|
<script src="../site_libs/quarto-html/tippy.umd.min.js"></script>
|
|||
|
<script src="../site_libs/quarto-html/anchor.min.js"></script>
|
|||
|
<link href="../site_libs/quarto-html/tippy.css" rel="stylesheet">
|
|||
|
<link href="../site_libs/quarto-html/quarto-syntax-highlighting.css" rel="stylesheet" id="quarto-text-highlighting-styles">
|
|||
|
<script src="../site_libs/bootstrap/bootstrap.min.js"></script>
|
|||
|
<link href="../site_libs/bootstrap/bootstrap-icons.css" rel="stylesheet">
|
|||
|
<link href="../site_libs/bootstrap/bootstrap.min.css" rel="stylesheet" id="quarto-bootstrap" data-mode="light">
|
|||
|
<script id="quarto-search-options" type="application/json">{
|
|||
|
"location": "navbar",
|
|||
|
"copy-button": false,
|
|||
|
"collapse-after": 3,
|
|||
|
"panel-placement": "end",
|
|||
|
"type": "overlay",
|
|||
|
"limit": 20,
|
|||
|
"language": {
|
|||
|
"search-no-results-text": "No results",
|
|||
|
"search-matching-documents-text": "matching documents",
|
|||
|
"search-copy-link-title": "Copy link to search",
|
|||
|
"search-hide-matches-text": "Hide additional matches",
|
|||
|
"search-more-match-text": "more match in this document",
|
|||
|
"search-more-matches-text": "more matches in this document",
|
|||
|
"search-clear-button-title": "Clear",
|
|||
|
"search-detached-cancel-button-title": "Cancel",
|
|||
|
"search-submit-button-title": "Submit"
|
|||
|
}
|
|||
|
}</script>
|
|||
|
<script async="" src="https://hypothes.is/embed.js"></script>
|
|||
|
<script src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.6/require.min.js" integrity="sha512-c3Nl8+7g4LMSTdrm621y7kf9v3SDPnhxLNhcjFJbKECVnmZHTdo+IRO05sNLTH/D3vA6u1X32ehoLC7WFVdheg==" crossorigin="anonymous"></script>
|
|||
|
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.5.1/jquery.min.js" integrity="sha512-bLT0Qm9VnAYZDflyKcBaQ2gg0hSYNQrJ8RilYldYQ1FxQYoCLtUjuuRuZo+fjqhx/qtq/1itJ0C2ejDxltZVFg==" crossorigin="anonymous"></script>
|
|||
|
<script type="application/javascript">define('jquery', [],function() {return window.jQuery;})</script>
|
|||
|
|
|||
|
<script src="https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-chtml-full.js" type="text/javascript"></script>
|
|||
|
|
|||
|
</head>
|
|||
|
|
|||
|
<body class="nav-sidebar floating nav-fixed">
|
|||
|
|
|||
|
<div id="quarto-search-results"></div>
|
|||
|
<header id="quarto-header" class="headroom fixed-top">
|
|||
|
<nav class="navbar navbar-expand-lg navbar-dark ">
|
|||
|
<div class="navbar-container container-fluid">
|
|||
|
<a class="navbar-brand" href="../index.html">
|
|||
|
<img src="../logo.png" alt="">
|
|||
|
<span class="navbar-title">Calculus with Julia</span>
|
|||
|
</a>
|
|||
|
<div id="quarto-search" class="" title="Search"></div>
|
|||
|
</div> <!-- /container-fluid -->
|
|||
|
</nav>
|
|||
|
<nav class="quarto-secondary-nav" data-bs-toggle="collapse" data-bs-target="#quarto-sidebar" aria-controls="quarto-sidebar" aria-expanded="false" aria-label="Toggle sidebar navigation" onclick="if (window.quartoToggleHeadroom) { window.quartoToggleHeadroom(); }">
|
|||
|
<div class="container-fluid d-flex justify-content-between">
|
|||
|
<h1 class="quarto-secondary-nav-title"><span class="chapter-number">41</span> <span class="chapter-title">Improper Integrals</span></h1>
|
|||
|
<button type="button" class="quarto-btn-toggle btn" aria-label="Show secondary navigation">
|
|||
|
<i class="bi bi-chevron-right"></i>
|
|||
|
</button>
|
|||
|
</div>
|
|||
|
</nav>
|
|||
|
</header>
|
|||
|
<!-- content -->
|
|||
|
<div id="quarto-content" class="quarto-container page-columns page-rows-contents page-layout-article page-navbar">
|
|||
|
<!-- sidebar -->
|
|||
|
<nav id="quarto-sidebar" class="sidebar collapse sidebar-navigation floating overflow-auto">
|
|||
|
<div class="mt-2 flex-shrink-0 align-items-center">
|
|||
|
<div class="sidebar-search">
|
|||
|
<div id="quarto-search" class="" title="Search"></div>
|
|||
|
</div>
|
|||
|
</div>
|
|||
|
<div class="sidebar-menu-container">
|
|||
|
<ul class="list-unstyled mt-1">
|
|||
|
<li class="sidebar-item">
|
|||
|
<div class="sidebar-item-container">
|
|||
|
<a href="../index.html" class="sidebar-item-text sidebar-link">Preface</a>
|
|||
|
</div>
|
|||
|
</li>
|
|||
|
<li class="sidebar-item sidebar-item-section">
|
|||
|
<div class="sidebar-item-container">
|
|||
|
<a class="sidebar-item-text sidebar-link text-start collapsed" data-bs-toggle="collapse" data-bs-target="#quarto-sidebar-section-1" aria-expanded="false">Precalculus Concepts</a>
|
|||
|
<a class="sidebar-item-toggle text-start collapsed" data-bs-toggle="collapse" data-bs-target="#quarto-sidebar-section-1" aria-expanded="false">
|
|||
|
<i class="bi bi-chevron-right ms-2"></i>
|
|||
|
</a>
|
|||
|
</div>
|
|||
|
<ul id="quarto-sidebar-section-1" class="collapse list-unstyled sidebar-section depth1 ">
|
|||
|
<li class="sidebar-item">
|
|||
|
<div class="sidebar-item-container">
|
|||
|
<a href="../precalc/calculator.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">1</span> <span class="chapter-title">From calculator to computer</span></a>
|
|||
|
</div>
|
|||
|
</li>
|
|||
|
<li class="sidebar-item">
|
|||
|
<div class="sidebar-item-container">
|
|||
|
<a href="../precalc/variables.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">2</span> <span class="chapter-title">Variables</span></a>
|
|||
|
</div>
|
|||
|
</li>
|
|||
|
<li class="sidebar-item">
|
|||
|
<div class="sidebar-item-container">
|
|||
|
<a href="../precalc/numbers_types.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">3</span> <span class="chapter-title">Number systems</span></a>
|
|||
|
</div>
|
|||
|
</li>
|
|||
|
<li class="sidebar-item">
|
|||
|
<div class="sidebar-item-container">
|
|||
|
<a href="../precalc/logical_expressions.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">4</span> <span class="chapter-title">Inequalities, Logical expressions</span></a>
|
|||
|
</div>
|
|||
|
</li>
|
|||
|
<li class="sidebar-item">
|
|||
|
<div class="sidebar-item-container">
|
|||
|
<a href="../precalc/vectors.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">5</span> <span class="chapter-title">Vectors</span></a>
|
|||
|
</div>
|
|||
|
</li>
|
|||
|
<li class="sidebar-item">
|
|||
|
<div class="sidebar-item-container">
|
|||
|
<a href="../precalc/ranges.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">6</span> <span class="chapter-title">Ranges and Sets</span></a>
|
|||
|
</div>
|
|||
|
</li>
|
|||
|
<li class="sidebar-item">
|
|||
|
<div class="sidebar-item-container">
|
|||
|
<a href="../precalc/functions.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">7</span> <span class="chapter-title">Functions</span></a>
|
|||
|
</div>
|
|||
|
</li>
|
|||
|
<li class="sidebar-item">
|
|||
|
<div class="sidebar-item-container">
|
|||
|
<a href="../precalc/plotting.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">8</span> <span class="chapter-title">The Graph of a Function</span></a>
|
|||
|
</div>
|
|||
|
</li>
|
|||
|
<li class="sidebar-item">
|
|||
|
<div class="sidebar-item-container">
|
|||
|
<a href="../precalc/transformations.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">9</span> <span class="chapter-title">Function manipulations</span></a>
|
|||
|
</div>
|
|||
|
</li>
|
|||
|
<li class="sidebar-item">
|
|||
|
<div class="sidebar-item-container">
|
|||
|
<a href="../precalc/inversefunctions.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">10</span> <span class="chapter-title">The Inverse of a Function</span></a>
|
|||
|
</div>
|
|||
|
</li>
|
|||
|
<li class="sidebar-item">
|
|||
|
<div class="sidebar-item-container">
|
|||
|
<a href="../precalc/polynomial.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">11</span> <span class="chapter-title">Polynomials</span></a>
|
|||
|
</div>
|
|||
|
</li>
|
|||
|
<li class="sidebar-item">
|
|||
|
<div class="sidebar-item-container">
|
|||
|
<a href="../precalc/polynomial_roots.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">12</span> <span class="chapter-title">Roots of a polynomial</span></a>
|
|||
|
</div>
|
|||
|
</li>
|
|||
|
<li class="sidebar-item">
|
|||
|
<div class="sidebar-item-container">
|
|||
|
<a href="../precalc/polynomials_package.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">13</span> <span class="chapter-title">The Polynomials package</span></a>
|
|||
|
</div>
|
|||
|
</li>
|
|||
|
<li class="sidebar-item">
|
|||
|
<div class="sidebar-item-container">
|
|||
|
<a href="../precalc/rational_functions.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">14</span> <span class="chapter-title">Rational functions</span></a>
|
|||
|
</div>
|
|||
|
</li>
|
|||
|
<li class="sidebar-item">
|
|||
|
<div class="sidebar-item-container">
|
|||
|
<a href="../precalc/exp_log_functions.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">15</span> <span class="chapter-title">Exponential and logarithmic functions</span></a>
|
|||
|
</div>
|
|||
|
</li>
|
|||
|
<li class="sidebar-item">
|
|||
|
<div class="sidebar-item-container">
|
|||
|
<a href="../precalc/trig_functions.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">16</span> <span class="chapter-title">Trigonometric functions</span></a>
|
|||
|
</div>
|
|||
|
</li>
|
|||
|
<li class="sidebar-item">
|
|||
|
<div class="sidebar-item-container">
|
|||
|
<a href="../precalc/julia_overview.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">17</span> <span class="chapter-title">Overview of Julia commands</span></a>
|
|||
|
</div>
|
|||
|
</li>
|
|||
|
</ul>
|
|||
|
</li>
|
|||
|
<li class="sidebar-item sidebar-item-section">
|
|||
|
<div class="sidebar-item-container">
|
|||
|
<a class="sidebar-item-text sidebar-link text-start collapsed" data-bs-toggle="collapse" data-bs-target="#quarto-sidebar-section-2" aria-expanded="false">Limits</a>
|
|||
|
<a class="sidebar-item-toggle text-start collapsed" data-bs-toggle="collapse" data-bs-target="#quarto-sidebar-section-2" aria-expanded="false">
|
|||
|
<i class="bi bi-chevron-right ms-2"></i>
|
|||
|
</a>
|
|||
|
</div>
|
|||
|
<ul id="quarto-sidebar-section-2" class="collapse list-unstyled sidebar-section depth1 ">
|
|||
|
<li class="sidebar-item">
|
|||
|
<div class="sidebar-item-container">
|
|||
|
<a href="../limits/limits.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">18</span> <span class="chapter-title">Limits</span></a>
|
|||
|
</div>
|
|||
|
</li>
|
|||
|
<li class="sidebar-item">
|
|||
|
<div class="sidebar-item-container">
|
|||
|
<a href="../limits/limits_extensions.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">19</span> <span class="chapter-title">Limits, issues, extensions of the concept</span></a>
|
|||
|
</div>
|
|||
|
</li>
|
|||
|
<li class="sidebar-item">
|
|||
|
<div class="sidebar-item-container">
|
|||
|
<a href="../limits/continuity.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">20</span> <span class="chapter-title">Continuity</span></a>
|
|||
|
</div>
|
|||
|
</li>
|
|||
|
<li class="sidebar-item">
|
|||
|
<div class="sidebar-item-container">
|
|||
|
<a href="../limits/intermediate_value_theorem.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">21</span> <span class="chapter-title">Implications of continuity</span></a>
|
|||
|
</div>
|
|||
|
</li>
|
|||
|
</ul>
|
|||
|
</li>
|
|||
|
<li class="sidebar-item sidebar-item-section">
|
|||
|
<div class="sidebar-item-container">
|
|||
|
<a class="sidebar-item-text sidebar-link text-start collapsed" data-bs-toggle="collapse" data-bs-target="#quarto-sidebar-section-3" aria-expanded="false">Derivatives</a>
|
|||
|
<a class="sidebar-item-toggle text-start collapsed" data-bs-toggle="collapse" data-bs-target="#quarto-sidebar-section-3" aria-expanded="false">
|
|||
|
<i class="bi bi-chevron-right ms-2"></i>
|
|||
|
</a>
|
|||
|
</div>
|
|||
|
<ul id="quarto-sidebar-section-3" class="collapse list-unstyled sidebar-section depth1 ">
|
|||
|
<li class="sidebar-item">
|
|||
|
<div class="sidebar-item-container">
|
|||
|
<a href="../derivatives/derivatives.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">22</span> <span class="chapter-title">Derivatives</span></a>
|
|||
|
</div>
|
|||
|
</li>
|
|||
|
<li class="sidebar-item">
|
|||
|
<div class="sidebar-item-container">
|
|||
|
<a href="../derivatives/numeric_derivatives.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">23</span> <span class="chapter-title">Numeric derivatives</span></a>
|
|||
|
</div>
|
|||
|
</li>
|
|||
|
<li class="sidebar-item">
|
|||
|
<div class="sidebar-item-container">
|
|||
|
<a href="../derivatives/symbolic_derivatives.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">24</span> <span class="chapter-title">Symbolic derivatives</span></a>
|
|||
|
</div>
|
|||
|
</li>
|
|||
|
<li class="sidebar-item">
|
|||
|
<div class="sidebar-item-container">
|
|||
|
<a href="../derivatives/mean_value_theorem.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">25</span> <span class="chapter-title">The mean value theorem for differentiable functions.</span></a>
|
|||
|
</div>
|
|||
|
</li>
|
|||
|
<li class="sidebar-item">
|
|||
|
<div class="sidebar-item-container">
|
|||
|
<a href="../derivatives/optimization.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">26</span> <span class="chapter-title">Optimization</span></a>
|
|||
|
</div>
|
|||
|
</li>
|
|||
|
<li class="sidebar-item">
|
|||
|
<div class="sidebar-item-container">
|
|||
|
<a href="../derivatives/first_second_derivatives.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">27</span> <span class="chapter-title">The first and second derivatives</span></a>
|
|||
|
</div>
|
|||
|
</li>
|
|||
|
<li class="sidebar-item">
|
|||
|
<div class="sidebar-item-container">
|
|||
|
<a href="../derivatives/curve_sketching.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">28</span> <span class="chapter-title">Curve Sketching</span></a>
|
|||
|
</div>
|
|||
|
</li>
|
|||
|
<li class="sidebar-item">
|
|||
|
<div class="sidebar-item-container">
|
|||
|
<a href="../derivatives/linearization.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">29</span> <span class="chapter-title">Linearization</span></a>
|
|||
|
</div>
|
|||
|
</li>
|
|||
|
<li class="sidebar-item">
|
|||
|
<div class="sidebar-item-container">
|
|||
|
<a href="../derivatives/newtons_method.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">30</span> <span class="chapter-title">Newton’s method</span></a>
|
|||
|
</div>
|
|||
|
</li>
|
|||
|
<li class="sidebar-item">
|
|||
|
<div class="sidebar-item-container">
|
|||
|
<a href="../derivatives/more_zeros.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">31</span> <span class="chapter-title">Derivative-free alternatives to Newton’s method</span></a>
|
|||
|
</div>
|
|||
|
</li>
|
|||
|
<li class="sidebar-item">
|
|||
|
<div class="sidebar-item-container">
|
|||
|
<a href="../derivatives/lhospitals_rule.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">32</span> <span class="chapter-title">L’Hospital’s Rule</span></a>
|
|||
|
</div>
|
|||
|
</li>
|
|||
|
<li class="sidebar-item">
|
|||
|
<div class="sidebar-item-container">
|
|||
|
<a href="../derivatives/implicit_differentiation.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">33</span> <span class="chapter-title">Implicit Differentiation</span></a>
|
|||
|
</div>
|
|||
|
</li>
|
|||
|
<li class="sidebar-item">
|
|||
|
<div class="sidebar-item-container">
|
|||
|
<a href="../derivatives/related_rates.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">34</span> <span class="chapter-title">Related rates</span></a>
|
|||
|
</div>
|
|||
|
</li>
|
|||
|
<li class="sidebar-item">
|
|||
|
<div class="sidebar-item-container">
|
|||
|
<a href="../derivatives/taylor_series_polynomials.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">35</span> <span class="chapter-title">Taylor Polynomials and other Approximating Polynomials</span></a>
|
|||
|
</div>
|
|||
|
</li>
|
|||
|
</ul>
|
|||
|
</li>
|
|||
|
<li class="sidebar-item sidebar-item-section">
|
|||
|
<div class="sidebar-item-container">
|
|||
|
<a class="sidebar-item-text sidebar-link text-start" data-bs-toggle="collapse" data-bs-target="#quarto-sidebar-section-4" aria-expanded="true">Integrals</a>
|
|||
|
<a class="sidebar-item-toggle text-start" data-bs-toggle="collapse" data-bs-target="#quarto-sidebar-section-4" aria-expanded="true">
|
|||
|
<i class="bi bi-chevron-right ms-2"></i>
|
|||
|
</a>
|
|||
|
</div>
|
|||
|
<ul id="quarto-sidebar-section-4" class="collapse list-unstyled sidebar-section depth1 show">
|
|||
|
<li class="sidebar-item">
|
|||
|
<div class="sidebar-item-container">
|
|||
|
<a href="../integrals/area.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">36</span> <span class="chapter-title">Area under a curve</span></a>
|
|||
|
</div>
|
|||
|
</li>
|
|||
|
<li class="sidebar-item">
|
|||
|
<div class="sidebar-item-container">
|
|||
|
<a href="../integrals/ftc.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">37</span> <span class="chapter-title">Fundamental Theorem or Calculus</span></a>
|
|||
|
</div>
|
|||
|
</li>
|
|||
|
<li class="sidebar-item">
|
|||
|
<div class="sidebar-item-container">
|
|||
|
<a href="../integrals/substitution.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">38</span> <span class="chapter-title">Substitution</span></a>
|
|||
|
</div>
|
|||
|
</li>
|
|||
|
<li class="sidebar-item">
|
|||
|
<div class="sidebar-item-container">
|
|||
|
<a href="../integrals/integration_by_parts.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">39</span> <span class="chapter-title">Integration By Parts</span></a>
|
|||
|
</div>
|
|||
|
</li>
|
|||
|
<li class="sidebar-item">
|
|||
|
<div class="sidebar-item-container">
|
|||
|
<a href="../integrals/partial_fractions.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">40</span> <span class="chapter-title">Partial Fractions</span></a>
|
|||
|
</div>
|
|||
|
</li>
|
|||
|
<li class="sidebar-item">
|
|||
|
<div class="sidebar-item-container">
|
|||
|
<a href="../integrals/improper_integrals.html" class="sidebar-item-text sidebar-link active"><span class="chapter-number">41</span> <span class="chapter-title">Improper Integrals</span></a>
|
|||
|
</div>
|
|||
|
</li>
|
|||
|
<li class="sidebar-item">
|
|||
|
<div class="sidebar-item-container">
|
|||
|
<a href="../integrals/mean_value_theorem.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">42</span> <span class="chapter-title">Mean value theorem for integrals</span></a>
|
|||
|
</div>
|
|||
|
</li>
|
|||
|
<li class="sidebar-item">
|
|||
|
<div class="sidebar-item-container">
|
|||
|
<a href="../integrals/area_between_curves.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">43</span> <span class="chapter-title">Area between two curves</span></a>
|
|||
|
</div>
|
|||
|
</li>
|
|||
|
<li class="sidebar-item">
|
|||
|
<div class="sidebar-item-container">
|
|||
|
<a href="../integrals/center_of_mass.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">44</span> <span class="chapter-title">Center of Mass</span></a>
|
|||
|
</div>
|
|||
|
</li>
|
|||
|
<li class="sidebar-item">
|
|||
|
<div class="sidebar-item-container">
|
|||
|
<a href="../integrals/volumes_slice.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">45</span> <span class="chapter-title">Volumes by slicing</span></a>
|
|||
|
</div>
|
|||
|
</li>
|
|||
|
<li class="sidebar-item">
|
|||
|
<div class="sidebar-item-container">
|
|||
|
<a href="../integrals/arc_length.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">46</span> <span class="chapter-title">Arc length</span></a>
|
|||
|
</div>
|
|||
|
</li>
|
|||
|
<li class="sidebar-item">
|
|||
|
<div class="sidebar-item-container">
|
|||
|
<a href="../integrals/surface_area.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">47</span> <span class="chapter-title">Surface Area</span></a>
|
|||
|
</div>
|
|||
|
</li>
|
|||
|
</ul>
|
|||
|
</li>
|
|||
|
<li class="sidebar-item sidebar-item-section">
|
|||
|
<div class="sidebar-item-container">
|
|||
|
<a class="sidebar-item-text sidebar-link text-start collapsed" data-bs-toggle="collapse" data-bs-target="#quarto-sidebar-section-5" aria-expanded="false">ODEs</a>
|
|||
|
<a class="sidebar-item-toggle text-start collapsed" data-bs-toggle="collapse" data-bs-target="#quarto-sidebar-section-5" aria-expanded="false">
|
|||
|
<i class="bi bi-chevron-right ms-2"></i>
|
|||
|
</a>
|
|||
|
</div>
|
|||
|
<ul id="quarto-sidebar-section-5" class="collapse list-unstyled sidebar-section depth1 ">
|
|||
|
<li class="sidebar-item">
|
|||
|
<div class="sidebar-item-container">
|
|||
|
<a href="../ODEs/odes.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">48</span> <span class="chapter-title">ODEs</span></a>
|
|||
|
</div>
|
|||
|
</li>
|
|||
|
<li class="sidebar-item">
|
|||
|
<div class="sidebar-item-container">
|
|||
|
<a href="../ODEs/euler.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">49</span> <span class="chapter-title">Euler’s method</span></a>
|
|||
|
</div>
|
|||
|
</li>
|
|||
|
<li class="sidebar-item">
|
|||
|
<div class="sidebar-item-container">
|
|||
|
<a href="../ODEs/solve.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">50</span> <span class="chapter-title">The problem-algorithm-solve interface</span></a>
|
|||
|
</div>
|
|||
|
</li>
|
|||
|
<li class="sidebar-item">
|
|||
|
<div class="sidebar-item-container">
|
|||
|
<a href="../ODEs/differential_equations.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">51</span> <span class="chapter-title">The <code>DifferentialEquations</code> suite</span></a>
|
|||
|
</div>
|
|||
|
</li>
|
|||
|
</ul>
|
|||
|
</li>
|
|||
|
<li class="sidebar-item sidebar-item-section">
|
|||
|
<div class="sidebar-item-container">
|
|||
|
<a class="sidebar-item-text sidebar-link text-start collapsed" data-bs-toggle="collapse" data-bs-target="#quarto-sidebar-section-6" aria-expanded="false">Differential vector calculus</a>
|
|||
|
<a class="sidebar-item-toggle text-start collapsed" data-bs-toggle="collapse" data-bs-target="#quarto-sidebar-section-6" aria-expanded="false">
|
|||
|
<i class="bi bi-chevron-right ms-2"></i>
|
|||
|
</a>
|
|||
|
</div>
|
|||
|
<ul id="quarto-sidebar-section-6" class="collapse list-unstyled sidebar-section depth1 ">
|
|||
|
<li class="sidebar-item">
|
|||
|
<div class="sidebar-item-container">
|
|||
|
<a href="../differentiable_vector_calculus/polar_coordinates.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">52</span> <span class="chapter-title">Polar Coordinates and Curves</span></a>
|
|||
|
</div>
|
|||
|
</li>
|
|||
|
<li class="sidebar-item">
|
|||
|
<div class="sidebar-item-container">
|
|||
|
<a href="../differentiable_vector_calculus/vectors.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">53</span> <span class="chapter-title">Vectors and matrices</span></a>
|
|||
|
</div>
|
|||
|
</li>
|
|||
|
<li class="sidebar-item">
|
|||
|
<div class="sidebar-item-container">
|
|||
|
<a href="../differentiable_vector_calculus/vector_valued_functions.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">54</span> <span class="chapter-title">Vector-valued functions, <span class="math inline">\(f:R \rightarrow R^n\)</span></span></a>
|
|||
|
</div>
|
|||
|
</li>
|
|||
|
<li class="sidebar-item">
|
|||
|
<div class="sidebar-item-container">
|
|||
|
<a href="../differentiable_vector_calculus/scalar_functions.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">55</span> <span class="chapter-title">Scalar functions</span></a>
|
|||
|
</div>
|
|||
|
</li>
|
|||
|
<li class="sidebar-item">
|
|||
|
<div class="sidebar-item-container">
|
|||
|
<a href="../differentiable_vector_calculus/scalar_functions_applications.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">56</span> <span class="chapter-title">Applications with scalar functions</span></a>
|
|||
|
</div>
|
|||
|
</li>
|
|||
|
<li class="sidebar-item">
|
|||
|
<div class="sidebar-item-container">
|
|||
|
<a href="../differentiable_vector_calculus/vector_fields.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">57</span> <span class="chapter-title">Functions <span class="math inline">\(R^n \rightarrow R^m\)</span></span></a>
|
|||
|
</div>
|
|||
|
</li>
|
|||
|
<li class="sidebar-item">
|
|||
|
<div class="sidebar-item-container">
|
|||
|
<a href="../differentiable_vector_calculus/plots_plotting.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">58</span> <span class="chapter-title">2D and 3D plots in Julia with Plots</span></a>
|
|||
|
</div>
|
|||
|
</li>
|
|||
|
</ul>
|
|||
|
</li>
|
|||
|
<li class="sidebar-item sidebar-item-section">
|
|||
|
<div class="sidebar-item-container">
|
|||
|
<a class="sidebar-item-text sidebar-link text-start collapsed" data-bs-toggle="collapse" data-bs-target="#quarto-sidebar-section-7" aria-expanded="false">Integral vector calculus</a>
|
|||
|
<a class="sidebar-item-toggle text-start collapsed" data-bs-toggle="collapse" data-bs-target="#quarto-sidebar-section-7" aria-expanded="false">
|
|||
|
<i class="bi bi-chevron-right ms-2"></i>
|
|||
|
</a>
|
|||
|
</div>
|
|||
|
<ul id="quarto-sidebar-section-7" class="collapse list-unstyled sidebar-section depth1 ">
|
|||
|
<li class="sidebar-item">
|
|||
|
<div class="sidebar-item-container">
|
|||
|
<a href="../integral_vector_calculus/double_triple_integrals.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">59</span> <span class="chapter-title">Multi-dimensional integrals</span></a>
|
|||
|
</div>
|
|||
|
</li>
|
|||
|
<li class="sidebar-item">
|
|||
|
<div class="sidebar-item-container">
|
|||
|
<a href="../integral_vector_calculus/line_integrals.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">60</span> <span class="chapter-title">Line and Surface Integrals</span></a>
|
|||
|
</div>
|
|||
|
</li>
|
|||
|
<li class="sidebar-item">
|
|||
|
<div class="sidebar-item-container">
|
|||
|
<a href="../integral_vector_calculus/div_grad_curl.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">61</span> <span class="chapter-title">The Gradient, Divergence, and Curl</span></a>
|
|||
|
</div>
|
|||
|
</li>
|
|||
|
<li class="sidebar-item">
|
|||
|
<div class="sidebar-item-container">
|
|||
|
<a href="../integral_vector_calculus/stokes_theorem.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">62</span> <span class="chapter-title">Green’s Theorem, Stokes’ Theorem, and the Divergence Theorem</span></a>
|
|||
|
</div>
|
|||
|
</li>
|
|||
|
<li class="sidebar-item">
|
|||
|
<div class="sidebar-item-container">
|
|||
|
<a href="../integral_vector_calculus/review.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">63</span> <span class="chapter-title">Quick Review of Vector Calculus</span></a>
|
|||
|
</div>
|
|||
|
</li>
|
|||
|
</ul>
|
|||
|
</li>
|
|||
|
<li class="sidebar-item sidebar-item-section">
|
|||
|
<div class="sidebar-item-container">
|
|||
|
<a class="sidebar-item-text sidebar-link text-start collapsed" data-bs-toggle="collapse" data-bs-target="#quarto-sidebar-section-8" aria-expanded="false">Alternatives</a>
|
|||
|
<a class="sidebar-item-toggle text-start collapsed" data-bs-toggle="collapse" data-bs-target="#quarto-sidebar-section-8" aria-expanded="false">
|
|||
|
<i class="bi bi-chevron-right ms-2"></i>
|
|||
|
</a>
|
|||
|
</div>
|
|||
|
<ul id="quarto-sidebar-section-8" class="collapse list-unstyled sidebar-section depth1 ">
|
|||
|
<li class="sidebar-item">
|
|||
|
<div class="sidebar-item-container">
|
|||
|
<a href="../alternatives/plotly_plotting.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">64</span> <span class="chapter-title">JavaScript based plotting libraries</span></a>
|
|||
|
</div>
|
|||
|
</li>
|
|||
|
<li class="sidebar-item">
|
|||
|
<div class="sidebar-item-container">
|
|||
|
<a href="../alternatives/makie_plotting.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">65</span> <span class="chapter-title">Calculus plots with Makie</span></a>
|
|||
|
</div>
|
|||
|
</li>
|
|||
|
</ul>
|
|||
|
</li>
|
|||
|
<li class="sidebar-item sidebar-item-section">
|
|||
|
<div class="sidebar-item-container">
|
|||
|
<a class="sidebar-item-text sidebar-link text-start collapsed" data-bs-toggle="collapse" data-bs-target="#quarto-sidebar-section-9" aria-expanded="false">Appendices</a>
|
|||
|
<a class="sidebar-item-toggle text-start collapsed" data-bs-toggle="collapse" data-bs-target="#quarto-sidebar-section-9" aria-expanded="false">
|
|||
|
<i class="bi bi-chevron-right ms-2"></i>
|
|||
|
</a>
|
|||
|
</div>
|
|||
|
<ul id="quarto-sidebar-section-9" class="collapse list-unstyled sidebar-section depth1 ">
|
|||
|
<li class="sidebar-item">
|
|||
|
<div class="sidebar-item-container">
|
|||
|
<a href="../misc/getting_started_with_julia.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">66</span> <span class="chapter-title">Getting started with Julia</span></a>
|
|||
|
</div>
|
|||
|
</li>
|
|||
|
<li class="sidebar-item">
|
|||
|
<div class="sidebar-item-container">
|
|||
|
<a href="../misc/julia_interfaces.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">67</span> <span class="chapter-title">Julia interfaces</span></a>
|
|||
|
</div>
|
|||
|
</li>
|
|||
|
<li class="sidebar-item">
|
|||
|
<div class="sidebar-item-container">
|
|||
|
<a href="../misc/calculus_with_julia.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">68</span> <span class="chapter-title">The <code>CalculusWithJulia</code> package</span></a>
|
|||
|
</div>
|
|||
|
</li>
|
|||
|
<li class="sidebar-item">
|
|||
|
<div class="sidebar-item-container">
|
|||
|
<a href="../misc/unicode.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">69</span> <span class="chapter-title">Usages of Unicode symbols</span></a>
|
|||
|
</div>
|
|||
|
</li>
|
|||
|
<li class="sidebar-item">
|
|||
|
<div class="sidebar-item-container">
|
|||
|
<a href="../misc/quick_notes.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">70</span> <span class="chapter-title">Quick introduction to Calculus with Julia</span></a>
|
|||
|
</div>
|
|||
|
</li>
|
|||
|
</ul>
|
|||
|
</li>
|
|||
|
<li class="sidebar-item">
|
|||
|
<div class="sidebar-item-container">
|
|||
|
<a href="../references.html" class="sidebar-item-text sidebar-link">References</a>
|
|||
|
</div>
|
|||
|
</li>
|
|||
|
</ul>
|
|||
|
</div>
|
|||
|
</nav>
|
|||
|
<!-- margin-sidebar -->
|
|||
|
<div id="quarto-margin-sidebar" class="sidebar margin-sidebar">
|
|||
|
<nav id="TOC" role="doc-toc">
|
|||
|
<h2 id="toc-title">Table of contents</h2>
|
|||
|
|
|||
|
<ul>
|
|||
|
<li><a href="#infinite-domains" id="toc-infinite-domains" class="nav-link active" data-scroll-target="#infinite-domains"> <span class="header-section-number">41.1</span> Infinite domains</a>
|
|||
|
<ul class="collapse">
|
|||
|
<li><a href="#numeric-integration" id="toc-numeric-integration" class="nav-link" data-scroll-target="#numeric-integration"> <span class="header-section-number">41.1.1</span> Numeric integration</a></li>
|
|||
|
</ul></li>
|
|||
|
<li><a href="#singularities" id="toc-singularities" class="nav-link" data-scroll-target="#singularities"> <span class="header-section-number">41.2</span> Singularities</a>
|
|||
|
<ul class="collapse">
|
|||
|
<li><a href="#numeric-integration-1" id="toc-numeric-integration-1" class="nav-link" data-scroll-target="#numeric-integration-1"> <span class="header-section-number">41.2.1</span> Numeric integration</a></li>
|
|||
|
</ul></li>
|
|||
|
<li><a href="#probability-applications" id="toc-probability-applications" class="nav-link" data-scroll-target="#probability-applications"> <span class="header-section-number">41.3</span> Probability applications</a></li>
|
|||
|
<li><a href="#questions" id="toc-questions" class="nav-link" data-scroll-target="#questions"> <span class="header-section-number">41.4</span> Questions</a></li>
|
|||
|
</ul>
|
|||
|
<div class="toc-actions"><div><i class="bi bi-github"></i></div><div class="action-links"><p><a href="https://github.com/jverzani/CalculusWithJuliaNotes.jl/edit/main/quarto/integrals/improper_integrals.qmd" class="toc-action">Edit this page</a></p><p><a href="https://github.com/jverzani/CalculusWithJuliaNotes.jl/issues/new" class="toc-action">Report an issue</a></p></div></div></nav>
|
|||
|
</div>
|
|||
|
<!-- main -->
|
|||
|
<main class="content" id="quarto-document-content">
|
|||
|
|
|||
|
<header id="title-block-header" class="quarto-title-block default">
|
|||
|
<div class="quarto-title">
|
|||
|
<h1 class="title d-none d-lg-block"><span class="chapter-number">41</span> <span class="chapter-title">Improper Integrals</span></h1>
|
|||
|
</div>
|
|||
|
|
|||
|
|
|||
|
|
|||
|
<div class="quarto-title-meta">
|
|||
|
|
|||
|
|
|||
|
|
|||
|
</div>
|
|||
|
|
|||
|
|
|||
|
</header>
|
|||
|
|
|||
|
<p>This section uses these add-on packages:</p>
|
|||
|
<div class="sourceCode cell-code" id="cb1"><pre class="sourceCode julia code-with-copy"><code class="sourceCode julia"><span id="cb1-1"><a href="#cb1-1" aria-hidden="true" tabindex="-1"></a><span class="im">using</span> <span class="bu">CalculusWithJulia</span></span>
|
|||
|
<span id="cb1-2"><a href="#cb1-2" aria-hidden="true" tabindex="-1"></a><span class="im">using</span> <span class="bu">Plots</span></span>
|
|||
|
<span id="cb1-3"><a href="#cb1-3" aria-hidden="true" tabindex="-1"></a><span class="im">using</span> <span class="bu">SymPy</span></span>
|
|||
|
<span id="cb1-4"><a href="#cb1-4" aria-hidden="true" tabindex="-1"></a><span class="im">using</span> <span class="bu">QuadGK</span></span></code><button title="Copy to Clipboard" class="code-copy-button"><i class="bi"></i></button></pre></div>
|
|||
|
<hr>
|
|||
|
<p>A function <span class="math inline">\(f(x)\)</span> is Riemann integrable over an interval <span class="math inline">\([a,b]\)</span> if some limit involving Riemann sums exists. This limit will fail to exist if <span class="math inline">\(f(x) = \infty\)</span> in <span class="math inline">\([a,b]\)</span>. As well, the Riemann sum idea is undefined if either <span class="math inline">\(a\)</span> or <span class="math inline">\(b\)</span> (or both) are infinite, so the limit won’t exist in this case.</p>
|
|||
|
<p>To define integrals with either functions having singularities or infinite domains, the idea of an improper integral is introduced with definitions to handle the two cases above.</p>
|
|||
|
<div class="cell" data-cache="true" data-hold="true" data-execution_count="4">
|
|||
|
<div class="cell-output cell-output-display" data-execution_count="5">
|
|||
|
<div class="d-flex justify-content-center"> <figure class="figure"> <img src="data:image/gif;base64,R0lGODlhAANAAvcBAAAAAAD/AAEBAQQEBAYGBggJBwgJCAsLCwwKBg0MCQ0ODA4QDxANCRAQChEREREVFBMQCRMcGhUVDBUVFRUXFxchIRgYGBkkIxoaGRsZDRsbGxsnKBwXCxwZDhweHh0sLh8uMCAgICAyNSEcFCEeDyEgHiM3PCQkJCYiECY7QScnJycoKCc/RyggDigjGCkpKSxGTy0tLS1CSC1JVC4lDS8mEDBMVzExMTIsIjNRXjQrETQ1NDdXaDgyKDg4Nzs7OztcbTwuDTwuEDxecT4+Pj4/QD5YZT9QVkBle0I9M0NDQ0NhckNpf0ZGRkc2DUg2EEhuhklISElbYklqfEpEOkpKSk45DU5OTk5zilFRUVNORFNTU1Q8D1RMPFRUVFR5j1U9DFVPRVVVVVdXV1d8k1lUS1tBDFtZVFtbW1yAl11DDV1tdF5eXV57i2FCB2FhYWJFCmJdVWNFDWOGnGVlZWdjXGhoaGlICWllXmlpaWlwcGqNomtJB2tra2xpYm5LCm9LBm9ubHBwcHFNCXFxcHGCi3GUqXKTp3NNBnOUqXR0dHWPnnZPCXh4eHiYrHpRBHx8e35+fn9/f3+esoBUAYKCgYNkLIWFhYWktoZXAIais4iIh4lZAImnuYqKiouaooxbAI6OjpCtvpFeAJKSkpaWlpdiAJd1JZeZmpmZmZqampqqs5uBRZxlAJy1xJ2dnaGhoaK7yqNqAKSkpKampqenqKi/zaltAKmpqaurrK6urq9xALKysrLG0rR0ALa2trh3ALi5ubnI0rrM2Lu7u7y8vL29vb29vr+/v8B8AMDS3MLO1sPDw8TS28aAAMbGxsfW38nJycrKys2EAM7Ozs/b4tHR0dLS0tWJANbW1tji6NqNANra2t3m7d7e3uGRAOHh4eTk5OTq7+eVAOfn5+np6erq6uvr6+3u7u6aAO7y9fDw8PPz8/T09PT2+PX19fX29vb29vb39/b4+fegAPf39/f4+Pf5+vnJcfn5+fr6+vuiAPz8/P39/f+lAP///yH/C05FVFNDQVBFMi4wAwEAAAAh+QQFZAABACwAAAAAAANAAocAAAAA/wABAQEEBAQGBgYICQcICQgLCwsMCgYNDAkNDgwOEA8QDQkQEAoRERERFRQTEAkTHBoVFQwVFRUVFxcXISEYGBgZJCMaGhkbGQ0bGxsbJygcFwscGQ4cHh4dLC4fLjAgICAgMjUhHBQhHg8hIB4jNzwkJCQmIhAmO0EnJycnKCgnP0coIA4oIxgpKSksRk8tLS0tQkgtSVQuJQ0vJhAwTFcxMTEyLCIzUV40KxE0NTQ3V2g4Mig4ODc7Ozs7XG08Lg08LhA8XnE+Pj4+P0A+WGU/UFZAZXtCPTNDQ0NDYXJDaX9GRkZHNg1INhBIboZJSEhJW2JJanxKRDpKSkpOOQ1OTk5Oc4pRUVFTTkRTU1NUPA9UTDxUVFRUeY9VPQxVT0VVVVVXV1dXfJNZVEtbQQxbWVRbW1tcgJddQw1dbXReXl1ee4thQgdhYWFiRQpiXVVjRQ1jhpxlZWVnY1xoaGhpSAlpZV5paWlpcHBqjaJrSQdra2tsaWJuSwpvSwZvbmxwcHBxTQlxcXBxgotxlKlyk6dzTQZzlKl0dHR1j552Twl4eHh4mKx6UQR8fHt+fn5/f39/nrKAVAGCgoGDZCyFhYWFpLaGVwCGorOIiIeJWQCJp7mKioqLmqKMWwCOjo6Qrb6RXgCSkpKWlpaXYgCXdSWXmZqZmZmampqaqrObgUWcZQCctcSdnZ2hoaGiu8qjagCkpKSmpqanp6iov82pbQCpqamrq6yurq6vcQCysrKyxtK0dAC2tra4dwC4ubm5yNK6zNi7u7u8vLy9vb29vb6/v7/AfADA0tzCztbDw8PE0tvGgADGxsbH1t/JycnKysrNhADOzs7P2+LR0dHS0tLViQDW1tbY4ujajQDa2trd5u3e3t7hkQDh4eHk5OTk6u/nlQDn5+fp6enq6urr6+vt7u7umgDu8vXw8PDz8/P09PT09vj19fX19vb29vb29/f2+Pn3oAD39/f3+Pj3+fr5yXH5+fn6+vr7ogD8/Pz9/f3/pQD///8I/wD/CRxIsKDBgwgTKlzIsKHDhxAjSpxIsaLFixgzatzIsaPHjyBDihxJsqTJkyhTqlzJsqXLlzBjypxJs6bNmzhz6tzJE2MqJdY+8upTRUm2nL+iKI10EB06fQnboRvITpouXuAs6nNq0J5SpesSRhFksZ/VYO0Y1nPK1inUgt506Tras67du3jz6t37UBEAZB5JAViw4wbdm6kA3MhSaeC6RkocAAAQLOGNFf+oXTEweXKTrBCl5dlBAMAAg/myZLEAwFxCADsqZoshYPKBVwsldd4djSC6LLuLhONLvLjx48iTa/QLuOOLBVN3JsZNMBsAASdYVz4ITkCjf6UAKP8hlavUDQAh0j70BIDAjgGnEUZpnZBQKIroPHh/NkuDAF0K6bZFIwQSCNo/+vggni7E0AFADPEoJ+GEFFZooU7MddSPez1NV9A6xoQlBmUICfbMP9IENZA+OwBACkTZSAOVAfEdNJ9rHkECgCIDXSNACPwkpBsvCdWiWJAC9QHAfRc26eSTUGYUzy+KjFGFHb8UdMwm4HgDyRWBDHQMUVt4Ep1A/DATCRpNsAFLPgqtswmRBMHiyUDWbEKNnFdkEUqEBL3jSZ+esJPhQPGowiYbufRDUCkvNhgFgAXhcgkAHmyySS0JoeOJGFXk0dw//XjyYkHRbCLNirCw0eYsbwn/9MqdzNgRBSwHeYjQiNsZpMQEjh4kmB0U0SgWfQhtgutA1BCyxRV0lDIcQiEAcNg/CjIjJAB0HvQGAKkQdI1iUZZr7rno/iMIAAa8cMIAALxBkF+XKDAABjH8kw8apq2AAQAYZBMsLO2FEANnPryTkDcAjFHQewMlBkkIA4RQWhFI/mPOCwBYsIMCKzg4KjcnDBbDAQBUAadAGlig4wETNFbQFpIN4IADWSBEDWv4wptHsFUAQE1BTQBwjUDgxACAAjEoAAAR6v0TwwChCGCABYTkCgB1B/F60DoE0JFQKDsWW6NBN74Wm0CbCDBADDdMAMAlCIWDXkG6bbKtLt5w/1OPQVUIkCVV17GT7uGIJ16cLsYEG04RAFD6j18DbKJwWH6NEV0uBLyA5DO1rLyOg0whxLDDBEEsUGID9BHhOQriMtAYABAS5DpVwNtcPCoMoIqj9ZA+kAYDWICMo2EZpA8APigUTwgClOJoOOepIhAuAJA1UDgDNI/gDQKEApU+6/YxEG0P/HK71lwb5LVBtHCLkD1KjxqRsfIhexBsAuVjgArkwFNvDsIMAPygIK8AAB2CZRDdlKY9V7gWv2DBQG5MZmiKy6AGN8gThqFhIH5pAkHKQQAV2IMghADA4JQ3ARUsrGEPq1FidsDAYNQOaT+KVThK05zEfGcg+QiBA/+QpIGtLWR53kMIwa5AEGkA4AT9m8AEYnWpUggkFwokSD8Oph6l3UkhuuoaiQwyhgMo7CDrYqLZjoWj/a3NgmJrCC8AoMaB6EIAYhDSCegQCTuU7AAY/IdgokCQSkzmGBxMpCIXiRJ+PIMWodDUANY2OXARxEiNYOA/fgEASYhLF6TQFMU0SZDTxTBiACgd0gCwBYHEL5MEKVpzgLMqgrDBWiwDQPISgkSFOCgXBeHYtJTUrRUQ4BwC+RYxCrKuE0kNAN5YSBjdN0aC5EMBOTvIK7DTRongz0b6Mwj//hGPAyggFchciC4A4IWCcDKbX7Omgyi5jn/lIRvgCAUB4LX/TEb6858AtcgzoHedmwngBSBUIUE2sZuGmu8f4fhBZxbgAHid0SCmTJ0MAWDFgaADACL8B3s6OhCRCeQ8De2Mtv6hAQcwpJfHCqRAgjZAJ7byH8+AoUCUkNLO0Ik2sULINAvyPoLYcFkFycUANBDNinwTbeEsyDj/UQuUCSAGk
|
|||
|
<figcaption class="figure-caption"><div class="markdown"><p>Area under \(1/\sqrt{x}\) over \([a,b]\) increases as \(a\) gets closer to \(0\). Will it grow unbounded or have a limit?</p>
|
|||
|
</div> </figcaption>
|
|||
|
</figure>
|
|||
|
</div>
|
|||
|
</div>
|
|||
|
</div>
|
|||
|
<section id="infinite-domains" class="level2" data-number="41.1">
|
|||
|
<h2 data-number="41.1" class="anchored" data-anchor-id="infinite-domains"><span class="header-section-number">41.1</span> Infinite domains</h2>
|
|||
|
<p>Let <span class="math inline">\(f(x)\)</span> be a reasonable function, so reasonable that for any <span class="math inline">\(a < b\)</span> the function is Riemann integrable, meaning <span class="math inline">\(\int_a^b f(x)dx\)</span> exists.</p>
|
|||
|
<p>What needs to be the case so that we can discuss the integral over the entire real number line?</p>
|
|||
|
<p>Clearly something. The function <span class="math inline">\(f(x) = 1\)</span> is reasonable by the idea above. Clearly the integral over and <span class="math inline">\([a,b]\)</span> is just <span class="math inline">\(b-a\)</span>, but the limit over an unbounded domain would be <span class="math inline">\(\infty\)</span>. Even though limits of infinity can be of interest in some cases, not so here. What will ensure that the area is finite over an infinite region?</p>
|
|||
|
<p>Or is that even the right question. Now consider <span class="math inline">\(f(x) = \sin(\pi x)\)</span>. Over every interval of the type <span class="math inline">\([-2n, 2n]\)</span> the area is <span class="math inline">\(0\)</span>, and over any interval, <span class="math inline">\([a,b]\)</span> the area never gets bigger than <span class="math inline">\(2\)</span>. But still this function does not have a well defined area on an infinite domain.</p>
|
|||
|
<p>The right question involves a limit. Fix a finite <span class="math inline">\(a\)</span>. We define the definite integral over <span class="math inline">\([a,\infty)\)</span> to be</p>
|
|||
|
<p><span class="math display">\[
|
|||
|
\int_a^\infty f(x) dx = \lim_{M \rightarrow \infty} \int_a^M f(x) dx,
|
|||
|
\]</span></p>
|
|||
|
<p>when the limit exists. Similarly, we define the definite integral over <span class="math inline">\((-\infty, a]\)</span> through</p>
|
|||
|
<p><span class="math display">\[
|
|||
|
\int_{-\infty}^a f(x) dx = \lim_{M \rightarrow -\infty} \int_M^a f(x) dx.
|
|||
|
\]</span></p>
|
|||
|
<p>For the interval <span class="math inline">\((-\infty, \infty)\)</span> we have need <em>both</em> these limits to exist, and then:</p>
|
|||
|
<p><span class="math display">\[
|
|||
|
\int_{-\infty}^\infty f(x) dx = \lim_{M \rightarrow -\infty} \int_M^a f(x) dx + \lim_{M \rightarrow \infty} \int_a^M f(x) dx.
|
|||
|
\]</span></p>
|
|||
|
<div class="callout-note callout callout-style-default callout-captioned">
|
|||
|
<div class="callout-header d-flex align-content-center">
|
|||
|
<div class="callout-icon-container">
|
|||
|
<i class="callout-icon"></i>
|
|||
|
</div>
|
|||
|
<div class="callout-caption-container flex-fill">
|
|||
|
Note
|
|||
|
</div>
|
|||
|
</div>
|
|||
|
<div class="callout-body-container callout-body">
|
|||
|
<p>When the integral exists, it is said to <em>converge</em>. If it doesn’t exist, it is said to <em>diverge</em>.</p>
|
|||
|
</div>
|
|||
|
</div>
|
|||
|
<section id="examples" class="level5">
|
|||
|
<h5 class="anchored" data-anchor-id="examples">Examples</h5>
|
|||
|
<ul>
|
|||
|
<li>The function <span class="math inline">\(f(x) = 1/x^2\)</span> is integrable over <span class="math inline">\([1, \infty)\)</span>, as this limit exists:</li>
|
|||
|
</ul>
|
|||
|
<p><span class="math display">\[
|
|||
|
\lim_{M \rightarrow \infty} \int_1^M \frac{1}{x^2}dx = \lim_{M \rightarrow \infty} -\frac{1}{x}\big|_1^M
|
|||
|
= \lim_{M \rightarrow \infty} 1 - \frac{1}{M} = 1.
|
|||
|
\]</span></p>
|
|||
|
<ul>
|
|||
|
<li>The function <span class="math inline">\(f(x) = 1/x^{1/2}\)</span> is not integrable over <span class="math inline">\([1, \infty)\)</span>, as this limit fails to exist:</li>
|
|||
|
</ul>
|
|||
|
<p><span class="math display">\[
|
|||
|
\lim_{M \rightarrow \infty} \int_1^M \frac{1}{x^{1/2}}dx = \lim_{M \rightarrow \infty} \frac{x^{1/2}}{1/2}\big|_1^M
|
|||
|
= \lim_{M \rightarrow \infty} 2\sqrt{M} - 2 = \infty.
|
|||
|
\]</span></p>
|
|||
|
<p>The limit is infinite, so does not exist except in an extended sense.</p>
|
|||
|
<ul>
|
|||
|
<li>The function <span class="math inline">\(x^n e^{-x}\)</span> for <span class="math inline">\(n = 1, 2, \dots\)</span> is integrable over <span class="math inline">\([0,\infty)\)</span>.</li>
|
|||
|
</ul>
|
|||
|
<p>Before showing this, we recall the fundamental theorem of calculus. The limit existing is the same as saying the limit of <span class="math inline">\(F(M) - F(a)\)</span> exists for an antiderivative of <span class="math inline">\(f(x)\)</span>.</p>
|
|||
|
<p>For this particular problem, it can be shown by integration by parts that for positive, integer values of <span class="math inline">\(n\)</span> that an antiderivative exists of the form <span class="math inline">\(F(x) = p(x)e^{-x}\)</span>, where <span class="math inline">\(p(x)\)</span> is a polynomial of degree <span class="math inline">\(n\)</span>. But we’ve seen that for any <span class="math inline">\(n>0\)</span>, <span class="math inline">\(\lim_{x \rightarrow \infty} x^n e^{-x} = 0\)</span>, so the same is true for any polynomial. So, <span class="math inline">\(\lim_{M \rightarrow \infty} F(M) - F(1) = -F(1)\)</span>.</p>
|
|||
|
<ul>
|
|||
|
<li>The function <span class="math inline">\(e^x\)</span> is integrable over <span class="math inline">\((-\infty, a]\)</span> but not</li>
|
|||
|
</ul>
|
|||
|
<p><span class="math display">\[
|
|||
|
[a, \infty)
|
|||
|
\]</span></p>
|
|||
|
<p>for any finite <span class="math inline">\(a\)</span>. This is because, <span class="math inline">\(F(M) = e^x\)</span> and this has a limit as <span class="math inline">\(x\)</span> goes to <span class="math inline">\(-\infty\)</span>, but not <span class="math inline">\(\infty\)</span>.</p>
|
|||
|
<ul>
|
|||
|
<li><p>Let <span class="math inline">\(f(x) = x e^{-x^2}\)</span>. This function has an integral over <span class="math inline">\([0, \infty)\)</span> and more generally <span class="math inline">\((-\infty, \infty)\)</span>. To see, we note that as it is an odd function, the area from <span class="math inline">\(0\)</span> to <span class="math inline">\(M\)</span> is the opposite sign of that from <span class="math inline">\(-M\)</span> to <span class="math inline">\(0\)</span>. So <span class="math inline">\(\lim_{M \rightarrow \infty} (F(M) - F(0)) = \lim_{M \rightarrow -\infty} (F(0) - (-F(\lvert M\lvert)))\)</span>. We only then need to investigate the one limit. But we can see by substitution with <span class="math inline">\(u=x^2\)</span>, that an antiderivative is <span class="math inline">\(F(x) = (-1/2) \cdot e^{-x^2}\)</span>. Clearly, <span class="math inline">\(\lim_{M \rightarrow \infty}F(M) = 0\)</span>, so the answer is well defined, and the area from <span class="math inline">\(0\)</span> to <span class="math inline">\(\infty\)</span> is just <span class="math inline">\(e/2\)</span>. From <span class="math inline">\(-\infty\)</span> to <span class="math inline">\(0\)</span> it is <span class="math inline">\(-e/2\)</span> and the total area is <span class="math inline">\(0\)</span>, as the two sides “cancel” out.</p></li>
|
|||
|
<li><p>Let <span class="math inline">\(f(x) = \sin(x)\)</span>. Even though <span class="math inline">\(\lim_{M \rightarrow \infty} (F(M) - F(-M) ) = 0\)</span>, this function is not integrable. The fact is we need <em>both</em> the limit <span class="math inline">\(F(M)\)</span> and <span class="math inline">\(F(-M)\)</span> to exist as <span class="math inline">\(M\)</span> goes to <span class="math inline">\(\infty\)</span>. In this case, even though the area cancels if <span class="math inline">\(\infty\)</span> is approached at the same rate, this isn’t sufficient to guarantee the two limits exists independently.</p></li>
|
|||
|
<li><p>Will the function <span class="math inline">\(f(x) = 1/(x\cdot(\log(x))^2)\)</span> have an integral over <span class="math inline">\([e, \infty)\)</span>?</p></li>
|
|||
|
</ul>
|
|||
|
<p>We first find an antiderivative using the <span class="math inline">\(u\)</span>-substitution <span class="math inline">\(u(x) = \log(x)\)</span>:</p>
|
|||
|
<p><span class="math display">\[
|
|||
|
\int_e^M \frac{e}{x \log(x)^{2}} dx
|
|||
|
= \int_{\log(e)}^{\log(M)} \frac{1}{u^{2}} du
|
|||
|
= \frac{-1}{u} \big|_{1}^{\log(M)}
|
|||
|
= \frac{-1}{\log(M)} - \frac{-1}{1}
|
|||
|
= 1 - \frac{1}{M}.
|
|||
|
\]</span></p>
|
|||
|
<p>As <span class="math inline">\(M\)</span> goes to <span class="math inline">\(\infty\)</span>, this will converge to <span class="math inline">\(1\)</span>.</p>
|
|||
|
<ul>
|
|||
|
<li>The sinc function <span class="math inline">\(f(x) = \sin(\pi x)/(\pi x)\)</span> does not have a nice antiderivative. Seeing if the limit exists is a bit of a problem. However, this function is important enough that there is a built-in function, <code>Si</code>, that computes <span class="math inline">\(\int_0^x \sin(u)/u\cdot du\)</span>. This function can be used through <code>sympy.Si(...)</code>:</li>
|
|||
|
</ul>
|
|||
|
<div class="cell" data-execution_count="5">
|
|||
|
<div class="sourceCode cell-code" id="cb2"><pre class="sourceCode julia code-with-copy"><code class="sourceCode julia"><span id="cb2-1"><a href="#cb2-1" aria-hidden="true" tabindex="-1"></a><span class="pp">@syms</span> M</span>
|
|||
|
<span id="cb2-2"><a href="#cb2-2" aria-hidden="true" tabindex="-1"></a><span class="fu">limit</span>(sympy.<span class="fu">Si</span>(M), M <span class="op">=></span> oo)</span></code><button title="Copy to Clipboard" class="code-copy-button"><i class="bi"></i></button></pre></div>
|
|||
|
<div class="cell-output cell-output-display" data-execution_count="6">
|
|||
|
<span class="math-left-align" style="padding-left: 4px; width:0; float:left;">
|
|||
|
\[
|
|||
|
\frac{\pi}{2}
|
|||
|
\]
|
|||
|
</span>
|
|||
|
</div>
|
|||
|
</div>
|
|||
|
</section>
|
|||
|
<section id="numeric-integration" class="level3" data-number="41.1.1">
|
|||
|
<h3 data-number="41.1.1" class="anchored" data-anchor-id="numeric-integration"><span class="header-section-number">41.1.1</span> Numeric integration</h3>
|
|||
|
<p>The <code>quadgk</code> function (available through <code>QuadGK</code>) is able to accept <code>Inf</code> and <code>-Inf</code> as endpoints of the interval. For example, this will integrate <span class="math inline">\(e^{-x^2/2}\)</span> over the real line:</p>
|
|||
|
<div class="cell" data-execution_count="6">
|
|||
|
<div class="sourceCode cell-code" id="cb3"><pre class="sourceCode julia code-with-copy"><code class="sourceCode julia"><span id="cb3-1"><a href="#cb3-1" aria-hidden="true" tabindex="-1"></a><span class="fu">f</span>(x) <span class="op">=</span> <span class="fu">exp</span>(<span class="op">-</span>x<span class="op">^</span><span class="fl">2</span><span class="op">/</span><span class="fl">2</span>)</span>
|
|||
|
<span id="cb3-2"><a href="#cb3-2" aria-hidden="true" tabindex="-1"></a><span class="fu">quadgk</span>(f, <span class="op">-</span><span class="cn">Inf</span>, <span class="cn">Inf</span>)</span></code><button title="Copy to Clipboard" class="code-copy-button"><i class="bi"></i></button></pre></div>
|
|||
|
<div class="cell-output cell-output-display" data-execution_count="7">
|
|||
|
<pre><code>(2.506628274639168, 3.608438072243189e-8)</code></pre>
|
|||
|
</div>
|
|||
|
</div>
|
|||
|
<p>(If may not be obvious, but this is <span class="math inline">\(\sqrt{2\pi}\)</span>.)</p>
|
|||
|
</section>
|
|||
|
</section>
|
|||
|
<section id="singularities" class="level2" data-number="41.2">
|
|||
|
<h2 data-number="41.2" class="anchored" data-anchor-id="singularities"><span class="header-section-number">41.2</span> Singularities</h2>
|
|||
|
<p>Suppose <span class="math inline">\(\lim_{x \rightarrow c}f(x) = \infty\)</span> or <span class="math inline">\(-\infty\)</span>. Then a Riemann sum that contains an interval including <span class="math inline">\(c\)</span> will not be finite if the point chosen in the interval is <span class="math inline">\(c\)</span>. Though we could choose another point, this is not enough as the definition must hold for any choice of the <span class="math inline">\(c_i\)</span>.</p>
|
|||
|
<p>However, if <span class="math inline">\(c\)</span> is isolated, we can get close to <span class="math inline">\(c\)</span> and see how the area changes.</p>
|
|||
|
<p>Suppose <span class="math inline">\(a < c\)</span>, we define <span class="math inline">\(\int_a^c f(x) dx = \lim_{M \rightarrow c-} \int_a^c f(x) dx\)</span>. If this limit exists, the definite integral with <span class="math inline">\(c\)</span> is well defined. Similarly, the integral from <span class="math inline">\(c\)</span> to <span class="math inline">\(b\)</span>, where <span class="math inline">\(b > c\)</span>, can be defined by a right limit going to <span class="math inline">\(c\)</span>. The integral from <span class="math inline">\(a\)</span> to <span class="math inline">\(b\)</span> will exist if both the limits are finite.</p>
|
|||
|
<section id="examples-1" class="level5">
|
|||
|
<h5 class="anchored" data-anchor-id="examples-1">Examples</h5>
|
|||
|
<ul>
|
|||
|
<li>Consider the example of the initial illustration, <span class="math inline">\(f(x) = 1/\sqrt{x}\)</span> at <span class="math inline">\(0\)</span>. Here <span class="math inline">\(f(0)= \infty\)</span>, so the usual notion of a limit won’t apply to <span class="math inline">\(\int_0^1 f(x) dx\)</span>. However,</li>
|
|||
|
</ul>
|
|||
|
<p><span class="math display">\[
|
|||
|
\lim_{M \rightarrow 0+} \int_M^1 \frac{1}{\sqrt{x}} dx
|
|||
|
= \lim_{M \rightarrow 0+} \frac{\sqrt{x}}{1/2} \big|_M^1
|
|||
|
= \lim_{M \rightarrow 0+} 2(1) - 2\sqrt{M} = 2.
|
|||
|
\]</span></p>
|
|||
|
<div class="callout-note callout callout-style-default callout-captioned">
|
|||
|
<div class="callout-header d-flex align-content-center">
|
|||
|
<div class="callout-icon-container">
|
|||
|
<i class="callout-icon"></i>
|
|||
|
</div>
|
|||
|
<div class="callout-caption-container flex-fill">
|
|||
|
Note
|
|||
|
</div>
|
|||
|
</div>
|
|||
|
<div class="callout-body-container callout-body">
|
|||
|
<p>The cases <span class="math inline">\(f(x) = x^{-n}\)</span> for <span class="math inline">\(n > 0\)</span> are tricky to keep straight. For <span class="math inline">\(n > 1\)</span>, the functions can be integrated over <span class="math inline">\([1,\infty)\)</span>, but not <span class="math inline">\((0,1]\)</span>. For <span class="math inline">\(0 < n < 1\)</span>, the functions can be integrated over <span class="math inline">\((0,1]\)</span> but not <span class="math inline">\([1, \infty)\)</span>.</p>
|
|||
|
</div>
|
|||
|
</div>
|
|||
|
<ul>
|
|||
|
<li>Now consider <span class="math inline">\(f(x) = 1/x\)</span>. Is this integral <span class="math inline">\(\int_0^1 1/x \cdot dx\)</span> defined? It will be <em>if</em> this limit exists:</li>
|
|||
|
</ul>
|
|||
|
<p><span class="math display">\[
|
|||
|
\lim_{M \rightarrow 0+} \int_M^1 \frac{1}{x} dx
|
|||
|
= \lim_{M \rightarrow 0+} \log(x) \big|_M^1
|
|||
|
= \lim_{M \rightarrow 0+} \log(1) - \log(M) = \infty.
|
|||
|
\]</span></p>
|
|||
|
<p>As the limit does not exist, the function is not integrable around <span class="math inline">\(0\)</span>.</p>
|
|||
|
<ul>
|
|||
|
<li><code>SymPy</code> may give answers which do not coincide with our definitions, as it uses complex numbers as a default assumption. In this case it returns the proper answer when integrated from <span class="math inline">\(0\)</span> to <span class="math inline">\(1\)</span> and <code>NaN</code> for an integral over <span class="math inline">\((-1,1)\)</span>:</li>
|
|||
|
</ul>
|
|||
|
<div class="cell" data-execution_count="7">
|
|||
|
<div class="sourceCode cell-code" id="cb5"><pre class="sourceCode julia code-with-copy"><code class="sourceCode julia"><span id="cb5-1"><a href="#cb5-1" aria-hidden="true" tabindex="-1"></a><span class="pp">@syms</span> x</span>
|
|||
|
<span id="cb5-2"><a href="#cb5-2" aria-hidden="true" tabindex="-1"></a><span class="fu">integrate</span>(<span class="fl">1</span><span class="op">/</span>x, (x, <span class="fl">0</span>, <span class="fl">1</span>)), <span class="fu">integrate</span>(<span class="fl">1</span><span class="op">/</span>x, (x, <span class="op">-</span><span class="fl">1</span>, <span class="fl">1</span>))</span></code><button title="Copy to Clipboard" class="code-copy-button"><i class="bi"></i></button></pre></div>
|
|||
|
<div class="cell-output cell-output-display" data-execution_count="8">
|
|||
|
<pre><code>(oo, nan)</code></pre>
|
|||
|
</div>
|
|||
|
</div>
|
|||
|
<ul>
|
|||
|
<li>Suppose you know <span class="math inline">\(\int_1^\infty x^2 f(x) dx\)</span> exists. Does this imply <span class="math inline">\(\int_0^1 f(1/x) dx\)</span> exists?</li>
|
|||
|
</ul>
|
|||
|
<p>We need to consider the limit of <span class="math inline">\(\int_M^1 f(1/x) dx\)</span>. We try the <span class="math inline">\(u\)</span>-substitution <span class="math inline">\(u(x) = 1/x\)</span>. This gives <span class="math inline">\(du = -(1/x^2)dx = -u^2 dx\)</span>. So, the substitution becomes:</p>
|
|||
|
<p><span class="math display">\[
|
|||
|
\int_M^1 f(1/x) dx = \int_{1/M}^{1/1} f(u) (-u^2) du = \int_1^{1/M} u^2 f(u) du.
|
|||
|
\]</span></p>
|
|||
|
<p>But the limit as <span class="math inline">\(M \rightarrow 0\)</span> of <span class="math inline">\(1/M\)</span> is the same going to <span class="math inline">\(\infty\)</span>, so the right side will converge by the assumption. Thus we get <span class="math inline">\(f(1/x)\)</span> is integrable over <span class="math inline">\((0,1]\)</span>.</p>
|
|||
|
</section>
|
|||
|
<section id="numeric-integration-1" class="level3" data-number="41.2.1">
|
|||
|
<h3 data-number="41.2.1" class="anchored" data-anchor-id="numeric-integration-1"><span class="header-section-number">41.2.1</span> Numeric integration</h3>
|
|||
|
<p>So far our use of the <code>quadgk</code> function specified the region to integrate via <code>a</code>, <code>b</code>, as in <code>quadgk(f, a, b)</code>. In fact, it can specify values in between for which the function should not be sampled. For example, were we to integrate <span class="math inline">\(1/\sqrt{\lvert x\rvert}\)</span> over <span class="math inline">\([-1,1]\)</span>, we would want to avoid <span class="math inline">\(0\)</span> as a point to sample. Here is how:</p>
|
|||
|
<div class="cell" data-hold="true" data-execution_count="8">
|
|||
|
<div class="sourceCode cell-code" id="cb7"><pre class="sourceCode julia code-with-copy"><code class="sourceCode julia"><span id="cb7-1"><a href="#cb7-1" aria-hidden="true" tabindex="-1"></a><span class="fu">f</span>(x) <span class="op">=</span> <span class="fl">1</span> <span class="op">/</span> <span class="fu">sqrt</span>(<span class="fu">abs</span>(x))</span>
|
|||
|
<span id="cb7-2"><a href="#cb7-2" aria-hidden="true" tabindex="-1"></a><span class="fu">quadgk</span>(f, <span class="op">-</span><span class="fl">1</span>, <span class="fl">0</span>, <span class="fl">1</span>)</span></code><button title="Copy to Clipboard" class="code-copy-button"><i class="bi"></i></button></pre></div>
|
|||
|
<div class="cell-output cell-output-display" data-execution_count="9">
|
|||
|
<pre><code>(3.999999962817228, 5.736423067171012e-8)</code></pre>
|
|||
|
</div>
|
|||
|
</div>
|
|||
|
<p>Just trying <code>quadgk(f, -1, 1)</code> leads to a <code>DomainError</code>, as <code>0</code> will be one of the points sampled. The general call is like <code>quadgk(f, a, b, c, d,...)</code> which integrates over <span class="math inline">\((a,b)\)</span> and <span class="math inline">\((b,c)\)</span> and <span class="math inline">\((c,d)\)</span>, <span class="math inline">\(\dots\)</span>. The algorithm is not supposed to evaluate the function at the endpoints of the intervals.</p>
|
|||
|
</section>
|
|||
|
</section>
|
|||
|
<section id="probability-applications" class="level2" data-number="41.3">
|
|||
|
<h2 data-number="41.3" class="anchored" data-anchor-id="probability-applications"><span class="header-section-number">41.3</span> Probability applications</h2>
|
|||
|
<p>A probability density is a function <span class="math inline">\(f(x) \geq 0\)</span> which is integrable on <span class="math inline">\((-\infty, \infty)\)</span> and for which <span class="math inline">\(\int_{-\infty}^\infty f(x) dx =1\)</span>. The cumulative distribution function is defined by <span class="math inline">\(F(x)=\int_{-\infty}^x f(u) du\)</span>.</p>
|
|||
|
<p>Probability densities are good example of using improper integrals.</p>
|
|||
|
<ul>
|
|||
|
<li>Show that <span class="math inline">\(f(x) = (1/\pi) (1/(1 + x^2))\)</span> is a probability density function.</li>
|
|||
|
</ul>
|
|||
|
<p>We need to show that the integral exists and is <span class="math inline">\(1\)</span>. For this, we use the fact that <span class="math inline">\((1/\pi) \cdot \tan^{-1}(x)\)</span> is an antiderivative. Then we have:</p>
|
|||
|
<p><span class="math display">\[
|
|||
|
\lim_{M \rightarrow \infty} F(M) = (1/\pi) \cdot \pi/2
|
|||
|
\]</span></p>
|
|||
|
<p>and as <span class="math inline">\(\tan^{-1}(x)\)</span> is odd, we must have <span class="math inline">\(F(-\infty) = \lim_{M \rightarrow -\infty} f(M) = -(1/\pi) \cdot \pi/2\)</span>. All told, <span class="math inline">\(F(\infty) - F(-\infty) = 1/2 - (-1/2) = 1\)</span>.</p>
|
|||
|
<ul>
|
|||
|
<li>Show that <span class="math inline">\(f(x) = 1/(b-a)\)</span> for <span class="math inline">\(a \leq x \leq b\)</span> and <span class="math inline">\(0\)</span> otherwise is a probability density.</li>
|
|||
|
</ul>
|
|||
|
<p>The integral for <span class="math inline">\(-\infty\)</span> to <span class="math inline">\(a\)</span> of <span class="math inline">\(f(x)\)</span> is just an integral of the constant <span class="math inline">\(0\)</span>, so will be <span class="math inline">\(0\)</span>. (This is the only constant with finite area over an infinite domain.) Similarly, the integral from <span class="math inline">\(b\)</span> to <span class="math inline">\(\infty\)</span> will be <span class="math inline">\(0\)</span>. This means:</p>
|
|||
|
<p><span class="math display">\[
|
|||
|
\int_{-\infty}^\infty f(x) dx = \int_a^b \frac{1}{b-a} dx = 1.
|
|||
|
\]</span></p>
|
|||
|
<p>(One might also comment that <span class="math inline">\(f\)</span> is Riemann integrable on any <span class="math inline">\([0,M]\)</span> despite being discontinuous at <span class="math inline">\(a\)</span> and <span class="math inline">\(b\)</span>.)</p>
|
|||
|
<ul>
|
|||
|
<li>Show that if <span class="math inline">\(f(x)\)</span> is a probability density then so is <span class="math inline">\(f(x-c)\)</span> for any <span class="math inline">\(c\)</span>.</li>
|
|||
|
</ul>
|
|||
|
<p>We have by the <span class="math inline">\(u\)</span>-substitution</p>
|
|||
|
<p><span class="math display">\[
|
|||
|
\int_{-\infty}^\infty f(x-c)dx = \int_{u(-\infty)}^{u(\infty)} f(u) du = \int_{-\infty}^\infty f(u) du = 1.
|
|||
|
\]</span></p>
|
|||
|
<p>The key is that we can use the regular <span class="math inline">\(u\)</span>-substitution formula provided <span class="math inline">\(\lim_{M \rightarrow \infty} u(M) = u(\infty)\)</span> is defined. (The <em>informal</em> notation <span class="math inline">\(u(\infty)\)</span> is defined by that limit.)</p>
|
|||
|
<ul>
|
|||
|
<li>If <span class="math inline">\(f(x)\)</span> is a probability density, then so is <span class="math inline">\((1/h) f((x-c)/h)\)</span> for any <span class="math inline">\(c, h > 0\)</span>.</li>
|
|||
|
</ul>
|
|||
|
<p>Again, by a <span class="math inline">\(u\)</span> substitution with, now, <span class="math inline">\(u(x) = (x-c)/h\)</span>, we have <span class="math inline">\(du = (1/h) \cdot dx\)</span> and the result follows just as before:</p>
|
|||
|
<p><span class="math display">\[
|
|||
|
\int_{-\infty}^\infty \frac{1}{h}f(\frac{x-c}{h})dx = \int_{u(-\infty)}^{u(\infty)} f(u) du = \int_{-\infty}^\infty f(u) du = 1.
|
|||
|
\]</span></p>
|
|||
|
<ul>
|
|||
|
<li>If <span class="math inline">\(F(x) = 1 - e^{-x}\)</span>, for <span class="math inline">\(x \geq 0\)</span>, and <span class="math inline">\(0\)</span> otherwise, find <span class="math inline">\(f(x)\)</span>.</li>
|
|||
|
</ul>
|
|||
|
<p>We want to just say <span class="math inline">\(F'(x)= e^{-x}\)</span> so <span class="math inline">\(f(x) = e^{-x}\)</span>. But some care is needed. First, that isn’t right. The derivative for <span class="math inline">\(x<0\)</span> of <span class="math inline">\(F(x)\)</span> is <span class="math inline">\(0\)</span>, so <span class="math inline">\(f(x) = 0\)</span> if <span class="math inline">\(x < 0\)</span>. What about for <span class="math inline">\(x>0\)</span>? The derivative is <span class="math inline">\(e^{-x}\)</span>, but is that the right answer? <span class="math inline">\(F(x) = \int_{-\infty}^x f(u) du\)</span>, so we have to at least discuss if the <span class="math inline">\(-\infty\)</span> affects things. In this case, and in general the answer is <em>no</em>. For any <span class="math inline">\(x\)</span> we can find <span class="math inline">\(M < x\)</span> so that we have <span class="math inline">\(F(x) = \int_{-\infty}^M f(u) du + \int_M^x f(u) du\)</span>. The first part is a constant, so will have derivative <span class="math inline">\(0\)</span>, the second will have derivative <span class="math inline">\(f(x)\)</span>, if the derivative exists (and it will exist at <span class="math inline">\(x\)</span> if the derivative is continuous in a neighborhood of <span class="math inline">\(x\)</span>).</p>
|
|||
|
<p>Finally, at <span class="math inline">\(x=0\)</span> we have an issue, as <span class="math inline">\(F'(0)\)</span> does not exist. The left limit of the secant line approximation is <span class="math inline">\(0\)</span>, the right limit of the secant line approximation is <span class="math inline">\(1\)</span>. So, we can take <span class="math inline">\(f(x) = e^{-x}\)</span> for <span class="math inline">\(x > 0\)</span> and <span class="math inline">\(0\)</span> otherwise, noting that redefining <span class="math inline">\(f(x)\)</span> at a point will not effect the integral as long as the point is finite.</p>
|
|||
|
</section>
|
|||
|
<section id="questions" class="level2" data-number="41.4">
|
|||
|
<h2 data-number="41.4" class="anchored" data-anchor-id="questions"><span class="header-section-number">41.4</span> Questions</h2>
|
|||
|
<section id="question" class="level6">
|
|||
|
<h6 class="anchored" data-anchor-id="question">Question</h6>
|
|||
|
<p>Is <span class="math inline">\(f(x) = 1/x^{100}\)</span> integrable around <span class="math inline">\(0\)</span>?</p>
|
|||
|
<div class="cell" data-hold="true" data-execution_count="9">
|
|||
|
<div class="cell-output cell-output-display" data-execution_count="10">
|
|||
|
<form class="mx-2 my-3 mw-100" name="WeaveQuestion" data-id="13835909680318883433" data-controltype="">
|
|||
|
<div class="form-group ">
|
|||
|
<div class="controls">
|
|||
|
<div class="form" id="controls_13835909680318883433">
|
|||
|
<div style="padding-top: 5px">
|
|||
|
<div class="form-check">
|
|||
|
<label class="form-check-label" for="radio_13835909680318883433_1">
|
|||
|
<input class="form-check-input" type="radio" name="radio_13835909680318883433" id="radio_13835909680318883433_1" value="1">
|
|||
|
|
|||
|
<span class="label-body px-1">
|
|||
|
Yes
|
|||
|
</span>
|
|||
|
</label>
|
|||
|
</div>
|
|||
|
<div class="form-check">
|
|||
|
<label class="form-check-label" for="radio_13835909680318883433_2">
|
|||
|
<input class="form-check-input" type="radio" name="radio_13835909680318883433" id="radio_13835909680318883433_2" value="2">
|
|||
|
|
|||
|
<span class="label-body px-1">
|
|||
|
No
|
|||
|
</span>
|
|||
|
</label>
|
|||
|
</div>
|
|||
|
|
|||
|
|
|||
|
</div>
|
|||
|
</div>
|
|||
|
<div id="13835909680318883433_message" style="padding-bottom: 15px"></div>
|
|||
|
</div>
|
|||
|
</div>
|
|||
|
</form>
|
|||
|
|
|||
|
<script text="text/javascript">
|
|||
|
document.querySelectorAll('input[name="radio_13835909680318883433"]').forEach(function(rb) {
|
|||
|
rb.addEventListener("change", function() {
|
|||
|
var correct = rb.value == 2;
|
|||
|
var msgBox = document.getElementById('13835909680318883433_message');
|
|||
|
if(correct) {
|
|||
|
msgBox.innerHTML = "<div class='pluto-output admonition note alert alert-success'><span> 👍 Correct </span></div>";
|
|||
|
var explanation = document.getElementById("explanation_13835909680318883433")
|
|||
|
if (explanation != null) {
|
|||
|
explanation.style.display = "none";
|
|||
|
}
|
|||
|
} else {
|
|||
|
msgBox.innerHTML = "<div class='pluto-output admonition alert alert-danger'><span>👎 Incorrect </span></div>";
|
|||
|
var explanation = document.getElementById("explanation_13835909680318883433")
|
|||
|
if (explanation != null) {
|
|||
|
explanation.style.display = "block";
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
})});
|
|||
|
|
|||
|
</script>
|
|||
|
</div>
|
|||
|
</div>
|
|||
|
</section>
|
|||
|
<section id="question-1" class="level6">
|
|||
|
<h6 class="anchored" data-anchor-id="question-1">Question</h6>
|
|||
|
<p>Is <span class="math inline">\(f(x) = 1/x^{1/3}\)</span> integrable around <span class="math inline">\(0\)</span>?</p>
|
|||
|
<div class="cell" data-hold="true" data-execution_count="10">
|
|||
|
<div class="cell-output cell-output-display" data-execution_count="11">
|
|||
|
<form class="mx-2 my-3 mw-100" name="WeaveQuestion" data-id="6099729258384583292" data-controltype="">
|
|||
|
<div class="form-group ">
|
|||
|
<div class="controls">
|
|||
|
<div class="form" id="controls_6099729258384583292">
|
|||
|
<div style="padding-top: 5px">
|
|||
|
<div class="form-check">
|
|||
|
<label class="form-check-label" for="radio_6099729258384583292_1">
|
|||
|
<input class="form-check-input" type="radio" name="radio_6099729258384583292" id="radio_6099729258384583292_1" value="1">
|
|||
|
|
|||
|
<span class="label-body px-1">
|
|||
|
Yes
|
|||
|
</span>
|
|||
|
</label>
|
|||
|
</div>
|
|||
|
<div class="form-check">
|
|||
|
<label class="form-check-label" for="radio_6099729258384583292_2">
|
|||
|
<input class="form-check-input" type="radio" name="radio_6099729258384583292" id="radio_6099729258384583292_2" value="2">
|
|||
|
|
|||
|
<span class="label-body px-1">
|
|||
|
No
|
|||
|
</span>
|
|||
|
</label>
|
|||
|
</div>
|
|||
|
|
|||
|
|
|||
|
</div>
|
|||
|
</div>
|
|||
|
<div id="6099729258384583292_message" style="padding-bottom: 15px"></div>
|
|||
|
</div>
|
|||
|
</div>
|
|||
|
</form>
|
|||
|
|
|||
|
<script text="text/javascript">
|
|||
|
document.querySelectorAll('input[name="radio_6099729258384583292"]').forEach(function(rb) {
|
|||
|
rb.addEventListener("change", function() {
|
|||
|
var correct = rb.value == 1;
|
|||
|
var msgBox = document.getElementById('6099729258384583292_message');
|
|||
|
if(correct) {
|
|||
|
msgBox.innerHTML = "<div class='pluto-output admonition note alert alert-success'><span> 👍 Correct </span></div>";
|
|||
|
var explanation = document.getElementById("explanation_6099729258384583292")
|
|||
|
if (explanation != null) {
|
|||
|
explanation.style.display = "none";
|
|||
|
}
|
|||
|
} else {
|
|||
|
msgBox.innerHTML = "<div class='pluto-output admonition alert alert-danger'><span>👎 Incorrect </span></div>";
|
|||
|
var explanation = document.getElementById("explanation_6099729258384583292")
|
|||
|
if (explanation != null) {
|
|||
|
explanation.style.display = "block";
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
})});
|
|||
|
|
|||
|
</script>
|
|||
|
</div>
|
|||
|
</div>
|
|||
|
</section>
|
|||
|
<section id="question-2" class="level6">
|
|||
|
<h6 class="anchored" data-anchor-id="question-2">Question</h6>
|
|||
|
<p>Is <span class="math inline">\(f(x) = x\cdot\log(x)\)</span> integrable on <span class="math inline">\([1,\infty)\)</span>?</p>
|
|||
|
<div class="cell" data-hold="true" data-execution_count="11">
|
|||
|
<div class="cell-output cell-output-display" data-execution_count="12">
|
|||
|
<form class="mx-2 my-3 mw-100" name="WeaveQuestion" data-id="9048565589177736885" data-controltype="">
|
|||
|
<div class="form-group ">
|
|||
|
<div class="controls">
|
|||
|
<div class="form" id="controls_9048565589177736885">
|
|||
|
<div style="padding-top: 5px">
|
|||
|
<div class="form-check">
|
|||
|
<label class="form-check-label" for="radio_9048565589177736885_1">
|
|||
|
<input class="form-check-input" type="radio" name="radio_9048565589177736885" id="radio_9048565589177736885_1" value="1">
|
|||
|
|
|||
|
<span class="label-body px-1">
|
|||
|
Yes
|
|||
|
</span>
|
|||
|
</label>
|
|||
|
</div>
|
|||
|
<div class="form-check">
|
|||
|
<label class="form-check-label" for="radio_9048565589177736885_2">
|
|||
|
<input class="form-check-input" type="radio" name="radio_9048565589177736885" id="radio_9048565589177736885_2" value="2">
|
|||
|
|
|||
|
<span class="label-body px-1">
|
|||
|
No
|
|||
|
</span>
|
|||
|
</label>
|
|||
|
</div>
|
|||
|
|
|||
|
|
|||
|
</div>
|
|||
|
</div>
|
|||
|
<div id="9048565589177736885_message" style="padding-bottom: 15px"></div>
|
|||
|
</div>
|
|||
|
</div>
|
|||
|
</form>
|
|||
|
|
|||
|
<script text="text/javascript">
|
|||
|
document.querySelectorAll('input[name="radio_9048565589177736885"]').forEach(function(rb) {
|
|||
|
rb.addEventListener("change", function() {
|
|||
|
var correct = rb.value == 2;
|
|||
|
var msgBox = document.getElementById('9048565589177736885_message');
|
|||
|
if(correct) {
|
|||
|
msgBox.innerHTML = "<div class='pluto-output admonition note alert alert-success'><span> 👍 Correct </span></div>";
|
|||
|
var explanation = document.getElementById("explanation_9048565589177736885")
|
|||
|
if (explanation != null) {
|
|||
|
explanation.style.display = "none";
|
|||
|
}
|
|||
|
} else {
|
|||
|
msgBox.innerHTML = "<div class='pluto-output admonition alert alert-danger'><span>👎 Incorrect </span></div>";
|
|||
|
var explanation = document.getElementById("explanation_9048565589177736885")
|
|||
|
if (explanation != null) {
|
|||
|
explanation.style.display = "block";
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
})});
|
|||
|
|
|||
|
</script>
|
|||
|
</div>
|
|||
|
</div>
|
|||
|
</section>
|
|||
|
<section id="question-3" class="level6">
|
|||
|
<h6 class="anchored" data-anchor-id="question-3">Question</h6>
|
|||
|
<p>Is <span class="math inline">\(f(x) = \log(x)/ x\)</span> integrable on <span class="math inline">\([1,\infty)\)</span>?</p>
|
|||
|
<div class="cell" data-hold="true" data-execution_count="12">
|
|||
|
<div class="cell-output cell-output-display" data-execution_count="13">
|
|||
|
<form class="mx-2 my-3 mw-100" name="WeaveQuestion" data-id="10259051259194643533" data-controltype="">
|
|||
|
<div class="form-group ">
|
|||
|
<div class="controls">
|
|||
|
<div class="form" id="controls_10259051259194643533">
|
|||
|
<div style="padding-top: 5px">
|
|||
|
<div class="form-check">
|
|||
|
<label class="form-check-label" for="radio_10259051259194643533_1">
|
|||
|
<input class="form-check-input" type="radio" name="radio_10259051259194643533" id="radio_10259051259194643533_1" value="1">
|
|||
|
|
|||
|
<span class="label-body px-1">
|
|||
|
Yes
|
|||
|
</span>
|
|||
|
</label>
|
|||
|
</div>
|
|||
|
<div class="form-check">
|
|||
|
<label class="form-check-label" for="radio_10259051259194643533_2">
|
|||
|
<input class="form-check-input" type="radio" name="radio_10259051259194643533" id="radio_10259051259194643533_2" value="2">
|
|||
|
|
|||
|
<span class="label-body px-1">
|
|||
|
No
|
|||
|
</span>
|
|||
|
</label>
|
|||
|
</div>
|
|||
|
|
|||
|
|
|||
|
</div>
|
|||
|
</div>
|
|||
|
<div id="10259051259194643533_message" style="padding-bottom: 15px"></div>
|
|||
|
</div>
|
|||
|
</div>
|
|||
|
</form>
|
|||
|
|
|||
|
<script text="text/javascript">
|
|||
|
document.querySelectorAll('input[name="radio_10259051259194643533"]').forEach(function(rb) {
|
|||
|
rb.addEventListener("change", function() {
|
|||
|
var correct = rb.value == 2;
|
|||
|
var msgBox = document.getElementById('10259051259194643533_message');
|
|||
|
if(correct) {
|
|||
|
msgBox.innerHTML = "<div class='pluto-output admonition note alert alert-success'><span> 👍 Correct </span></div>";
|
|||
|
var explanation = document.getElementById("explanation_10259051259194643533")
|
|||
|
if (explanation != null) {
|
|||
|
explanation.style.display = "none";
|
|||
|
}
|
|||
|
} else {
|
|||
|
msgBox.innerHTML = "<div class='pluto-output admonition alert alert-danger'><span>👎 Incorrect </span></div>";
|
|||
|
var explanation = document.getElementById("explanation_10259051259194643533")
|
|||
|
if (explanation != null) {
|
|||
|
explanation.style.display = "block";
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
})});
|
|||
|
|
|||
|
</script>
|
|||
|
</div>
|
|||
|
</div>
|
|||
|
</section>
|
|||
|
<section id="question-4" class="level6">
|
|||
|
<h6 class="anchored" data-anchor-id="question-4">Question</h6>
|
|||
|
<p>Is <span class="math inline">\(f(x) = \log(x)\)</span> integrable on <span class="math inline">\([1,\infty)\)</span>?</p>
|
|||
|
<div class="cell" data-hold="true" data-execution_count="13">
|
|||
|
<div class="cell-output cell-output-display" data-execution_count="14">
|
|||
|
<form class="mx-2 my-3 mw-100" name="WeaveQuestion" data-id="10140134411173477490" data-controltype="">
|
|||
|
<div class="form-group ">
|
|||
|
<div class="controls">
|
|||
|
<div class="form" id="controls_10140134411173477490">
|
|||
|
<div style="padding-top: 5px">
|
|||
|
<div class="form-check">
|
|||
|
<label class="form-check-label" for="radio_10140134411173477490_1">
|
|||
|
<input class="form-check-input" type="radio" name="radio_10140134411173477490" id="radio_10140134411173477490_1" value="1">
|
|||
|
|
|||
|
<span class="label-body px-1">
|
|||
|
Yes
|
|||
|
</span>
|
|||
|
</label>
|
|||
|
</div>
|
|||
|
<div class="form-check">
|
|||
|
<label class="form-check-label" for="radio_10140134411173477490_2">
|
|||
|
<input class="form-check-input" type="radio" name="radio_10140134411173477490" id="radio_10140134411173477490_2" value="2">
|
|||
|
|
|||
|
<span class="label-body px-1">
|
|||
|
No
|
|||
|
</span>
|
|||
|
</label>
|
|||
|
</div>
|
|||
|
|
|||
|
|
|||
|
</div>
|
|||
|
</div>
|
|||
|
<div id="10140134411173477490_message" style="padding-bottom: 15px"></div>
|
|||
|
</div>
|
|||
|
</div>
|
|||
|
</form>
|
|||
|
|
|||
|
<script text="text/javascript">
|
|||
|
document.querySelectorAll('input[name="radio_10140134411173477490"]').forEach(function(rb) {
|
|||
|
rb.addEventListener("change", function() {
|
|||
|
var correct = rb.value == 2;
|
|||
|
var msgBox = document.getElementById('10140134411173477490_message');
|
|||
|
if(correct) {
|
|||
|
msgBox.innerHTML = "<div class='pluto-output admonition note alert alert-success'><span> 👍 Correct </span></div>";
|
|||
|
var explanation = document.getElementById("explanation_10140134411173477490")
|
|||
|
if (explanation != null) {
|
|||
|
explanation.style.display = "none";
|
|||
|
}
|
|||
|
} else {
|
|||
|
msgBox.innerHTML = "<div class='pluto-output admonition alert alert-danger'><span>👎 Incorrect </span></div>";
|
|||
|
var explanation = document.getElementById("explanation_10140134411173477490")
|
|||
|
if (explanation != null) {
|
|||
|
explanation.style.display = "block";
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
})});
|
|||
|
|
|||
|
</script>
|
|||
|
</div>
|
|||
|
</div>
|
|||
|
</section>
|
|||
|
<section id="question-5" class="level6">
|
|||
|
<h6 class="anchored" data-anchor-id="question-5">Question</h6>
|
|||
|
<p>Compute the integral <span class="math inline">\(\int_0^\infty 1/(1+x^2) dx\)</span>.</p>
|
|||
|
<div class="cell" data-hold="true" data-execution_count="14">
|
|||
|
<div class="cell-output cell-output-display" data-execution_count="15">
|
|||
|
<form class="mx-2 my-3 mw-100" name="WeaveQuestion" data-id="3794332535085400925" data-controltype="">
|
|||
|
<div class="form-group ">
|
|||
|
<div class="controls">
|
|||
|
<div class="form" id="controls_3794332535085400925">
|
|||
|
<div style="padding-top: 5px">
|
|||
|
<br>
|
|||
|
<div class="input-group">
|
|||
|
<input id="3794332535085400925" type="number" class="form-control" placeholder="Numeric answer">
|
|||
|
</div>
|
|||
|
|
|||
|
|
|||
|
</div>
|
|||
|
</div>
|
|||
|
<div id="3794332535085400925_message" style="padding-bottom: 15px"></div>
|
|||
|
</div>
|
|||
|
</div>
|
|||
|
</form>
|
|||
|
|
|||
|
<script text="text/javascript">
|
|||
|
document.getElementById("3794332535085400925").addEventListener("change", function() {
|
|||
|
var correct = (Math.abs(this.value - 1.5707963267948966) <= 0.001);
|
|||
|
var msgBox = document.getElementById('3794332535085400925_message');
|
|||
|
if(correct) {
|
|||
|
msgBox.innerHTML = "<div class='pluto-output admonition note alert alert-success'><span> 👍 Correct </span></div>";
|
|||
|
var explanation = document.getElementById("explanation_3794332535085400925")
|
|||
|
if (explanation != null) {
|
|||
|
explanation.style.display = "none";
|
|||
|
}
|
|||
|
} else {
|
|||
|
msgBox.innerHTML = "<div class='pluto-output admonition alert alert-danger'><span>👎 Incorrect </span></div>";
|
|||
|
var explanation = document.getElementById("explanation_3794332535085400925")
|
|||
|
if (explanation != null) {
|
|||
|
explanation.style.display = "block";
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
});
|
|||
|
|
|||
|
</script>
|
|||
|
</div>
|
|||
|
</div>
|
|||
|
</section>
|
|||
|
<section id="question-6" class="level6">
|
|||
|
<h6 class="anchored" data-anchor-id="question-6">Question</h6>
|
|||
|
<p>Compute the the integral <span class="math inline">\(\int_1^\infty \log(x)/x^2 dx\)</span>.</p>
|
|||
|
<div class="cell" data-hold="true" data-execution_count="15">
|
|||
|
<div class="cell-output cell-output-display" data-execution_count="16">
|
|||
|
<form class="mx-2 my-3 mw-100" name="WeaveQuestion" data-id="8631769312420384190" data-controltype="">
|
|||
|
<div class="form-group ">
|
|||
|
<div class="controls">
|
|||
|
<div class="form" id="controls_8631769312420384190">
|
|||
|
<div style="padding-top: 5px">
|
|||
|
<br>
|
|||
|
<div class="input-group">
|
|||
|
<input id="8631769312420384190" type="number" class="form-control" placeholder="Numeric answer">
|
|||
|
</div>
|
|||
|
|
|||
|
|
|||
|
</div>
|
|||
|
</div>
|
|||
|
<div id="8631769312420384190_message" style="padding-bottom: 15px"></div>
|
|||
|
</div>
|
|||
|
</div>
|
|||
|
</form>
|
|||
|
|
|||
|
<script text="text/javascript">
|
|||
|
document.getElementById("8631769312420384190").addEventListener("change", function() {
|
|||
|
var correct = (Math.abs(this.value - 0.999999998385741) <= 0.001);
|
|||
|
var msgBox = document.getElementById('8631769312420384190_message');
|
|||
|
if(correct) {
|
|||
|
msgBox.innerHTML = "<div class='pluto-output admonition note alert alert-success'><span> 👍 Correct </span></div>";
|
|||
|
var explanation = document.getElementById("explanation_8631769312420384190")
|
|||
|
if (explanation != null) {
|
|||
|
explanation.style.display = "none";
|
|||
|
}
|
|||
|
} else {
|
|||
|
msgBox.innerHTML = "<div class='pluto-output admonition alert alert-danger'><span>👎 Incorrect </span></div>";
|
|||
|
var explanation = document.getElementById("explanation_8631769312420384190")
|
|||
|
if (explanation != null) {
|
|||
|
explanation.style.display = "block";
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
});
|
|||
|
|
|||
|
</script>
|
|||
|
</div>
|
|||
|
</div>
|
|||
|
</section>
|
|||
|
<section id="question-7" class="level6">
|
|||
|
<h6 class="anchored" data-anchor-id="question-7">Question</h6>
|
|||
|
<p>Compute the integral <span class="math inline">\(\int_0^2 (x-1)^{2/3} dx\)</span>.</p>
|
|||
|
<div class="cell" data-hold="true" data-execution_count="16">
|
|||
|
<div class="cell-output cell-output-display" data-execution_count="17">
|
|||
|
<form class="mx-2 my-3 mw-100" name="WeaveQuestion" data-id="14099481710229385942" data-controltype="">
|
|||
|
<div class="form-group ">
|
|||
|
<div class="controls">
|
|||
|
<div class="form" id="controls_14099481710229385942">
|
|||
|
<div style="padding-top: 5px">
|
|||
|
<br>
|
|||
|
<div class="input-group">
|
|||
|
<input id="14099481710229385942" type="number" class="form-control" placeholder="Numeric answer">
|
|||
|
</div>
|
|||
|
|
|||
|
|
|||
|
</div>
|
|||
|
</div>
|
|||
|
<div id="14099481710229385942_message" style="padding-bottom: 15px"></div>
|
|||
|
</div>
|
|||
|
</div>
|
|||
|
</form>
|
|||
|
|
|||
|
<script text="text/javascript">
|
|||
|
document.getElementById("14099481710229385942").addEventListener("change", function() {
|
|||
|
var correct = (Math.abs(this.value - 1.2000000004723115) <= 0.001);
|
|||
|
var msgBox = document.getElementById('14099481710229385942_message');
|
|||
|
if(correct) {
|
|||
|
msgBox.innerHTML = "<div class='pluto-output admonition note alert alert-success'><span> 👍 Correct </span></div>";
|
|||
|
var explanation = document.getElementById("explanation_14099481710229385942")
|
|||
|
if (explanation != null) {
|
|||
|
explanation.style.display = "none";
|
|||
|
}
|
|||
|
} else {
|
|||
|
msgBox.innerHTML = "<div class='pluto-output admonition alert alert-danger'><span>👎 Incorrect </span></div>";
|
|||
|
var explanation = document.getElementById("explanation_14099481710229385942")
|
|||
|
if (explanation != null) {
|
|||
|
explanation.style.display = "block";
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
});
|
|||
|
|
|||
|
</script>
|
|||
|
</div>
|
|||
|
</div>
|
|||
|
</section>
|
|||
|
<section id="question-8" class="level6">
|
|||
|
<h6 class="anchored" data-anchor-id="question-8">Question</h6>
|
|||
|
<p>From the relationship that if <span class="math inline">\(0 \leq f(x) \leq g(x)\)</span> then <span class="math inline">\(\int_a^b f(x) dx \leq \int_a^b g(x) dx\)</span> it can be deduced that</p>
|
|||
|
<ul>
|
|||
|
<li>if <span class="math inline">\(\int_a^\infty f(x) dx\)</span> diverges, then so does <span class="math inline">\(\int_a^\infty g(x) dx\)</span>.</li>
|
|||
|
<li>if <span class="math inline">\(\int_a^\infty g(x) dx\)</span> converges, then so does <span class="math inline">\(\int_a^\infty f(x) dx\)</span>.</li>
|
|||
|
</ul>
|
|||
|
<p>Let <span class="math inline">\(f(x) = \lvert \sin(x)/x^2 \rvert\)</span>.</p>
|
|||
|
<p>What can you say about <span class="math inline">\(\int_1^\infty f(x) dx\)</span>, as <span class="math inline">\(f(x) \leq 1/x^2\)</span> on <span class="math inline">\([1, \infty)\)</span>?</p>
|
|||
|
<div class="cell" data-hold="true" data-execution_count="17">
|
|||
|
<div class="cell-output cell-output-display" data-execution_count="18">
|
|||
|
<form class="mx-2 my-3 mw-100" name="WeaveQuestion" data-id="2748116686296337231" data-controltype="">
|
|||
|
<div class="form-group ">
|
|||
|
<div class="controls">
|
|||
|
<div class="form" id="controls_2748116686296337231">
|
|||
|
<div style="padding-top: 5px">
|
|||
|
<div class="form-check">
|
|||
|
<label class="form-check-label" for="radio_2748116686296337231_1">
|
|||
|
<input class="form-check-input" type="radio" name="radio_2748116686296337231" id="radio_2748116686296337231_1" value="1">
|
|||
|
|
|||
|
<span class="label-body px-1">
|
|||
|
It is convergent
|
|||
|
</span>
|
|||
|
</label>
|
|||
|
</div>
|
|||
|
<div class="form-check">
|
|||
|
<label class="form-check-label" for="radio_2748116686296337231_2">
|
|||
|
<input class="form-check-input" type="radio" name="radio_2748116686296337231" id="radio_2748116686296337231_2" value="2">
|
|||
|
|
|||
|
<span class="label-body px-1">
|
|||
|
It is divergent
|
|||
|
</span>
|
|||
|
</label>
|
|||
|
</div>
|
|||
|
<div class="form-check">
|
|||
|
<label class="form-check-label" for="radio_2748116686296337231_3">
|
|||
|
<input class="form-check-input" type="radio" name="radio_2748116686296337231" id="radio_2748116686296337231_3" value="3">
|
|||
|
|
|||
|
<span class="label-body px-1">
|
|||
|
Can't say
|
|||
|
</span>
|
|||
|
</label>
|
|||
|
</div>
|
|||
|
|
|||
|
|
|||
|
</div>
|
|||
|
</div>
|
|||
|
<div id="2748116686296337231_message" style="padding-bottom: 15px"></div>
|
|||
|
</div>
|
|||
|
</div>
|
|||
|
</form>
|
|||
|
|
|||
|
<script text="text/javascript">
|
|||
|
document.querySelectorAll('input[name="radio_2748116686296337231"]').forEach(function(rb) {
|
|||
|
rb.addEventListener("change", function() {
|
|||
|
var correct = rb.value == 1;
|
|||
|
var msgBox = document.getElementById('2748116686296337231_message');
|
|||
|
if(correct) {
|
|||
|
msgBox.innerHTML = "<div class='pluto-output admonition note alert alert-success'><span> 👍 Correct </span></div>";
|
|||
|
var explanation = document.getElementById("explanation_2748116686296337231")
|
|||
|
if (explanation != null) {
|
|||
|
explanation.style.display = "none";
|
|||
|
}
|
|||
|
} else {
|
|||
|
msgBox.innerHTML = "<div class='pluto-output admonition alert alert-danger'><span>👎 Incorrect </span></div>";
|
|||
|
var explanation = document.getElementById("explanation_2748116686296337231")
|
|||
|
if (explanation != null) {
|
|||
|
explanation.style.display = "block";
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
})});
|
|||
|
|
|||
|
</script>
|
|||
|
</div>
|
|||
|
</div>
|
|||
|
<hr>
|
|||
|
<p>Let <span class="math inline">\(f(x) = \lvert \sin(x) \rvert / x\)</span>.</p>
|
|||
|
<p>What can you say about <span class="math inline">\(\int_1^\infty f(x) dx\)</span>, as <span class="math inline">\(f(x) \leq 1/x\)</span> on <span class="math inline">\([1, \infty)\)</span>?</p>
|
|||
|
<div class="cell" data-hold="true" data-execution_count="18">
|
|||
|
<div class="cell-output cell-output-display" data-execution_count="19">
|
|||
|
<form class="mx-2 my-3 mw-100" name="WeaveQuestion" data-id="10586838793303528513" data-controltype="">
|
|||
|
<div class="form-group ">
|
|||
|
<div class="controls">
|
|||
|
<div class="form" id="controls_10586838793303528513">
|
|||
|
<div style="padding-top: 5px">
|
|||
|
<div class="form-check">
|
|||
|
<label class="form-check-label" for="radio_10586838793303528513_1">
|
|||
|
<input class="form-check-input" type="radio" name="radio_10586838793303528513" id="radio_10586838793303528513_1" value="1">
|
|||
|
|
|||
|
<span class="label-body px-1">
|
|||
|
It is convergent
|
|||
|
</span>
|
|||
|
</label>
|
|||
|
</div>
|
|||
|
<div class="form-check">
|
|||
|
<label class="form-check-label" for="radio_10586838793303528513_2">
|
|||
|
<input class="form-check-input" type="radio" name="radio_10586838793303528513" id="radio_10586838793303528513_2" value="2">
|
|||
|
|
|||
|
<span class="label-body px-1">
|
|||
|
It is divergent
|
|||
|
</span>
|
|||
|
</label>
|
|||
|
</div>
|
|||
|
<div class="form-check">
|
|||
|
<label class="form-check-label" for="radio_10586838793303528513_3">
|
|||
|
<input class="form-check-input" type="radio" name="radio_10586838793303528513" id="radio_10586838793303528513_3" value="3">
|
|||
|
|
|||
|
<span class="label-body px-1">
|
|||
|
Can't say
|
|||
|
</span>
|
|||
|
</label>
|
|||
|
</div>
|
|||
|
|
|||
|
|
|||
|
</div>
|
|||
|
</div>
|
|||
|
<div id="10586838793303528513_message" style="padding-bottom: 15px"></div>
|
|||
|
</div>
|
|||
|
</div>
|
|||
|
</form>
|
|||
|
|
|||
|
<script text="text/javascript">
|
|||
|
document.querySelectorAll('input[name="radio_10586838793303528513"]').forEach(function(rb) {
|
|||
|
rb.addEventListener("change", function() {
|
|||
|
var correct = rb.value == 3;
|
|||
|
var msgBox = document.getElementById('10586838793303528513_message');
|
|||
|
if(correct) {
|
|||
|
msgBox.innerHTML = "<div class='pluto-output admonition note alert alert-success'><span> 👍 Correct </span></div>";
|
|||
|
var explanation = document.getElementById("explanation_10586838793303528513")
|
|||
|
if (explanation != null) {
|
|||
|
explanation.style.display = "none";
|
|||
|
}
|
|||
|
} else {
|
|||
|
msgBox.innerHTML = "<div class='pluto-output admonition alert alert-danger'><span>👎 Incorrect </span></div>";
|
|||
|
var explanation = document.getElementById("explanation_10586838793303528513")
|
|||
|
if (explanation != null) {
|
|||
|
explanation.style.display = "block";
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
})});
|
|||
|
|
|||
|
</script>
|
|||
|
</div>
|
|||
|
</div>
|
|||
|
<hr>
|
|||
|
<p>Let <span class="math inline">\(f(x) = 1/\sqrt{x^2 - 1}\)</span>. What can you say about <span class="math inline">\(\int_1^\infty f(x) dx\)</span>, as <span class="math inline">\(f(x) \geq 1/x\)</span> on <span class="math inline">\([1, \infty)\)</span>?</p>
|
|||
|
<div class="cell" data-hold="true" data-execution_count="19">
|
|||
|
<div class="cell-output cell-output-display" data-execution_count="20">
|
|||
|
<form class="mx-2 my-3 mw-100" name="WeaveQuestion" data-id="17874397323483167649" data-controltype="">
|
|||
|
<div class="form-group ">
|
|||
|
<div class="controls">
|
|||
|
<div class="form" id="controls_17874397323483167649">
|
|||
|
<div style="padding-top: 5px">
|
|||
|
<div class="form-check">
|
|||
|
<label class="form-check-label" for="radio_17874397323483167649_1">
|
|||
|
<input class="form-check-input" type="radio" name="radio_17874397323483167649" id="radio_17874397323483167649_1" value="1">
|
|||
|
|
|||
|
<span class="label-body px-1">
|
|||
|
It is convergent
|
|||
|
</span>
|
|||
|
</label>
|
|||
|
</div>
|
|||
|
<div class="form-check">
|
|||
|
<label class="form-check-label" for="radio_17874397323483167649_2">
|
|||
|
<input class="form-check-input" type="radio" name="radio_17874397323483167649" id="radio_17874397323483167649_2" value="2">
|
|||
|
|
|||
|
<span class="label-body px-1">
|
|||
|
It is divergent
|
|||
|
</span>
|
|||
|
</label>
|
|||
|
</div>
|
|||
|
<div class="form-check">
|
|||
|
<label class="form-check-label" for="radio_17874397323483167649_3">
|
|||
|
<input class="form-check-input" type="radio" name="radio_17874397323483167649" id="radio_17874397323483167649_3" value="3">
|
|||
|
|
|||
|
<span class="label-body px-1">
|
|||
|
Can't say
|
|||
|
</span>
|
|||
|
</label>
|
|||
|
</div>
|
|||
|
|
|||
|
|
|||
|
</div>
|
|||
|
</div>
|
|||
|
<div id="17874397323483167649_message" style="padding-bottom: 15px"></div>
|
|||
|
</div>
|
|||
|
</div>
|
|||
|
</form>
|
|||
|
|
|||
|
<script text="text/javascript">
|
|||
|
document.querySelectorAll('input[name="radio_17874397323483167649"]').forEach(function(rb) {
|
|||
|
rb.addEventListener("change", function() {
|
|||
|
var correct = rb.value == 2;
|
|||
|
var msgBox = document.getElementById('17874397323483167649_message');
|
|||
|
if(correct) {
|
|||
|
msgBox.innerHTML = "<div class='pluto-output admonition note alert alert-success'><span> 👍 Correct </span></div>";
|
|||
|
var explanation = document.getElementById("explanation_17874397323483167649")
|
|||
|
if (explanation != null) {
|
|||
|
explanation.style.display = "none";
|
|||
|
}
|
|||
|
} else {
|
|||
|
msgBox.innerHTML = "<div class='pluto-output admonition alert alert-danger'><span>👎 Incorrect </span></div>";
|
|||
|
var explanation = document.getElementById("explanation_17874397323483167649")
|
|||
|
if (explanation != null) {
|
|||
|
explanation.style.display = "block";
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
})});
|
|||
|
|
|||
|
</script>
|
|||
|
</div>
|
|||
|
</div>
|
|||
|
<hr>
|
|||
|
<p>Let <span class="math inline">\(f(x) = 1 + 4x^2\)</span>. What can you say about <span class="math inline">\(\int_1^\infty f(x) dx\)</span>, as <span class="math inline">\(f(x) \leq 1/x^2\)</span> on <span class="math inline">\([1, \infty)\)</span>?</p>
|
|||
|
<div class="cell" data-hold="true" data-execution_count="20">
|
|||
|
<div class="cell-output cell-output-display" data-execution_count="21">
|
|||
|
<form class="mx-2 my-3 mw-100" name="WeaveQuestion" data-id="11890380834893891107" data-controltype="">
|
|||
|
<div class="form-group ">
|
|||
|
<div class="controls">
|
|||
|
<div class="form" id="controls_11890380834893891107">
|
|||
|
<div style="padding-top: 5px">
|
|||
|
<div class="form-check">
|
|||
|
<label class="form-check-label" for="radio_11890380834893891107_1">
|
|||
|
<input class="form-check-input" type="radio" name="radio_11890380834893891107" id="radio_11890380834893891107_1" value="1">
|
|||
|
|
|||
|
<span class="label-body px-1">
|
|||
|
It is convergent
|
|||
|
</span>
|
|||
|
</label>
|
|||
|
</div>
|
|||
|
<div class="form-check">
|
|||
|
<label class="form-check-label" for="radio_11890380834893891107_2">
|
|||
|
<input class="form-check-input" type="radio" name="radio_11890380834893891107" id="radio_11890380834893891107_2" value="2">
|
|||
|
|
|||
|
<span class="label-body px-1">
|
|||
|
It is divergent
|
|||
|
</span>
|
|||
|
</label>
|
|||
|
</div>
|
|||
|
<div class="form-check">
|
|||
|
<label class="form-check-label" for="radio_11890380834893891107_3">
|
|||
|
<input class="form-check-input" type="radio" name="radio_11890380834893891107" id="radio_11890380834893891107_3" value="3">
|
|||
|
|
|||
|
<span class="label-body px-1">
|
|||
|
Can't say
|
|||
|
</span>
|
|||
|
</label>
|
|||
|
</div>
|
|||
|
|
|||
|
|
|||
|
</div>
|
|||
|
</div>
|
|||
|
<div id="11890380834893891107_message" style="padding-bottom: 15px"></div>
|
|||
|
</div>
|
|||
|
</div>
|
|||
|
</form>
|
|||
|
|
|||
|
<script text="text/javascript">
|
|||
|
document.querySelectorAll('input[name="radio_11890380834893891107"]').forEach(function(rb) {
|
|||
|
rb.addEventListener("change", function() {
|
|||
|
var correct = rb.value == 2;
|
|||
|
var msgBox = document.getElementById('11890380834893891107_message');
|
|||
|
if(correct) {
|
|||
|
msgBox.innerHTML = "<div class='pluto-output admonition note alert alert-success'><span> 👍 Correct </span></div>";
|
|||
|
var explanation = document.getElementById("explanation_11890380834893891107")
|
|||
|
if (explanation != null) {
|
|||
|
explanation.style.display = "none";
|
|||
|
}
|
|||
|
} else {
|
|||
|
msgBox.innerHTML = "<div class='pluto-output admonition alert alert-danger'><span>👎 Incorrect </span></div>";
|
|||
|
var explanation = document.getElementById("explanation_11890380834893891107")
|
|||
|
if (explanation != null) {
|
|||
|
explanation.style.display = "block";
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
})});
|
|||
|
|
|||
|
</script>
|
|||
|
</div>
|
|||
|
</div>
|
|||
|
<hr>
|
|||
|
<p>Let <span class="math inline">\(f(x) = \lvert \sin(x)^{10}\rvert/e^x\)</span>. What can you say about <span class="math inline">\(\int_1^\infty f(x) dx\)</span>, as <span class="math inline">\(f(x) \leq e^{-x}\)</span> on <span class="math inline">\([1, \infty)\)</span>?</p>
|
|||
|
<div class="cell" data-hold="true" data-execution_count="21">
|
|||
|
<div class="cell-output cell-output-display" data-execution_count="22">
|
|||
|
<form class="mx-2 my-3 mw-100" name="WeaveQuestion" data-id="15544107282915800719" data-controltype="">
|
|||
|
<div class="form-group ">
|
|||
|
<div class="controls">
|
|||
|
<div class="form" id="controls_15544107282915800719">
|
|||
|
<div style="padding-top: 5px">
|
|||
|
<div class="form-check">
|
|||
|
<label class="form-check-label" for="radio_15544107282915800719_1">
|
|||
|
<input class="form-check-input" type="radio" name="radio_15544107282915800719" id="radio_15544107282915800719_1" value="1">
|
|||
|
|
|||
|
<span class="label-body px-1">
|
|||
|
It is convergent
|
|||
|
</span>
|
|||
|
</label>
|
|||
|
</div>
|
|||
|
<div class="form-check">
|
|||
|
<label class="form-check-label" for="radio_15544107282915800719_2">
|
|||
|
<input class="form-check-input" type="radio" name="radio_15544107282915800719" id="radio_15544107282915800719_2" value="2">
|
|||
|
|
|||
|
<span class="label-body px-1">
|
|||
|
It is divergent
|
|||
|
</span>
|
|||
|
</label>
|
|||
|
</div>
|
|||
|
<div class="form-check">
|
|||
|
<label class="form-check-label" for="radio_15544107282915800719_3">
|
|||
|
<input class="form-check-input" type="radio" name="radio_15544107282915800719" id="radio_15544107282915800719_3" value="3">
|
|||
|
|
|||
|
<span class="label-body px-1">
|
|||
|
Can't say
|
|||
|
</span>
|
|||
|
</label>
|
|||
|
</div>
|
|||
|
|
|||
|
|
|||
|
</div>
|
|||
|
</div>
|
|||
|
<div id="15544107282915800719_message" style="padding-bottom: 15px"></div>
|
|||
|
</div>
|
|||
|
</div>
|
|||
|
</form>
|
|||
|
|
|||
|
<script text="text/javascript">
|
|||
|
document.querySelectorAll('input[name="radio_15544107282915800719"]').forEach(function(rb) {
|
|||
|
rb.addEventListener("change", function() {
|
|||
|
var correct = rb.value == 1;
|
|||
|
var msgBox = document.getElementById('15544107282915800719_message');
|
|||
|
if(correct) {
|
|||
|
msgBox.innerHTML = "<div class='pluto-output admonition note alert alert-success'><span> 👍 Correct </span></div>";
|
|||
|
var explanation = document.getElementById("explanation_15544107282915800719")
|
|||
|
if (explanation != null) {
|
|||
|
explanation.style.display = "none";
|
|||
|
}
|
|||
|
} else {
|
|||
|
msgBox.innerHTML = "<div class='pluto-output admonition alert alert-danger'><span>👎 Incorrect </span></div>";
|
|||
|
var explanation = document.getElementById("explanation_15544107282915800719")
|
|||
|
if (explanation != null) {
|
|||
|
explanation.style.display = "block";
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
})});
|
|||
|
|
|||
|
</script>
|
|||
|
</div>
|
|||
|
</div>
|
|||
|
</section>
|
|||
|
<section id="question-9" class="level6">
|
|||
|
<h6 class="anchored" data-anchor-id="question-9">Question</h6>
|
|||
|
<p>The difference between “blowing up” at <span class="math inline">\(0\)</span> versus being integrable at <span class="math inline">\(\infty\)</span> can be seen to be related through the <span class="math inline">\(u\)</span>-substitution <span class="math inline">\(u=1/x\)</span>. With this <span class="math inline">\(u\)</span>-substitution, what becomes of <span class="math inline">\(\int_0^1 x^{-2/3} dx\)</span>?</p>
|
|||
|
<div class="cell" data-hold="true" data-execution_count="22">
|
|||
|
<div class="cell-output cell-output-display" data-execution_count="23">
|
|||
|
<form class="mx-2 my-3 mw-100" name="WeaveQuestion" data-id="14639808955046759817" data-controltype="">
|
|||
|
<div class="form-group ">
|
|||
|
<div class="controls">
|
|||
|
<div class="form" id="controls_14639808955046759817">
|
|||
|
<div style="padding-top: 5px">
|
|||
|
<div class="form-check">
|
|||
|
<label class="form-check-label" for="radio_14639808955046759817_1">
|
|||
|
<input class="form-check-input" type="radio" name="radio_14639808955046759817" id="radio_14639808955046759817_1" value="1">
|
|||
|
|
|||
|
<span class="label-body px-1">
|
|||
|
\(\int_1^\infty u^{2/3}/u^2 \cdot du\)
|
|||
|
</span>
|
|||
|
</label>
|
|||
|
</div>
|
|||
|
<div class="form-check">
|
|||
|
<label class="form-check-label" for="radio_14639808955046759817_2">
|
|||
|
<input class="form-check-input" type="radio" name="radio_14639808955046759817" id="radio_14639808955046759817_2" value="2">
|
|||
|
|
|||
|
<span class="label-body px-1">
|
|||
|
\(\int_0^\infty 1/u \cdot du\)
|
|||
|
</span>
|
|||
|
</label>
|
|||
|
</div>
|
|||
|
<div class="form-check">
|
|||
|
<label class="form-check-label" for="radio_14639808955046759817_3">
|
|||
|
<input class="form-check-input" type="radio" name="radio_14639808955046759817" id="radio_14639808955046759817_3" value="3">
|
|||
|
|
|||
|
<span class="label-body px-1">
|
|||
|
\(\int_0^1 u^{2/3} \cdot du\)
|
|||
|
</span>
|
|||
|
</label>
|
|||
|
</div>
|
|||
|
|
|||
|
|
|||
|
</div>
|
|||
|
</div>
|
|||
|
<div id="14639808955046759817_message" style="padding-bottom: 15px"></div>
|
|||
|
</div>
|
|||
|
</div>
|
|||
|
</form>
|
|||
|
|
|||
|
<script text="text/javascript">
|
|||
|
document.querySelectorAll('input[name="radio_14639808955046759817"]').forEach(function(rb) {
|
|||
|
rb.addEventListener("change", function() {
|
|||
|
var correct = rb.value == 1;
|
|||
|
var msgBox = document.getElementById('14639808955046759817_message');
|
|||
|
if(correct) {
|
|||
|
msgBox.innerHTML = "<div class='pluto-output admonition note alert alert-success'><span> 👍 Correct </span></div>";
|
|||
|
var explanation = document.getElementById("explanation_14639808955046759817")
|
|||
|
if (explanation != null) {
|
|||
|
explanation.style.display = "none";
|
|||
|
}
|
|||
|
} else {
|
|||
|
msgBox.innerHTML = "<div class='pluto-output admonition alert alert-danger'><span>👎 Incorrect </span></div>";
|
|||
|
var explanation = document.getElementById("explanation_14639808955046759817")
|
|||
|
if (explanation != null) {
|
|||
|
explanation.style.display = "block";
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
})});
|
|||
|
|
|||
|
</script>
|
|||
|
</div>
|
|||
|
</div>
|
|||
|
</section>
|
|||
|
<section id="question-10" class="level6">
|
|||
|
<h6 class="anchored" data-anchor-id="question-10">Question</h6>
|
|||
|
<p>The antiderivative of <span class="math inline">\(f(x) = 1/\pi \cdot 1/\sqrt{x(1-x)}\)</span> is <span class="math inline">\(F(x)=(2/\pi)\cdot \sin^{-1}(\sqrt{x})\)</span>.</p>
|
|||
|
<p>Find <span class="math inline">\(\int_0^1 f(x) dx\)</span>.</p>
|
|||
|
<div class="cell" data-hold="true" data-execution_count="23">
|
|||
|
<div class="cell-output cell-output-display" data-execution_count="24">
|
|||
|
<form class="mx-2 my-3 mw-100" name="WeaveQuestion" data-id="12865991861837681546" data-controltype="">
|
|||
|
<div class="form-group ">
|
|||
|
<div class="controls">
|
|||
|
<div class="form" id="controls_12865991861837681546">
|
|||
|
<div style="padding-top: 5px">
|
|||
|
<br>
|
|||
|
<div class="input-group">
|
|||
|
<input id="12865991861837681546" type="number" class="form-control" placeholder="Numeric answer">
|
|||
|
</div>
|
|||
|
|
|||
|
|
|||
|
</div>
|
|||
|
</div>
|
|||
|
<div id="12865991861837681546_message" style="padding-bottom: 15px"></div>
|
|||
|
</div>
|
|||
|
</div>
|
|||
|
</form>
|
|||
|
|
|||
|
<script text="text/javascript">
|
|||
|
document.getElementById("12865991861837681546").addEventListener("change", function() {
|
|||
|
var correct = (Math.abs(this.value - 0.9999999921866226) <= 0.001);
|
|||
|
var msgBox = document.getElementById('12865991861837681546_message');
|
|||
|
if(correct) {
|
|||
|
msgBox.innerHTML = "<div class='pluto-output admonition note alert alert-success'><span> 👍 Correct </span></div>";
|
|||
|
var explanation = document.getElementById("explanation_12865991861837681546")
|
|||
|
if (explanation != null) {
|
|||
|
explanation.style.display = "none";
|
|||
|
}
|
|||
|
} else {
|
|||
|
msgBox.innerHTML = "<div class='pluto-output admonition alert alert-danger'><span>👎 Incorrect </span></div>";
|
|||
|
var explanation = document.getElementById("explanation_12865991861837681546")
|
|||
|
if (explanation != null) {
|
|||
|
explanation.style.display = "block";
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
});
|
|||
|
|
|||
|
</script>
|
|||
|
</div>
|
|||
|
</div>
|
|||
|
|
|||
|
|
|||
|
</section>
|
|||
|
</section>
|
|||
|
|
|||
|
</main> <!-- /main -->
|
|||
|
<script id="quarto-html-after-body" type="application/javascript">
|
|||
|
window.document.addEventListener("DOMContentLoaded", function (event) {
|
|||
|
const toggleBodyColorMode = (bsSheetEl) => {
|
|||
|
const mode = bsSheetEl.getAttribute("data-mode");
|
|||
|
const bodyEl = window.document.querySelector("body");
|
|||
|
if (mode === "dark") {
|
|||
|
bodyEl.classList.add("quarto-dark");
|
|||
|
bodyEl.classList.remove("quarto-light");
|
|||
|
} else {
|
|||
|
bodyEl.classList.add("quarto-light");
|
|||
|
bodyEl.classList.remove("quarto-dark");
|
|||
|
}
|
|||
|
}
|
|||
|
const toggleBodyColorPrimary = () => {
|
|||
|
const bsSheetEl = window.document.querySelector("link#quarto-bootstrap");
|
|||
|
if (bsSheetEl) {
|
|||
|
toggleBodyColorMode(bsSheetEl);
|
|||
|
}
|
|||
|
}
|
|||
|
toggleBodyColorPrimary();
|
|||
|
const icon = "";
|
|||
|
const anchorJS = new window.AnchorJS();
|
|||
|
anchorJS.options = {
|
|||
|
placement: 'right',
|
|||
|
icon: icon
|
|||
|
};
|
|||
|
anchorJS.add('.anchored');
|
|||
|
const clipboard = new window.ClipboardJS('.code-copy-button', {
|
|||
|
target: function(trigger) {
|
|||
|
return trigger.previousElementSibling;
|
|||
|
}
|
|||
|
});
|
|||
|
clipboard.on('success', function(e) {
|
|||
|
// button target
|
|||
|
const button = e.trigger;
|
|||
|
// don't keep focus
|
|||
|
button.blur();
|
|||
|
// flash "checked"
|
|||
|
button.classList.add('code-copy-button-checked');
|
|||
|
var currentTitle = button.getAttribute("title");
|
|||
|
button.setAttribute("title", "Copied!");
|
|||
|
setTimeout(function() {
|
|||
|
button.setAttribute("title", currentTitle);
|
|||
|
button.classList.remove('code-copy-button-checked');
|
|||
|
}, 1000);
|
|||
|
// clear code selection
|
|||
|
e.clearSelection();
|
|||
|
});
|
|||
|
function tippyHover(el, contentFn) {
|
|||
|
const config = {
|
|||
|
allowHTML: true,
|
|||
|
content: contentFn,
|
|||
|
maxWidth: 500,
|
|||
|
delay: 100,
|
|||
|
arrow: false,
|
|||
|
appendTo: function(el) {
|
|||
|
return el.parentElement;
|
|||
|
},
|
|||
|
interactive: true,
|
|||
|
interactiveBorder: 10,
|
|||
|
theme: 'quarto',
|
|||
|
placement: 'bottom-start'
|
|||
|
};
|
|||
|
window.tippy(el, config);
|
|||
|
}
|
|||
|
const noterefs = window.document.querySelectorAll('a[role="doc-noteref"]');
|
|||
|
for (var i=0; i<noterefs.length; i++) {
|
|||
|
const ref = noterefs[i];
|
|||
|
tippyHover(ref, function() {
|
|||
|
let href = ref.getAttribute('href');
|
|||
|
try { href = new URL(href).hash; } catch {}
|
|||
|
const id = href.replace(/^#\/?/, "");
|
|||
|
const note = window.document.getElementById(id);
|
|||
|
return note.innerHTML;
|
|||
|
});
|
|||
|
}
|
|||
|
var bibliorefs = window.document.querySelectorAll('a[role="doc-biblioref"]');
|
|||
|
for (var i=0; i<bibliorefs.length; i++) {
|
|||
|
const ref = bibliorefs[i];
|
|||
|
const cites = ref.parentNode.getAttribute('data-cites').split(' ');
|
|||
|
tippyHover(ref, function() {
|
|||
|
var popup = window.document.createElement('div');
|
|||
|
cites.forEach(function(cite) {
|
|||
|
var citeDiv = window.document.createElement('div');
|
|||
|
citeDiv.classList.add('hanging-indent');
|
|||
|
citeDiv.classList.add('csl-entry');
|
|||
|
var biblioDiv = window.document.getElementById('ref-' + cite);
|
|||
|
if (biblioDiv) {
|
|||
|
citeDiv.innerHTML = biblioDiv.innerHTML;
|
|||
|
}
|
|||
|
popup.appendChild(citeDiv);
|
|||
|
});
|
|||
|
return popup.innerHTML;
|
|||
|
});
|
|||
|
}
|
|||
|
var localhostRegex = new RegExp(/^(?:http|https):\/\/localhost\:?[0-9]*\//);
|
|||
|
var filterRegex = new RegExp('/' + window.location.host + '/');
|
|||
|
var isInternal = (href) => {
|
|||
|
return filterRegex.test(href) || localhostRegex.test(href);
|
|||
|
}
|
|||
|
// Inspect non-navigation links and adorn them if external
|
|||
|
var links = window.document.querySelectorAll('a:not(.nav-link):not(.navbar-brand):not(.toc-action):not(.sidebar-link):not(.sidebar-item-toggle):not(.pagination-link):not(.no-external)');
|
|||
|
for (var i=0; i<links.length; i++) {
|
|||
|
const link = links[i];
|
|||
|
if (!isInternal(link.href)) {
|
|||
|
// target, if specified
|
|||
|
link.setAttribute("target", "_blank");
|
|||
|
}
|
|||
|
}
|
|||
|
});
|
|||
|
</script>
|
|||
|
<nav class="page-navigation">
|
|||
|
<div class="nav-page nav-page-previous">
|
|||
|
<a href="../integrals/partial_fractions.html" class="pagination-link">
|
|||
|
<i class="bi bi-arrow-left-short"></i> <span class="nav-page-text"><span class="chapter-number">40</span> <span class="chapter-title">Partial Fractions</span></span>
|
|||
|
</a>
|
|||
|
</div>
|
|||
|
<div class="nav-page nav-page-next">
|
|||
|
<a href="../integrals/mean_value_theorem.html" class="pagination-link">
|
|||
|
<span class="nav-page-text"><span class="chapter-number">42</span> <span class="chapter-title">Mean value theorem for integrals</span></span> <i class="bi bi-arrow-right-short"></i>
|
|||
|
</a>
|
|||
|
</div>
|
|||
|
</nav>
|
|||
|
</div> <!-- /content -->
|
|||
|
<footer class="footer">
|
|||
|
<div class="nav-footer">
|
|||
|
<div class="nav-footer-center">Copyright 2022, John Verzani</div>
|
|||
|
</div>
|
|||
|
</footer>
|
|||
|
|
|||
|
|
|||
|
|
|||
|
</body></html>
|