Solving Integral Equations
|
08-24-2019, 03:34 PM
Post: #1
|
|||
|
|||
Solving Integral Equations
The program INTEGRALSOLVE solve the following equation:
(Format: ∫( integrand dvar, lower, upper) ∫( f(t) dt, 0, x) = a ∫( f(t) dt, 0, x) - a = 0 It is assumed that x>0. We can use the Second Theorem of Calculus which takes the derivative of the integral: d/dx ∫( f(t) dt, a, x) = f(x) We don't have to worry about lower limit a at all for the theorem to work. ∫( f(t) dt, 0, x) - a Take the derivative with respect to x on both sides (d/dx): = d/dx ∫( f(t) dt, 0, x) - a = d/dx ∫( f(t) dt, 0, x) - d/dx a Let F(t) be the anti-derivative of f(t): = d/dx (F(x) - F(0)) - 0 = d/dx F(x) - d/dx F(0) F(0) is a constant. = f(x) Newton's Method to find the roots of f(x) can be found by the iteration: x_(n+1) = x_n - f(x_n) / f'(x_n) Applying that to find the roots of ∫( f(t) dt, 0, x) - a: x_(n+1) = x_n - (∫( f(t) dt, 0, x_n) - a) / f(x_n) Program: Code: EXPORT INTEGRALSOLVE(f,a,x) Example 1: ∫( 2*t^3 dt, 0, x) = 16 Guess = 2 Root ≈ 2.3784 Example 2: ∫( sin^2 t dt, 0, x) = 1.4897 Guess = 1 (Radians Mode) Root ≈ 2.4999 Source: Green, Larry. "The Second Fundamental Theorem of Calculus" Differential Calculus for Engineering and other Hard Sciences. Lake Tahoe Community College. http://www.ltcconline.net/greenl/courses...ECFUND.HTM Retrieved July 25, 2019 Blog entry: http://edspi31415.blogspot.com/2019/08/h...lving.html |
|||
08-24-2019, 09:07 PM
(This post was last modified: 09-07-2019 08:00 PM by Albert Chan.)
Post: #2
|
|||
|
|||
RE: Solving Integral Equations
Hi, Eddie
My guess is the integral calculations will take the most time. Instead of always do integral from 0 to x, why not re-use old integral calculations ? ∫(f(u), u=0 to x) = ∫(f(u), u=0 to t) + ∫(f(u), u=t to x) (08-24-2019 03:34 PM)Eddie W. Shore Wrote: ∫( sin^2 t dt, 0, x) = 1.4897 This is my Mathematica code, only for proof of concept. Quote:f[x_] := Sin[x]^2; > NestList[newton, 1.0, 5] {1.0, {2.71878, 1., 0.272676}, {2.38150, 2.71878, 1.54649}, {2.48529, 2.38150, 1.44043}, {2.49964, 2.48529, 1.48436}, {2.49991, 2.49964, 1.4896}} Note: x=2.49991 already converged to 1.4897. The value 1.4896 were previous integral, 0 to 2.49964 |
|||
« Next Oldest | Next Newest »
|
User(s) browsing this thread: 1 Guest(s)