diff options
author | dos-reis <gdr@axiomatics.org> | 2007-08-14 05:14:52 +0000 |
---|---|---|
committer | dos-reis <gdr@axiomatics.org> | 2007-08-14 05:14:52 +0000 |
commit | ab8cc85adde879fb963c94d15675783f2cf4b183 (patch) | |
tree | c202482327f474583b750b2c45dedfc4e4312b1d /src/algebra/paramete.spad.pamphlet | |
download | open-axiom-ab8cc85adde879fb963c94d15675783f2cf4b183.tar.gz |
Initial population.
Diffstat (limited to 'src/algebra/paramete.spad.pamphlet')
-rw-r--r-- | src/algebra/paramete.spad.pamphlet | 218 |
1 files changed, 218 insertions, 0 deletions
diff --git a/src/algebra/paramete.spad.pamphlet b/src/algebra/paramete.spad.pamphlet new file mode 100644 index 00000000..8cf1a256 --- /dev/null +++ b/src/algebra/paramete.spad.pamphlet @@ -0,0 +1,218 @@ +\documentclass{article} +\usepackage{axiom} +\begin{document} +\title{\$SPAD/src/algebra paramete.spad} +\author{Clifton J. Williamson} +\maketitle +\begin{abstract} +\end{abstract} +\eject +\tableofcontents +\eject +\section{domain PARPCURV ParametricPlaneCurve} +<<domain PARPCURV ParametricPlaneCurve>>= +)abbrev domain PARPCURV ParametricPlaneCurve +++ Author: Clifton J. Williamson +++ Date Created: 24 May 1990 +++ Date Last Updated: 24 May 1990 +++ Basic Operations: curve, coordinate +++ Related Constructors: +++ Also See: +++ AMS Classifications: +++ Keywords: parametric curve, graphics +++ References: +++ Description: ParametricPlaneCurve is used for plotting parametric plane +++ curves in the affine plane. + +ParametricPlaneCurve(ComponentFunction): Exports == Implementation where + ComponentFunction : Type + NNI ==> NonNegativeInteger + + Exports ==> with + curve: (ComponentFunction,ComponentFunction) -> % + ++ curve(c1,c2) creates a plane curve from 2 component functions \spad{c1} + ++ and \spad{c2}. + coordinate: (%,NNI) -> ComponentFunction + ++ coordinate(c,i) returns a coordinate function for c using 1-based + ++ indexing according to i. This indicates what the function for the + ++ coordinate component i of the plane curve is. + + Implementation ==> add + + Rep := Record(xCoord:ComponentFunction,yCoord:ComponentFunction) + + curve(x,y) == [x,y] + coordinate(c,n) == + n = 1 => c.xCoord + n = 2 => c.yCoord + error "coordinate: index out of bounds" + +@ +\section{package PARPC2 ParametricPlaneCurveFunctions2} +<<package PARPC2 ParametricPlaneCurveFunctions2>>= +)abbrev package PARPC2 ParametricPlaneCurveFunctions2 +++ Description: +++ This package \undocumented +ParametricPlaneCurveFunctions2(CF1: Type, CF2:Type): with + map: (CF1 -> CF2, ParametricPlaneCurve(CF1)) -> ParametricPlaneCurve(CF2) + ++ map(f,x) \undocumented + == add + map(f, c) == curve(f coordinate(c,1), f coordinate(c, 2)) + +@ +\section{domain PARSCURV ParametricSpaceCurve} +<<domain PARSCURV ParametricSpaceCurve>>= +)abbrev domain PARSCURV ParametricSpaceCurve +++ Author: Clifton J. Williamson +++ Date Created: 24 May 1990 +++ Date Last Updated: 24 May 1990 +++ Basic Operations: curve, coordinate +++ Related Constructors: +++ Also See: +++ AMS Classifications: +++ Keywords: parametric curve, graphics +++ References: +++ Description: ParametricSpaceCurve is used for plotting parametric space +++ curves in affine 3-space. + +ParametricSpaceCurve(ComponentFunction): Exports == Implementation where + ComponentFunction : Type + NNI ==> NonNegativeInteger + + Exports ==> 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. + + Implementation ==> 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" + +@ +\section{package PARSC2 ParametricSpaceCurveFunctions2} +<<package PARSC2 ParametricSpaceCurveFunctions2>>= +)abbrev package PARSC2 ParametricSpaceCurveFunctions2 +++ Description: +++ This package \undocumented +ParametricSpaceCurveFunctions2(CF1: Type, CF2:Type): with + map: (CF1 -> CF2, ParametricSpaceCurve(CF1)) -> ParametricSpaceCurve(CF2) + ++ map(f,x) \undocumented + == add + map(f, c) == curve(f coordinate(c,1), f coordinate(c,2), f coordinate(c,3)) + +@ +\section{domain PARSURF ParametricSurface} +<<domain PARSURF ParametricSurface>>= +)abbrev domain PARSURF ParametricSurface +++ Author: Clifton J. Williamson +++ Date Created: 24 May 1990 +++ Date Last Updated: 24 May 1990 +++ Basic Operations: surface, coordinate +++ Related Constructors: +++ Also See: +++ AMS Classifications: +++ Keywords: parametric surface, graphics +++ References: +++ Description: ParametricSurface is used for plotting parametric surfaces in +++ affine 3-space. + +ParametricSurface(ComponentFunction): Exports == Implementation where + ComponentFunction : Type + NNI ==> NonNegativeInteger + + Exports ==> with + surface: (ComponentFunction,ComponentFunction,ComponentFunction) -> % + ++ surface(c1,c2,c3) creates a surface from 3 parametric component + ++ functions \spad{c1}, \spad{c2}, and \spad{c3}. + coordinate: (%,NNI) -> ComponentFunction + ++ coordinate(s,i) returns a coordinate function of s using 1-based + ++ indexing according to i. This indicates what the function for the + ++ coordinate component, i, of the surface is. + + Implementation ==> add + + Rep := Record(xCoord:ComponentFunction,_ + yCoord:ComponentFunction,_ + zCoord:ComponentFunction) + + surface(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" + +@ +\section{package PARSU2 ParametricSurfaceFunctions2} +<<package PARSU2 ParametricSurfaceFunctions2>>= +)abbrev package PARSU2 ParametricSurfaceFunctions2 +++ Description: +++ This package \undocumented +ParametricSurfaceFunctions2(CF1: Type, CF2:Type): with + map: (CF1 -> CF2, ParametricSurface(CF1)) -> ParametricSurface(CF2) + ++ map(f,x) \undocumented + == add + map(f, c) == surface(f coordinate(c,1), f coordinate(c,2), f coordinate(c,3)) + +@ +\section{License} +<<license>>= +--Copyright (c) 1991-2002, The Numerical ALgorithms Group Ltd. +--All rights reserved. +-- +--Redistribution and use in source and binary forms, with or without +--modification, are permitted provided that the following conditions are +--met: +-- +-- - Redistributions of source code must retain the above copyright +-- notice, this list of conditions and the following disclaimer. +-- +-- - Redistributions in binary form must reproduce the above copyright +-- notice, this list of conditions and the following disclaimer in +-- the documentation and/or other materials provided with the +-- distribution. +-- +-- - Neither the name of The Numerical ALgorithms Group Ltd. nor the +-- names of its contributors may be used to endorse or promote products +-- derived from this software without specific prior written permission. +-- +--THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS +--IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +--TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A +--PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER +--OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, +--EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, +--PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR +--PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF +--LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +--NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +--SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +@ +<<*>>= +<<license>> + +<<domain PARPCURV ParametricPlaneCurve>> +<<package PARPC2 ParametricPlaneCurveFunctions2>> +<<domain PARSCURV ParametricSpaceCurve>> +<<package PARSC2 ParametricSpaceCurveFunctions2>> +<<domain PARSURF ParametricSurface>> +<<package PARSU2 ParametricSurfaceFunctions2>> +@ +\eject +\begin{thebibliography}{99} +\bibitem{1} nothing +\end{thebibliography} +\end{document} |