
(/VERSIONCHECK 2) 

(DEFUN |ODETOOLS;wronskianMatrix;LM;1| (|l| $)
  (SPADCALL |l| (LENGTH |l|) (QREFELT $ 13))) 

(DEFUN |ODETOOLS;wronskianMatrix;LNniM;2| (|l| |q| $)
  (PROG (|m| |i| #0=#:G1824 |v|)
    (RETURN
      (SEQ (LETT |v| (SPADCALL |l| (QREFELT $ 16))
                 . #1=(|ODETOOLS;wronskianMatrix;LNniM;2|))
           (LETT |m| (SPADCALL |q| (QVSIZE |v|) (QREFELT $ 17)) . #1#)
           (SEQ (LETT |i| (SPADCALL |m| (QREFELT $ 19)) . #1#)
                (LETT #0# (SPADCALL |m| (QREFELT $ 20)) . #1#) G190
                (COND ((> |i| #0#) (GO G191)))
                (SEQ (SPADCALL |m| |i| |v| (QREFELT $ 21))
                     (EXIT (LETT |v|
                                 (SPADCALL
                                     (CONS
                                      #'|ODETOOLS;wronskianMatrix;LNniM;2!0|
                                      (VECTOR $ (QREFELT $ 9)))
                                     |v| (QREFELT $ 24)) . #1#)))
                (LETT |i| (+ |i| 1) . #1#) (GO G190) G191 (EXIT NIL))
           (EXIT |m|))))) 

(DEFUN |ODETOOLS;wronskianMatrix;LNniM;2!0| (|#1| $$)
  (SPADCALL (QREFELT $$ 1) |#1| (QREFELT (QREFELT $$ 0) 22))) 

(DEFUN |ODETOOLS;variationOfParameters;LODOFLU;3| (|op| |g| |b| $)
  (PROG (|n| |v|)
    (RETURN
      (SEQ (COND
             ((NULL |b|) (CONS 1 "failed"))
             ('T
              (SEQ (LETT |v|
                         (SPADCALL
                             (LETT |n| (SPADCALL |op| (QREFELT $ 25))
                                   . #0=(|ODETOOLS;variationOfParameters;LODOFLU;3|))
                             (|spadConstant| $ 26) (QREFELT $ 27)) . #0#)
                   (SPADCALL |v| (QVSIZE |v|)
                             (SPADCALL |g|
                                 (SPADCALL |op| (QREFELT $ 28))
                                 (QREFELT $ 29))
                             (QREFELT $ 30))
                   (EXIT (SPADCALL (SPADCALL |b| |n| (QREFELT $ 13))
                             |v| (QREFELT $ 33)))))))))) 

(DEFUN |ODETOOLS;particularSolution;LODOFLMU;4|
       (|op| |g| |b| |integration| $)
  (PROG (|sol| |s| |i| |f| #0=#:G1848 |ans|)
    (RETURN
      (SEQ (COND
             ((SPADCALL |g| (QREFELT $ 36))
              (CONS 0 (|spadConstant| $ 26)))
             ('T
              (SEQ (LETT |sol| (SPADCALL |op| |g| |b| (QREFELT $ 34))
                         . #1=(|ODETOOLS;particularSolution;LODOFLMU;4|))
                   (EXIT (COND
                           ((QEQCAR |sol| 1) (CONS 1 "failed"))
                           ('T
                            (SEQ (LETT |ans|
                                       (|spadConstant| $ 26) . #1#)
                                 (SEQ (LETT |i|
                                       (SPADCALL
                                        (LETT |s| (QCDR |sol|) . #1#)
                                        (QREFELT $ 37)) . #1#)
                                      (LETT |f| NIL . #1#)
                                      (LETT #0# |b| . #1#) G190
                                      (COND
                                        ((OR (ATOM #0#)
                                          (PROGN
                                            (LETT |f| (CAR #0#) . #1#)
                                            NIL))
                                         (GO G191)))
                                      (SEQ
                                       (EXIT
                                        (LETT |ans|
                                         (SPADCALL |ans|
                                          (SPADCALL
                                           (SPADCALL
                                            (SPADCALL |s| |i|
                                             (QREFELT $ 38))
                                            |integration|)
                                           |f| (QREFELT $ 39))
                                          (QREFELT $ 40)) . #1#)))
                                      (LETT #0#
                                       (PROG1 (CDR #0#)
                                         (LETT |i| (+ |i| 1) . #1#)) . #1#)
                                      (GO G190) G191 (EXIT NIL))
                                 (EXIT (CONS 0 |ans|))))))))))))) 

(DEFUN |ODETools| (&REST #0=#:G1849)
  (PROG ()
    (RETURN
      (PROG (#1=#:G1850)
        (RETURN
          (COND
            ((LETT #1#
                   (|lassocShiftWithFunction| (|devaluateList| #0#)
                       (HGET |$ConstructorCache| '|ODETools|)
                       '|domainEqualList|)
                   . #2=(|ODETools|))
             (|CDRwithIncrement| #1#))
            ('T
             (UNWIND-PROTECT
               (PROG1 (APPLY (|function| |ODETools;|) #0#)
                 (LETT #1# T . #2#))
               (COND
                 ((NOT #1#) (HREM |$ConstructorCache| '|ODETools|))))))))))) 

(DEFUN |ODETools;| (|#1| |#2|)
  (PROG (DV$1 DV$2 |dv$| $ |pv$|)
    (RETURN
      (PROGN
        (LETT DV$1 (|devaluate| |#1|) . #0=(|ODETools|))
        (LETT DV$2 (|devaluate| |#2|) . #0#)
        (LETT |dv$| (LIST '|ODETools| DV$1 DV$2) . #0#)
        (LETT $ (GETREFV 43) . #0#)
        (QSETREFV $ 0 |dv$|)
        (QSETREFV $ 3 (LETT |pv$| (|buildPredVector| 0 0 NIL) . #0#))
        (|haddProp| |$ConstructorCache| '|ODETools| (LIST DV$1 DV$2)
            (CONS 1 $))
        (|stuffDomainSlots| $)
        (QSETREFV $ 6 |#1|)
        (QSETREFV $ 7 |#2|)
        (QSETREFV $ 9 (SPADCALL (QREFELT $ 8)))
        $)))) 

(MAKEPROP '|ODETools| '|infovec|
    (LIST '#(NIL NIL NIL NIL NIL NIL (|local| |#1|) (|local| |#2|)
             (0 . D) '|diff| (|Matrix| 6) (|List| 6)
             (|NonNegativeInteger|) |ODETOOLS;wronskianMatrix;LNniM;2|
             |ODETOOLS;wronskianMatrix;LM;1| (|Vector| 6)
             (4 . |vector|) (9 . |zero|) (|Integer|)
             (15 . |minRowIndex|) (20 . |maxRowIndex|) (25 . |setRow!|)
             (32 . |elt|) (|Mapping| 6 6) (38 . |map!|) (44 . |degree|)
             (49 . |Zero|) (53 . |new|) (59 . |leadingCoefficient|)
             (64 . /) (70 . |qsetelt!|) (|Union| 15 '"failed")
             (|LinearSystemMatrixPackage| 6 15 15 10)
             (77 . |particularSolution|)
             |ODETOOLS;variationOfParameters;LODOFLU;3| (|Boolean|)
             (83 . |zero?|) (88 . |minIndex|) (93 . |qelt|) (99 . *)
             (105 . +) (|Union| 6 '"failed")
             |ODETOOLS;particularSolution;LODOFLMU;4|)
          '#(|wronskianMatrix| 111 |variationOfParameters| 122
             |particularSolution| 129)
          'NIL
          (CONS (|makeByteWordVec2| 1 'NIL)
                (CONS '#()
                      (CONS '#()
                            (|makeByteWordVec2| 42
                                '(0 7 0 8 1 15 0 11 16 2 10 0 12 12 17
                                  1 10 18 0 19 1 10 18 0 20 3 10 0 0 18
                                  15 21 2 7 6 0 6 22 2 15 0 23 0 24 1 7
                                  12 0 25 0 6 0 26 2 15 0 12 6 27 1 7 6
                                  0 28 2 6 0 0 0 29 3 15 6 0 18 6 30 2
                                  32 31 10 15 33 1 6 35 0 36 1 15 18 0
                                  37 2 15 6 0 18 38 2 6 0 0 0 39 2 6 0
                                  0 0 40 2 0 10 11 12 13 1 0 10 11 14 3
                                  0 31 7 6 11 34 4 0 41 7 6 11 23 42)))))
          '|lookupComplete|)) 
