Contents
MKL Conditional Numerical Reproducibility (CNR) 6
1.6 Building and Deploying NMath Applications 7
Kernel Assemblies and Native DLLs 9
Very Large Objects with ASP.NET 11
Chapter 3. Complex Number Types 19
3.1 Creating Complex Numbers 19
Creating Complex Numbers from Numeric Values 19
Creating Complex Numbers from Strings 20
3.2 Value Operations on Complex Numbers 21
3.3 Logical Operations on Complex Numbers 22
3.4 Arithmetic Operations on Complex Numbers 22
3.5 Functions of Complex Numbers 23
Conjugate, Norm, and Argument 23
Absolute Value and Square Root 25
Accessing the Underlying Data 28
Modifying Ranges and Slices 31
Creating Vectors from Numeric Values 34
Creating Vectors from Strings 35
5.3 Value Operations on Vectors 40
Accessing and Modifying Vector Values 41
Clearing and Resizing a Vector 41
5.4 Logical Operations on Vectors 43
5.5 Arithmetic Operations on Vectors 43
Sums, Differences, and Products 46
Absolute Value and Square Root 49
Creating Matrices from Numeric Values 54
Creating Matrices from Strings 56
6.3 Value Operations on Matrices 60
Accessing and Modifying Matrix Values 61
Clearing and Resizing a Matrix 62
6.4 Logical Operations on Matrices 63
6.5 Arithmetic Operations on Matrices 63
Matrix Inverse and Pseudoinverse 69
Absolute Value and Square Root 74
Applying Elementwise Functions 76
Applying Columnwise Functions 76
Chapter 7. Solutions of Linear Systems 79
7.2 Creating LU Factorizations 80
7.3 Using LU Factorizations 81
Solving for Right-Hand Sides 81
Computing Inverses, Determinants, and Condition Numbers 82
8.2 Creating Least Squares Solutions 88
8.3 Using Least Squares Solutions 89
8.4 Nonnegative Least Squares Solutions 90
Chapter 9. Random Number Generators 91
9.1 Scalar Random Number Generators 91
Underlying Uniform Generators 92
9.2 Vectorized Random Number Generators 96
Chapter 10. Fourier Transforms, Convolution and Correlation 103
10.1 Fast Fourier Transforms 103
10.2 Convolution and Correlation 110
Convolution and Correlation Classes 110
Creating Convolution and Correlation Instances 111
Convolution and Correlation Properties 111
Computing Convolutions and Correlations 112
Chapter 11. Discrete Wavelet Transforms 115
11.2 Computing Discrete Wavelet Transforms 116
Accessing the Coefficients 118
12.2 Adding Data to Histograms 122
12.3 Value Operations of Histograms 123
12.4 Displaying Histograms 124
13.1 Encapsulating Functions 125
Creating a Function of One Variable 125
Algebraic Manipulation of Functions 127
13.2 Numerical Integration 128
Algebraic Manipulation of Polynomials 139
13.5 Function Interpolation 141
Linear Spline Interpolation 142
Cubic Spline Interpolation 142
Creating Your Own Interpolation Classes 143
Chapter 14. Signal Processing 145
14.1 Moving Window Filtering 145
Creating Moving Window Filter Objects 145
Moving Window Filter Properties 148
14.2 Savitzky-Golay Filtering 149
Creating Savitzky-Golay Filter Objects 149
Savitzky-Golay Filter Properties 150
14.3 Savitzky-Golay Peak Finding 151
Creating Savitzky-Golay Peak Finders 151
Savitzky-Golay Peak Finder Results 152
Advanced Savitzky-Golay Peak Finder Properties 153
14.4 Rule-Based Peak Finding 153
Creating Rule-Based Peak Finders 153
Rule-Based Peak Finder Results 154
Chapter 15. Special Functions 157
Chapter 16. Matrix Functions 163
Chapter 17. Structured Sparse Matrix Types 165
17.1 Lower Triangular Matrices 165
17.2 Upper Triangular Matrices 166
17.7 Symmetric Banded Matrices 171
17.8 Hermitian Banded Matrices 172
Chapter 18. Using The Structured Sparse Matrix Classes 173
Creating Sparse Matrices from General Matrices 175
Creating Sparse Matrices from Other Sparse Matrices 176
Creating Sparse Matrices from a Data Vector 177
18.2 Value Operations on Matrices 179
Accessing and Modifying Matrix Values 180
18.3 Logical Operations on Matrices 182
18.4 Arithmetic Operations on Matrices 182
18.6 Functions of Matrices 184
Trigonometric and Transcendental Functions 187
Chapter 19. General Sparse Vectors and Matrices 191
Accessing and Modifying Sparse Vector Values 193
Operations on Sparse Vectors 193
Creating Dense Vectors from Sparse Vectors 194
Accessing and Modifying Sparse Matrix Values 198
Operations on Sparse Matrices 199
Creating Dense Matrices from Sparse Matrices 200
19.3 Sparse Matrix Factorizations 200
Chapter 20. Structured Sparse Matrix Factorizations 203
20.1 Factorization Classes 203
20.2 Creating Factorizations 204
Solving for Right-Hand Sides 206
Computing Inverses, Determinants, and Condition Numbers 208
Chapter 21. Least Squares Solutions 211
21.1 Ordinary Least Squares Methods 211
Least Squares Using Cholesky Factorization 211
Least Squares Using QR Decomposition 212
21.2 Creating Ordinary Least Squares Objects 212
21.3 Using Ordinary Least Squares Objects 214
Solving Least Squares Problems 214
Retrieving Information About the Original Matrix 215
21.4 Weighted Least Squares 215
21.5 Iteratively Reweighted Least Squares 218
Chapter 22. Decompositions 223
Creating QR Decompositions 223
22.2 Singular Value Decompositions 228
Creating Singular Value Decompositions 228
Using Singular Value Decompositions 229
Reusing Singular Value Decompositions 231
Chapter 23. EigenValue Problems 233
23.1 Eigenvalue Classnames 233
23.2 Using the Eigenvalue Classes 234
Constructing Eigenvalue Objects 234
Retrieving Eigenvalues and Eigenvectors 235
Retrieving Information About the Original Matrix 236
Reusing Eigenvalue Decompositions 236
23.3 Using the Eigenvalue Server Classes 237
Constructing Eigenvalue Servers 237
Configuring Eigenvalue Servers 237
Creating Eigenvalue Objects from a Server 239
Chapter 24. The Analysis Namespace 243
Chapter 25. Encapsulating Multivariate Functions 245
25.1 Creating Multivariate Functions 245
25.2 Evaluating Multivariate Functions 246
25.3 Algebraic Manipulation of Multivariate Functions 246
Chapter 26. Minimizing Univariate Functions 249
26.2 Minimizing Functions Without Calculating the Derivative 250
26.3 Minimizing Derivable Functions 252
Chapter 27. Minimizing Multivariate Functions 255
27.1 Minimizing Functions Without Calculating the Derivative 255
27.2 Minimizing Derivable Functions 257
Chapter 28. Simulated Annealing 261
Linear Annealing Schedules 262
Custom Annealing Schedules 263
28.3 Minimizing Functions by Simulated Annealing 264
Chapter 29. Linear Programming 269
29.1 Encapsulating LP Problems 269
Adding Bounds and Constraints 270
Chapter 30. Nonlinear and Quadratic Programming 273
30.1 Objective and Constraint Function Classes 273
Objective Function Classes 273
Constraint Function Classes 275
30.2 Nonlinear Programming 276
Adding Bounds and Constraints 278
30.3 Quadratic Programming 283
Adding Bounds and Constraints 284
30.4 Constrained Least Squares 288
Adding Bounds and Constraints 288
Chapter 31. Fitting Polynomials 293
31.1 Creating PolynomialLeastSquares 293
31.2 Properties of PolynomialLeastSquares 294
Chapter 32. Nonlinear Least Squares 295
32.1 Nonlinear Least Squares Interfaces 295
32.2 Trust-Region Minimization 299
Constructing a TrustRegionMinimizer 299
32.3 Levenberg-Marquardt Minimization 303
Constructing a LevenbergMarquardtMinimizer 304
32.4 Nonlinear Least Squares Curve Fitting 305
Generalized One Variable Functions 305
Encapsulating One Variable Functions 306
Constructing a OneVariableFunctionFitter 309
32.5 Nonlinear Least Squares Surface Fitting 313
Generalized Multivariable Functions 313
Encapsulating Generalized Multivariable Functions 314
Constructing a MultiVariableFunctionFitter 315
Chapter 33. Finding Roots of Univariate Functions 321
33.1 Finding Function Roots Without Calculating the Derivative 321
33.2 Finding Function Roots of Derivable Functions 323
Chapter 34. Integrating Multivariable Functions 325
34.1 Creating TwoVariableIntegrators 325
34.2 Integrating Functions of Two Variables 326
Chapter 35. Differential Equations 329
35.1 Encapsulating Differential Equations 329
35.2 Solving Differential Equations 330
Constructing RungeKuttaSolver Instances 330
Solving First Order Initial Value Problems 331
35.3 Dormand–Prince Method 332
Chapter 6. Statistics Introduction 1
Creating DataFrames from Arrays of Columns 13
Creating DataFrames from Matrices 14
Creating DataFrames from ADO.NET Objects 14
Creating DataFrames from Strings 15
37.3 Adding and Removing Columns 16
37.4 Adding and Removing Rows 18
37.5 Properties of DataFrames 21
Logical Operations on Subsets 27
Arithmetic Operations on Subsets 27
Creating Groupings with Factors 36
Applying Column Delegates to Tabulated Data 41
37.12 Exporting Data from DataFrames 44
Exporting to an ADO.NET DataTable 46
Binary and SOAP Serialization 47
Chapter 38. Descriptive Statistics 49
38.5 Ranks, Percentiles, Deciles, and Quartiles 54
38.9 Covariance, Correlation, and Autocorrelation 60
Chapter 39. Special Functions 65
39.1 Combinatorial Functions 65
Chapter 40. Probability Distributions 67
Negative Binomial Distribution 79
40.2 Correlated Random Inputs 85
Constructing Correlator Instances 85
40.3 Box-Cox Power Transformations 89
Chapter 41. Hypothesis Tests 91
Creating Hypothesis Test Objects 92
Properties of Hypothesis Test Objects 93
Modifying Hypothesis Test Objects 94
41.4 Two Sample Paired T-Test 100
41.5 Two Sample Unpaired T-Test 103
41.7 Pearson’s Chi-Square Test 108
Chapter 42. Linear Regression 113
42.1 Creating Linear Regressions 113
Parameter Calculation by Least Squares Minimization 114
42.4 Accessing and Modifying the Model 118
Accessing and Modifying Predictors 118
Accessing and Modifying Observations 120
Accessing and Modifying the Intercept Option 122
42.5 Significance of Parameters 123
Creating Linear Regression Parameter Objects 123
Properties Linear Regression Parameters 123
Updating Linear Regression Parameters 124
42.6 Significance of the Overall Model 125
Chapter 43. Logistic Regression 127
43.1 Regression Calculators 127
43.2 Creating Logistic Regressions 128
43.3 Checking for Convergence 131
43.6 Predicted Probabilities 134
Chapter 44. Analysis of Variance 137
Creating One-Way ANOVA Objects 137
Grand Mean, Group Means, and Group Sizes 140
Critical Value of the F Statistic 141
Updating One-Way ANOVA Objects 141
44.2 One-Way Repeated Measures ANOVA 141
Creating One-Way RANOVA Objects 142
Grand Mean, Subject Means, and Treatment Means 144
Critical Value of the F Statistic 144
Updating One-Way RANOVA Objects 145
44.3 Two-Way Balanced ANOVA 145
Creating Two-Way ANOVA Objects 145
Grand Mean, Cell Means, and Group Means 148
ANOVA Regression Parameters 148
44.4 Two-Way Unbalanced ANOVA 154
Creating UnbalancedTwo-Way ANOVA Objects 154
Unbalanced Two-Way ANOVA Tables and Regression Parameters 154
44.5 Two-Way Repeated Measures ANOVA 156
Creating Two-Way RANOVA Objects 156
Chapter 45. Non
45.1 One Sample Kolmogorov-Smirnov Test 159
45.2 Two Sample Kolmogorov-Smirnov Test 161
45.4 One Sample Anderson-Darling Test 162
Creating Kruskal-Wallis Objects 163
Ranks, Grand Mean Ranks, Group Means Ranks, and Group Sizes 166
Critical Value of the Test Statistic 167
Updating Kruskal-Wallis Test Objects 168
45.6 Wilcoxon Signed-Rank Test 168
Creating Wilcoxon Signed-Rank Objects 168
Chapter 46. Multivariate Techniques 171
46.1 Principal Component Analysis 171
Creating Principal Component Analyses 171
Principal Component Analysis Results 172
46.3 Hierarchical Cluster Analysis 180
Reusing Cluster Analysis Objects 188
Creating KMeansClustering Objects 189
Chapter 47. Nonnegative Matrix Factorization 193
47.1 Nonnegative Matrix Factorization 193
47.2 Data Clustering Using NMF 196
Creating NMFClustering Instances 197
Performing the Factorization 197
Computing a Consensus Matrix 200
Chapter 48. Partial Least Squares 205
48.1 Computing a PLS Regression 206
Jackknifing of Regression Coefficients 210
48.7 Partial Least Squares Discriminant Analysis 211
Chapter 49. Goodness of Fit 215
49.1 Significance of the Overall Model 215
49.2 Significance of Parameters 217
Creating Goodness of Fit Parameter Objects 217
Properties of Goodness of Fit Parameters 218
Chapter 50. Process Control 219
Part VI - Miscellaneous Topics
Chapter 52. Database Integration 231
52.1 Creating ADO.NET Objects from Vectors and Matrices 231
52.2 Creating Vector and Matrices from ADO.NET Objects 232
Chapter 53. Error Handling 235