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
|
\documentclass{article}
\usepackage{axiom}
\begin{document}
\title{\$SPAD/src/input mult2d.input}
\author{The Axiom Team}
\maketitle
\begin{abstract}
\end{abstract}
\eject
\tableofcontents
\eject
\section{License}
<<license>>=
--Copyright The Numerical Algorithms Group Limited 1994.
@
<<*>>=
<<license>>
)clear all
--draws x**i for i in 1..5, x=-1..1
makePoint(x:SF,y:SF):(Point SF) ==
point([x,y])$(Point SF)
drawFun(fn:SF->SF, seg:Segment Float):List(List(Point SF)) ==
fp := (t:SF):Point SF +-> makePoint(t, fn(t))
plot := pointPlot(fp, segment(convert(lo seg)@SF, convert(hi seg)@SF))$PLOT
lp := listBranches(plot)$PLOT
drawFuns(fl:List(SF->SF), seg:SegmentBinding Float):VIEW2D ==
v := viewport2D()$VIEW2D
i : PositiveInteger := 1
for f in fl repeat
llp := drawFun(f, segment seg)
g := graphCurves(llp)$VIEW
putGraph(v,g,i)$VIEW2D
i := i + 1
makeViewport2D(v)$VIEW2D
makeListFuns(fl:List(Expression Integer),_
seg:SegmentBinding Float):List(SF->SF) ==
lfuns:List(SF->SF) := empty()
for f in fl repeat
ff : (SF->SF) := makeFloatFunction(f, variable seg)$MakeFloatCompiledFunction(Expression Integer)
lfuns := cons(ff, lfuns)
lfuns
drawFuns(makeListFuns([x**i for i in 1..5], x=-1..1), x=-1..1)
drawFuns(makeListFuns([sin(x*i) for i in 1..5], x=-1..1), x=-1..1)
drawFuns(makeListFuns([sec x, sin x, cos x, tan x], x=-1..1), x=-1..1)
@
\eject
\begin{thebibliography}{99}
\bibitem{1} nothing
\end{thebibliography}
\end{document}
|