sequenzo 0.1.17__cp311-cp311-win_amd64.whl → 0.1.19__cp311-cp311-win_amd64.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.
- sequenzo/__init__.py +64 -8
- sequenzo/big_data/clara/clara.py +1 -1
- sequenzo/big_data/clara/utils/get_weighted_diss.c +154 -154
- sequenzo/big_data/clara/utils/get_weighted_diss.cp311-win_amd64.pyd +0 -0
- sequenzo/clustering/KMedoids.py +39 -0
- sequenzo/clustering/clustering_c_code.cp311-win_amd64.pyd +0 -0
- sequenzo/clustering/hierarchical_clustering.py +304 -8
- sequenzo/define_sequence_data.py +44 -3
- sequenzo/dissimilarity_measures/c_code.cp311-win_amd64.pyd +0 -0
- sequenzo/dissimilarity_measures/get_distance_matrix.py +1 -2
- sequenzo/dissimilarity_measures/get_substitution_cost_matrix.py +1 -1
- sequenzo/dissimilarity_measures/src/DHDdistance.cpp +13 -37
- sequenzo/dissimilarity_measures/src/LCPdistance.cpp +13 -37
- sequenzo/dissimilarity_measures/src/OMdistance.cpp +12 -47
- sequenzo/dissimilarity_measures/src/OMspellDistance.cpp +103 -67
- sequenzo/dissimilarity_measures/src/dp_utils.h +160 -0
- sequenzo/dissimilarity_measures/src/xsimd/include/xsimd/arch/common/xsimd_common_arithmetic.hpp +41 -16
- sequenzo/dissimilarity_measures/src/xsimd/include/xsimd/arch/common/xsimd_common_complex.hpp +4 -0
- sequenzo/dissimilarity_measures/src/xsimd/include/xsimd/arch/common/xsimd_common_details.hpp +7 -0
- sequenzo/dissimilarity_measures/src/xsimd/include/xsimd/arch/common/xsimd_common_logical.hpp +10 -0
- sequenzo/dissimilarity_measures/src/xsimd/include/xsimd/arch/common/xsimd_common_math.hpp +127 -43
- sequenzo/dissimilarity_measures/src/xsimd/include/xsimd/arch/common/xsimd_common_memory.hpp +30 -2
- sequenzo/dissimilarity_measures/src/xsimd/include/xsimd/arch/common/xsimd_common_swizzle.hpp +174 -0
- sequenzo/dissimilarity_measures/src/xsimd/include/xsimd/arch/common/xsimd_common_trigo.hpp +14 -5
- sequenzo/dissimilarity_measures/src/xsimd/include/xsimd/arch/xsimd_avx.hpp +111 -54
- sequenzo/dissimilarity_measures/src/xsimd/include/xsimd/arch/xsimd_avx2.hpp +131 -9
- sequenzo/dissimilarity_measures/src/xsimd/include/xsimd/arch/xsimd_avx512bw.hpp +11 -113
- sequenzo/dissimilarity_measures/src/xsimd/include/xsimd/arch/xsimd_avx512dq.hpp +39 -7
- sequenzo/dissimilarity_measures/src/xsimd/include/xsimd/arch/xsimd_avx512f.hpp +336 -30
- sequenzo/dissimilarity_measures/src/xsimd/include/xsimd/arch/xsimd_avx512vbmi.hpp +9 -37
- sequenzo/dissimilarity_measures/src/xsimd/include/xsimd/arch/xsimd_avx512vbmi2.hpp +58 -0
- sequenzo/dissimilarity_measures/src/xsimd/include/xsimd/arch/xsimd_common.hpp +1 -0
- sequenzo/dissimilarity_measures/src/xsimd/include/xsimd/arch/xsimd_common_fwd.hpp +35 -2
- sequenzo/dissimilarity_measures/src/xsimd/include/xsimd/arch/xsimd_constants.hpp +3 -1
- sequenzo/dissimilarity_measures/src/xsimd/include/xsimd/arch/xsimd_emulated.hpp +17 -0
- sequenzo/dissimilarity_measures/src/xsimd/include/xsimd/arch/xsimd_fma3_avx.hpp +13 -0
- sequenzo/dissimilarity_measures/src/xsimd/include/xsimd/arch/xsimd_fma3_sse.hpp +18 -0
- sequenzo/dissimilarity_measures/src/xsimd/include/xsimd/arch/xsimd_fma4.hpp +13 -0
- sequenzo/dissimilarity_measures/src/xsimd/include/xsimd/arch/xsimd_isa.hpp +8 -0
- sequenzo/dissimilarity_measures/src/xsimd/include/xsimd/arch/xsimd_neon.hpp +363 -34
- sequenzo/dissimilarity_measures/src/xsimd/include/xsimd/arch/xsimd_neon64.hpp +7 -0
- sequenzo/dissimilarity_measures/src/xsimd/include/xsimd/arch/xsimd_rvv.hpp +13 -0
- sequenzo/dissimilarity_measures/src/xsimd/include/xsimd/arch/xsimd_scalar.hpp +41 -4
- sequenzo/dissimilarity_measures/src/xsimd/include/xsimd/arch/xsimd_sse2.hpp +252 -16
- sequenzo/dissimilarity_measures/src/xsimd/include/xsimd/arch/xsimd_sse3.hpp +9 -0
- sequenzo/dissimilarity_measures/src/xsimd/include/xsimd/arch/xsimd_ssse3.hpp +12 -1
- sequenzo/dissimilarity_measures/src/xsimd/include/xsimd/arch/xsimd_sve.hpp +7 -0
- sequenzo/dissimilarity_measures/src/xsimd/include/xsimd/arch/xsimd_vsx.hpp +892 -0
- sequenzo/dissimilarity_measures/src/xsimd/include/xsimd/arch/xsimd_wasm.hpp +78 -1
- sequenzo/dissimilarity_measures/src/xsimd/include/xsimd/config/xsimd_arch.hpp +3 -1
- sequenzo/dissimilarity_measures/src/xsimd/include/xsimd/config/xsimd_config.hpp +13 -2
- sequenzo/dissimilarity_measures/src/xsimd/include/xsimd/config/xsimd_cpuid.hpp +5 -0
- sequenzo/dissimilarity_measures/src/xsimd/include/xsimd/config/xsimd_inline.hpp +5 -1
- sequenzo/dissimilarity_measures/src/xsimd/include/xsimd/types/xsimd_all_registers.hpp +2 -0
- sequenzo/dissimilarity_measures/src/xsimd/include/xsimd/types/xsimd_api.hpp +64 -1
- sequenzo/dissimilarity_measures/src/xsimd/include/xsimd/types/xsimd_batch.hpp +36 -0
- sequenzo/dissimilarity_measures/src/xsimd/include/xsimd/types/xsimd_rvv_register.hpp +40 -31
- sequenzo/dissimilarity_measures/src/xsimd/include/xsimd/types/xsimd_traits.hpp +8 -0
- sequenzo/dissimilarity_measures/src/xsimd/include/xsimd/types/xsimd_vsx_register.hpp +77 -0
- sequenzo/dissimilarity_measures/src/xsimd/include/xsimd/xsimd.hpp +6 -0
- sequenzo/dissimilarity_measures/src/xsimd/test/test_basic_math.cpp +6 -0
- sequenzo/dissimilarity_measures/src/xsimd/test/test_batch.cpp +54 -2
- sequenzo/dissimilarity_measures/src/xsimd/test/test_batch_bool.cpp +8 -0
- sequenzo/dissimilarity_measures/src/xsimd/test/test_batch_cast.cpp +11 -4
- sequenzo/dissimilarity_measures/src/xsimd/test/test_batch_complex.cpp +18 -0
- sequenzo/dissimilarity_measures/src/xsimd/test/test_batch_int.cpp +8 -14
- sequenzo/dissimilarity_measures/src/xsimd/test/test_batch_manip.cpp +216 -173
- sequenzo/dissimilarity_measures/src/xsimd/test/test_load_store.cpp +6 -0
- sequenzo/dissimilarity_measures/src/xsimd/test/test_memory.cpp +1 -1
- sequenzo/dissimilarity_measures/src/xsimd/test/test_power.cpp +7 -4
- sequenzo/dissimilarity_measures/src/xsimd/test/test_select.cpp +6 -2
- sequenzo/dissimilarity_measures/src/xsimd/test/test_shuffle.cpp +32 -18
- sequenzo/dissimilarity_measures/src/xsimd/test/test_utils.hpp +21 -24
- sequenzo/dissimilarity_measures/src/xsimd/test/test_xsimd_api.cpp +69 -9
- sequenzo/dissimilarity_measures/utils/get_sm_trate_substitution_cost_matrix.c +154 -154
- sequenzo/dissimilarity_measures/utils/get_sm_trate_substitution_cost_matrix.cp311-win_amd64.pyd +0 -0
- sequenzo/dissimilarity_measures/utils/seqconc.c +154 -154
- sequenzo/dissimilarity_measures/utils/seqconc.cp311-win_amd64.pyd +0 -0
- sequenzo/dissimilarity_measures/utils/seqdss.c +154 -154
- sequenzo/dissimilarity_measures/utils/seqdss.cp311-win_amd64.pyd +0 -0
- sequenzo/dissimilarity_measures/utils/seqdur.c +154 -154
- sequenzo/dissimilarity_measures/utils/seqdur.cp311-win_amd64.pyd +0 -0
- sequenzo/dissimilarity_measures/utils/seqlength.c +154 -154
- sequenzo/dissimilarity_measures/utils/seqlength.cp311-win_amd64.pyd +0 -0
- sequenzo/multidomain/cat.py +0 -53
- sequenzo/multidomain/idcd.py +0 -1
- sequenzo/openmp_setup.py +233 -0
- sequenzo/sequence_characteristics/__init__.py +4 -0
- sequenzo/sequence_characteristics/complexity_index.py +17 -57
- sequenzo/sequence_characteristics/overall_cross_sectional_entropy.py +177 -111
- sequenzo/sequence_characteristics/plot_characteristics.py +30 -11
- sequenzo/sequence_characteristics/simple_characteristics.py +1 -0
- sequenzo/sequence_characteristics/state_frequencies_and_entropy_per_sequence.py +9 -3
- sequenzo/sequence_characteristics/turbulence.py +47 -67
- sequenzo/sequence_characteristics/variance_of_spell_durations.py +19 -9
- sequenzo/sequence_characteristics/within_sequence_entropy.py +5 -58
- sequenzo/visualization/plot_sequence_index.py +58 -35
- sequenzo/visualization/plot_state_distribution.py +57 -36
- sequenzo/visualization/plot_transition_matrix.py +21 -22
- sequenzo/with_event_history_analysis/__init__.py +35 -0
- sequenzo/with_event_history_analysis/sequence_analysis_multi_state_model.py +850 -0
- sequenzo/with_event_history_analysis/sequence_history_analysis.py +283 -0
- {sequenzo-0.1.17.dist-info → sequenzo-0.1.19.dist-info}/METADATA +48 -14
- sequenzo-0.1.19.dist-info/RECORD +272 -0
- sequenzo/dissimilarity_measures/setup.py +0 -35
- sequenzo/dissimilarity_measures/src/eigen/Eigen/src/Cholesky/LDLT.h +0 -688
- sequenzo/dissimilarity_measures/src/eigen/Eigen/src/Cholesky/LLT.h +0 -558
- sequenzo/dissimilarity_measures/src/eigen/Eigen/src/Cholesky/LLT_LAPACKE.h +0 -99
- sequenzo/dissimilarity_measures/src/eigen/Eigen/src/CholmodSupport/CholmodSupport.h +0 -682
- sequenzo/dissimilarity_measures/src/eigen/Eigen/src/Eigenvalues/ComplexEigenSolver.h +0 -346
- sequenzo/dissimilarity_measures/src/eigen/Eigen/src/Eigenvalues/ComplexSchur.h +0 -462
- sequenzo/dissimilarity_measures/src/eigen/Eigen/src/Eigenvalues/ComplexSchur_LAPACKE.h +0 -91
- sequenzo/dissimilarity_measures/src/eigen/Eigen/src/Eigenvalues/EigenSolver.h +0 -622
- sequenzo/dissimilarity_measures/src/eigen/Eigen/src/Eigenvalues/GeneralizedEigenSolver.h +0 -418
- sequenzo/dissimilarity_measures/src/eigen/Eigen/src/Eigenvalues/GeneralizedSelfAdjointEigenSolver.h +0 -226
- sequenzo/dissimilarity_measures/src/eigen/Eigen/src/Eigenvalues/HessenbergDecomposition.h +0 -374
- sequenzo/dissimilarity_measures/src/eigen/Eigen/src/Eigenvalues/MatrixBaseEigenvalues.h +0 -158
- sequenzo/dissimilarity_measures/src/eigen/Eigen/src/Eigenvalues/RealQZ.h +0 -657
- sequenzo/dissimilarity_measures/src/eigen/Eigen/src/Eigenvalues/RealSchur.h +0 -558
- sequenzo/dissimilarity_measures/src/eigen/Eigen/src/Eigenvalues/RealSchur_LAPACKE.h +0 -77
- sequenzo/dissimilarity_measures/src/eigen/Eigen/src/Eigenvalues/SelfAdjointEigenSolver.h +0 -904
- sequenzo/dissimilarity_measures/src/eigen/Eigen/src/Eigenvalues/SelfAdjointEigenSolver_LAPACKE.h +0 -87
- sequenzo/dissimilarity_measures/src/eigen/Eigen/src/Eigenvalues/Tridiagonalization.h +0 -561
- sequenzo/dissimilarity_measures/src/eigen/Eigen/src/Geometry/AlignedBox.h +0 -486
- sequenzo/dissimilarity_measures/src/eigen/Eigen/src/Geometry/AngleAxis.h +0 -247
- sequenzo/dissimilarity_measures/src/eigen/Eigen/src/Geometry/EulerAngles.h +0 -114
- sequenzo/dissimilarity_measures/src/eigen/Eigen/src/Geometry/Homogeneous.h +0 -501
- sequenzo/dissimilarity_measures/src/eigen/Eigen/src/Geometry/Hyperplane.h +0 -282
- sequenzo/dissimilarity_measures/src/eigen/Eigen/src/Geometry/OrthoMethods.h +0 -235
- sequenzo/dissimilarity_measures/src/eigen/Eigen/src/Geometry/ParametrizedLine.h +0 -232
- sequenzo/dissimilarity_measures/src/eigen/Eigen/src/Geometry/Quaternion.h +0 -870
- sequenzo/dissimilarity_measures/src/eigen/Eigen/src/Geometry/Rotation2D.h +0 -199
- sequenzo/dissimilarity_measures/src/eigen/Eigen/src/Geometry/RotationBase.h +0 -206
- sequenzo/dissimilarity_measures/src/eigen/Eigen/src/Geometry/Scaling.h +0 -188
- sequenzo/dissimilarity_measures/src/eigen/Eigen/src/Geometry/Transform.h +0 -1563
- sequenzo/dissimilarity_measures/src/eigen/Eigen/src/Geometry/Translation.h +0 -202
- sequenzo/dissimilarity_measures/src/eigen/Eigen/src/Geometry/Umeyama.h +0 -166
- sequenzo/dissimilarity_measures/src/eigen/Eigen/src/Geometry/arch/Geometry_SIMD.h +0 -168
- sequenzo/dissimilarity_measures/src/eigen/Eigen/src/Householder/BlockHouseholder.h +0 -110
- sequenzo/dissimilarity_measures/src/eigen/Eigen/src/Householder/Householder.h +0 -176
- sequenzo/dissimilarity_measures/src/eigen/Eigen/src/Householder/HouseholderSequence.h +0 -545
- sequenzo/dissimilarity_measures/src/eigen/Eigen/src/IterativeLinearSolvers/BasicPreconditioners.h +0 -226
- sequenzo/dissimilarity_measures/src/eigen/Eigen/src/IterativeLinearSolvers/BiCGSTAB.h +0 -212
- sequenzo/dissimilarity_measures/src/eigen/Eigen/src/IterativeLinearSolvers/ConjugateGradient.h +0 -229
- sequenzo/dissimilarity_measures/src/eigen/Eigen/src/IterativeLinearSolvers/IncompleteCholesky.h +0 -394
- sequenzo/dissimilarity_measures/src/eigen/Eigen/src/IterativeLinearSolvers/IncompleteLUT.h +0 -453
- sequenzo/dissimilarity_measures/src/eigen/Eigen/src/IterativeLinearSolvers/IterativeSolverBase.h +0 -444
- sequenzo/dissimilarity_measures/src/eigen/Eigen/src/IterativeLinearSolvers/LeastSquareConjugateGradient.h +0 -198
- sequenzo/dissimilarity_measures/src/eigen/Eigen/src/IterativeLinearSolvers/SolveWithGuess.h +0 -117
- sequenzo/dissimilarity_measures/src/eigen/Eigen/src/Jacobi/Jacobi.h +0 -483
- sequenzo/dissimilarity_measures/src/eigen/Eigen/src/KLUSupport/KLUSupport.h +0 -358
- sequenzo/dissimilarity_measures/src/eigen/Eigen/src/LU/Determinant.h +0 -117
- sequenzo/dissimilarity_measures/src/eigen/Eigen/src/LU/FullPivLU.h +0 -877
- sequenzo/dissimilarity_measures/src/eigen/Eigen/src/LU/InverseImpl.h +0 -432
- sequenzo/dissimilarity_measures/src/eigen/Eigen/src/LU/PartialPivLU.h +0 -624
- sequenzo/dissimilarity_measures/src/eigen/Eigen/src/LU/PartialPivLU_LAPACKE.h +0 -83
- sequenzo/dissimilarity_measures/src/eigen/Eigen/src/LU/arch/InverseSize4.h +0 -351
- sequenzo/dissimilarity_measures/src/eigen/Eigen/src/MetisSupport/MetisSupport.h +0 -137
- sequenzo/dissimilarity_measures/src/eigen/Eigen/src/OrderingMethods/Amd.h +0 -435
- sequenzo/dissimilarity_measures/src/eigen/Eigen/src/OrderingMethods/Eigen_Colamd.h +0 -1863
- sequenzo/dissimilarity_measures/src/eigen/Eigen/src/OrderingMethods/Ordering.h +0 -153
- sequenzo/dissimilarity_measures/src/eigen/Eigen/src/PaStiXSupport/PaStiXSupport.h +0 -678
- sequenzo/dissimilarity_measures/src/eigen/Eigen/src/PardisoSupport/PardisoSupport.h +0 -545
- sequenzo/dissimilarity_measures/src/eigen/Eigen/src/QR/ColPivHouseholderQR.h +0 -674
- sequenzo/dissimilarity_measures/src/eigen/Eigen/src/QR/ColPivHouseholderQR_LAPACKE.h +0 -97
- sequenzo/dissimilarity_measures/src/eigen/Eigen/src/QR/CompleteOrthogonalDecomposition.h +0 -635
- sequenzo/dissimilarity_measures/src/eigen/Eigen/src/QR/FullPivHouseholderQR.h +0 -713
- sequenzo/dissimilarity_measures/src/eigen/Eigen/src/QR/HouseholderQR.h +0 -434
- sequenzo/dissimilarity_measures/src/eigen/Eigen/src/QR/HouseholderQR_LAPACKE.h +0 -68
- sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SPQRSupport/SuiteSparseQRSupport.h +0 -335
- sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SVD/BDCSVD.h +0 -1366
- sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SVD/JacobiSVD.h +0 -812
- sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SVD/JacobiSVD_LAPACKE.h +0 -91
- sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SVD/SVDBase.h +0 -376
- sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SVD/UpperBidiagonalization.h +0 -414
- sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseCholesky/SimplicialCholesky.h +0 -697
- sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseCholesky/SimplicialCholesky_impl.h +0 -174
- sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseCore/AmbiVector.h +0 -378
- sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseCore/CompressedStorage.h +0 -274
- sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseCore/ConservativeSparseSparseProduct.h +0 -352
- sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseCore/MappedSparseMatrix.h +0 -67
- sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseCore/SparseAssign.h +0 -270
- sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseCore/SparseBlock.h +0 -571
- sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseCore/SparseColEtree.h +0 -206
- sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseCore/SparseCompressedBase.h +0 -370
- sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseCore/SparseCwiseBinaryOp.h +0 -722
- sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseCore/SparseCwiseUnaryOp.h +0 -150
- sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseCore/SparseDenseProduct.h +0 -342
- sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseCore/SparseDiagonalProduct.h +0 -138
- sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseCore/SparseDot.h +0 -98
- sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseCore/SparseFuzzy.h +0 -29
- sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseCore/SparseMap.h +0 -305
- sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseCore/SparseMatrix.h +0 -1518
- sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseCore/SparseMatrixBase.h +0 -398
- sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseCore/SparsePermutation.h +0 -178
- sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseCore/SparseProduct.h +0 -181
- sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseCore/SparseRedux.h +0 -49
- sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseCore/SparseRef.h +0 -397
- sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseCore/SparseSelfAdjointView.h +0 -659
- sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseCore/SparseSolverBase.h +0 -124
- sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseCore/SparseSparseProductWithPruning.h +0 -198
- sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseCore/SparseTranspose.h +0 -92
- sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseCore/SparseTriangularView.h +0 -189
- sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseCore/SparseUtil.h +0 -186
- sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseCore/SparseVector.h +0 -478
- sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseCore/SparseView.h +0 -254
- sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseCore/TriangularSolver.h +0 -315
- sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseLU/SparseLU.h +0 -923
- sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseLU/SparseLUImpl.h +0 -66
- sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseLU/SparseLU_Memory.h +0 -226
- sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseLU/SparseLU_Structs.h +0 -110
- sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseLU/SparseLU_SupernodalMatrix.h +0 -375
- sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseLU/SparseLU_Utils.h +0 -80
- sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseLU/SparseLU_column_bmod.h +0 -181
- sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseLU/SparseLU_column_dfs.h +0 -179
- sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseLU/SparseLU_copy_to_ucol.h +0 -107
- sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseLU/SparseLU_gemm_kernel.h +0 -280
- sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseLU/SparseLU_heap_relax_snode.h +0 -126
- sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseLU/SparseLU_kernel_bmod.h +0 -130
- sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseLU/SparseLU_panel_bmod.h +0 -223
- sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseLU/SparseLU_panel_dfs.h +0 -258
- sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseLU/SparseLU_pivotL.h +0 -137
- sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseLU/SparseLU_pruneL.h +0 -136
- sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseLU/SparseLU_relax_snode.h +0 -83
- sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseQR/SparseQR.h +0 -758
- sequenzo/dissimilarity_measures/src/eigen/Eigen/src/StlSupport/StdDeque.h +0 -116
- sequenzo/dissimilarity_measures/src/eigen/Eigen/src/StlSupport/StdList.h +0 -106
- sequenzo/dissimilarity_measures/src/eigen/Eigen/src/StlSupport/StdVector.h +0 -131
- sequenzo/dissimilarity_measures/src/eigen/Eigen/src/StlSupport/details.h +0 -84
- sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SuperLUSupport/SuperLUSupport.h +0 -1025
- sequenzo/dissimilarity_measures/src/eigen/Eigen/src/UmfPackSupport/UmfPackSupport.h +0 -642
- sequenzo/dissimilarity_measures/src/eigen/Eigen/src/misc/Image.h +0 -82
- sequenzo/dissimilarity_measures/src/eigen/Eigen/src/misc/Kernel.h +0 -79
- sequenzo/dissimilarity_measures/src/eigen/Eigen/src/misc/RealSvd2x2.h +0 -55
- sequenzo/dissimilarity_measures/src/eigen/Eigen/src/misc/blas.h +0 -440
- sequenzo/dissimilarity_measures/src/eigen/Eigen/src/misc/lapack.h +0 -152
- sequenzo/dissimilarity_measures/src/eigen/Eigen/src/misc/lapacke.h +0 -16292
- sequenzo/dissimilarity_measures/src/eigen/Eigen/src/misc/lapacke_mangling.h +0 -17
- sequenzo/dissimilarity_measures/src/eigen/Eigen/src/plugins/ArrayCwiseBinaryOps.h +0 -358
- sequenzo/dissimilarity_measures/src/eigen/Eigen/src/plugins/ArrayCwiseUnaryOps.h +0 -696
- sequenzo/dissimilarity_measures/src/eigen/Eigen/src/plugins/BlockMethods.h +0 -1442
- sequenzo/dissimilarity_measures/src/eigen/Eigen/src/plugins/CommonCwiseBinaryOps.h +0 -115
- sequenzo/dissimilarity_measures/src/eigen/Eigen/src/plugins/CommonCwiseUnaryOps.h +0 -177
- sequenzo/dissimilarity_measures/src/eigen/Eigen/src/plugins/IndexedViewMethods.h +0 -262
- sequenzo/dissimilarity_measures/src/eigen/Eigen/src/plugins/MatrixCwiseBinaryOps.h +0 -152
- sequenzo/dissimilarity_measures/src/eigen/Eigen/src/plugins/MatrixCwiseUnaryOps.h +0 -95
- sequenzo/dissimilarity_measures/src/eigen/Eigen/src/plugins/ReshapedMethods.h +0 -149
- sequenzo/dissimilarity_measures/src/eigen/bench/BenchSparseUtil.h +0 -149
- sequenzo/dissimilarity_measures/src/eigen/bench/BenchTimer.h +0 -199
- sequenzo/dissimilarity_measures/src/eigen/bench/BenchUtil.h +0 -92
- sequenzo/dissimilarity_measures/src/eigen/bench/basicbenchmark.h +0 -63
- sequenzo/dissimilarity_measures/src/eigen/bench/btl/generic_bench/utils/utilities.h +0 -90
- sequenzo/dissimilarity_measures/src/eigen/bench/btl/libs/BLAS/blas.h +0 -675
- sequenzo/dissimilarity_measures/src/eigen/bench/btl/libs/BLAS/c_interface_base.h +0 -73
- sequenzo/dissimilarity_measures/src/eigen/bench/perf_monitoring/gemm_common.h +0 -67
- sequenzo/dissimilarity_measures/src/eigen/bench/perf_monitoring/gemv_common.h +0 -69
- sequenzo/dissimilarity_measures/src/eigen/bench/spbench/spbenchsolver.h +0 -573
- sequenzo/dissimilarity_measures/src/eigen/bench/spbench/spbenchstyle.h +0 -95
- sequenzo/dissimilarity_measures/src/eigen/bench/tensors/benchmark.h +0 -49
- sequenzo/dissimilarity_measures/src/eigen/bench/tensors/tensor_benchmarks.h +0 -597
- sequenzo/dissimilarity_measures/src/eigen/blas/BandTriangularSolver.h +0 -97
- sequenzo/dissimilarity_measures/src/eigen/blas/GeneralRank1Update.h +0 -44
- sequenzo/dissimilarity_measures/src/eigen/blas/PackedSelfadjointProduct.h +0 -53
- sequenzo/dissimilarity_measures/src/eigen/blas/PackedTriangularMatrixVector.h +0 -79
- sequenzo/dissimilarity_measures/src/eigen/blas/PackedTriangularSolverVector.h +0 -88
- sequenzo/dissimilarity_measures/src/eigen/blas/Rank2Update.h +0 -57
- sequenzo/dissimilarity_measures/src/eigen/blas/common.h +0 -175
- sequenzo/dissimilarity_measures/src/eigen/blas/f2c/datatypes.h +0 -24
- sequenzo/dissimilarity_measures/src/eigen/blas/level1_cplx_impl.h +0 -155
- sequenzo/dissimilarity_measures/src/eigen/blas/level1_impl.h +0 -144
- sequenzo/dissimilarity_measures/src/eigen/blas/level1_real_impl.h +0 -122
- sequenzo/dissimilarity_measures/src/eigen/blas/level2_cplx_impl.h +0 -360
- sequenzo/dissimilarity_measures/src/eigen/blas/level2_impl.h +0 -553
- sequenzo/dissimilarity_measures/src/eigen/blas/level2_real_impl.h +0 -306
- sequenzo/dissimilarity_measures/src/eigen/blas/level3_impl.h +0 -702
- sequenzo/dissimilarity_measures/src/eigen/debug/gdb/__init__.py +0 -1
- sequenzo/dissimilarity_measures/src/eigen/debug/gdb/printers.py +0 -314
- sequenzo/dissimilarity_measures/src/eigen/demos/mandelbrot/mandelbrot.h +0 -71
- sequenzo/dissimilarity_measures/src/eigen/demos/mix_eigen_and_c/binary_library.h +0 -71
- sequenzo/dissimilarity_measures/src/eigen/demos/opengl/camera.h +0 -118
- sequenzo/dissimilarity_measures/src/eigen/demos/opengl/gpuhelper.h +0 -207
- sequenzo/dissimilarity_measures/src/eigen/demos/opengl/icosphere.h +0 -30
- sequenzo/dissimilarity_measures/src/eigen/demos/opengl/quaternion_demo.h +0 -114
- sequenzo/dissimilarity_measures/src/eigen/demos/opengl/trackball.h +0 -42
- sequenzo/dissimilarity_measures/src/eigen/lapack/lapack_common.h +0 -29
- sequenzo/dissimilarity_measures/src/eigen/scripts/relicense.py +0 -69
- sequenzo/dissimilarity_measures/src/eigen/test/AnnoyingScalar.h +0 -165
- sequenzo/dissimilarity_measures/src/eigen/test/MovableScalar.h +0 -35
- sequenzo/dissimilarity_measures/src/eigen/test/SafeScalar.h +0 -30
- sequenzo/dissimilarity_measures/src/eigen/test/bug1213.h +0 -8
- sequenzo/dissimilarity_measures/src/eigen/test/evaluator_common.h +0 -0
- sequenzo/dissimilarity_measures/src/eigen/test/gpu_common.h +0 -176
- sequenzo/dissimilarity_measures/src/eigen/test/main.h +0 -857
- sequenzo/dissimilarity_measures/src/eigen/test/packetmath_test_shared.h +0 -275
- sequenzo/dissimilarity_measures/src/eigen/test/product.h +0 -259
- sequenzo/dissimilarity_measures/src/eigen/test/random_without_cast_overflow.h +0 -152
- sequenzo/dissimilarity_measures/src/eigen/test/solverbase.h +0 -36
- sequenzo/dissimilarity_measures/src/eigen/test/sparse.h +0 -204
- sequenzo/dissimilarity_measures/src/eigen/test/sparse_solver.h +0 -699
- sequenzo/dissimilarity_measures/src/eigen/test/split_test_helper.h +0 -5994
- sequenzo/dissimilarity_measures/src/eigen/test/svd_common.h +0 -521
- sequenzo/dissimilarity_measures/src/eigen/test/svd_fill.h +0 -118
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/Tensor.h +0 -554
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorArgMax.h +0 -329
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorAssign.h +0 -247
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorBase.h +0 -1176
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorBlock.h +0 -1559
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorBroadcasting.h +0 -1093
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorChipping.h +0 -518
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorConcatenation.h +0 -377
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorContraction.h +0 -1023
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorContractionBlocking.h +0 -73
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorContractionCuda.h +0 -6
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorContractionGpu.h +0 -1413
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorContractionMapper.h +0 -575
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorContractionSycl.h +0 -1650
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorContractionThreadPool.h +0 -1679
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorConversion.h +0 -456
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorConvolution.h +0 -1132
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorConvolutionSycl.h +0 -544
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorCostModel.h +0 -214
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorCustomOp.h +0 -347
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorDevice.h +0 -137
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorDeviceCuda.h +0 -6
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorDeviceDefault.h +0 -104
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorDeviceGpu.h +0 -389
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorDeviceSycl.h +0 -1048
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorDeviceThreadPool.h +0 -409
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorDimensionList.h +0 -236
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorDimensions.h +0 -490
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorEvalTo.h +0 -236
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorEvaluator.h +0 -983
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorExecutor.h +0 -703
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorExpr.h +0 -388
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorFFT.h +0 -669
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorFixedSize.h +0 -379
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorForcedEval.h +0 -237
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorForwardDeclarations.h +0 -191
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorFunctors.h +0 -488
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorGenerator.h +0 -302
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorGlobalFunctions.h +0 -33
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorGpuHipCudaDefines.h +0 -99
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorGpuHipCudaUndefines.h +0 -44
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorIO.h +0 -79
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorImagePatch.h +0 -603
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorIndexList.h +0 -738
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorInflation.h +0 -247
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorInitializer.h +0 -82
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorIntDiv.h +0 -263
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorLayoutSwap.h +0 -216
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorMacros.h +0 -98
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorMap.h +0 -327
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorMeta.h +0 -311
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorMorphing.h +0 -1102
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorPadding.h +0 -708
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorPatch.h +0 -291
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorRandom.h +0 -322
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorReduction.h +0 -998
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorReductionCuda.h +0 -6
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorReductionGpu.h +0 -966
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorReductionSycl.h +0 -582
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorRef.h +0 -454
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorReverse.h +0 -465
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorScan.h +0 -528
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorScanSycl.h +0 -513
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorShuffling.h +0 -471
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorStorage.h +0 -161
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorStriding.h +0 -346
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorTrace.h +0 -303
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorTraits.h +0 -264
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorUInt128.h +0 -249
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorVolumePatch.h +0 -629
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/TensorSymmetry/DynamicSymmetry.h +0 -293
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/TensorSymmetry/StaticSymmetry.h +0 -236
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/TensorSymmetry/Symmetry.h +0 -338
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/TensorSymmetry/util/TemplateGroupTheory.h +0 -669
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/ThreadPool/Barrier.h +0 -67
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/ThreadPool/EventCount.h +0 -249
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/ThreadPool/NonBlockingThreadPool.h +0 -486
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/ThreadPool/RunQueue.h +0 -236
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/ThreadPool/ThreadCancel.h +0 -23
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/ThreadPool/ThreadEnvironment.h +0 -40
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/ThreadPool/ThreadLocal.h +0 -301
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/ThreadPool/ThreadPoolInterface.h +0 -48
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/ThreadPool/ThreadYield.h +0 -20
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/util/CXX11Meta.h +0 -537
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/util/CXX11Workarounds.h +0 -88
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/util/EmulateArray.h +0 -261
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/util/MaxSizeVector.h +0 -158
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/AutoDiff/AutoDiffJacobian.h +0 -108
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/AutoDiff/AutoDiffScalar.h +0 -730
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/AutoDiff/AutoDiffVector.h +0 -220
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/BVH/BVAlgorithms.h +0 -293
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/BVH/KdBVH.h +0 -223
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/Eigenvalues/ArpackSelfAdjointEigenSolver.h +0 -790
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/EulerAngles/EulerAngles.h +0 -355
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/EulerAngles/EulerSystem.h +0 -305
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/FFT/ei_fftw_impl.h +0 -261
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/FFT/ei_kissfft_impl.h +0 -449
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/IterativeSolvers/ConstrainedConjGrad.h +0 -187
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/IterativeSolvers/DGMRES.h +0 -511
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/IterativeSolvers/GMRES.h +0 -335
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/IterativeSolvers/IDRS.h +0 -436
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/IterativeSolvers/IncompleteLU.h +0 -90
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/IterativeSolvers/IterationController.h +0 -154
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/IterativeSolvers/MINRES.h +0 -267
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/IterativeSolvers/Scaling.h +0 -193
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/KroneckerProduct/KroneckerTensorProduct.h +0 -305
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/LevenbergMarquardt/LMcovar.h +0 -84
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/LevenbergMarquardt/LMonestep.h +0 -202
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/LevenbergMarquardt/LMpar.h +0 -160
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/LevenbergMarquardt/LMqrsolv.h +0 -188
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/LevenbergMarquardt/LevenbergMarquardt.h +0 -396
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/MatrixFunctions/MatrixExponential.h +0 -441
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/MatrixFunctions/MatrixFunction.h +0 -569
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/MatrixFunctions/MatrixLogarithm.h +0 -373
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/MatrixFunctions/MatrixPower.h +0 -705
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/MatrixFunctions/MatrixSquareRoot.h +0 -368
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/MatrixFunctions/StemFunction.h +0 -117
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/MoreVectorization/MathFunctions.h +0 -95
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/NonLinearOptimization/HybridNonLinearSolver.h +0 -601
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/NonLinearOptimization/LevenbergMarquardt.h +0 -657
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/NonLinearOptimization/chkder.h +0 -66
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/NonLinearOptimization/covar.h +0 -70
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/NonLinearOptimization/dogleg.h +0 -107
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/NonLinearOptimization/fdjac1.h +0 -79
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/NonLinearOptimization/lmpar.h +0 -298
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/NonLinearOptimization/qrsolv.h +0 -91
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/NonLinearOptimization/r1mpyq.h +0 -30
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/NonLinearOptimization/r1updt.h +0 -99
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/NonLinearOptimization/rwupdt.h +0 -49
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/NumericalDiff/NumericalDiff.h +0 -130
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/Polynomials/Companion.h +0 -280
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/Polynomials/PolynomialSolver.h +0 -428
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/Polynomials/PolynomialUtils.h +0 -143
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/Skyline/SkylineInplaceLU.h +0 -352
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/Skyline/SkylineMatrix.h +0 -862
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/Skyline/SkylineMatrixBase.h +0 -212
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/Skyline/SkylineProduct.h +0 -295
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/Skyline/SkylineStorage.h +0 -259
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/Skyline/SkylineUtil.h +0 -89
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/SparseExtra/BlockOfDynamicSparseMatrix.h +0 -122
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/SparseExtra/BlockSparseMatrix.h +0 -1079
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/SparseExtra/DynamicSparseMatrix.h +0 -404
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/SparseExtra/MarketIO.h +0 -282
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/SparseExtra/MatrixMarketIterator.h +0 -247
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/SparseExtra/RandomSetter.h +0 -349
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/SpecialFunctions/BesselFunctionsArrayAPI.h +0 -286
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/SpecialFunctions/BesselFunctionsBFloat16.h +0 -68
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/SpecialFunctions/BesselFunctionsFunctors.h +0 -357
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/SpecialFunctions/BesselFunctionsHalf.h +0 -66
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/SpecialFunctions/BesselFunctionsImpl.h +0 -1959
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/SpecialFunctions/BesselFunctionsPacketMath.h +0 -118
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/SpecialFunctions/HipVectorCompatibility.h +0 -67
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/SpecialFunctions/SpecialFunctionsArrayAPI.h +0 -167
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/SpecialFunctions/SpecialFunctionsBFloat16.h +0 -58
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/SpecialFunctions/SpecialFunctionsFunctors.h +0 -330
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/SpecialFunctions/SpecialFunctionsHalf.h +0 -58
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/SpecialFunctions/SpecialFunctionsImpl.h +0 -2045
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/SpecialFunctions/SpecialFunctionsPacketMath.h +0 -79
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/SpecialFunctions/arch/AVX/BesselFunctions.h +0 -46
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/SpecialFunctions/arch/AVX/SpecialFunctions.h +0 -16
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/SpecialFunctions/arch/AVX512/BesselFunctions.h +0 -46
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/SpecialFunctions/arch/AVX512/SpecialFunctions.h +0 -16
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/SpecialFunctions/arch/GPU/SpecialFunctions.h +0 -369
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/SpecialFunctions/arch/NEON/BesselFunctions.h +0 -54
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/SpecialFunctions/arch/NEON/SpecialFunctions.h +0 -34
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/Splines/Spline.h +0 -507
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/Splines/SplineFitting.h +0 -431
- sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/Splines/SplineFwd.h +0 -93
- sequenzo/dissimilarity_measures/src/eigen/unsupported/test/matrix_functions.h +0 -67
- sequenzo-0.1.17.dist-info/RECORD +0 -631
- {sequenzo-0.1.17.dist-info → sequenzo-0.1.19.dist-info}/WHEEL +0 -0
- {sequenzo-0.1.17.dist-info → sequenzo-0.1.19.dist-info}/licenses/LICENSE +0 -0
- {sequenzo-0.1.17.dist-info → sequenzo-0.1.19.dist-info}/top_level.txt +0 -0
|
@@ -3,6 +3,7 @@
|
|
|
3
3
|
* Martin Renou *
|
|
4
4
|
* Copyright (c) QuantStack *
|
|
5
5
|
* Copyright (c) Serge Guelton *
|
|
6
|
+
* Copyright (c) Marco Barbone *
|
|
6
7
|
* *
|
|
7
8
|
* Distributed under the terms of the BSD 3-Clause License. *
|
|
8
9
|
* *
|
|
@@ -14,101 +15,182 @@
|
|
|
14
15
|
|
|
15
16
|
#include "test_utils.hpp"
|
|
16
17
|
|
|
18
|
+
// Compile time tests for include/xsimd/arch/common/xsimd_common_swizzle.hpp
|
|
17
19
|
namespace xsimd
|
|
18
20
|
{
|
|
19
|
-
|
|
20
|
-
struct init_swizzle_base
|
|
21
|
+
namespace kernel
|
|
21
22
|
{
|
|
22
|
-
|
|
23
|
-
swizzle_vector_type lhs_in, exped_reverse, exped_fill, exped_dup, exped_ror, exped_rol;
|
|
24
|
-
|
|
25
|
-
template <int... Indices>
|
|
26
|
-
std::vector<swizzle_vector_type> create_swizzle_vectors()
|
|
23
|
+
namespace detail
|
|
27
24
|
{
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
25
|
+
// ────────────────────────────────────────────────────────────────────────
|
|
26
|
+
// compile-time tests (identity, all-different, dup-lo, dup-hi)
|
|
27
|
+
// 8-lane identity
|
|
28
|
+
static_assert(is_identity<std::uint32_t, 0, 1, 2, 3, 4, 5, 6, 7>(), "identity failed");
|
|
29
|
+
// 8-lane reverse is all-different but not identity
|
|
30
|
+
static_assert(is_all_different<std::uint32_t, 7, 6, 5, 4, 3, 2, 1, 0>(), "all-diff failed");
|
|
31
|
+
static_assert(!is_identity<std::uint32_t, 7, 6, 5, 4, 3, 2, 1, 0>(), "identity on reverse");
|
|
32
|
+
// 8-lane dup-lo (repeat 0..3 twice)
|
|
33
|
+
static_assert(is_dup_lo<std::uint32_t, 0, 1, 2, 3, 0, 1, 2, 3>(), "dup_lo failed");
|
|
34
|
+
static_assert(!is_dup_hi<std::uint32_t, 0, 1, 2, 3, 0, 1, 2, 3>(), "dup_hi on dup_lo");
|
|
35
|
+
// 8-lane dup-hi (repeat 4..7 twice)
|
|
36
|
+
static_assert(is_dup_hi<std::uint32_t, 4, 5, 6, 7, 4, 5, 6, 7>(), "dup_hi failed");
|
|
37
|
+
static_assert(!is_dup_lo<std::uint32_t, 4, 5, 6, 7, 4, 5, 6, 7>(), "dup_lo on dup_hi");
|
|
38
|
+
// ────────────────────────────────────────────────────────────────────────
|
|
39
|
+
// 4-lane identity
|
|
40
|
+
static_assert(is_identity<std::uint32_t, 0, 1, 2, 3>(), "4-lane identity failed");
|
|
41
|
+
// 4-lane reverse all-different but not identity
|
|
42
|
+
static_assert(is_all_different<std::uint32_t, 3, 2, 1, 0>(), "4-lane all-diff failed");
|
|
43
|
+
static_assert(!is_identity<std::uint32_t, 3, 2, 1, 0>(), "4-lane identity on reverse");
|
|
44
|
+
// 4-lane dup-lo (repeat 0..1 twice)
|
|
45
|
+
static_assert(is_dup_lo<std::uint32_t, 0, 1, 0, 1>(), "4-lane dup_lo failed");
|
|
46
|
+
static_assert(!is_dup_hi<std::uint32_t, 0, 1, 0, 1>(), "4-lane dup_hi on dup_lo");
|
|
47
|
+
// 4-lane dup-hi (repeat 2..3 twice)
|
|
48
|
+
static_assert(is_dup_hi<std::uint32_t, 2, 3, 2, 3>(), "4-lane dup_hi failed");
|
|
49
|
+
static_assert(!is_dup_lo<std::uint32_t, 2, 3, 2, 3>(), "4-lane dup_lo on dup_hi");
|
|
50
|
+
|
|
51
|
+
static_assert(is_cross_lane<0, 1, 0, 1>(), "dup-lo only → crossing");
|
|
52
|
+
static_assert(is_cross_lane<2, 3, 2, 3>(), "dup-hi only → crossing");
|
|
53
|
+
static_assert(is_cross_lane<0, 3, 3, 3>(), "one low + rest high → crossing");
|
|
54
|
+
static_assert(!is_cross_lane<1, 0, 2, 3>(), "mixed low/high → no crossing");
|
|
55
|
+
static_assert(!is_cross_lane<0, 1, 2, 3>(), "mixed low/high → no crossing");
|
|
56
|
+
|
|
57
|
+
static_assert(no_duplicates_v<0, 1, 2, 3>(), "N=4: [0,1,2,3] → distinct");
|
|
58
|
+
static_assert(!no_duplicates_v<0, 1, 2, 2>(), "N=4: [0,1,2,2] → dup");
|
|
59
|
+
|
|
60
|
+
static_assert(no_duplicates_v<0, 1, 2, 3, 4, 5, 6, 7>(), "N=8: [0..7] → distinct");
|
|
61
|
+
static_assert(!no_duplicates_v<0, 1, 2, 3, 4, 5, 6, 0>(), "N=8: last repeats 0");
|
|
53
62
|
}
|
|
54
|
-
}
|
|
63
|
+
}
|
|
55
64
|
}
|
|
56
65
|
|
|
57
|
-
|
|
58
|
-
struct Reversor
|
|
66
|
+
namespace xsimd
|
|
59
67
|
{
|
|
60
|
-
|
|
68
|
+
template <template <class> class Pattern, class Vec>
|
|
69
|
+
void fill_pattern(Vec& dst, const Vec& src)
|
|
61
70
|
{
|
|
62
|
-
|
|
71
|
+
using size_type = typename Vec::size_type;
|
|
72
|
+
for (size_type i = 0; i < src.size(); ++i)
|
|
73
|
+
{
|
|
74
|
+
dst[i] = src[Pattern<size_type>::get(i, static_cast<size_type>(src.size()))];
|
|
75
|
+
}
|
|
63
76
|
}
|
|
64
|
-
};
|
|
65
77
|
|
|
66
|
-
template <class T>
|
|
67
|
-
struct
|
|
68
|
-
{
|
|
69
|
-
static constexpr T get(T, T n)
|
|
78
|
+
template <class T>
|
|
79
|
+
struct Reversor
|
|
70
80
|
{
|
|
71
|
-
return n - 1;
|
|
72
|
-
}
|
|
73
|
-
|
|
81
|
+
static constexpr T get(T i, T n) { return n - 1 - i; }
|
|
82
|
+
};
|
|
83
|
+
template <class T>
|
|
84
|
+
struct Last
|
|
85
|
+
{
|
|
86
|
+
static constexpr T get(T, T n) { return n - 1; }
|
|
87
|
+
};
|
|
88
|
+
template <class T>
|
|
89
|
+
struct DupReal
|
|
90
|
+
{
|
|
91
|
+
static constexpr T get(T i, T) { return (i & ~T { 1 }); }
|
|
92
|
+
};
|
|
74
93
|
|
|
75
|
-
template <class T>
|
|
76
|
-
struct
|
|
77
|
-
{
|
|
78
|
-
static constexpr T get(T i, T)
|
|
94
|
+
template <class T>
|
|
95
|
+
struct DupImag
|
|
79
96
|
{
|
|
80
|
-
|
|
81
|
-
}
|
|
82
|
-
|
|
97
|
+
static constexpr T get(T i, T) { return (i & ~T { 1 }) + 1; }
|
|
98
|
+
};
|
|
99
|
+
template <class T>
|
|
100
|
+
struct SwapRI
|
|
101
|
+
{
|
|
102
|
+
static constexpr T get(T i, T)
|
|
103
|
+
{
|
|
104
|
+
return i ^ T { 1 };
|
|
105
|
+
}
|
|
106
|
+
};
|
|
107
|
+
template <class T>
|
|
108
|
+
struct Identity
|
|
109
|
+
{
|
|
110
|
+
static constexpr T get(T i, T) { return i; }
|
|
111
|
+
};
|
|
112
|
+
template <class T>
|
|
113
|
+
struct DupLowPair
|
|
114
|
+
{
|
|
115
|
+
static constexpr T get(T i, T) { return i / 2; }
|
|
116
|
+
};
|
|
117
|
+
template <class T>
|
|
118
|
+
struct DupHighPair
|
|
119
|
+
{
|
|
120
|
+
static constexpr T get(T i, T n) { return n / 2 + i / 2; }
|
|
121
|
+
};
|
|
83
122
|
|
|
84
|
-
template <class T>
|
|
85
|
-
struct
|
|
86
|
-
{
|
|
87
|
-
|
|
88
|
-
};
|
|
123
|
+
template <class T>
|
|
124
|
+
struct RotateRight1
|
|
125
|
+
{
|
|
126
|
+
static constexpr T get(T i, T n) { return (i + n - 1) % n; }
|
|
127
|
+
};
|
|
128
|
+
template <class T>
|
|
129
|
+
struct RotateLeft1
|
|
130
|
+
{
|
|
131
|
+
static constexpr T get(T i, T n) { return (i + 1) % n; }
|
|
132
|
+
};
|
|
89
133
|
|
|
90
|
-
template <class T>
|
|
91
|
-
struct
|
|
92
|
-
{
|
|
93
|
-
};
|
|
134
|
+
template <class T>
|
|
135
|
+
struct ReversePairs
|
|
136
|
+
{
|
|
137
|
+
static constexpr T get(T i, T) { return (i & ~T { 1 }) | (1 - (i & T { 1 })); }
|
|
138
|
+
};
|
|
139
|
+
template <class T>
|
|
140
|
+
struct EvenThenOdd
|
|
141
|
+
{
|
|
142
|
+
static constexpr T get(T i, T n)
|
|
143
|
+
{
|
|
144
|
+
return (i < n / 2 ? 2 * i : 2 * (i - n / 2) + 1);
|
|
145
|
+
}
|
|
146
|
+
};
|
|
147
|
+
template <class T>
|
|
148
|
+
struct OddThenEven
|
|
149
|
+
{
|
|
150
|
+
static constexpr T get(T i, T n)
|
|
151
|
+
{
|
|
152
|
+
return (i < n / 2 ? 2 * i + 1 : 2 * (i - n / 2));
|
|
153
|
+
}
|
|
154
|
+
};
|
|
155
|
+
template <class T>
|
|
156
|
+
struct InterleavePairs
|
|
157
|
+
{
|
|
158
|
+
static constexpr T get(T i, T n)
|
|
159
|
+
{
|
|
160
|
+
return (i & 1) ? (i / 2 + n / 2) : (i / 2);
|
|
161
|
+
}
|
|
162
|
+
};
|
|
163
|
+
template <class T>
|
|
164
|
+
struct as_index
|
|
165
|
+
{
|
|
166
|
+
using type = xsimd::as_unsigned_integer_t<T>;
|
|
167
|
+
};
|
|
94
168
|
|
|
169
|
+
template <class T>
|
|
170
|
+
struct as_index<std::complex<T>> : as_index<T>
|
|
171
|
+
{
|
|
172
|
+
};
|
|
173
|
+
} // namespace xsimd
|
|
174
|
+
|
|
175
|
+
//------------------------------------------------------------------------------
|
|
176
|
+
// insert_test: unchanged from original
|
|
177
|
+
//------------------------------------------------------------------------------
|
|
95
178
|
template <class B>
|
|
96
179
|
struct insert_test
|
|
97
180
|
{
|
|
98
181
|
using batch_type = B;
|
|
99
182
|
using value_type = typename B::value_type;
|
|
100
|
-
static constexpr size_t size = B::size;
|
|
101
183
|
|
|
102
184
|
void insert_first()
|
|
103
185
|
{
|
|
104
186
|
value_type fill_value = 0;
|
|
105
187
|
value_type sentinel_value = 1;
|
|
106
188
|
batch_type v(fill_value);
|
|
107
|
-
batch_type w = insert(v, sentinel_value,
|
|
108
|
-
std::array<value_type, batch_type::size> data;
|
|
189
|
+
batch_type w = xsimd::insert(v, sentinel_value, xsimd::index<0>());
|
|
190
|
+
std::array<value_type, batch_type::size> data {};
|
|
109
191
|
w.store_unaligned(data.data());
|
|
110
192
|
CHECK_SCALAR_EQ(data.front(), sentinel_value);
|
|
111
|
-
for (size_t i = 1; i < batch_type::size; ++i)
|
|
193
|
+
for (std::size_t i = 1; i < batch_type::size; ++i)
|
|
112
194
|
CHECK_SCALAR_EQ(data[i], fill_value);
|
|
113
195
|
}
|
|
114
196
|
|
|
@@ -117,10 +199,11 @@ struct insert_test
|
|
|
117
199
|
value_type fill_value = 0;
|
|
118
200
|
value_type sentinel_value = 1;
|
|
119
201
|
batch_type v(fill_value);
|
|
120
|
-
batch_type w = insert(v, sentinel_value,
|
|
121
|
-
|
|
202
|
+
batch_type w = xsimd::insert(v, sentinel_value,
|
|
203
|
+
xsimd::index<batch_type::size - 1>());
|
|
204
|
+
std::array<value_type, batch_type::size> data {};
|
|
122
205
|
w.store_unaligned(data.data());
|
|
123
|
-
for (size_t i = 0; i < batch_type::size - 1; ++i)
|
|
206
|
+
for (std::size_t i = 0; i < batch_type::size - 1; ++i)
|
|
124
207
|
CHECK_SCALAR_EQ(data[i], fill_value);
|
|
125
208
|
CHECK_SCALAR_EQ(data.back(), sentinel_value);
|
|
126
209
|
}
|
|
@@ -129,15 +212,8 @@ struct insert_test
|
|
|
129
212
|
TEST_CASE_TEMPLATE("[insert_test]", B, BATCH_TYPES)
|
|
130
213
|
{
|
|
131
214
|
insert_test<B> Test;
|
|
132
|
-
SUBCASE("insert_first")
|
|
133
|
-
{
|
|
134
|
-
Test.insert_first();
|
|
135
|
-
}
|
|
136
|
-
|
|
137
|
-
SUBCASE("insert_last")
|
|
138
|
-
{
|
|
139
|
-
Test.insert_last();
|
|
140
|
-
}
|
|
215
|
+
SUBCASE("insert_first") { Test.insert_first(); }
|
|
216
|
+
SUBCASE("insert_last") { Test.insert_last(); }
|
|
141
217
|
}
|
|
142
218
|
|
|
143
219
|
template <class B>
|
|
@@ -146,120 +222,87 @@ struct swizzle_test
|
|
|
146
222
|
using batch_type = B;
|
|
147
223
|
using value_type = typename B::value_type;
|
|
148
224
|
using arch_type = typename B::arch_type;
|
|
149
|
-
static constexpr size_t
|
|
225
|
+
static constexpr std::size_t N = B::size;
|
|
226
|
+
using vec_t = std::array<value_type, N>;
|
|
150
227
|
|
|
151
|
-
|
|
228
|
+
// Build the input [1,3,5,...,2N-1]
|
|
229
|
+
static vec_t make_lhs()
|
|
152
230
|
{
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
B b_lhs = B::load_unaligned(v_lhs.data());
|
|
159
|
-
B b_exped = B::load_unaligned(v_exped.data());
|
|
160
|
-
|
|
161
|
-
B b_res = xsimd::rotate_right<1>(b_lhs);
|
|
162
|
-
CHECK_BATCH_EQ(b_res, b_exped);
|
|
231
|
+
vec_t v;
|
|
232
|
+
for (std::size_t i = 0; i < N; ++i)
|
|
233
|
+
v[i] = static_cast<value_type>(2 * i + 1);
|
|
234
|
+
return v;
|
|
163
235
|
}
|
|
164
236
|
|
|
165
|
-
|
|
237
|
+
template <template <class> class Pattern>
|
|
238
|
+
void run()
|
|
166
239
|
{
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
auto v_exped = swizzle_vecs[5];
|
|
240
|
+
vec_t lhs = make_lhs();
|
|
241
|
+
vec_t expect = lhs;
|
|
242
|
+
xsimd::fill_pattern<Pattern>(expect, lhs);
|
|
171
243
|
|
|
172
|
-
|
|
173
|
-
|
|
244
|
+
auto b_lhs = batch_type::load_unaligned(lhs.data());
|
|
245
|
+
auto b_expect = batch_type::load_unaligned(expect.data());
|
|
174
246
|
|
|
175
|
-
|
|
176
|
-
|
|
247
|
+
using idx_t = typename xsimd::as_index<value_type>::type;
|
|
248
|
+
auto idx_batch = xsimd::make_batch_constant<idx_t, Pattern<idx_t>, arch_type>();
|
|
249
|
+
|
|
250
|
+
CHECK_BATCH_EQ(xsimd::swizzle(b_lhs, idx_batch), b_expect);
|
|
251
|
+
CHECK_BATCH_EQ(xsimd::swizzle(b_lhs,
|
|
252
|
+
static_cast<xsimd::batch<idx_t, arch_type>>(idx_batch)),
|
|
253
|
+
b_expect);
|
|
177
254
|
}
|
|
178
255
|
|
|
179
|
-
void
|
|
256
|
+
void rotate_right()
|
|
180
257
|
{
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
B b_lhs = B::load_unaligned(v_lhs.data());
|
|
187
|
-
B b_exped = B::load_unaligned(v_exped.data());
|
|
188
|
-
|
|
189
|
-
using index_type = typename as_index<value_type>::type;
|
|
190
|
-
auto index_batch = xsimd::make_batch_constant<index_type, Reversor<index_type>, arch_type>();
|
|
191
|
-
|
|
192
|
-
B b_res = xsimd::swizzle(b_lhs, index_batch);
|
|
193
|
-
CHECK_BATCH_EQ(b_res, b_exped);
|
|
194
|
-
|
|
195
|
-
B b_dyres = xsimd::swizzle(b_lhs, (xsimd::batch<index_type, arch_type>)index_batch);
|
|
196
|
-
CHECK_BATCH_EQ(b_dyres, b_exped);
|
|
258
|
+
vec_t lhs = make_lhs(), expect;
|
|
259
|
+
std::rotate_copy(lhs.begin(), lhs.end() - 1, lhs.end(), expect.begin());
|
|
260
|
+
CHECK_BATCH_EQ(xsimd::rotate_right<1>(batch_type::load_unaligned(lhs.data())),
|
|
261
|
+
batch_type::load_unaligned(expect.data()));
|
|
197
262
|
}
|
|
198
|
-
|
|
199
|
-
void swizzle_fill()
|
|
263
|
+
void rotate_left()
|
|
200
264
|
{
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
B b_lhs = B::load_unaligned(v_lhs.data());
|
|
207
|
-
B b_exped = B::load_unaligned(v_exped.data());
|
|
208
|
-
|
|
209
|
-
using index_type = typename as_index<value_type>::type;
|
|
210
|
-
auto index_batch = xsimd::make_batch_constant<index_type, Last<index_type>, arch_type>();
|
|
211
|
-
|
|
212
|
-
B b_res = xsimd::swizzle(b_lhs, index_batch);
|
|
213
|
-
CHECK_BATCH_EQ(b_res, b_exped);
|
|
214
|
-
|
|
215
|
-
B b_dyres = xsimd::swizzle(b_lhs, (xsimd::batch<index_type, arch_type>)index_batch);
|
|
216
|
-
CHECK_BATCH_EQ(b_dyres, b_exped);
|
|
265
|
+
vec_t lhs = make_lhs(), expect;
|
|
266
|
+
std::rotate_copy(lhs.begin(), lhs.begin() + 1, lhs.end(), expect.begin());
|
|
267
|
+
CHECK_BATCH_EQ(xsimd::rotate_left<1>(batch_type::load_unaligned(lhs.data())),
|
|
268
|
+
batch_type::load_unaligned(expect.data()));
|
|
217
269
|
}
|
|
218
|
-
|
|
219
|
-
void swizzle_dup()
|
|
270
|
+
void rotate_left_inv()
|
|
220
271
|
{
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
B b_lhs = B::load_unaligned(v_lhs.data());
|
|
227
|
-
B b_exped = B::load_unaligned(v_exped.data());
|
|
228
|
-
|
|
229
|
-
using index_type = typename as_index<value_type>::type;
|
|
230
|
-
auto index_batch = xsimd::make_batch_constant<index_type, Dup<index_type>, arch_type>();
|
|
231
|
-
|
|
232
|
-
B b_res = xsimd::swizzle(b_lhs, index_batch);
|
|
233
|
-
CHECK_BATCH_EQ(b_res, b_exped);
|
|
234
|
-
|
|
235
|
-
B b_dyres = xsimd::swizzle(b_lhs, (xsimd::batch<index_type, arch_type>)index_batch);
|
|
236
|
-
CHECK_BATCH_EQ(b_dyres, b_exped);
|
|
272
|
+
vec_t lhs = make_lhs(), expect;
|
|
273
|
+
std::rotate_copy(lhs.begin(), lhs.end() - 1, lhs.end(), expect.begin());
|
|
274
|
+
CHECK_BATCH_EQ(xsimd::rotate_left<N - 1>(batch_type::load_unaligned(lhs.data())),
|
|
275
|
+
batch_type::load_unaligned(expect.data()));
|
|
237
276
|
}
|
|
238
277
|
};
|
|
239
278
|
|
|
279
|
+
// Macro to instantiate one SUBCASE per pattern
|
|
280
|
+
#define XSIMD_SWIZZLE_PATTERN_CASE(PAT) \
|
|
281
|
+
SUBCASE(#PAT) { swizzle_test<B>().template run<xsimd::PAT>(); }
|
|
282
|
+
|
|
240
283
|
TEST_CASE_TEMPLATE("[swizzle]", B, BATCH_SWIZZLE_TYPES)
|
|
241
284
|
{
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
SUBCASE("
|
|
260
|
-
{
|
|
261
|
-
Test.swizzle_dup();
|
|
262
|
-
}
|
|
285
|
+
// All existing patterns:
|
|
286
|
+
XSIMD_SWIZZLE_PATTERN_CASE(Reversor);
|
|
287
|
+
XSIMD_SWIZZLE_PATTERN_CASE(Last);
|
|
288
|
+
XSIMD_SWIZZLE_PATTERN_CASE(DupReal);
|
|
289
|
+
XSIMD_SWIZZLE_PATTERN_CASE(DupImag);
|
|
290
|
+
XSIMD_SWIZZLE_PATTERN_CASE(SwapRI);
|
|
291
|
+
XSIMD_SWIZZLE_PATTERN_CASE(Identity);
|
|
292
|
+
XSIMD_SWIZZLE_PATTERN_CASE(DupLowPair);
|
|
293
|
+
XSIMD_SWIZZLE_PATTERN_CASE(DupHighPair);
|
|
294
|
+
XSIMD_SWIZZLE_PATTERN_CASE(RotateRight1);
|
|
295
|
+
XSIMD_SWIZZLE_PATTERN_CASE(RotateLeft1);
|
|
296
|
+
XSIMD_SWIZZLE_PATTERN_CASE(ReversePairs);
|
|
297
|
+
XSIMD_SWIZZLE_PATTERN_CASE(EvenThenOdd);
|
|
298
|
+
XSIMD_SWIZZLE_PATTERN_CASE(OddThenEven);
|
|
299
|
+
XSIMD_SWIZZLE_PATTERN_CASE(InterleavePairs);
|
|
300
|
+
// Rotation checks:
|
|
301
|
+
SUBCASE("rotate_left") { swizzle_test<B>().rotate_left(); }
|
|
302
|
+
SUBCASE("rotate_left_inv") { swizzle_test<B>().rotate_left_inv(); }
|
|
303
|
+
SUBCASE("rotate_right") { swizzle_test<B>().rotate_right(); }
|
|
263
304
|
}
|
|
264
305
|
|
|
265
|
-
#
|
|
306
|
+
#undef XSIMD_SWIZZLE_PATTERN_CASE
|
|
307
|
+
|
|
308
|
+
#endif /* XSIMD_NO_SUPPORTED_ARCHITECTURE */
|
|
@@ -39,7 +39,9 @@ struct load_store_test
|
|
|
39
39
|
using ulong_vector_type = std::vector<unsigned long, allocator<unsigned long>>;
|
|
40
40
|
#endif
|
|
41
41
|
using float_vector_type = std::vector<float, allocator<float>>;
|
|
42
|
+
#if !XSIMD_WITH_NEON || XSIMD_WITH_NEON64
|
|
42
43
|
using double_vector_type = std::vector<double, allocator<double>>;
|
|
44
|
+
#endif
|
|
43
45
|
|
|
44
46
|
int8_vector_type i8_vec;
|
|
45
47
|
uint8_vector_type ui8_vec;
|
|
@@ -54,7 +56,9 @@ struct load_store_test
|
|
|
54
56
|
ulong_vector_type ul_vec;
|
|
55
57
|
#endif
|
|
56
58
|
float_vector_type f_vec;
|
|
59
|
+
#if !XSIMD_WITH_NEON || XSIMD_WITH_NEON64
|
|
57
60
|
double_vector_type d_vec;
|
|
61
|
+
#endif
|
|
58
62
|
|
|
59
63
|
array_type expected;
|
|
60
64
|
|
|
@@ -73,7 +77,9 @@ struct load_store_test
|
|
|
73
77
|
init_test_vector(ul_vec);
|
|
74
78
|
#endif
|
|
75
79
|
init_test_vector(f_vec);
|
|
80
|
+
#if !XSIMD_WITH_NEON || XSIMD_WITH_NEON64
|
|
76
81
|
init_test_vector(d_vec);
|
|
82
|
+
#endif
|
|
77
83
|
}
|
|
78
84
|
|
|
79
85
|
void test_load()
|
|
@@ -46,7 +46,7 @@ TEST_CASE("[is_aligned]")
|
|
|
46
46
|
float f[100];
|
|
47
47
|
void* unaligned_f = static_cast<void*>(&f[0]);
|
|
48
48
|
constexpr std::size_t alignment = xsimd::default_arch::alignment();
|
|
49
|
-
std::size_t aligned_f_size;
|
|
49
|
+
std::size_t aligned_f_size = sizeof(f);
|
|
50
50
|
void* aligned_f = std::align(alignment, sizeof(f), unaligned_f, aligned_f_size);
|
|
51
51
|
CHECK_UNARY(xsimd::is_aligned(aligned_f));
|
|
52
52
|
|
|
@@ -13,6 +13,7 @@
|
|
|
13
13
|
#ifndef XSIMD_NO_SUPPORTED_ARCHITECTURE
|
|
14
14
|
|
|
15
15
|
#include "test_utils.hpp"
|
|
16
|
+
#include <iostream>
|
|
16
17
|
|
|
17
18
|
template <class B>
|
|
18
19
|
struct power_test
|
|
@@ -40,9 +41,9 @@ struct power_test
|
|
|
40
41
|
for (size_t i = 0; i < nb_input; ++i)
|
|
41
42
|
{
|
|
42
43
|
zero_input[i] = 0;
|
|
43
|
-
lhs_input[i] = value_type(i
|
|
44
|
+
lhs_input[i] = value_type(i / 4 + 1.2 * std::sqrt(i + 0.25));
|
|
44
45
|
zlhs_input[i] = lhs_input[i] * (i % 2);
|
|
45
|
-
rhs_input[i] = value_type(10.2
|
|
46
|
+
rhs_input[i] = value_type(10.2 / (i + 2) + 0.25);
|
|
46
47
|
}
|
|
47
48
|
|
|
48
49
|
expected.resize(nb_input);
|
|
@@ -103,6 +104,7 @@ struct power_test
|
|
|
103
104
|
CHECK_EQ(diff, 0);
|
|
104
105
|
#endif
|
|
105
106
|
}
|
|
107
|
+
#ifndef __FAST_MATH__
|
|
106
108
|
// pow 0^-x
|
|
107
109
|
{
|
|
108
110
|
std::transform(zero_input.cbegin(), zero_input.cend(), rhs_input.cbegin(), expected.begin(),
|
|
@@ -120,17 +122,18 @@ struct power_test
|
|
|
120
122
|
INFO("pow(0, -x)");
|
|
121
123
|
CHECK_EQ(diff, 0);
|
|
122
124
|
}
|
|
125
|
+
#endif
|
|
123
126
|
// ipow
|
|
124
127
|
{
|
|
125
128
|
long k = 0;
|
|
126
129
|
std::transform(lhs_input.cbegin(), lhs_input.cend(), expected.begin(),
|
|
127
130
|
[&k, this](const value_type& l)
|
|
128
|
-
{ auto arg = k / size - nb_input / size / 2; ++k; return std::pow(l, arg); });
|
|
131
|
+
{ auto arg = k / size / 8000 - nb_input / size / 8000 / 2; ++k; return std::pow(l, arg); });
|
|
129
132
|
batch_type lhs_in, out;
|
|
130
133
|
for (size_t i = 0; i < nb_input; i += size)
|
|
131
134
|
{
|
|
132
135
|
detail::load_batch(lhs_in, lhs_input, i);
|
|
133
|
-
out = pow(lhs_in, i / size - nb_input / size / 2);
|
|
136
|
+
out = pow(lhs_in, i / size / 8000 - nb_input / size / 8000 / 2);
|
|
134
137
|
detail::store_batch(out, res, i);
|
|
135
138
|
}
|
|
136
139
|
size_t diff = detail::get_nb_diff(res, expected);
|
|
@@ -34,10 +34,14 @@ struct select_test
|
|
|
34
34
|
nb_input = size * 10000;
|
|
35
35
|
lhs_input.resize(nb_input);
|
|
36
36
|
rhs_input.resize(nb_input);
|
|
37
|
+
auto clamp = [](double v)
|
|
38
|
+
{
|
|
39
|
+
return static_cast<value_type>(std::min(v, static_cast<double>(std::numeric_limits<value_type>::max())));
|
|
40
|
+
};
|
|
37
41
|
for (size_t i = 0; i < nb_input; ++i)
|
|
38
42
|
{
|
|
39
|
-
lhs_input[i] =
|
|
40
|
-
rhs_input[i] =
|
|
43
|
+
lhs_input[i] = clamp(i / 4 + 1.2 * std::sqrt(i + 0.25));
|
|
44
|
+
rhs_input[i] = clamp(10.2 / (i + 2) + 0.25);
|
|
41
45
|
}
|
|
42
46
|
expected.resize(nb_input);
|
|
43
47
|
res.resize(nb_input);
|