(Casio Micropython/Numworks Python): Calculus - Printable Version +- HP Forums (https://www.hpmuseum.org/forum) +-- Forum: Not HP Calculators (/forum-7.html) +--- Forum: Not remotely HP Calculators (/forum-9.html) +--- Thread: (Casio Micropython/Numworks Python): Calculus (/thread-15055.html) (Casio Micropython/Numworks Python): Calculus - Eddie W. Shore - 05-25-2020 02:08 AM The following scripts creates the user functions for calculus: f(x): define your function in terms of x here. This needs to be loaded into the script before running it. Each of the functions that follow will use f(x). You can call f(x) to evaluate the function at any value. deriv(x): The approximate derivative at point x. The Five Stencil approximation is used. sigma(a,b): Calculate the sum (Σ f(x)) from x = a to x = b. integral(a,b,n): Calculates the definite integral ( ∫ f(x) dx) from x = a to x = b. The Simpson's rule is used with n divisions (n needs to be even) solve(x0): Uses Newton's Rule to find roots for f(x). Example f(x) = -2x*^2 + 3x + 5 In Python: -2*x**2+3*x+5 f(0): 5 f(10): -165 f(-10): -225 deriv(10): -37.00004450971999 Σ f(x): x = 1 to 25: sigma(1,25): -8780 ∫ f(x) dx: x = -3 to 1, n = 20: integral(-3,1,20): -10.666666666667 Solve f(x)=0, initial condition x0 = 2.5: solve(5): 2.5 Python Script: calculus.py from math import * Code: ```# 2020-04-15 EWS # define f(x) here def f(x):   return -2*x**2+3*x+5    # derivative def deriv(x):   # uses f(x), 5 stencil   # h is tolerance   h=1e-10   d=(12*h)**-1*(f(x-2*h)-8*f(x-h)+8*f(x+h)-f(x+2*h))   return d # sum/sigma def sigma(a,b):   t=0   n=b-a   for i in range(n):     t=t+f(i+1)   return t # integral by simpsons rule def integral(a,b,n):   t=f(a)+f(b)   h=(b-a)/n   for i in range(n-1):     w=(i+1)/2     if (w-int(w))==0:       t=t+2*f(a+(i+1)*h)     else:       t=t+4*f(a+(i+1)*h)   t=t*h/3   return t # solver def solve(x0):   tol=1e-14   x1=x0-f(x0)/deriv(x0)   while abs(x1-x0)>tol:     x0=x1     x1=x0-f(x0)/deriv(x0)   return x1```