DERIVE for Windows version 5.05 DfW file saved on 01 Oct 2002 YANS(x, data, ddata, a, n, v):=PROG(v := SOLUTIONS(EQNS(data, ddata, a, n), a), IF(DIM(v) = 0, [], POLY(x, v™1, n))) AUTONOMOUS(r, v):=r/v AUTONOMOUS_CONSERVATIVE(q, x, y, x0, y0, v0):=x = x0 + IF(v0 = 0, 1, SIGN(v0))·INT((2·INT(q, y, y0, y) + v0^2)^(- 1/2), y, y0, y) BISECT(u, x, v0, k):=IF(k > 0, ITERATES(BIS_AUX(u, x, v™1, v™2), v, v0, k), ?, BIS_AUX(u, x, v0™1, v0™2)) BIS_AUX(u, x, a, b):=IF(SUBST(u, x, a)·SUBST(u, x, (a + b)/2) < 0, [a, (a + b)/2], [(a + b)/2, b]) CURVEFIT(x, data, ddata):=IF(DIM(ddata) > 0, CURVEFIT2(x, data, ddata), CURVEFIT1(x, data), CURVEFIT1(x, data)) CURVEFIT1(x, data):=ANS(x, data, [], UNK(DIM(data)), DIM(data) - 1) CURVEFIT2(x, data, ddata):=ANS(x, data, ddata, UNK(DIM(data) + DIM(ddata)), -1 + DIM(ddata) + DIM(data)) DE(p, q, x, y, x0, y0):=y = ź^(- INT(p, x, x0, x))·(y0 + INT(ź^INT(p, x, x0, x)·q, x, x0, x)) DE2(b, c, x, x0, y0, v0):=DSOLVE2_IV(b, c, 0, x, x0, y0, v0) DF(r, x, x0, xm, m, y, y0, yn, n):=VECTOR(VECTOR(SEG(LIM(r, [x, y], [x0 + j·(xm - x0)/m, y0 + k·(yn - y0)/n]), x0 + j·(xm - x0)/m, y0 + k·(yn - y0)/n, (xm - x0)/(4·m), (yn - y0)/(4·n)), j, 0, m), k, 0, n) DISC_AUX(p, q, x):=p^2/4 - q + DIF(p, x)/2 DPOLY(x, a, n):=¤(i·a™(i + 1)·x^(i - 1), i, 1, n) DRAW_COMPLEX(v):=VECTOR([RE(z), IM(z)], z, v) DRAW_LEFT(u, x, n, a, b):=VECTOR(D_BOX(t, 0, t + (b - a)/n, SUBST(u, x, t)), t, a, b - (b - a)/n, (b - a)/n) DRAW_NEWT(u, x, x0, k):=VECTOR([v, 0; v, SUBST(u, x, v); NEWT(u, x, v), 0], v, ITERATES(NEWT(u, x, w), w, x0, k)) DRAW_RIGHT(u, x, n, a, b):=VECTOR(D_BOX(t, 0, t + (b - a)/n, SUBST(u, x, t + (b - a)/n)), t, a, b - (b - a)/n, (b - a)/n) DRAW_TRAP(u, x, n, a, b):=VECTOR(D_TRAP(t, 0, t + (b - a)/n, 0, t + (b - a)/n, SUBST(u, x, t + (b - a)/n), t, SUBST(u, x, t)), t, a, b - (b - a)/n, (b - a)/n) DSOLVE2(p, q, r, x, c1, c2):=LIN2_AUX(DISC_AUX(p, q, x), p, r, x, [c1, c2]) DSOLVE2_BV(p, q, r, x, x0, y0, x2, y2):=LIN2_BV_AUX(DISC_AUX(p, q, x), p, r, x, x0, y0, x2, y2) DSOLVE2_IV(p, q, r, x, x0, y0, v0):=LIN2_IV_AUX(DISC_AUX(p, q, x), p, r, x, x0, y0, v0) D_BOX(x1, y1, x2, y2):=[x1, y1; x2, y1; x2, y2; x1, y2; x1, y1] D_TRAP(x1, y1, x2, y2, x3, y3, x4, y4):=[x1, y1; x2, y2; x3, y3; x4, y4; x1, y1] EQNS(data, ddata, a, n):=APPEND(VECTOR(POLY(data™i™1, a, n) = data™i™2, i, 1, DIM(data), 1), VECTOR(DPOLY(ddata™i™1, a, n) = ddata™i™2, i, 1, DIM(ddata), 1)) EULER(r, x, y, x0, y0, xn, n):=ITERATES(v + (xn - x0)/n·[1, LIM(r, [x, y], v)], v, [x0, y0], n) EXACT2(p, q, x, y, v, c):=IF((v·DIF(p, y, 2) + 2·DIF(DIF(p, x), y) - DIF(DIF(q, y), v))·v + DIF(p, x, 2) - DIF(DIF(q, x), v) + DIF(q, y) = 0 ¸ v·DIF(DIF(p, y), v) + DIF(DIF(p, x), v) + 2·DIF(p, y) - DIF(q, v, 2) = 0, EXACT2_AUX1(INT(p, v), q, x, y, v) = c, "inapplicable", "inapplicable") EXACT2_AUX1(p, q, x, y, v):=p + EXACT2_AUX2(q - DIF(p, x) - v·DIF(p, y), x, y, v) EXACT2_AUX2(r, x, y, v):=EXACT2_AUX3(INT(DIF(r, v), y), LIM(r, v, 0), x) EXACT2_AUX3(r, u, x):=r + INT(u - DIF(r, x), x) EXTRACT_2_COLUMNS(a, c1, c2):=EXTRACT_2_ELEMENTS(a`, c1, c2)` EXTRACT_2_ELEMENTS(v, p, q):=[v™p, v™q] LEFT(u, x, n, a, b):=(b - a)/n·¤(SUBST(u, x, a + k·(b - a)/n), k, 0, n - 1) LIN2_AUX(d, p, r, x, c):=IF(DIF(d, x) = 0, LIN2_AUX2(ź^(INT(p, x)/(-2))·LIN2_HOM(d, x), r, x, c), "inapplicable", "inapplicable") LIN2_AUX2(h, r, x, c):=c • h + LIN2_PARTIC(h, r, x) LIN2_BV_AUX(d, p, r, x, x0, y0, x2, y2):=IF(DIF(d, x) = 0, LIN2_BV_AUX2(ź^(INT(p, x)/(-2))·LIN2_HOM(d, x), r, x, x0, y0, x2, y2), "inapplicable", "inapplicable") LIN2_BV_AUX2(h, r, x, x0, y0, x2, y2):=LIN2_BV_AUX3(h, LIN2_PARTIC(h, r, x), x, x0, y0, x2, y2) LIN2_BV_AUX3(h, p, x, x0, y0, x2, y2):=p + h • LIN_SOLVE([LIM(h, x, x0), LIM(h, x, x2)], [y0 - LIM(p, x, x0), y2 - LIM(p, x, x2)]) LIN2_HOM(d, x):=IF(d = 0, [1, x], LIN2_HOM_AUX(d, x), LIN2_HOM_AUX(d, x)) LIN2_HOM_AUX(d, x):=IF(d < 0, [COS(‹(-d)·x), SIN(‹(-d)·x)], [ź^(‹d·x), ź^(- ‹d·x)], [ź^(‹d·x), ź^(- ‹d·x)]) LIN2_IV_AUX(d, p, r, x, x0, y0, v0):=IF(DIF(d, x) = 0, LIN2_IV_AUX2(ź^(INT(p, x)/(-2))·LIN2_HOM(d, x), r, x, x0, y0, v0), "inapplicable", "inapplicable") LIN2_IV_AUX2(h, r, x, x0, y0, v0):=LIN2_IV_AUX3(h, LIN2_PARTIC(h, r, x), x, x0, y0, v0) LIN2_IV_AUX3(h, p, x, x0, y0, v0):=p + h • LIN_SOLVE(LIM([h, DIF(h, x)], x, x0), LIM([y0 - p, v0 - DIF(p, x)], x, x0)) LIN2_PARTIC(h, r, x):=h • INT([- ELEMENT(h, 2), ELEMENT(h, 1)]·r/DET([h, DIF(h, x)]), x) LIN_SOLVE(a, b):=ELEMENT(ROW_REDUCE(a, b)`, 1 + DIM(a)) LIOUVILLE(p, q, x, y, c1, c2):=INT(ź^INT(q, y), y) - c1 + c2·INT(ź^INT(-p, x), x) = 0 MID(u, x, n, a, b):=(b - a)/n·¤(SUBST(u, x, a + (k + 1/2)·(b - a)/n), k, 0, n - 1) NEWT(u, x, x0, k):=IF(k > 0, NEWT_ITERATES(u, x, x0, k), ?, SUBST(x - u/DIF(u, x), x, x0)) NEWT_ITERATES(u, x, x0, k):=ITERATES(x - u/DIF(u, x), x, x0, k) POLY(x, a, n):=¤(a™(i + 1)·x^i, i, 0, n) RIGHT(u, x, n, a, b):=(b - a)/n·¤(SUBST(u, x, a + k·(b - a)/n), k, 1, n) RK(r, v, v0, h, n):=RK_AUX0(h·APPEND([1], r), v, v0, n) RK_AUX0(p, v, v0, n):=ITERATES(u_ + RK_AUX1(p, v, u_, LIM(p, v, u_)), u_, v0, n) RK_AUX1(p, v, u_, c1):=RK_AUX2(p, v, u_, c1, LIM(p, v, u_ + c1/2)) RK_AUX2(p, v, u_, c1, c2):=RK_AUX3(p, v, u_, c1, c2, LIM(p, v, u_ + c2/2)) RK_AUX3(p, v, u_, c1, c2, c3):=(2·(c2 + c3) + LIM(p, v, u_ + c3) + c1)/6 SECANT(u, x, a, h):=y = (SUBST(u, x, a + h) - SUBST(u, x, a))/h·(x - a) + SUBST(u, x, a) SEG(rc, x, y, «x, «y):=IF(ABS(rc) > 1 ¸ «y < ABS(rc)·«x, [x - «y/rc, y - «y; x + «y/rc, y + «y], [x - «x, y - rc·«x; x + «x, y + rc·«x]) SIMP(u, x, n, a, b):=(b - a)/(6·n)·(4·¤(SUBST(u, x, a + (k + 1/2)·(b - a)/n), k, 0, n - 1) + 2·¤(SUBST(u, x, a + k·(b - a)/n), k, 1, n - 1) + SUBST(u, x, b) + SUBST(u, x, a)) SLOPE(data, m1):=ITERATES([v™1 + 1, 2·(data™(v™1 + 1)™2 - data™(v™1)™2)/(data™(v™1 + 1)™1 - data™(v™1)™1) - v™2], v, [1, m1], DIM(data) - 1) SLOPE1(data, m1):=ITERATES([v™1 + 1, 2·(data™(v™1 + 1)™2 - data™(v™1)™2)/(data™(v™1 + 1)™1 - data™(v™1)™1) - v™2], v, [1, m1], DIM(data) - 1) SPLINE(x, data, m1):=SPLINE_AUX(x, data, SLOPE1(data, m1)) SPLINE_AUX(x, data, m):=¤(CURVEFIT(x, [data™k, data™(k + 1)], [[data™k™1, m™k™2]])·CHI(data™k™1, x, data™(k + 1)™1), k, 1, DIM(data) - 1) TANGENT(u, x, a):=y = SUBST(u, x, a) + SUBST(DIF(u, x), x, a)·(x - a) TRAP(u, x, n, a, b):=(b - a)/(2·n)·(2·¤(SUBST(u, x, a + k·(b - a)/n), k, 1, n - 1) + SUBST(u, x, b) + SUBST(u, x, a)) UNK(n):=VECTOR((SOLUTIONS(½ = ½, ½))™1, i, 1, n, 1) c1:= c2:= c3:= data:= ddata:= m1:= rc:= u_:= v0:= x0:= x1:= x2:= x3:= x4:= xm:= xn:= y0:= y1:= y2:= y3:= y4:= yn:= «x:= «y:= ˙˙CTextObj ō2ļ{\rtf1\ansi\ansicpg1252\deff0\deflang1033{\fonttbl{\f0\fmodern\fprq1 Arial;}} {\colortbl ;\red0\green128\blue0;} \viewkind4\uc1\pard\cf1\b\f0\fs24 Name: \par Utility Functions for "Calculus Concepts Using Derive for Windows": \par } €>ōP˙,{\rtf1\ansi\ansicpg1252\deff0\deflang1033{\fonttbl{\f0\fmodern\fprq1 Arial;}} {\colortbl ;\red255\green0\blue0;} \viewkind4\uc1\pard\cf1\f0\fs24 Open add-head-explanation for explanations of these utility functions. (On the web you can go to http://www.math.hawaii.edu/lab/utilities.html) \par } ˙˙CExpnObj8\šŌUseršæ˙—[SECANT(u,x,a,h):=,TANGENT(u,x,a):=,CURVEFIT(x,data):=,SPLINE(x,data,m1):=,NEWT(u,x,x0,k):=,DRAW_NEWT(u,x,x0,k):=,DRAW_COMPLEX(v):=,BISECT(u,x,v0,k):=,LEFT(u,x,n,a,b):=,MID(u,x,n,a,b):=,RIGHT(u,x,n,a,b):=,TRAP(u,x,n,a,b):=,SIMP(u,x,n,a,b):=,DRAW_LEFT(u,x,n,a,b):=,DRAW_RIGHT(u,x,n,a,b):=,DRAW_TRAP(u,x,n,a,b):=,DE(p,q,x,y,x0,y0):=,DF(r,x,x0,xm,m,y,y0,yn,n):=,EULER(r,x,y,x0,y0,xn,n):=,DE2(b,c,x,x0,y0,v0):=]€8ą8ģUseršæ"LOAD("G:\Dfw5\M242L\add-util.mth")€8ų8Useršæ"LOAD("C:\Dfw5\M242L\add-util.mth")€ō#³{\rtf1\ansi\ansicpg1252\deff0\deflang1033{\fonttbl{\f0\fmodern\fprq1 Arial;}} {\colortbl ;\red0\green0\blue0;} \viewkind4\uc1\pard\cf1\b\f0\fs24 Your file starts here: \par } ˙˙˙š