where expr | string is the expression or string. Set excludeFunctions to 1 to exclude user functions
from the list, or omit it to include user functions. VarList() must be executed in Auto or Exact mode.
Some examples:
VarList(a+b*x)
returns
{a, b, x}
VarList("a+b")
returns
{a, b}
VarList(f(x,y))
returns
{y, x, f}
(function name included)
VarList(f(x,y),
1
)
returns
{y, x}
(function name excluded)
[7.43] Faster function calls with list and matrix arguments
Function call execution time increases substantially with list and matrix arguments. The increase is
independent of the code executed by the function, so I call it overhead. This tip quantifies the overhead
and shows a method to reduce it, at least for global lists and matrices.
I use various timing results in this tip. All execution time data is for a HW2 TI-92 Plus, AMS 2.05. HW1
calculators run about 17% slower. I tested lists and matrices with random floating point integer
elements, so execution times will be different if the elements are integers or symbolic elements.
Matrix arguments
I used this test program to measure the overhead for a HW2 TI-92 Plus, AMS 2.05:
t()
Prgm
Local k,s,res
Define s(mat)=Func
© Define a function with a single matrix argument
Return 0
© Just return a constant
EndFunc
For k,
1
,50
© Loop fifty times for better timing resolution, ...
s(m)
→
res
© ... calling the subroutine with the matrix argument
EndFor
EndPrgm
m is a global matrix, initialized to random integer values with randmat(). Tests with 34 matrices, with up
to 200 rows and 20 columns, resulted in this model equation to estimate the execution time:
[1]
T
=
a
+
b
$
nr
+
c
$
nc
+
d
$
nc
$
nr
where T is the execution time for each call, and
nr
=
number of matrix rows
nc
=
number of matrix columns
a = 2.5404 E-2
b = 8.2538 E-4
c = 7.615 E-5
d = 8.2447 E-4
This model equation is accurate to about 3%. This table shows some typical overhead times:
7 - 45
Summary of Contents for TI-92+
Page 52: ...Component side of PCB GraphLink I O connector detail 1 41...
Page 53: ...LCD connector detail PCB switch side 1 42...
Page 54: ...Key pad sheet contact side Key pad sheet key side 1 43...
Page 55: ...Key cap detail 1 44...
Page 57: ...Component side of PCB with shield removed A detail view of the intergrated circuits 1 46...
Page 410: ...void extensionroutine2 void Credit to Bhuvanesh Bhatt 10 4...