2 DESOLN LISP CONTAINS A ROUTINE FOR SOLVING DIFFERENTIAL EQUATIONS
3 OR SYSTEMS OF THEM BY USING LAPLACE TRANSFORMS. THE CALL IS:
5 DESOLVE(EQ,VAR) OR DESOLVE([EQ1,...,EQN],[VAR1,...,VARN])
7 WHERE THE EQ'S ARE DIFFERENTIAL EQUATIONS IN THE DEPENDENT VARIABLES
8 VAR1,...,VARN. THE FUNCTIONAL RELATIONSHIPS MUST BE EXPLICITLY
9 INDICATED IN BOTH THE EQUATIONS AND THE VARIABLES, FOR EXAMPLE
11 (C1) 'DIFF(F,X,2)=SIN(X)+'DIFF(G,X);
12 (C2) 'DIFF(F,X)+X^2-F=2*'DIFF(G,X,2);
14 IS NOT IN THE PROPER FORMAT. THE CORRECT WAY IS:
16 (C3) 'DIFF(F(X),X,2)=SIN(X)+'DIFF(G(X),X);
17 (C4) 'DIFF(F(X),X)+X^2-F(X)=2*'DIFF(G(X),X,2);
19 THE QUOTES ARE NOT NECESSARY SINCE DIFF WILL RETURN THE NOUN FORMS ANYWAY.
21 THE CALL IS THEN DESOLVE([D3,D4],[F(X),G(X)]);
23 IF INITIAL CONDITIONS AT 0 ARE KNOWN, THEY SHOULD BE SUPPLIED BEFORE
24 CALLING DESOLVE BY USING ATVALUE.
28 (C5) 'DIFF(F(X),X)='DIFF(G(X),X)+SIN(X);
30 (D5) -- F(X) = -- G(X) + SIN(X)
33 (C6) 'DIFF(G(X),X,2)='DIFF(F(X),X)-COS(X);
36 (D6) --- G(X) = -- F(X) - COS(X)
40 (C7) ATVALUE('DIFF(G(X),X),X=0,A);
43 (C8) ATVALUE(F(X),X=0,1);
46 (C9) DESOLVE([D5,D6],[F(X),G(X)]);
49 (D9) [F(X) = A %E - A + 1, G(X) = COS(X) + A %E - A + G(0) - 1]
52 (C10) [D5,D6],D9,DIFF;
54 (D10) [A %E = A %E , A %E - COS(X) = A %E - COS(X)]