2Input

The data type ‘number’ is used for all constants and variables. The coefficients of the individual components in numbers are complex values. There are no separate structures for integer ‘int’, real (‘float’, or ‘double’) non‐complex values. Everything is complex with a Clifford unit attached.

The methods provided to set the values of constants are suitable for numbers which require initialisation without input from the keyboard. It is assumed that any syntactical errors in the format of the numbers are eliminated prior to compilation, and that there is not any need to check for errors at run time.

The methods provided to set the values of variables, given as input from the user at run time, allow for checking numeric syntax either explicitly, or implicitly via the error trapping and recovery mechanism. Examples of the implicit approach are given in Chapter 15.

2.1 Syntax

The syntax for a single component of a Clifford number in an input stream of characters is of the form:

(double,double)e { int,int,int,int… }

The two ‘double’ within parentheses (…) are the real and imaginary parts of the coefficient. These can be any valid literal constant floating point constructs.

The list (set) of ‘int’ within the braces {…} are the primal (grade 1) Clifford units, the multiplicative product of which gives the (higher grade) evolved unit for the particular Clifford number. There can be anywhere from 0 to 311 primal units. The primal units must be in numerical order from lowest ...

Get Numerical Calculations in Clifford Algebra now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.