$SPAD/src/input mult2d.input

The Axiom Team December 3, 2016

Abstract

Contents

2

1 License

— license —

--Copyright The Numerical Algorithms Group Limited 1994.

———-

— * —

\getchunk{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)

———-

References^{[1] nothing}

4