Numerical calculations in Clifford algebra : a practical guide for engineers and scientists / Andrew Seagar.

By: Seagar, Andrew [author.]
Language: English Publisher: Hoboken, NJ : John Wiley & Sons, Inc., 2023Copyright date: ©2023Description: 1 online resource (xxiv, 502 pages) : illustrations (some color)Content type: text Media type: computer Carrier type: online resourceISBN: 9781394173242; 9781394173259; 1394173253; 9781394173273; 139417327X; 9781394173266; 1394173261Subject(s): Clifford algebras | Algebra -- Data processingAdditional physical formats: Print version:: Numerical calculations in Clifford algebraDDC classification: 512/.57 LOC classification: QA199 | .S43 2023Online resources: Full text available at Wiley Online Library Click here to view
Contents:
Table of Contents List of Figures xv List of Tables xix Preface xxi Part I Entities and Operations 1 1 Introduction 3 1.1 Operations 3 1.2 History 4 1.3 Alternative Forms 5 1.4 Naming 6 1.5 Structure 7 1.5.1 Algebraic 7 1.5.2 Numeric 8 1.6 Entities 11 References 12 2 Input 13 2.1 Syntax 13 2.2 Constants 14 2.2.1 Specific Types 14 2.2.2 General 16 2.3 Variables 19 2.3.1 Checking and Converting 19 Reference 23 3 Output 25 3.1 Tree Format 26 3.2 Numeric Formats 29 3.2.1 Default Format 29 3.2.2 Defined Format 31 3.3 Extended Formats 32 3.3.1 Rounding 32 3.3.2 Parts of Coefficients 33 3.4 Selected Components 35 3.5 Primitive Formats 36 3.6 Recovered Values 38 4 Unary Operations 41 4.1 Theory 41 4.1.1 Negation 41 4.1.2 Involution 41 4.1.3 Pair Exchange 42 4.1.4 Reversion 43 4.1.5 Clifford Conjugation 44 4.1.6 Supplementation and Pseudo-scalar 44 4.2 Practice 45 4.2.1 Example Code 45 4.2.2 Example Output 47 5 Binary Operations 49 5.1 Geometric Origins 49 5.1.1 Outer Multiplication 49 5.1.2 Orthogonal Components 52 5.1.3 Inner Multiplication 53 5.1.4 Names 54 5.2 Multiplication of Units 55 5.2.1 Progressive and Regressive Multiplication 55 5.2.2 Outer, Inner, and Central Multiplication 57 5.2.3 Multiplication By Scalars 58 5.3 Central Multiplication 59 5.3.1 Primal Units 60 5.3.2 Evolved and Other Units 61 5.3.3 Numbers 62 5.4 Practice 63 5.4.1 Example Code 63 5.4.2 Example Output 65 5.4.3 Multiplication Tables 65 References 70 6 Vectors and Geometry 71 6.1 Theory 71 6.1.1 Magnitude 71 6.1.2 Inverse 72 6.1.3 Reflection 72 6.1.4 Projection 73 6.1.5 Rotation 73 6.2 Practice 74 6.2.1 Example Code 74 6.2.2 Example Output 76 7 Quaternions 79 7.1 Theory 79 7.1.1 Magnitude 80 7.1.2 Inverse 80 7.1.3 Reflection and Projection 80 7.1.4 Rotation 81 7.1.5 Intersection 82 7.1.6 Factorisation 82 7.2 Practice 83 7.2.1 Example Code 83 7.2.2 Example Output 86 References 87 8 Pauli Matrices 89 8.1 Theory 89 8.1.1 Recovery of Components 90 8.1.2 Magnitude 90 8.1.3 Inverse 91 8.1.4 Reflection, Projection, and Rotation 91 8.2 Practice 91 8.2.1 Example Code 91 8.2.2 Example Output 94 Reference 95 9 Bicomplex Numbers 97 9.1 Theory 97 9.1.1 Conjugate 98 9.1.2 Magnitude 98 9.1.3 Inverse 98 9.1.4 Reflection, Projection, and Rotation 99 9.2 Practice 99 9.2.1 Example Code 99 9.2.2 Example Output 101 Reference 102 10 Electromagnetic Fields 103 10.1 Theory 103 10.1.1 Time and Frequency 103 10.1.2 Electromagnetic Entities 104 10.1.3 Dirac Operators 105 10.1.4 Maxwell’s Equations 105 10.1.5 Simplified Notation 105 10.1.6 Magnitude 106 10.1.7 Inverse 106 10.1.8 Reflection 107 10.1.9 Projection 107 10.1.10 Rotation 107 10.2 Practice 107 10.2.1 Example Code 107 10.2.2 Example Output 110 10.3 Field Arithmetic 112 10.3.1 Extensions Based on Quaternions 112 10.3.2 Inverses 113 10.3.3 Example Code 115 10.3.4 Example Output 117 References 118 11 Arrays of Clifford Numbers 119 11.1 Theory 119 11.2 Practice 120 11.2.1 Example Code 120 11.2.2 Example Output 123 Reference 125 12 Power Series 127 12.1 Theory 127 12.1.1 User Defined 127 12.1.2 Predefined 128 12.1.3 Convergence 129 12.1.4 Factorisation 130 12.1.5 Squaring 131 12.2 Practice 131 12.2.1 User Defined 131 12.2.2 Predefined 133 12.2.2.1 Standard Convergence 136 12.2.2.2 Extended Convergence 141 12.2.2.3 Doubly Extended Convergence 146 References 148 13 Matrices of Clifford Numbers 149 13.1 Background 149 13.2 Inversion 150 13.3 Practice 152 13.3.1 Example Code 152 13.3.2 Example Output 155 Reference 159 Part II Customisation 161 14 Memory 163 14.1 Memory Usage 163 14.2 Examples 165 14.2.1 Memory Tree Sparsity 165 14.2.2 Memory Expansion 170 14.2.3 Memory Recycling 171 14.2.3.1 Explicit and Implicit 171 14.2.3.2 Implicit and Nested 173 Reference 175 15 Errors 177 15.1 User Errors 177 15.1.1 Syntax Errors and Messages 180 15.2 System Errors 181 15.3 Recovery 182 15.4 Beneficial Usage 185 Reference 191 16 Extension 193 16.1 Accumulation 193 16.2 Multiplication 195 16.3 Transformation 197 16.4 Filtration 198 Part III Application 203 17 Verification 205 17.1 Identities 205 17.2 Tests 205 17.2.1 Example Code 205 17.2.2 Example Output 208 Reference 214 18 Lines Not Parallel 215 18.1 Theory 215 18.1.1 Common Plane 215 18.1.1.1 Inner Product 216 18.1.1.2 Outer Product 217 18.1.1.3 Geometrical Interpretation 217 18.1.2 No Plane in Common 218 18.1.2.1 Inner Product 219 18.1.2.2 Solution 219 18.2 Practice 220 18.2.1 Example Code 220 18.2.2 Example Output 223 Reference 224 19 Perspective Projection 225 19.1 Theory 225 19.2 Practice 225 19.2.1 Example Code 225 19.2.2 Example Output 229 Reference 230 20 Linear Systems 231 20.1 Theory 231 20.2 Practice 233 20.2.1 Example Code 233 20.2.2 Example Output 235 References 235 21 Fast Fourier Transform 237 21.1 Theory 237 21.2 Practice 238 21.2.1 Example Code 238 21.2.2 Example Output 243 References 244 22 Hertzian Dipole 245 22.1 Theory 245 22.2 Practice 246 22.2.1 Example Code 246 22.2.2 Example Output 251 Reference 253 23 Finite Difference Time Domain 255 23.1 Theory 255 23.1.1 Analytical Solution 255 23.1.2 Series Solution 256 23.1.3 Analytical Example 257 23.1.4 Numerical Derivatives 257 23.2 Practice 259 23.2.1 Example Code 259 23.2.2 Example Output 265 References 270 24 Cauchy Extension 271 24.1 Background 271 24.2 Theory 272 24.2.1 Two Dimensions 272 24.2.2 Three Dimensions 272 24.2.3 Singularity 273 24.2.4 The Taming Function 273 24.2.5 Construction 274 24.3 Practice 276 24.3.1 Example Code 276 24.3.2 Example Output 281 References 284 25 Electromagnetic Scattering 285 25.1 Background 285 25.2 Theory 286 25.3 Practice 288 25.3.1 Example Code 288 25.3.2 Example Output 289 References 293 Part IV Programming 295 26 Interfaces 297 26.1 Configuration and Observation 297 26.1.1 Management 297 26.1.2 Printing 298 26.2 Simple Entities 300 26.2.1 Units 300 26.2.2 Components 300 26.2.3 Numbers 302 26.2.3.1 Establishing and Recovering Values 302 26.2.3.2 Functions 303 26.2.3.3 Addition and Subtraction 304 26.2.3.4 Multiplication 304 26.2.3.5 Geometric 305 26.2.3.6 Filtering 305 26.3 Higher Entities 306 26.3.1 Vectors 306 26.3.2 Bicomplex Numbers 307 26.3.3 Quaternions 307 26.3.4 Pauli Matrices 308 26.3.5 Electromagnetic Fields 308 26.4 Multiple Entities 309 26.4.1 Arrays 309 26.4.2 Fast Fourier Transforms 309 26.4.3 Series 310 26.4.4 Matrices 310 Reference 311 27 Descriptions 313 27.1 Arguments 313 27.2 Data types 313 27.3 Formats 315 27.4 Manual Pages 316 27.4.1 A–e 316 27.4.2 F–j 342 27.4.3 K–o 369 27.4.4 P–t 387 27.4.5 U–z 468 27.5 Quick Reference 477 Reference 487 A Key to Example Code and Results 489 Index 493
Summary: "The purpose of the suite of routines described here, the Clifford Numerical Suite (CNS), is to provide a platform for the implementation of applications which require numerical evaluation of the various mathematical operations offered within the context of Clifford algebra. The routines are designed to allow the user to ignore most of the internal details of data structures and memory management if so desired. The suite is constructed using the 'C' computer programming language (Kernighan & Ritchie 1978, King 2008) so that it can be embedded into, compiled with, and invoked directly from the user's code. This avoids the overheads of copying data associated with the call mechanisms involved in implementations underneath interpretive meta-languages 1 and consequently offers an overall higher speed of code execution. That in turn admits the possibility of solving problems which are more realistic and less trivial. The intention is to provide most users with a viable environment for the development of their own applications. Providing the source code also allows the user to enhance and tailor it to best suit their own purposes. In cases where ultimate speed and memory efficiency is required, the suite can be used in the formative development phase, and substituted with the user's own hard-coded replacements in the end application phase"-- Provided by publisher.
Tags from this library: No tags from this library for this title. Log in to add tags.
    Average rating: 0.0 (0 votes)
Item type Current location Home library Call number Status Date due Barcode Item holds
EBOOK EBOOK COLLEGE LIBRARY
COLLEGE LIBRARY
512.57 Se13 2023 (Browse shelf) Available CL-53756
Total holds: 0

Includes bibliographical references and index.

Table of Contents
List of Figures xv

List of Tables xix

Preface xxi

Part I Entities and Operations 1

1 Introduction 3

1.1 Operations 3

1.2 History 4

1.3 Alternative Forms 5

1.4 Naming 6

1.5 Structure 7

1.5.1 Algebraic 7

1.5.2 Numeric 8

1.6 Entities 11

References 12

2 Input 13

2.1 Syntax 13

2.2 Constants 14

2.2.1 Specific Types 14

2.2.2 General 16

2.3 Variables 19

2.3.1 Checking and Converting 19

Reference 23

3 Output 25

3.1 Tree Format 26

3.2 Numeric Formats 29

3.2.1 Default Format 29

3.2.2 Defined Format 31

3.3 Extended Formats 32

3.3.1 Rounding 32

3.3.2 Parts of Coefficients 33

3.4 Selected Components 35

3.5 Primitive Formats 36

3.6 Recovered Values 38

4 Unary Operations 41

4.1 Theory 41

4.1.1 Negation 41

4.1.2 Involution 41

4.1.3 Pair Exchange 42

4.1.4 Reversion 43

4.1.5 Clifford Conjugation 44

4.1.6 Supplementation and Pseudo-scalar 44

4.2 Practice 45

4.2.1 Example Code 45

4.2.2 Example Output 47

5 Binary Operations 49

5.1 Geometric Origins 49

5.1.1 Outer Multiplication 49

5.1.2 Orthogonal Components 52

5.1.3 Inner Multiplication 53

5.1.4 Names 54

5.2 Multiplication of Units 55

5.2.1 Progressive and Regressive Multiplication 55

5.2.2 Outer, Inner, and Central Multiplication 57

5.2.3 Multiplication By Scalars 58

5.3 Central Multiplication 59

5.3.1 Primal Units 60

5.3.2 Evolved and Other Units 61

5.3.3 Numbers 62

5.4 Practice 63

5.4.1 Example Code 63

5.4.2 Example Output 65

5.4.3 Multiplication Tables 65

References 70

6 Vectors and Geometry 71

6.1 Theory 71

6.1.1 Magnitude 71

6.1.2 Inverse 72

6.1.3 Reflection 72

6.1.4 Projection 73

6.1.5 Rotation 73

6.2 Practice 74

6.2.1 Example Code 74

6.2.2 Example Output 76

7 Quaternions 79

7.1 Theory 79

7.1.1 Magnitude 80

7.1.2 Inverse 80

7.1.3 Reflection and Projection 80

7.1.4 Rotation 81

7.1.5 Intersection 82

7.1.6 Factorisation 82

7.2 Practice 83

7.2.1 Example Code 83

7.2.2 Example Output 86

References 87

8 Pauli Matrices 89

8.1 Theory 89

8.1.1 Recovery of Components 90

8.1.2 Magnitude 90

8.1.3 Inverse 91

8.1.4 Reflection, Projection, and Rotation 91

8.2 Practice 91

8.2.1 Example Code 91

8.2.2 Example Output 94

Reference 95

9 Bicomplex Numbers 97

9.1 Theory 97

9.1.1 Conjugate 98

9.1.2 Magnitude 98

9.1.3 Inverse 98

9.1.4 Reflection, Projection, and Rotation 99

9.2 Practice 99

9.2.1 Example Code 99

9.2.2 Example Output 101

Reference 102

10 Electromagnetic Fields 103

10.1 Theory 103

10.1.1 Time and Frequency 103

10.1.2 Electromagnetic Entities 104

10.1.3 Dirac Operators 105

10.1.4 Maxwell’s Equations 105

10.1.5 Simplified Notation 105

10.1.6 Magnitude 106

10.1.7 Inverse 106

10.1.8 Reflection 107

10.1.9 Projection 107

10.1.10 Rotation 107

10.2 Practice 107

10.2.1 Example Code 107

10.2.2 Example Output 110

10.3 Field Arithmetic 112

10.3.1 Extensions Based on Quaternions 112

10.3.2 Inverses 113

10.3.3 Example Code 115

10.3.4 Example Output 117

References 118

11 Arrays of Clifford Numbers 119

11.1 Theory 119

11.2 Practice 120

11.2.1 Example Code 120

11.2.2 Example Output 123

Reference 125

12 Power Series 127

12.1 Theory 127

12.1.1 User Defined 127

12.1.2 Predefined 128

12.1.3 Convergence 129

12.1.4 Factorisation 130

12.1.5 Squaring 131

12.2 Practice 131

12.2.1 User Defined 131

12.2.2 Predefined 133

12.2.2.1 Standard Convergence 136

12.2.2.2 Extended Convergence 141

12.2.2.3 Doubly Extended Convergence 146

References 148

13 Matrices of Clifford Numbers 149

13.1 Background 149

13.2 Inversion 150

13.3 Practice 152

13.3.1 Example Code 152

13.3.2 Example Output 155

Reference 159

Part II Customisation 161

14 Memory 163

14.1 Memory Usage 163

14.2 Examples 165

14.2.1 Memory Tree Sparsity 165

14.2.2 Memory Expansion 170

14.2.3 Memory Recycling 171

14.2.3.1 Explicit and Implicit 171

14.2.3.2 Implicit and Nested 173

Reference 175

15 Errors 177

15.1 User Errors 177

15.1.1 Syntax Errors and Messages 180

15.2 System Errors 181

15.3 Recovery 182

15.4 Beneficial Usage 185

Reference 191

16 Extension 193

16.1 Accumulation 193

16.2 Multiplication 195

16.3 Transformation 197

16.4 Filtration 198

Part III Application 203

17 Verification 205

17.1 Identities 205

17.2 Tests 205

17.2.1 Example Code 205

17.2.2 Example Output 208

Reference 214

18 Lines Not Parallel 215

18.1 Theory 215

18.1.1 Common Plane 215

18.1.1.1 Inner Product 216

18.1.1.2 Outer Product 217

18.1.1.3 Geometrical Interpretation 217

18.1.2 No Plane in Common 218

18.1.2.1 Inner Product 219

18.1.2.2 Solution 219

18.2 Practice 220

18.2.1 Example Code 220

18.2.2 Example Output 223

Reference 224

19 Perspective Projection 225

19.1 Theory 225

19.2 Practice 225

19.2.1 Example Code 225

19.2.2 Example Output 229

Reference 230

20 Linear Systems 231

20.1 Theory 231

20.2 Practice 233

20.2.1 Example Code 233

20.2.2 Example Output 235

References 235

21 Fast Fourier Transform 237

21.1 Theory 237

21.2 Practice 238

21.2.1 Example Code 238

21.2.2 Example Output 243

References 244

22 Hertzian Dipole 245

22.1 Theory 245

22.2 Practice 246

22.2.1 Example Code 246

22.2.2 Example Output 251

Reference 253

23 Finite Difference Time Domain 255

23.1 Theory 255

23.1.1 Analytical Solution 255

23.1.2 Series Solution 256

23.1.3 Analytical Example 257

23.1.4 Numerical Derivatives 257

23.2 Practice 259

23.2.1 Example Code 259

23.2.2 Example Output 265

References 270

24 Cauchy Extension 271

24.1 Background 271

24.2 Theory 272

24.2.1 Two Dimensions 272

24.2.2 Three Dimensions 272

24.2.3 Singularity 273

24.2.4 The Taming Function 273

24.2.5 Construction 274

24.3 Practice 276

24.3.1 Example Code 276

24.3.2 Example Output 281

References 284

25 Electromagnetic Scattering 285

25.1 Background 285

25.2 Theory 286

25.3 Practice 288

25.3.1 Example Code 288

25.3.2 Example Output 289

References 293

Part IV Programming 295

26 Interfaces 297

26.1 Configuration and Observation 297

26.1.1 Management 297

26.1.2 Printing 298

26.2 Simple Entities 300

26.2.1 Units 300

26.2.2 Components 300

26.2.3 Numbers 302

26.2.3.1 Establishing and Recovering Values 302

26.2.3.2 Functions 303

26.2.3.3 Addition and Subtraction 304

26.2.3.4 Multiplication 304

26.2.3.5 Geometric 305

26.2.3.6 Filtering 305

26.3 Higher Entities 306

26.3.1 Vectors 306

26.3.2 Bicomplex Numbers 307

26.3.3 Quaternions 307

26.3.4 Pauli Matrices 308

26.3.5 Electromagnetic Fields 308

26.4 Multiple Entities 309

26.4.1 Arrays 309

26.4.2 Fast Fourier Transforms 309

26.4.3 Series 310

26.4.4 Matrices 310

Reference 311

27 Descriptions 313

27.1 Arguments 313

27.2 Data types 313

27.3 Formats 315

27.4 Manual Pages 316

27.4.1 A–e 316

27.4.2 F–j 342

27.4.3 K–o 369

27.4.4 P–t 387

27.4.5 U–z 468

27.5 Quick Reference 477

Reference 487

A Key to Example Code and Results 489

Index 493

"The purpose of the suite of routines described here, the Clifford Numerical Suite (CNS), is to provide a platform for the implementation of applications which require numerical evaluation of the various mathematical operations offered within the context of Clifford algebra. The routines are designed to allow the user to ignore most of the internal details of data structures and memory management if so desired. The suite is constructed using the 'C' computer programming language (Kernighan & Ritchie 1978, King 2008) so that it can be embedded into, compiled with, and invoked directly from the user's code. This avoids the overheads of copying data associated with the call mechanisms involved in implementations underneath interpretive meta-languages 1 and consequently offers an overall higher speed of code execution. That in turn admits the possibility of solving problems which are more realistic and less trivial. The intention is to provide most users with a viable environment for the development of their own applications. Providing the source code also allows the user to enhance and tailor it to best suit their own purposes. In cases where ultimate speed and memory efficiency is required, the suite can be used in the formative development phase, and substituted with the user's own hard-coded replacements in the end application phase"-- Provided by publisher.

About the Author
Andrew Seagar, PhD, is Director for the Bachelor of Engineering Programs at the Gold Coast Campus of the School of Engineering at Griffith University in Australia. He has experience in a variety of research, commercial development, and academic positions around the world, primarily in the areas of electrical or biomedical engineering.

There are no comments for this item.

to post a comment.