/usr/share/axiom-20170501/src/algebra/ODEIFTBL.spad is in axiom-source 20170501-3.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 | )abbrev domain ODEIFTBL ODEIntensityFunctionsTable
++ Author: Brian Dupee
++ Date Created: May 1994
++ Date Last Updated: January 1996
++ Description:
++ \axiom{ODEIntensityFunctionsTable()} provides a dynamic table and a set of
++ functions to store details found out about sets of ODE's.
ODEIntensityFunctionsTable() : SIG == CODE where
LEDF ==> List Expression DoubleFloat
LEEDF ==> List Equation Expression DoubleFloat
EEDF ==> Equation Expression DoubleFloat
VEDF ==> Vector Expression DoubleFloat
MEDF ==> Matrix Expression DoubleFloat
MDF ==> Matrix DoubleFloat
EDF ==> Expression DoubleFloat
DF ==> DoubleFloat
F ==> Float
INT ==> Integer
CDF ==> Complex DoubleFloat
LDF ==> List DoubleFloat
LF ==> List Float
S ==> Symbol
LS ==> List Symbol
MFI ==> Matrix Fraction Integer
LFI ==> List Fraction Integer
FI ==> Fraction Integer
ODEA ==> Record(xinit:DF,xend:DF,fn:VEDF,yinit:LDF,intvals:LDF,g:EDF,
abserr:DF,relerr:DF)
ON ==> Record(additions:INT,multiplications:INT,exponentiations:INT,
functionCalls:INT)
RVE ==> Record(val:EDF,exponent:INT)
RSS ==> Record(stiffnessFactor:F,stabilityFactor:F)
ATT ==> Record(stiffness:F,stability:F,expense:F,accuracy:F,
intermediateResults:F)
ROA ==> Record(key:ODEA,entry:ATT)
SIG ==> with
showTheIFTable : () -> $
++ showTheIFTable() returns the current table of intensity functions.
clearTheIFTable : () -> Void
++ clearTheIFTable() clears the current table of intensity functions.
keys : $ -> List(ODEA)
++ keys(tab) returns the list of keys of f
iFTable : List Record(key:ODEA,entry:ATT) -> $
++ iFTable(l) creates an intensity-functions table from the elements
++ of l.
insert! : Record(key:ODEA,entry:ATT) -> $
++ insert!(r) inserts an entry r into theIFTable
showIntensityFunctions : ODEA -> Union(ATT,"failed")
++ showIntensityFunctions(k) returns the entries in the
++ table of intensity functions k.
CODE ==> add
Rep := Table(ODEA,ATT)
import Rep
theIFTable:$ := empty()$Rep
showTheIFTable():$ ==
theIFTable
clearTheIFTable():Void ==
theIFTable := empty()$Rep
void()$Void
iFTable(l:List Record(key:ODEA,entry:ATT)):$ ==
theIFTable := table(l)$Rep
insert!(r:Record(key:ODEA,entry:ATT)):$ ==
insert!(r,theIFTable)$Rep
keys(t:$):List ODEA ==
keys(t)$Rep
showIntensityFunctions(k:ODEA):Union(ATT,"failed") ==
search(k,theIFTable)$Rep
|