Master calculus 1 using Python: derivatives and applications

Master calculus 1 using Python: derivatives and applications

English | MP4 | AVC 1280×720 | AAC 44KHz 2ch | 177 lectures (41h 16m) | 11.9 GB

Develop a deep understanding and intuition for calculus. Solve problems and implement algorithms by hand and in Python.

The beauty and importance of calculus

Calculus is a beautiful topic in mathematics. No, really!

At its heart, calculus is about change. Life is full of change, and calculus is the language that humans developed (invented or discovered — that’s an ongoing debate!) to understand how physical, biological, and abstract systems change. Calculus is more than just some equations you have to memorize; it’s a way of looking at the world and trying to understand how the tiniest infinitesimal changes can lead to gigantic complexity bigger than the imagination.

OK, but aside from all that fluff, calculus is also really important for basically every piece of engineering and digital technology that has touched humanity. Indeed, the history of calculus is the history of civilization.

  • You want to learn data science? => You need calculus.
  • You want to learn machine-learning? => You need calculus.
  • You want to learn deep learning? => You need calculus.
  • You want to learn computational science? => You need calculus.
  • You want to learn… I think you see the pattern here

Why learn calculus?

There are three reasons to learn calculus.

It has applications for understanding data science and machine-learning algorithms, but it’s also a beautiful topic in its own right.

Learning math will train your critical thinking and reasoning skills. Any branch of mathematics will train your brain, but calculus especially so, because doing calculus is a lot of like running scientific experiments — generate hypotheses, test them in experiments by holding variables constant, and measuring the output.

It’s a better hobby than sitting around watching netflix. Seriously. Learning math will help protect you from age-related cognitive decline. Challenge your mind to keep it sharp!

Learn calculus the traditional way or the modern way?

So, how do you learn calculus? You can learn it the way most people do — by watching someone else scratch on a chalkboard while you furiously take notes and try to decipher their sloppy handwriting, all the while having a little voice in your head telling you that you don’t get it because you’re not smart enough.

Or you can try a different approach.

I follow the maxim “you can learn a lot of math with a bit of coding.” In this course, you will use Python (mostly the numpy and sympy libraries) as a novel tool to help you learn concepts, proofs, visualizations, and algorithms in calculus.

So this is just about coding math?

No, this course is not about coding math. And it’s not about using Python to cheat on your math homework. Python’s symbolic math and plotting engines are incredibly powerful — and yet underutilized — tools to help you learn math. By translating formulas into code, implementing algorithms, and solving challenging coding exercises, you will gain a deep knowledge of concepts in calculus.

And the graphics engine in Python will let you see equations and functions in a way that helps you develop intuition for why functions behave the way they do.

You will also learn the limits of computers for learning calculus, and why you still need to use your brain and freshly developed calculus skills.

New to Python?

Python is a popular multi-purpose programming language that is light-weight and free. If you are new to Python, then don’t worry! This course comes with a 7+ hour Python coding tutorial (potentially up to 12 hours if you complete all the exercises) that is designed for beginners and will teach you the coding skills you’ll need for this course.

Are there exercises?

Everyone knows that you need to solve math problems to learn math. This course has exercises for you to solve in nearly every video — and I explain the answers to every single exercise (not only the odd-numbered ones, lol).

But wait, there’s more! I don’t just give you problems to work on; I will teach you how to create your own exercises (and solutions) so you can custom-tailor your own homework assignments to practice exactly the skills you most need to work on. Because you know, “give someone a fish” versus “teach someone to fish.”

Is this the right course for you?

One thing I’ve learned from 20+ years of teaching is that no two learners are the same, which means that no course will be right for everyone. I hope you find this course a valuable learning resource — and fun to work through! — but the reality is that this course won’t be ideal for everyone. Please watch the preview videos and check out the reviews before enrolling.

What you’ll learn

  • Differential calculus
  • Mathematical functions (rational, polynomial, transcendantal, trig)
  • Limits and tricks for solving limits problems
  • Differentiation rules
  • Tips and tricks for differentiation
  • Proofs
  • Python (numpy and sympy)
  • Numerical processing
  • Applied calculus
  • Visualizing math functions (matplotlib)
Table of Contents

Introductions
1 Prerequisites and how to rock this course
2 Gradient fields forever (hands-on activity)
3 Using the Udemy platform

Download all course materials
4 IMPORTANT Downloading and using the code
5 My policy on sharing code
6 Should you watch the Python tutorial

Functions
7 Section summary and goals
8 Terminology in math vs. coding
9 What is a function
10 Domain and range of a function
11 Linear and nonlinear functions
12 CodeChallenge math in python, part 1
13 CodeChallenge math in python, part 2
14 Polynomial functions
15 CodeChallenge polynomials, part 1
16 CodeChallenge polynomials, part 2
17 Transcendental functions
18 Exponential and log functions
19 CodeChallenge exp and log, part 1
20 CodeChallenge exp and log, part 2
21 CodeChallenge Power and log, part 1
22 CodeChallenge Power and log, part 2
23 Trigonometric functions
24 CodeChallenge trigonometry
25 Piecewise functions
26 CodeChallenge piecewise functions, part 1
27 CodeChallenge piecewise functions, part 2
28 Continuous and discontinuous functions
29 CodeChallenge discontinuities, part 1
30 CodeChallenge discontinuities, part 2
31 Intermediate value theorem
32 Composite functions
33 Inverse functions
34 CodeChallenge Composite and inverse, part 1
35 CodeChallenge Composite and inverse, part 2
36 Function symmetry (even and odd)
37 Sketching functions by hand
38 CodeChallenge Infinite functions to sketch, part 1
39 CodeChallenge Infinite functions to sketch, part 2

Tangent Levels of understanding
40 What does it mean to understand math
41 Timescales of discovering vs. learning math

Limits
42 Section summary and goals
43 Limits in geometry and algebra
44 CodeChallenge Limits via Zeno’s paradox
45 Easy limits by plugging in or factoring
46 One-sided limits and infinities
47 CodeChallenge limits in numpy & sympy, part 1
48 CodeChallenge limits in numpy & sympy, part 2
49 CodeChallenge properties of limits, part 1
50 CodeChallenge properties of limits, part 2
51 Continuity and discontinuities, revisited
52 CodeChallenge Limits at discontinuities, part 1
53 CodeChallenge Limits at discontinuities, part 2
54 Limits of trig functions, part 1
55 CodeChallenge Confirm the trig limits
56 Squeeze theorem
57 Limits of trig functions, part 2
58 CodeChallenge Trig limits in sympy, part 1
59 CodeChallenge Trig limits in sympy, part 2
60 Limited limits possibilities
61 What the $%# is an infinitesimal
62 Sketching functions by hand, redux
63 CodeChallenge Infinite limits exercises, part 1
64 CodeChallenge Infinite limits exercises, part 2

Tangent Accountability in online learning
65 The pros and cons of self-directed learning
66 Suggestions for learning accountability

Differentiation fundamentals
67 Section summary and goals
68 Slope of a line
69 CodeChallenge Global and local slopes
70 Formal definition of the derivative
71 Derivative of a constant is 0 (proof)
72 Various notations of the derivative
73 CodeChallenge derivatives in sympy
74 Interpreting derivatives plots
75 CodeChallenge Linearity of differentiation
76 Derivatives of polynomials
77 Derivatives of cosine and sine
78 CodeChallenge trig derivatives
79 Derivatives of absolute value and square root
80 Derivatives of log and exp
81 Critical points Definition and applications
82 Finding critical points
83 CodeChallenge Critical points in Python, part 1
84 CodeChallenge Critical points in Python, part 2
85 CodeChallenge Infinite derivatives exercises

Tangent Where does math come from
86 Is math discovered or invented

Differentiation rules and theorems
87 Section summary and goals
88 Linearity of differentiation (proof)
89 Theorem Differentiability implies continuity
90 Product rule
91 Chain rule
92 Quotient rule
93 CodeChallenge product and quotient rules
94 CodeChallenge chain rule
95 Implicit differentiation
96 Implicit differentiation proofs (log, exp, power)
97 CodeChallenge implicit differentiation, part 1
98 CodeChallenge implicit differentiation, part 2
99 CodeChallenge derivative of c^x and x^x
100 Higher-order derivatives
101 CodeChallenge Derivatives of derivatives… (part 1)
102 CodeChallenge Derivatives of derivatives… (part 2)
103 L’Hospital’s Rule for indeterminant limits
104 Rolle’s Theorem
105 Mean value theorem
106 CodeChallenge Implement the MVT algorithm
107 CodeChallenge Use the MVT to explore functions
108 CodeChallenge numerical approximations to MVT
109 CodeChallenge More differentiation exercises, part 1
110 CodeChallenge More differentiation exercises, part 2

Tangent Learn from multiple sources
111 Benefits of varied learning sources

Applications
112 Section summary and goals
113 Racing functions to infinity and beyond!
114 The second derivative test
115 Code challenge The second derivative test, part 1
116 Code challenge The second derivative test, part 2
117 Linear approximations
118 CodeChallenge linear approximations, part 1
119 CodeChallenge linear approximations, part 2
120 Newton’s method for finding roots
121 CodeChallenge Newt’s roots, part 1
122 CodeChallenge Newt’s roots, part 2
123 Solving simple optimization problems
124 Optimize for surface area
125 Optimize for volume
126 CodeChallenge farmers and Qberts
127 Gradient descent
128 CodeChallenge Gradient descent in numpy
129 CodeChallenge Gradient descent using sympy

Tangent The joys and challenges of learning
130 Embrace difficulties

Multivariate differentiation
131 Section summary and goals
132 D functions
133 CodeChallenge Fun with 2D functions (numpy), part 1
134 CodeChallenge Fun with 2D functions (numpy), part 2
135 CodeChallenge 2D functions in sympy
136 Partial derivatives
137 CodeChallenge Partial derivatives
138 Higher-order partial derivatives
139 CodeChallenge Higher-order partial derivatives
140 CodeChallenge Complete partial exercises
141 Gradients and gradient fields
142 CodeChallenge Gradient fields, part 1
143 CodeChallenge Gradient fields, part 2
144 Gradient descent in 2D
145 CodeChallenge 2D gradient descent, part 1
146 CodeChallenge 2D gradient descent, part 2

Python intro Data types
147 Read this before the Python tutorials
148 Variables
149 Math operators
150 Lists
151 Tuples
152 Booleans
153 Dictionaries

Python intro Indexing and slicing
154 Indexing
155 Slicing

Python intro Functions
156 Inputs and outputs
157 The numpy library
158 Getting help on functions
159 Creating functions
160 Global and local variable scopes
161 Generating random numbers

Python intro Flow control
162 If-else statements, part 1
163 If-else statements, part 2
164 For loops
165 While loops
166 Initializing variables
167 Enumerate and zip iterables
168 Single-line loops (list comprehension)

Python intro Sympy and latex
169 Intro to sympy, part 1
170 Intro to LaTex
171 Intro to sympy, part 2

Python intro Text and data visualization
172 String interpolation and f-strings
173 Plotting dots and lines
174 Subplot geometry
175 Making the graphs look nicer
176 Images
177 Export plots in low and high resolution

Homepage