Next: 3.6 Annotating Object Orientation Up: 3 Advanced Linear Algebra Previous: 3.4 Determining Where to

# 3.5 Creating Objects ``Conformal to'' Other Objects

Often, it is necessary to create objects that are aligned and dimensioned conformal with a given object. While it is possible to extract global information from the given object and use it to create the new object, it is both more convenient and more efficient to call special routines that create the new object ``conformal to'' the given parent object.

Given a vector or multivector, possibly projected and duplicated, one can create a new vector or multivector conformal to the given object with the calls place HR here

place HR here The object type of the input must equal (duplicated) (projected) vector or multivector, possibly projected and duplicated, since only for those object types can we uniquely determine the length and alignment for the new object. Parameter num_vectors equal to the value

PLA_INHERIT indicates that the number of vectors in the new multivector is to be inherited by the new object.

One can also create (duplicated) projected vectors and multivectors conformal to an existing object: place HR here

place HR here In this case, the permissible object types for the inputs are matrix, vector and multivector, possibly projected and duplicated. If the input object is a matrix object, the project_onto parameter indicates whether to create the new object conformal to a row of the matrix (project_onto = PLA_PROJ_ONTO_ROW) or a column of the matrix (project_onto = PLA_PROJ_ONTO_COL). The constant PLA_INHERIT can be used to indicate that the value of a parameter is to be inherited from the input object.

Creating a matrix conformal to another object requires both row and column alignment. Thus, one can only create a matrix conformal to another matrix: place HR here

place HR here

One can create a multiscalar conformal to any object. place HR here

place HR here The global length and width are inherited from the original object. The created object has the same object type, template, and global dimensions as the original object. Legal inputs for owner_row and owner_col are integers indicating the desired row and/or column, PLA_ALL_ROWS, PLA_ALL_COLS, or PLA_INHERIT. In the case when the row and/or column is given as PLA_INHERIT, the ownership is inherited from the original object.

Next: 3.6 Annotating Object Orientation Up: 3 Advanced Linear Algebra Previous: 3.4 Determining Where to

rvdg@cs.utexas.edu