
SPACEARRAY(3LO)      Linop Reference Manual       SPACEARRAY(3LO)

NAME
     <type>spacearray - A class that is an array of <type>spaces.

SYNOPSIS
     #include <<type>spacea.h>

DESCRIPTION
     A   <type>spacearray   is   a   two-dimensional   array   of
     <type>spaces.  A <type>spacearray is constructed by specify-
     ing the size, and then assigning <type>spaces into  it.  The
     arithmetic  operators  apply to <type>spacearrays, both with
     <type>s and  other  <type>spacearrays.  <type>operators  are
     meant   as   the   main   method   for   calculating   using
     <type>spacearrays- it is a friend to the class.

PUBLIC OPERATIONS
     <type>spacearray(int i=,int j=)
          Construct a <type>spacearray with i rows and j columns.

     <type>spacearray(const <type>space &)
          Construct  a  x   <type>spacearray   containing   the
          <type>space.

     <type>spacearray empty() const
          Return a <type>spacearray with the same number of  rows
          and  columns,  the  same  axislists,  but  with all the
          spaces equal to zero.

     <type>spacearray(const <type>spacearray &)
     ~<type>spacearray()

     float norm() const
     float norm2() const
          norm returns the square root of the sum of the  squares
          of   the  elements  in  all  the  <type>spaces  in  the
          <type>spacearray. norm2 returns the norm squared.

     <type> cross(const <type>spacearray &) const
          If the two  <type>spacearrays  are  conformable,  cross
          multiply the two, element by element, and sums. For two
          <type>spacearrays to be conformable, they must have the
          same number of rows and columns, and each corresponding
          pair of <type>spaces must be conformable.

     <type>spacearray trans() const
          Returns a  new  <type>spacearray  that  is  created  by
          switching the rows and columns of the <type>spacearray.
          All of the <type>spaces are copied.

     friend <type>spacearray operator+
                        (<type>,const <type>spacearray &)
     friend <type>spacearray operator+

SPACEARRAY(3LO)      Linop Reference Manual       SPACEARRAY(3LO)

                        (const <type>spacearray &,<type>)
     friend <type>spacearray operator+
      (const <type>spacearray &,const <type>spacearray &)

     friend <type>spacearray operator-
                        (<type>,const <type>spacearray &)
     friend <type>spacearray operator-
                        (const <type>spacearray &,<type>)
     friend <type>spacearray operator-
      (const <type>spacearray &,const <type>spacearray &)

     friend <type>spacearray operator*
                        (<type>,const <type>spacearray &)
     friend <type>spacearray operator*
                        (const <type>spacearray &,<type>)
     friend <type>spacearray operator*
      (const <type>spacearray &,const <type>spacearray &)

     friend <type>spacearray operator/
                        (<type>,const <type>spacearray &)
     friend <type>spacearray operator/
                        (const <type>spacearray &,<type>)
     friend <type>spacearray operator/
      (const <type>spacearray &,const <type>spacearray &)

     <type>spacearray operator+()
     <type>spacearray operator-()
          The    arithmetic    operators,    applied    to    two
          <type>spacearrays, check to see if the two are conform-
          able, and if they are, performs the  operation  element
          by element.

     <type>spacearray & operator=(const <type>spacearray &)
     <type>spacearray & operator=(<type>)
     <type>spacearray & operator+=(const <type>spacearray &)
     <type>spacearray & operator+=(<type>)
     <type>spacearray & operator-=(const <type>spacearray &)
     <type>spacearray & operator-=(<type>)
     <type>spacearray & operator*=(const <type>spacearray &)
     <type>spacearray & operator*=(<type>)
     <type>spacearray & operator/=(const <type>spacearray &)
     <type>spacearray & operator/=(<type>)

     <type>space & operator()(int i=,int j=)
          Return a reference to the  <type>space  at  coordinates
          (i,j). This <type>space can be assigned to.

     friend ostream& operator<<(ostream&,const <type>spacearray &)

     int numrows()
     int numcols()
          Eeturn  the  number  of   row   or   columns   in   the

SPACEARRAY(3LO)      Linop Reference Manual       SPACEARRAY(3LO)

          <type>spacearray.

PRIVATE VARIABLES
     int rows
     int cols
     <type>space * spaces

PRIVATE OPERATIONS
     void compatible(const <type>spacearray &) const
     <type>space & getspace(int i,int j) const

SEE ALSO
     <type>space, <type>op, <type>opArray

