(71B) Differential Equations and Half-Increment Solution, Numerical Methods
12-23-2016, 07:26 PM
Post: #1
 Eddie W. Shore Senior Member Posts: 956 Joined: Dec 2013
(71B) Differential Equations and Half-Increment Solution, Numerical Methods
Differential Equations and Half-Increment Solution, Numerical Methods

The program HALFDIFF solves the numerical differential equation

d^2y/dt^2 = f(dy/dt, y, t) given the initial conditions y(t0) = y0 and dy/dt (t0) = dy0

In this notation, y is the independent variable and t is the dependent variable.

The Method

Let C = f(dy/dt, y, t). Give the change of t as Δt.

First Step:

With t = t0:
h_1/2 = dy0 + C * Δt/2
y1 = y0 + dy0 * Δt

Loop:

t = t0 + Δt
h_I+1/2 = h_I-1/2 + C * Δt
y_I+1 = y_I +h_I+1/2 * Δt

Repeat as many steps as desired.

Source: Eiseberg, Robert M. Applied Mathematical Physics with Programmable Pocket Calculators McGraw-Hill, Inc: New York. 1976. ISBN 0-07-019109-3

Program HALFDIFF
250+ bytes, 12/22/2016

Edit f(A,Y,T) at line 5 where
A = y’(t), Y = y(t), T = t

Code:
5 DEF FNF(A,Y,T) = insert function y’(t), y(t), and t here 10 DESTROY A,Y,D,N,H,T 12 RADIANS 20 INPUT “dY/dX (0) = “, “0”; A 22 INPUT “Y(0) = “, “0”; Y 24 INPUT “DELTA T = “,”1”; D 26 INPUT “TMAX = “,”5”; N 28 T = D 44 H = A + FNF(A,Y,T) * D/2  48 Y = Y + H * D 50 DISP D; “, “;  Y @ PAUSE 70 FOR I = 2 * D TO N STEP D 72 T = I @ A = H 76 H = H + FNF(A,Y,T) * D 78 Y = Y + H * D 80 DISP I; “, “; Y @ PAUSE 82 NEXT I

Example: y’’(t) = y’(t) + 2 * t with y’(0) = 0, y(0) = 1, Delta t = 1, Max t = 6
FNF(A,Y,T) = A + 2 * T

Results:

T Y
1 2
2 8
3 26
4 70
5 168
6 376
 « Next Oldest | Next Newest »

 Messages In This Thread (71B) Differential Equations and Half-Increment Solution, Numerical Methods - Eddie W. Shore - 12-23-2016 07:26 PM

User(s) browsing this thread: 1 Guest(s)