/usr/share/axiom-20170501/src/algebra/PARSCURV.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 | )abbrev domain PARSCURV ParametricSpaceCurve
++ Author: Clifton J. Williamson
++ Date Created: 24 May 1990
++ Date Last Updated: 24 May 1990
++ Description:
++ ParametricSpaceCurve is used for plotting parametric space
++ curves in affine 3-space.
ParametricSpaceCurve(ComponentFunction) : SIG == CODE where
ComponentFunction : Type
NNI ==> NonNegativeInteger
SIG ==> with
curve : (ComponentFunction,ComponentFunction,ComponentFunction) -> %
++ curve(c1,c2,c3) creates a space curve from 3 component functions
++ \spad{c1}, \spad{c2}, and \spad{c3}.
coordinate : (%,NNI) -> ComponentFunction
++ coordinate(c,i) returns a coordinate function of c using 1-based
++ indexing according to i. This indicates what the function for the
++ coordinate component, i, of the space curve is.
CODE ==> add
Rep := Record(xCoord:ComponentFunction,_
yCoord:ComponentFunction,_
zCoord:ComponentFunction)
curve(x,y,z) == [x,y,z]
coordinate(c,n) ==
n = 1 => c.xCoord
n = 2 => c.yCoord
n = 3 => c.zCoord
error "coordinate: index out of bounds"
|