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 viewItem type | Current location | Home library | Call number | Status | Date due | Barcode | Item holds |
---|---|---|---|---|---|---|---|
EBOOK | COLLEGE LIBRARY | COLLEGE LIBRARY | 512.57 Se13 2023 (Browse shelf) | Available | CL-53756 |
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.