sequenzo 0.1.18__cp39-cp39-macosx_10_9_universal2.whl → 0.1.20__cp39-cp39-macosx_10_9_universal2.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of sequenzo might be problematic. Click here for more details.

Files changed (360) hide show
  1. sequenzo/__init__.py +39 -7
  2. sequenzo/big_data/clara/utils/get_weighted_diss.c +157 -157
  3. sequenzo/big_data/clara/utils/get_weighted_diss.cpython-39-darwin.so +0 -0
  4. sequenzo/clustering/KMedoids.py +39 -0
  5. sequenzo/clustering/hierarchical_clustering.py +108 -6
  6. sequenzo/define_sequence_data.py +10 -1
  7. sequenzo/dissimilarity_measures/get_distance_matrix.py +2 -3
  8. sequenzo/dissimilarity_measures/get_substitution_cost_matrix.py +1 -1
  9. sequenzo/dissimilarity_measures/utils/get_sm_trate_substitution_cost_matrix.c +157 -157
  10. sequenzo/dissimilarity_measures/utils/get_sm_trate_substitution_cost_matrix.cpython-39-darwin.so +0 -0
  11. sequenzo/dissimilarity_measures/utils/seqconc.c +157 -157
  12. sequenzo/dissimilarity_measures/utils/seqconc.cpython-39-darwin.so +0 -0
  13. sequenzo/dissimilarity_measures/utils/seqdss.c +157 -157
  14. sequenzo/dissimilarity_measures/utils/seqdss.cpython-39-darwin.so +0 -0
  15. sequenzo/dissimilarity_measures/utils/seqdur.c +157 -157
  16. sequenzo/dissimilarity_measures/utils/seqdur.cpython-39-darwin.so +0 -0
  17. sequenzo/dissimilarity_measures/utils/seqlength.c +157 -157
  18. sequenzo/dissimilarity_measures/utils/seqlength.cpython-39-darwin.so +0 -0
  19. sequenzo/multidomain/cat.py +0 -53
  20. sequenzo/multidomain/dat.py +11 -3
  21. sequenzo/multidomain/idcd.py +0 -3
  22. sequenzo/multidomain/linked_polyad.py +0 -1
  23. sequenzo/openmp_setup.py +233 -0
  24. sequenzo/visualization/plot_transition_matrix.py +21 -22
  25. {sequenzo-0.1.18.dist-info → sequenzo-0.1.20.dist-info}/METADATA +71 -10
  26. sequenzo-0.1.20.dist-info/RECORD +215 -0
  27. sequenzo/dissimilarity_measures/setup.py +0 -35
  28. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/Cholesky/LDLT.h +0 -688
  29. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/Cholesky/LLT.h +0 -558
  30. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/Cholesky/LLT_LAPACKE.h +0 -99
  31. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/CholmodSupport/CholmodSupport.h +0 -682
  32. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/Eigenvalues/ComplexEigenSolver.h +0 -346
  33. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/Eigenvalues/ComplexSchur.h +0 -462
  34. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/Eigenvalues/ComplexSchur_LAPACKE.h +0 -91
  35. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/Eigenvalues/EigenSolver.h +0 -622
  36. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/Eigenvalues/GeneralizedEigenSolver.h +0 -418
  37. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/Eigenvalues/GeneralizedSelfAdjointEigenSolver.h +0 -226
  38. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/Eigenvalues/HessenbergDecomposition.h +0 -374
  39. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/Eigenvalues/MatrixBaseEigenvalues.h +0 -158
  40. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/Eigenvalues/RealQZ.h +0 -657
  41. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/Eigenvalues/RealSchur.h +0 -558
  42. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/Eigenvalues/RealSchur_LAPACKE.h +0 -77
  43. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/Eigenvalues/SelfAdjointEigenSolver.h +0 -904
  44. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/Eigenvalues/SelfAdjointEigenSolver_LAPACKE.h +0 -87
  45. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/Eigenvalues/Tridiagonalization.h +0 -561
  46. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/Geometry/AlignedBox.h +0 -486
  47. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/Geometry/AngleAxis.h +0 -247
  48. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/Geometry/EulerAngles.h +0 -114
  49. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/Geometry/Homogeneous.h +0 -501
  50. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/Geometry/Hyperplane.h +0 -282
  51. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/Geometry/OrthoMethods.h +0 -235
  52. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/Geometry/ParametrizedLine.h +0 -232
  53. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/Geometry/Quaternion.h +0 -870
  54. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/Geometry/Rotation2D.h +0 -199
  55. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/Geometry/RotationBase.h +0 -206
  56. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/Geometry/Scaling.h +0 -188
  57. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/Geometry/Transform.h +0 -1563
  58. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/Geometry/Translation.h +0 -202
  59. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/Geometry/Umeyama.h +0 -166
  60. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/Geometry/arch/Geometry_SIMD.h +0 -168
  61. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/Householder/BlockHouseholder.h +0 -110
  62. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/Householder/Householder.h +0 -176
  63. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/Householder/HouseholderSequence.h +0 -545
  64. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/IterativeLinearSolvers/BasicPreconditioners.h +0 -226
  65. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/IterativeLinearSolvers/BiCGSTAB.h +0 -212
  66. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/IterativeLinearSolvers/ConjugateGradient.h +0 -229
  67. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/IterativeLinearSolvers/IncompleteCholesky.h +0 -394
  68. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/IterativeLinearSolvers/IncompleteLUT.h +0 -453
  69. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/IterativeLinearSolvers/IterativeSolverBase.h +0 -444
  70. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/IterativeLinearSolvers/LeastSquareConjugateGradient.h +0 -198
  71. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/IterativeLinearSolvers/SolveWithGuess.h +0 -117
  72. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/Jacobi/Jacobi.h +0 -483
  73. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/KLUSupport/KLUSupport.h +0 -358
  74. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/LU/Determinant.h +0 -117
  75. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/LU/FullPivLU.h +0 -877
  76. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/LU/InverseImpl.h +0 -432
  77. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/LU/PartialPivLU.h +0 -624
  78. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/LU/PartialPivLU_LAPACKE.h +0 -83
  79. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/LU/arch/InverseSize4.h +0 -351
  80. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/MetisSupport/MetisSupport.h +0 -137
  81. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/OrderingMethods/Amd.h +0 -435
  82. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/OrderingMethods/Eigen_Colamd.h +0 -1863
  83. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/OrderingMethods/Ordering.h +0 -153
  84. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/PaStiXSupport/PaStiXSupport.h +0 -678
  85. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/PardisoSupport/PardisoSupport.h +0 -545
  86. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/QR/ColPivHouseholderQR.h +0 -674
  87. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/QR/ColPivHouseholderQR_LAPACKE.h +0 -97
  88. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/QR/CompleteOrthogonalDecomposition.h +0 -635
  89. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/QR/FullPivHouseholderQR.h +0 -713
  90. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/QR/HouseholderQR.h +0 -434
  91. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/QR/HouseholderQR_LAPACKE.h +0 -68
  92. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SPQRSupport/SuiteSparseQRSupport.h +0 -335
  93. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SVD/BDCSVD.h +0 -1366
  94. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SVD/JacobiSVD.h +0 -812
  95. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SVD/JacobiSVD_LAPACKE.h +0 -91
  96. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SVD/SVDBase.h +0 -376
  97. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SVD/UpperBidiagonalization.h +0 -414
  98. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseCholesky/SimplicialCholesky.h +0 -697
  99. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseCholesky/SimplicialCholesky_impl.h +0 -174
  100. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseCore/AmbiVector.h +0 -378
  101. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseCore/CompressedStorage.h +0 -274
  102. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseCore/ConservativeSparseSparseProduct.h +0 -352
  103. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseCore/MappedSparseMatrix.h +0 -67
  104. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseCore/SparseAssign.h +0 -270
  105. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseCore/SparseBlock.h +0 -571
  106. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseCore/SparseColEtree.h +0 -206
  107. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseCore/SparseCompressedBase.h +0 -370
  108. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseCore/SparseCwiseBinaryOp.h +0 -722
  109. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseCore/SparseCwiseUnaryOp.h +0 -150
  110. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseCore/SparseDenseProduct.h +0 -342
  111. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseCore/SparseDiagonalProduct.h +0 -138
  112. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseCore/SparseDot.h +0 -98
  113. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseCore/SparseFuzzy.h +0 -29
  114. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseCore/SparseMap.h +0 -305
  115. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseCore/SparseMatrix.h +0 -1518
  116. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseCore/SparseMatrixBase.h +0 -398
  117. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseCore/SparsePermutation.h +0 -178
  118. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseCore/SparseProduct.h +0 -181
  119. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseCore/SparseRedux.h +0 -49
  120. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseCore/SparseRef.h +0 -397
  121. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseCore/SparseSelfAdjointView.h +0 -659
  122. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseCore/SparseSolverBase.h +0 -124
  123. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseCore/SparseSparseProductWithPruning.h +0 -198
  124. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseCore/SparseTranspose.h +0 -92
  125. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseCore/SparseTriangularView.h +0 -189
  126. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseCore/SparseUtil.h +0 -186
  127. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseCore/SparseVector.h +0 -478
  128. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseCore/SparseView.h +0 -254
  129. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseCore/TriangularSolver.h +0 -315
  130. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseLU/SparseLU.h +0 -923
  131. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseLU/SparseLUImpl.h +0 -66
  132. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseLU/SparseLU_Memory.h +0 -226
  133. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseLU/SparseLU_Structs.h +0 -110
  134. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseLU/SparseLU_SupernodalMatrix.h +0 -375
  135. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseLU/SparseLU_Utils.h +0 -80
  136. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseLU/SparseLU_column_bmod.h +0 -181
  137. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseLU/SparseLU_column_dfs.h +0 -179
  138. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseLU/SparseLU_copy_to_ucol.h +0 -107
  139. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseLU/SparseLU_gemm_kernel.h +0 -280
  140. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseLU/SparseLU_heap_relax_snode.h +0 -126
  141. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseLU/SparseLU_kernel_bmod.h +0 -130
  142. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseLU/SparseLU_panel_bmod.h +0 -223
  143. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseLU/SparseLU_panel_dfs.h +0 -258
  144. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseLU/SparseLU_pivotL.h +0 -137
  145. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseLU/SparseLU_pruneL.h +0 -136
  146. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseLU/SparseLU_relax_snode.h +0 -83
  147. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseQR/SparseQR.h +0 -758
  148. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/StlSupport/StdDeque.h +0 -116
  149. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/StlSupport/StdList.h +0 -106
  150. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/StlSupport/StdVector.h +0 -131
  151. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/StlSupport/details.h +0 -84
  152. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SuperLUSupport/SuperLUSupport.h +0 -1025
  153. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/UmfPackSupport/UmfPackSupport.h +0 -642
  154. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/misc/Image.h +0 -82
  155. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/misc/Kernel.h +0 -79
  156. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/misc/RealSvd2x2.h +0 -55
  157. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/misc/blas.h +0 -440
  158. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/misc/lapack.h +0 -152
  159. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/misc/lapacke.h +0 -16292
  160. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/misc/lapacke_mangling.h +0 -17
  161. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/plugins/ArrayCwiseBinaryOps.h +0 -358
  162. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/plugins/ArrayCwiseUnaryOps.h +0 -696
  163. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/plugins/BlockMethods.h +0 -1442
  164. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/plugins/CommonCwiseBinaryOps.h +0 -115
  165. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/plugins/CommonCwiseUnaryOps.h +0 -177
  166. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/plugins/IndexedViewMethods.h +0 -262
  167. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/plugins/MatrixCwiseBinaryOps.h +0 -152
  168. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/plugins/MatrixCwiseUnaryOps.h +0 -95
  169. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/plugins/ReshapedMethods.h +0 -149
  170. sequenzo/dissimilarity_measures/src/eigen/blas/BandTriangularSolver.h +0 -97
  171. sequenzo/dissimilarity_measures/src/eigen/blas/GeneralRank1Update.h +0 -44
  172. sequenzo/dissimilarity_measures/src/eigen/blas/PackedSelfadjointProduct.h +0 -53
  173. sequenzo/dissimilarity_measures/src/eigen/blas/PackedTriangularMatrixVector.h +0 -79
  174. sequenzo/dissimilarity_measures/src/eigen/blas/PackedTriangularSolverVector.h +0 -88
  175. sequenzo/dissimilarity_measures/src/eigen/blas/Rank2Update.h +0 -57
  176. sequenzo/dissimilarity_measures/src/eigen/blas/common.h +0 -175
  177. sequenzo/dissimilarity_measures/src/eigen/blas/f2c/datatypes.h +0 -24
  178. sequenzo/dissimilarity_measures/src/eigen/blas/level1_cplx_impl.h +0 -155
  179. sequenzo/dissimilarity_measures/src/eigen/blas/level1_impl.h +0 -144
  180. sequenzo/dissimilarity_measures/src/eigen/blas/level1_real_impl.h +0 -122
  181. sequenzo/dissimilarity_measures/src/eigen/blas/level2_cplx_impl.h +0 -360
  182. sequenzo/dissimilarity_measures/src/eigen/blas/level2_impl.h +0 -553
  183. sequenzo/dissimilarity_measures/src/eigen/blas/level2_real_impl.h +0 -306
  184. sequenzo/dissimilarity_measures/src/eigen/blas/level3_impl.h +0 -702
  185. sequenzo/dissimilarity_measures/src/eigen/debug/gdb/__init__.py +0 -1
  186. sequenzo/dissimilarity_measures/src/eigen/debug/gdb/printers.py +0 -314
  187. sequenzo/dissimilarity_measures/src/eigen/lapack/lapack_common.h +0 -29
  188. sequenzo/dissimilarity_measures/src/eigen/scripts/relicense.py +0 -69
  189. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/Tensor.h +0 -554
  190. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorArgMax.h +0 -329
  191. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorAssign.h +0 -247
  192. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorBase.h +0 -1176
  193. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorBlock.h +0 -1559
  194. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorBroadcasting.h +0 -1093
  195. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorChipping.h +0 -518
  196. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorConcatenation.h +0 -377
  197. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorContraction.h +0 -1023
  198. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorContractionBlocking.h +0 -73
  199. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorContractionCuda.h +0 -6
  200. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorContractionGpu.h +0 -1413
  201. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorContractionMapper.h +0 -575
  202. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorContractionSycl.h +0 -1650
  203. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorContractionThreadPool.h +0 -1679
  204. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorConversion.h +0 -456
  205. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorConvolution.h +0 -1132
  206. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorConvolutionSycl.h +0 -544
  207. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorCostModel.h +0 -214
  208. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorCustomOp.h +0 -347
  209. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorDevice.h +0 -137
  210. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorDeviceCuda.h +0 -6
  211. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorDeviceDefault.h +0 -104
  212. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorDeviceGpu.h +0 -389
  213. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorDeviceSycl.h +0 -1048
  214. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorDeviceThreadPool.h +0 -409
  215. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorDimensionList.h +0 -236
  216. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorDimensions.h +0 -490
  217. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorEvalTo.h +0 -236
  218. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorEvaluator.h +0 -983
  219. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorExecutor.h +0 -703
  220. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorExpr.h +0 -388
  221. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorFFT.h +0 -669
  222. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorFixedSize.h +0 -379
  223. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorForcedEval.h +0 -237
  224. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorForwardDeclarations.h +0 -191
  225. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorFunctors.h +0 -488
  226. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorGenerator.h +0 -302
  227. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorGlobalFunctions.h +0 -33
  228. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorGpuHipCudaDefines.h +0 -99
  229. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorGpuHipCudaUndefines.h +0 -44
  230. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorIO.h +0 -79
  231. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorImagePatch.h +0 -603
  232. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorIndexList.h +0 -738
  233. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorInflation.h +0 -247
  234. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorInitializer.h +0 -82
  235. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorIntDiv.h +0 -263
  236. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorLayoutSwap.h +0 -216
  237. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorMacros.h +0 -98
  238. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorMap.h +0 -327
  239. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorMeta.h +0 -311
  240. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorMorphing.h +0 -1102
  241. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorPadding.h +0 -708
  242. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorPatch.h +0 -291
  243. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorRandom.h +0 -322
  244. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorReduction.h +0 -998
  245. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorReductionCuda.h +0 -6
  246. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorReductionGpu.h +0 -966
  247. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorReductionSycl.h +0 -582
  248. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorRef.h +0 -454
  249. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorReverse.h +0 -465
  250. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorScan.h +0 -528
  251. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorScanSycl.h +0 -513
  252. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorShuffling.h +0 -471
  253. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorStorage.h +0 -161
  254. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorStriding.h +0 -346
  255. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorTrace.h +0 -303
  256. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorTraits.h +0 -264
  257. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorUInt128.h +0 -249
  258. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorVolumePatch.h +0 -629
  259. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/TensorSymmetry/DynamicSymmetry.h +0 -293
  260. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/TensorSymmetry/StaticSymmetry.h +0 -236
  261. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/TensorSymmetry/Symmetry.h +0 -338
  262. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/TensorSymmetry/util/TemplateGroupTheory.h +0 -669
  263. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/ThreadPool/Barrier.h +0 -67
  264. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/ThreadPool/EventCount.h +0 -249
  265. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/ThreadPool/NonBlockingThreadPool.h +0 -486
  266. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/ThreadPool/RunQueue.h +0 -236
  267. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/ThreadPool/ThreadCancel.h +0 -23
  268. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/ThreadPool/ThreadEnvironment.h +0 -40
  269. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/ThreadPool/ThreadLocal.h +0 -301
  270. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/ThreadPool/ThreadPoolInterface.h +0 -48
  271. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/ThreadPool/ThreadYield.h +0 -20
  272. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/util/CXX11Meta.h +0 -537
  273. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/util/CXX11Workarounds.h +0 -88
  274. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/util/EmulateArray.h +0 -261
  275. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/util/MaxSizeVector.h +0 -158
  276. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/AutoDiff/AutoDiffJacobian.h +0 -108
  277. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/AutoDiff/AutoDiffScalar.h +0 -730
  278. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/AutoDiff/AutoDiffVector.h +0 -220
  279. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/BVH/BVAlgorithms.h +0 -293
  280. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/BVH/KdBVH.h +0 -223
  281. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/Eigenvalues/ArpackSelfAdjointEigenSolver.h +0 -790
  282. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/EulerAngles/EulerAngles.h +0 -355
  283. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/EulerAngles/EulerSystem.h +0 -305
  284. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/FFT/ei_fftw_impl.h +0 -261
  285. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/FFT/ei_kissfft_impl.h +0 -449
  286. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/IterativeSolvers/ConstrainedConjGrad.h +0 -187
  287. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/IterativeSolvers/DGMRES.h +0 -511
  288. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/IterativeSolvers/GMRES.h +0 -335
  289. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/IterativeSolvers/IDRS.h +0 -436
  290. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/IterativeSolvers/IncompleteLU.h +0 -90
  291. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/IterativeSolvers/IterationController.h +0 -154
  292. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/IterativeSolvers/MINRES.h +0 -267
  293. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/IterativeSolvers/Scaling.h +0 -193
  294. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/KroneckerProduct/KroneckerTensorProduct.h +0 -305
  295. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/LevenbergMarquardt/LMcovar.h +0 -84
  296. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/LevenbergMarquardt/LMonestep.h +0 -202
  297. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/LevenbergMarquardt/LMpar.h +0 -160
  298. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/LevenbergMarquardt/LMqrsolv.h +0 -188
  299. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/LevenbergMarquardt/LevenbergMarquardt.h +0 -396
  300. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/MatrixFunctions/MatrixExponential.h +0 -441
  301. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/MatrixFunctions/MatrixFunction.h +0 -569
  302. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/MatrixFunctions/MatrixLogarithm.h +0 -373
  303. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/MatrixFunctions/MatrixPower.h +0 -705
  304. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/MatrixFunctions/MatrixSquareRoot.h +0 -368
  305. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/MatrixFunctions/StemFunction.h +0 -117
  306. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/MoreVectorization/MathFunctions.h +0 -95
  307. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/NonLinearOptimization/HybridNonLinearSolver.h +0 -601
  308. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/NonLinearOptimization/LevenbergMarquardt.h +0 -657
  309. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/NonLinearOptimization/chkder.h +0 -66
  310. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/NonLinearOptimization/covar.h +0 -70
  311. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/NonLinearOptimization/dogleg.h +0 -107
  312. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/NonLinearOptimization/fdjac1.h +0 -79
  313. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/NonLinearOptimization/lmpar.h +0 -298
  314. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/NonLinearOptimization/qrsolv.h +0 -91
  315. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/NonLinearOptimization/r1mpyq.h +0 -30
  316. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/NonLinearOptimization/r1updt.h +0 -99
  317. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/NonLinearOptimization/rwupdt.h +0 -49
  318. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/NumericalDiff/NumericalDiff.h +0 -130
  319. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/Polynomials/Companion.h +0 -280
  320. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/Polynomials/PolynomialSolver.h +0 -428
  321. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/Polynomials/PolynomialUtils.h +0 -143
  322. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/Skyline/SkylineInplaceLU.h +0 -352
  323. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/Skyline/SkylineMatrix.h +0 -862
  324. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/Skyline/SkylineMatrixBase.h +0 -212
  325. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/Skyline/SkylineProduct.h +0 -295
  326. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/Skyline/SkylineStorage.h +0 -259
  327. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/Skyline/SkylineUtil.h +0 -89
  328. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/SparseExtra/BlockOfDynamicSparseMatrix.h +0 -122
  329. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/SparseExtra/BlockSparseMatrix.h +0 -1079
  330. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/SparseExtra/DynamicSparseMatrix.h +0 -404
  331. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/SparseExtra/MarketIO.h +0 -282
  332. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/SparseExtra/MatrixMarketIterator.h +0 -247
  333. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/SparseExtra/RandomSetter.h +0 -349
  334. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/SpecialFunctions/BesselFunctionsArrayAPI.h +0 -286
  335. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/SpecialFunctions/BesselFunctionsBFloat16.h +0 -68
  336. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/SpecialFunctions/BesselFunctionsFunctors.h +0 -357
  337. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/SpecialFunctions/BesselFunctionsHalf.h +0 -66
  338. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/SpecialFunctions/BesselFunctionsImpl.h +0 -1959
  339. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/SpecialFunctions/BesselFunctionsPacketMath.h +0 -118
  340. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/SpecialFunctions/HipVectorCompatibility.h +0 -67
  341. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/SpecialFunctions/SpecialFunctionsArrayAPI.h +0 -167
  342. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/SpecialFunctions/SpecialFunctionsBFloat16.h +0 -58
  343. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/SpecialFunctions/SpecialFunctionsFunctors.h +0 -330
  344. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/SpecialFunctions/SpecialFunctionsHalf.h +0 -58
  345. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/SpecialFunctions/SpecialFunctionsImpl.h +0 -2045
  346. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/SpecialFunctions/SpecialFunctionsPacketMath.h +0 -79
  347. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/SpecialFunctions/arch/AVX/BesselFunctions.h +0 -46
  348. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/SpecialFunctions/arch/AVX/SpecialFunctions.h +0 -16
  349. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/SpecialFunctions/arch/AVX512/BesselFunctions.h +0 -46
  350. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/SpecialFunctions/arch/AVX512/SpecialFunctions.h +0 -16
  351. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/SpecialFunctions/arch/GPU/SpecialFunctions.h +0 -369
  352. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/SpecialFunctions/arch/NEON/BesselFunctions.h +0 -54
  353. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/SpecialFunctions/arch/NEON/SpecialFunctions.h +0 -34
  354. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/Splines/Spline.h +0 -507
  355. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/Splines/SplineFitting.h +0 -431
  356. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/Splines/SplineFwd.h +0 -93
  357. sequenzo-0.1.18.dist-info/RECORD +0 -544
  358. {sequenzo-0.1.18.dist-info → sequenzo-0.1.20.dist-info}/WHEEL +0 -0
  359. {sequenzo-0.1.18.dist-info → sequenzo-0.1.20.dist-info}/licenses/LICENSE +0 -0
  360. {sequenzo-0.1.18.dist-info → sequenzo-0.1.20.dist-info}/top_level.txt +0 -0
@@ -1,199 +0,0 @@
1
- // This file is part of Eigen, a lightweight C++ template library
2
- // for linear algebra.
3
- //
4
- // Copyright (C) 2008 Gael Guennebaud <gael.guennebaud@inria.fr>
5
- //
6
- // This Source Code Form is subject to the terms of the Mozilla
7
- // Public License v. 2.0. If a copy of the MPL was not distributed
8
- // with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
9
-
10
- #ifndef EIGEN_ROTATION2D_H
11
- #define EIGEN_ROTATION2D_H
12
-
13
- namespace Eigen {
14
-
15
- /** \geometry_module \ingroup Geometry_Module
16
- *
17
- * \class Rotation2D
18
- *
19
- * \brief Represents a rotation/orientation in a 2 dimensional space.
20
- *
21
- * \tparam _Scalar the scalar type, i.e., the type of the coefficients
22
- *
23
- * This class is equivalent to a single scalar representing a counter clock wise rotation
24
- * as a single angle in radian. It provides some additional features such as the automatic
25
- * conversion from/to a 2x2 rotation matrix. Moreover this class aims to provide a similar
26
- * interface to Quaternion in order to facilitate the writing of generic algorithms
27
- * dealing with rotations.
28
- *
29
- * \sa class Quaternion, class Transform
30
- */
31
-
32
- namespace internal {
33
-
34
- template<typename _Scalar> struct traits<Rotation2D<_Scalar> >
35
- {
36
- typedef _Scalar Scalar;
37
- };
38
- } // end namespace internal
39
-
40
- template<typename _Scalar>
41
- class Rotation2D : public RotationBase<Rotation2D<_Scalar>,2>
42
- {
43
- typedef RotationBase<Rotation2D<_Scalar>,2> Base;
44
-
45
- public:
46
-
47
- using Base::operator*;
48
-
49
- enum { Dim = 2 };
50
- /** the scalar type of the coefficients */
51
- typedef _Scalar Scalar;
52
- typedef Matrix<Scalar,2,1> Vector2;
53
- typedef Matrix<Scalar,2,2> Matrix2;
54
-
55
- protected:
56
-
57
- Scalar m_angle;
58
-
59
- public:
60
-
61
- /** Construct a 2D counter clock wise rotation from the angle \a a in radian. */
62
- EIGEN_DEVICE_FUNC explicit inline Rotation2D(const Scalar& a) : m_angle(a) {}
63
-
64
- /** Default constructor wihtout initialization. The represented rotation is undefined. */
65
- EIGEN_DEVICE_FUNC Rotation2D() {}
66
-
67
- /** Construct a 2D rotation from a 2x2 rotation matrix \a mat.
68
- *
69
- * \sa fromRotationMatrix()
70
- */
71
- template<typename Derived>
72
- EIGEN_DEVICE_FUNC explicit Rotation2D(const MatrixBase<Derived>& m)
73
- {
74
- fromRotationMatrix(m.derived());
75
- }
76
-
77
- /** \returns the rotation angle */
78
- EIGEN_DEVICE_FUNC inline Scalar angle() const { return m_angle; }
79
-
80
- /** \returns a read-write reference to the rotation angle */
81
- EIGEN_DEVICE_FUNC inline Scalar& angle() { return m_angle; }
82
-
83
- /** \returns the rotation angle in [0,2pi] */
84
- EIGEN_DEVICE_FUNC inline Scalar smallestPositiveAngle() const {
85
- Scalar tmp = numext::fmod(m_angle,Scalar(2*EIGEN_PI));
86
- return tmp<Scalar(0) ? tmp + Scalar(2*EIGEN_PI) : tmp;
87
- }
88
-
89
- /** \returns the rotation angle in [-pi,pi] */
90
- EIGEN_DEVICE_FUNC inline Scalar smallestAngle() const {
91
- Scalar tmp = numext::fmod(m_angle,Scalar(2*EIGEN_PI));
92
- if(tmp>Scalar(EIGEN_PI)) tmp -= Scalar(2*EIGEN_PI);
93
- else if(tmp<-Scalar(EIGEN_PI)) tmp += Scalar(2*EIGEN_PI);
94
- return tmp;
95
- }
96
-
97
- /** \returns the inverse rotation */
98
- EIGEN_DEVICE_FUNC inline Rotation2D inverse() const { return Rotation2D(-m_angle); }
99
-
100
- /** Concatenates two rotations */
101
- EIGEN_DEVICE_FUNC inline Rotation2D operator*(const Rotation2D& other) const
102
- { return Rotation2D(m_angle + other.m_angle); }
103
-
104
- /** Concatenates two rotations */
105
- EIGEN_DEVICE_FUNC inline Rotation2D& operator*=(const Rotation2D& other)
106
- { m_angle += other.m_angle; return *this; }
107
-
108
- /** Applies the rotation to a 2D vector */
109
- EIGEN_DEVICE_FUNC Vector2 operator* (const Vector2& vec) const
110
- { return toRotationMatrix() * vec; }
111
-
112
- template<typename Derived>
113
- EIGEN_DEVICE_FUNC Rotation2D& fromRotationMatrix(const MatrixBase<Derived>& m);
114
- EIGEN_DEVICE_FUNC Matrix2 toRotationMatrix() const;
115
-
116
- /** Set \c *this from a 2x2 rotation matrix \a mat.
117
- * In other words, this function extract the rotation angle from the rotation matrix.
118
- *
119
- * This method is an alias for fromRotationMatrix()
120
- *
121
- * \sa fromRotationMatrix()
122
- */
123
- template<typename Derived>
124
- EIGEN_DEVICE_FUNC Rotation2D& operator=(const MatrixBase<Derived>& m)
125
- { return fromRotationMatrix(m.derived()); }
126
-
127
- /** \returns the spherical interpolation between \c *this and \a other using
128
- * parameter \a t. It is in fact equivalent to a linear interpolation.
129
- */
130
- EIGEN_DEVICE_FUNC inline Rotation2D slerp(const Scalar& t, const Rotation2D& other) const
131
- {
132
- Scalar dist = Rotation2D(other.m_angle-m_angle).smallestAngle();
133
- return Rotation2D(m_angle + dist*t);
134
- }
135
-
136
- /** \returns \c *this with scalar type casted to \a NewScalarType
137
- *
138
- * Note that if \a NewScalarType is equal to the current scalar type of \c *this
139
- * then this function smartly returns a const reference to \c *this.
140
- */
141
- template<typename NewScalarType>
142
- EIGEN_DEVICE_FUNC inline typename internal::cast_return_type<Rotation2D,Rotation2D<NewScalarType> >::type cast() const
143
- { return typename internal::cast_return_type<Rotation2D,Rotation2D<NewScalarType> >::type(*this); }
144
-
145
- /** Copy constructor with scalar type conversion */
146
- template<typename OtherScalarType>
147
- EIGEN_DEVICE_FUNC inline explicit Rotation2D(const Rotation2D<OtherScalarType>& other)
148
- {
149
- m_angle = Scalar(other.angle());
150
- }
151
-
152
- EIGEN_DEVICE_FUNC static inline Rotation2D Identity() { return Rotation2D(0); }
153
-
154
- /** \returns \c true if \c *this is approximately equal to \a other, within the precision
155
- * determined by \a prec.
156
- *
157
- * \sa MatrixBase::isApprox() */
158
- EIGEN_DEVICE_FUNC bool isApprox(const Rotation2D& other, const typename NumTraits<Scalar>::Real& prec = NumTraits<Scalar>::dummy_precision()) const
159
- { return internal::isApprox(m_angle,other.m_angle, prec); }
160
-
161
- };
162
-
163
- /** \ingroup Geometry_Module
164
- * single precision 2D rotation type */
165
- typedef Rotation2D<float> Rotation2Df;
166
- /** \ingroup Geometry_Module
167
- * double precision 2D rotation type */
168
- typedef Rotation2D<double> Rotation2Dd;
169
-
170
- /** Set \c *this from a 2x2 rotation matrix \a mat.
171
- * In other words, this function extract the rotation angle
172
- * from the rotation matrix.
173
- */
174
- template<typename Scalar>
175
- template<typename Derived>
176
- EIGEN_DEVICE_FUNC Rotation2D<Scalar>& Rotation2D<Scalar>::fromRotationMatrix(const MatrixBase<Derived>& mat)
177
- {
178
- EIGEN_USING_STD(atan2)
179
- EIGEN_STATIC_ASSERT(Derived::RowsAtCompileTime==2 && Derived::ColsAtCompileTime==2,YOU_MADE_A_PROGRAMMING_MISTAKE)
180
- m_angle = atan2(mat.coeff(1,0), mat.coeff(0,0));
181
- return *this;
182
- }
183
-
184
- /** Constructs and \returns an equivalent 2x2 rotation matrix.
185
- */
186
- template<typename Scalar>
187
- typename Rotation2D<Scalar>::Matrix2
188
- EIGEN_DEVICE_FUNC Rotation2D<Scalar>::toRotationMatrix(void) const
189
- {
190
- EIGEN_USING_STD(sin)
191
- EIGEN_USING_STD(cos)
192
- Scalar sinA = sin(m_angle);
193
- Scalar cosA = cos(m_angle);
194
- return (Matrix2() << cosA, -sinA, sinA, cosA).finished();
195
- }
196
-
197
- } // end namespace Eigen
198
-
199
- #endif // EIGEN_ROTATION2D_H
@@ -1,206 +0,0 @@
1
- // This file is part of Eigen, a lightweight C++ template library
2
- // for linear algebra.
3
- //
4
- // Copyright (C) 2008 Gael Guennebaud <gael.guennebaud@inria.fr>
5
- //
6
- // This Source Code Form is subject to the terms of the Mozilla
7
- // Public License v. 2.0. If a copy of the MPL was not distributed
8
- // with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
9
-
10
- #ifndef EIGEN_ROTATIONBASE_H
11
- #define EIGEN_ROTATIONBASE_H
12
-
13
- namespace Eigen {
14
-
15
- // forward declaration
16
- namespace internal {
17
- template<typename RotationDerived, typename MatrixType, bool IsVector=MatrixType::IsVectorAtCompileTime>
18
- struct rotation_base_generic_product_selector;
19
- }
20
-
21
- /** \class RotationBase
22
- *
23
- * \brief Common base class for compact rotation representations
24
- *
25
- * \tparam Derived is the derived type, i.e., a rotation type
26
- * \tparam _Dim the dimension of the space
27
- */
28
- template<typename Derived, int _Dim>
29
- class RotationBase
30
- {
31
- public:
32
- enum { Dim = _Dim };
33
- /** the scalar type of the coefficients */
34
- typedef typename internal::traits<Derived>::Scalar Scalar;
35
-
36
- /** corresponding linear transformation matrix type */
37
- typedef Matrix<Scalar,Dim,Dim> RotationMatrixType;
38
- typedef Matrix<Scalar,Dim,1> VectorType;
39
-
40
- public:
41
- EIGEN_DEVICE_FUNC inline const Derived& derived() const { return *static_cast<const Derived*>(this); }
42
- EIGEN_DEVICE_FUNC inline Derived& derived() { return *static_cast<Derived*>(this); }
43
-
44
- /** \returns an equivalent rotation matrix */
45
- EIGEN_DEVICE_FUNC inline RotationMatrixType toRotationMatrix() const { return derived().toRotationMatrix(); }
46
-
47
- /** \returns an equivalent rotation matrix
48
- * This function is added to be conform with the Transform class' naming scheme.
49
- */
50
- EIGEN_DEVICE_FUNC inline RotationMatrixType matrix() const { return derived().toRotationMatrix(); }
51
-
52
- /** \returns the inverse rotation */
53
- EIGEN_DEVICE_FUNC inline Derived inverse() const { return derived().inverse(); }
54
-
55
- /** \returns the concatenation of the rotation \c *this with a translation \a t */
56
- EIGEN_DEVICE_FUNC inline Transform<Scalar,Dim,Isometry> operator*(const Translation<Scalar,Dim>& t) const
57
- { return Transform<Scalar,Dim,Isometry>(*this) * t; }
58
-
59
- /** \returns the concatenation of the rotation \c *this with a uniform scaling \a s */
60
- EIGEN_DEVICE_FUNC inline RotationMatrixType operator*(const UniformScaling<Scalar>& s) const
61
- { return toRotationMatrix() * s.factor(); }
62
-
63
- /** \returns the concatenation of the rotation \c *this with a generic expression \a e
64
- * \a e can be:
65
- * - a DimxDim linear transformation matrix
66
- * - a DimxDim diagonal matrix (axis aligned scaling)
67
- * - a vector of size Dim
68
- */
69
- template<typename OtherDerived>
70
- EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE typename internal::rotation_base_generic_product_selector<Derived,OtherDerived,OtherDerived::IsVectorAtCompileTime>::ReturnType
71
- operator*(const EigenBase<OtherDerived>& e) const
72
- { return internal::rotation_base_generic_product_selector<Derived,OtherDerived>::run(derived(), e.derived()); }
73
-
74
- /** \returns the concatenation of a linear transformation \a l with the rotation \a r */
75
- template<typename OtherDerived> friend
76
- EIGEN_DEVICE_FUNC inline RotationMatrixType operator*(const EigenBase<OtherDerived>& l, const Derived& r)
77
- { return l.derived() * r.toRotationMatrix(); }
78
-
79
- /** \returns the concatenation of a scaling \a l with the rotation \a r */
80
- EIGEN_DEVICE_FUNC friend inline Transform<Scalar,Dim,Affine> operator*(const DiagonalMatrix<Scalar,Dim>& l, const Derived& r)
81
- {
82
- Transform<Scalar,Dim,Affine> res(r);
83
- res.linear().applyOnTheLeft(l);
84
- return res;
85
- }
86
-
87
- /** \returns the concatenation of the rotation \c *this with a transformation \a t */
88
- template<int Mode, int Options>
89
- EIGEN_DEVICE_FUNC inline Transform<Scalar,Dim,Mode> operator*(const Transform<Scalar,Dim,Mode,Options>& t) const
90
- { return toRotationMatrix() * t; }
91
-
92
- template<typename OtherVectorType>
93
- EIGEN_DEVICE_FUNC inline VectorType _transformVector(const OtherVectorType& v) const
94
- { return toRotationMatrix() * v; }
95
- };
96
-
97
- namespace internal {
98
-
99
- // implementation of the generic product rotation * matrix
100
- template<typename RotationDerived, typename MatrixType>
101
- struct rotation_base_generic_product_selector<RotationDerived,MatrixType,false>
102
- {
103
- enum { Dim = RotationDerived::Dim };
104
- typedef Matrix<typename RotationDerived::Scalar,Dim,Dim> ReturnType;
105
- EIGEN_DEVICE_FUNC static inline ReturnType run(const RotationDerived& r, const MatrixType& m)
106
- { return r.toRotationMatrix() * m; }
107
- };
108
-
109
- template<typename RotationDerived, typename Scalar, int Dim, int MaxDim>
110
- struct rotation_base_generic_product_selector< RotationDerived, DiagonalMatrix<Scalar,Dim,MaxDim>, false >
111
- {
112
- typedef Transform<Scalar,Dim,Affine> ReturnType;
113
- EIGEN_DEVICE_FUNC static inline ReturnType run(const RotationDerived& r, const DiagonalMatrix<Scalar,Dim,MaxDim>& m)
114
- {
115
- ReturnType res(r);
116
- res.linear() *= m;
117
- return res;
118
- }
119
- };
120
-
121
- template<typename RotationDerived,typename OtherVectorType>
122
- struct rotation_base_generic_product_selector<RotationDerived,OtherVectorType,true>
123
- {
124
- enum { Dim = RotationDerived::Dim };
125
- typedef Matrix<typename RotationDerived::Scalar,Dim,1> ReturnType;
126
- EIGEN_DEVICE_FUNC static EIGEN_STRONG_INLINE ReturnType run(const RotationDerived& r, const OtherVectorType& v)
127
- {
128
- return r._transformVector(v);
129
- }
130
- };
131
-
132
- } // end namespace internal
133
-
134
- /** \geometry_module
135
- *
136
- * \brief Constructs a Dim x Dim rotation matrix from the rotation \a r
137
- */
138
- template<typename _Scalar, int _Rows, int _Cols, int _Storage, int _MaxRows, int _MaxCols>
139
- template<typename OtherDerived>
140
- EIGEN_DEVICE_FUNC Matrix<_Scalar, _Rows, _Cols, _Storage, _MaxRows, _MaxCols>
141
- ::Matrix(const RotationBase<OtherDerived,ColsAtCompileTime>& r)
142
- {
143
- EIGEN_STATIC_ASSERT_MATRIX_SPECIFIC_SIZE(Matrix,int(OtherDerived::Dim),int(OtherDerived::Dim))
144
- *this = r.toRotationMatrix();
145
- }
146
-
147
- /** \geometry_module
148
- *
149
- * \brief Set a Dim x Dim rotation matrix from the rotation \a r
150
- */
151
- template<typename _Scalar, int _Rows, int _Cols, int _Storage, int _MaxRows, int _MaxCols>
152
- template<typename OtherDerived>
153
- EIGEN_DEVICE_FUNC Matrix<_Scalar, _Rows, _Cols, _Storage, _MaxRows, _MaxCols>&
154
- Matrix<_Scalar, _Rows, _Cols, _Storage, _MaxRows, _MaxCols>
155
- ::operator=(const RotationBase<OtherDerived,ColsAtCompileTime>& r)
156
- {
157
- EIGEN_STATIC_ASSERT_MATRIX_SPECIFIC_SIZE(Matrix,int(OtherDerived::Dim),int(OtherDerived::Dim))
158
- return *this = r.toRotationMatrix();
159
- }
160
-
161
- namespace internal {
162
-
163
- /** \internal
164
- *
165
- * Helper function to return an arbitrary rotation object to a rotation matrix.
166
- *
167
- * \tparam Scalar the numeric type of the matrix coefficients
168
- * \tparam Dim the dimension of the current space
169
- *
170
- * It returns a Dim x Dim fixed size matrix.
171
- *
172
- * Default specializations are provided for:
173
- * - any scalar type (2D),
174
- * - any matrix expression,
175
- * - any type based on RotationBase (e.g., Quaternion, AngleAxis, Rotation2D)
176
- *
177
- * Currently toRotationMatrix is only used by Transform.
178
- *
179
- * \sa class Transform, class Rotation2D, class Quaternion, class AngleAxis
180
- */
181
- template<typename Scalar, int Dim>
182
- EIGEN_DEVICE_FUNC static inline Matrix<Scalar,2,2> toRotationMatrix(const Scalar& s)
183
- {
184
- EIGEN_STATIC_ASSERT(Dim==2,YOU_MADE_A_PROGRAMMING_MISTAKE)
185
- return Rotation2D<Scalar>(s).toRotationMatrix();
186
- }
187
-
188
- template<typename Scalar, int Dim, typename OtherDerived>
189
- EIGEN_DEVICE_FUNC static inline Matrix<Scalar,Dim,Dim> toRotationMatrix(const RotationBase<OtherDerived,Dim>& r)
190
- {
191
- return r.toRotationMatrix();
192
- }
193
-
194
- template<typename Scalar, int Dim, typename OtherDerived>
195
- EIGEN_DEVICE_FUNC static inline const MatrixBase<OtherDerived>& toRotationMatrix(const MatrixBase<OtherDerived>& mat)
196
- {
197
- EIGEN_STATIC_ASSERT(OtherDerived::RowsAtCompileTime==Dim && OtherDerived::ColsAtCompileTime==Dim,
198
- YOU_MADE_A_PROGRAMMING_MISTAKE)
199
- return mat;
200
- }
201
-
202
- } // end namespace internal
203
-
204
- } // end namespace Eigen
205
-
206
- #endif // EIGEN_ROTATIONBASE_H
@@ -1,188 +0,0 @@
1
- // This file is part of Eigen, a lightweight C++ template library
2
- // for linear algebra.
3
- //
4
- // Copyright (C) 2008 Gael Guennebaud <gael.guennebaud@inria.fr>
5
- //
6
- // This Source Code Form is subject to the terms of the Mozilla
7
- // Public License v. 2.0. If a copy of the MPL was not distributed
8
- // with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
9
-
10
- #ifndef EIGEN_SCALING_H
11
- #define EIGEN_SCALING_H
12
-
13
- namespace Eigen {
14
-
15
- /** \geometry_module \ingroup Geometry_Module
16
- *
17
- * \class UniformScaling
18
- *
19
- * \brief Represents a generic uniform scaling transformation
20
- *
21
- * \tparam _Scalar the scalar type, i.e., the type of the coefficients.
22
- *
23
- * This class represent a uniform scaling transformation. It is the return
24
- * type of Scaling(Scalar), and most of the time this is the only way it
25
- * is used. In particular, this class is not aimed to be used to store a scaling transformation,
26
- * but rather to make easier the constructions and updates of Transform objects.
27
- *
28
- * To represent an axis aligned scaling, use the DiagonalMatrix class.
29
- *
30
- * \sa Scaling(), class DiagonalMatrix, MatrixBase::asDiagonal(), class Translation, class Transform
31
- */
32
-
33
- namespace internal
34
- {
35
- // This helper helps nvcc+MSVC to properly parse this file.
36
- // See bug 1412.
37
- template <typename Scalar, int Dim, int Mode>
38
- struct uniformscaling_times_affine_returntype
39
- {
40
- enum
41
- {
42
- NewMode = int(Mode) == int(Isometry) ? Affine : Mode
43
- };
44
- typedef Transform <Scalar, Dim, NewMode> type;
45
- };
46
- }
47
-
48
- template<typename _Scalar>
49
- class UniformScaling
50
- {
51
- public:
52
- /** the scalar type of the coefficients */
53
- typedef _Scalar Scalar;
54
-
55
- protected:
56
-
57
- Scalar m_factor;
58
-
59
- public:
60
-
61
- /** Default constructor without initialization. */
62
- UniformScaling() {}
63
- /** Constructs and initialize a uniform scaling transformation */
64
- explicit inline UniformScaling(const Scalar& s) : m_factor(s) {}
65
-
66
- inline const Scalar& factor() const { return m_factor; }
67
- inline Scalar& factor() { return m_factor; }
68
-
69
- /** Concatenates two uniform scaling */
70
- inline UniformScaling operator* (const UniformScaling& other) const
71
- { return UniformScaling(m_factor * other.factor()); }
72
-
73
- /** Concatenates a uniform scaling and a translation */
74
- template<int Dim>
75
- inline Transform<Scalar,Dim,Affine> operator* (const Translation<Scalar,Dim>& t) const;
76
-
77
- /** Concatenates a uniform scaling and an affine transformation */
78
- template<int Dim, int Mode, int Options>
79
- inline typename
80
- internal::uniformscaling_times_affine_returntype<Scalar,Dim,Mode>::type
81
- operator* (const Transform<Scalar, Dim, Mode, Options>& t) const
82
- {
83
- typename internal::uniformscaling_times_affine_returntype<Scalar,Dim,Mode>::type res = t;
84
- res.prescale(factor());
85
- return res;
86
- }
87
-
88
- /** Concatenates a uniform scaling and a linear transformation matrix */
89
- // TODO returns an expression
90
- template<typename Derived>
91
- inline typename Eigen::internal::plain_matrix_type<Derived>::type operator* (const MatrixBase<Derived>& other) const
92
- { return other * m_factor; }
93
-
94
- template<typename Derived,int Dim>
95
- inline Matrix<Scalar,Dim,Dim> operator*(const RotationBase<Derived,Dim>& r) const
96
- { return r.toRotationMatrix() * m_factor; }
97
-
98
- /** \returns the inverse scaling */
99
- inline UniformScaling inverse() const
100
- { return UniformScaling(Scalar(1)/m_factor); }
101
-
102
- /** \returns \c *this with scalar type casted to \a NewScalarType
103
- *
104
- * Note that if \a NewScalarType is equal to the current scalar type of \c *this
105
- * then this function smartly returns a const reference to \c *this.
106
- */
107
- template<typename NewScalarType>
108
- inline UniformScaling<NewScalarType> cast() const
109
- { return UniformScaling<NewScalarType>(NewScalarType(m_factor)); }
110
-
111
- /** Copy constructor with scalar type conversion */
112
- template<typename OtherScalarType>
113
- inline explicit UniformScaling(const UniformScaling<OtherScalarType>& other)
114
- { m_factor = Scalar(other.factor()); }
115
-
116
- /** \returns \c true if \c *this is approximately equal to \a other, within the precision
117
- * determined by \a prec.
118
- *
119
- * \sa MatrixBase::isApprox() */
120
- bool isApprox(const UniformScaling& other, const typename NumTraits<Scalar>::Real& prec = NumTraits<Scalar>::dummy_precision()) const
121
- { return internal::isApprox(m_factor, other.factor(), prec); }
122
-
123
- };
124
-
125
- /** \addtogroup Geometry_Module */
126
- //@{
127
-
128
- /** Concatenates a linear transformation matrix and a uniform scaling
129
- * \relates UniformScaling
130
- */
131
- // NOTE this operator is defined in MatrixBase and not as a friend function
132
- // of UniformScaling to fix an internal crash of Intel's ICC
133
- template<typename Derived,typename Scalar>
134
- EIGEN_EXPR_BINARYOP_SCALAR_RETURN_TYPE(Derived,Scalar,product)
135
- operator*(const MatrixBase<Derived>& matrix, const UniformScaling<Scalar>& s)
136
- { return matrix.derived() * s.factor(); }
137
-
138
- /** Constructs a uniform scaling from scale factor \a s */
139
- inline UniformScaling<float> Scaling(float s) { return UniformScaling<float>(s); }
140
- /** Constructs a uniform scaling from scale factor \a s */
141
- inline UniformScaling<double> Scaling(double s) { return UniformScaling<double>(s); }
142
- /** Constructs a uniform scaling from scale factor \a s */
143
- template<typename RealScalar>
144
- inline UniformScaling<std::complex<RealScalar> > Scaling(const std::complex<RealScalar>& s)
145
- { return UniformScaling<std::complex<RealScalar> >(s); }
146
-
147
- /** Constructs a 2D axis aligned scaling */
148
- template<typename Scalar>
149
- inline DiagonalMatrix<Scalar,2> Scaling(const Scalar& sx, const Scalar& sy)
150
- { return DiagonalMatrix<Scalar,2>(sx, sy); }
151
- /** Constructs a 3D axis aligned scaling */
152
- template<typename Scalar>
153
- inline DiagonalMatrix<Scalar,3> Scaling(const Scalar& sx, const Scalar& sy, const Scalar& sz)
154
- { return DiagonalMatrix<Scalar,3>(sx, sy, sz); }
155
-
156
- /** Constructs an axis aligned scaling expression from vector expression \a coeffs
157
- * This is an alias for coeffs.asDiagonal()
158
- */
159
- template<typename Derived>
160
- inline const DiagonalWrapper<const Derived> Scaling(const MatrixBase<Derived>& coeffs)
161
- { return coeffs.asDiagonal(); }
162
-
163
- /** \deprecated */
164
- typedef DiagonalMatrix<float, 2> AlignedScaling2f;
165
- /** \deprecated */
166
- typedef DiagonalMatrix<double,2> AlignedScaling2d;
167
- /** \deprecated */
168
- typedef DiagonalMatrix<float, 3> AlignedScaling3f;
169
- /** \deprecated */
170
- typedef DiagonalMatrix<double,3> AlignedScaling3d;
171
- //@}
172
-
173
- template<typename Scalar>
174
- template<int Dim>
175
- inline Transform<Scalar,Dim,Affine>
176
- UniformScaling<Scalar>::operator* (const Translation<Scalar,Dim>& t) const
177
- {
178
- Transform<Scalar,Dim,Affine> res;
179
- res.matrix().setZero();
180
- res.linear().diagonal().fill(factor());
181
- res.translation() = factor() * t.vector();
182
- res(Dim,Dim) = Scalar(1);
183
- return res;
184
- }
185
-
186
- } // end namespace Eigen
187
-
188
- #endif // EIGEN_SCALING_H