eigen/test
Eugene Brevdo 39baff850c Add TernaryFunctors and the betainc SpecialFunction.
TernaryFunctors and their executors allow operations on 3-tuples of inputs.
API fully implemented for Arrays and Tensors based on binary functors.

Ported the cephes betainc function (regularized incomplete beta
integral) to Eigen, with support for CPU and GPU, floats, doubles, and
half types.

Added unit tests in array.cpp and cxx11_tensor_cuda.cu


Collapsed revision
* Merged helper methods for betainc across floats and doubles.
* Added TensorGlobalFunctions with betainc().  Removed betainc() from TensorBase.
* Clean up CwiseTernaryOp checks, change igamma_helper to cephes_helper.
* betainc: merge incbcf and incbd into incbeta_cfe.  and more cleanup.
* Update TernaryOp and SpecialFunctions (betainc) based on review comments.
2016-06-02 17:04:19 -07:00
..
adjoint.cpp Disable underflow unit test on the i387 FPU. 2016-01-30 22:14:04 +01:00
array_for_matrix.cpp bug #1193: fix lpNorm<Infinity> for empty input. 2016-06-02 15:29:59 +02:00
array_replicate.cpp Add unit test for m.replicate(...)(index). 2015-06-08 15:42:15 +02:00
array_reverse.cpp
array.cpp Add TernaryFunctors and the betainc SpecialFunction. 2016-06-02 17:04:19 -07:00
bandmatrix.cpp
basicstuff.cpp Add unit tests for bug #981: valid and invalid usage of ternary operator 2015-09-09 11:38:25 +02:00
bdcsvd.cpp split compiler intensive bdcsvd_1 unit test 2015-06-26 16:14:23 +02:00
bicgstab.cpp Do go to full accuracy when testing BiCGSTAB. 2015-06-05 14:32:26 +02:00
block.cpp Fix shortcoming in fixed-value deduction of startRow/startCol 2016-02-29 10:31:27 +01:00
bug1213_main.cpp Big 1213: add regression unit test. 2016-05-18 14:03:03 +02:00
bug1213.cpp Big 1213: add regression unit test. 2016-05-18 14:03:03 +02:00
bug1213.h Big 1213: add regression unit test. 2016-05-18 14:03:03 +02:00
cholesky.cpp Addresses comments on Eigen pull request PR-174. 2016-04-04 14:20:01 -07:00
cholmod_support.cpp bug #1095: add Cholmod*::logDeterminant/determinant (from patch of Joshua Pritikin) 2016-01-22 16:05:29 +01:00
CMakeLists.txt Big 1213: add regression unit test. 2016-05-18 14:03:03 +02:00
commainitializer.cpp
conjugate_gradient.cpp
conservative_resize.cpp
corners.cpp
ctorleak.cpp Constructing a Matrix/Array with implicit transpose could lead to memory leaks. 2015-04-16 13:25:20 +02:00
cuda_basic.cu Fix compilation of cuda unit test 2015-09-02 16:59:07 +02:00
cuda_common.h
dense_storage.cpp
denseLM.cpp
determinant.cpp
diagonal.cpp bug #178: remove additional const on nested expression, and remove several const_cast. 2016-01-28 21:43:20 +01:00
diagonalmatrices.cpp
dontalign.cpp
dynalloc.cpp Fix numerous pointer-to-integer conversion warnings in unit tests. 2016-05-26 17:41:28 +02:00
eigen2support.cpp
eigensolver_complex.cpp Limit matrix size for other eigen and schur decompositions 2015-10-30 18:06:03 +01:00
eigensolver_generalized_real.cpp bug #1098: fix regression introduced when generalizing some compute() methods in changeset 7031a851d4 2015-10-26 16:00:25 +01:00
eigensolver_generic.cpp Limit matrix size for other eigen and schur decompositions 2015-10-30 18:06:03 +01:00
eigensolver_selfadjoint.cpp Fix SelfAdjointEigenSolver for some input expression types, and add new regression unit tests for sparse and selfadjointview inputs. 2016-05-19 13:07:33 +02:00
evaluator_common.h
evaluators.cpp Add unit test for CoeffReadCost 2015-10-09 14:28:48 +02:00
exceptions.cpp
fastmath.cpp Enable and fix -Wdouble-conversion warnings 2016-05-05 13:35:45 +02:00
first_aligned.cpp Fix numerous pointer-to-integer conversion warnings in unit tests. 2016-05-26 17:41:28 +02:00
geo_alignedbox.cpp Fix a warning 2015-10-08 16:27:54 +02:00
geo_eulerangles.cpp Introduce EIGEN_PI, get rid of M_PI and acos(-1.0) 2015-06-10 17:12:10 +02:00
geo_homogeneous.cpp bug #997: add missing evaluators for m.lazyProduct(v.homogeneous()) 2015-06-08 15:43:41 +02:00
geo_hyperplane.cpp Enable and fix -Wdouble-conversion warnings 2016-05-05 13:35:45 +02:00
geo_orthomethods.cpp
geo_parametrizedline.cpp Many files were missing in previous changeset. 2015-07-29 11:11:23 +02:00
geo_quaternion.cpp Fix some conversion warnings in unit tests. 2016-05-26 17:42:12 +02:00
geo_transformations.cpp Cleaner implementation of dont_over_optimize. 2016-05-27 11:13:38 +02:00
hessenberg.cpp
householder.cpp
incomplete_cholesky.cpp bug #1150: make IncompleteCholesky more robust by iteratively increase the shift until the factorization succeed (with at most 10 attempts). 2016-01-23 22:13:54 +01:00
integer_types.cpp
inverse.cpp Fix shadow warnings triggered by clang 2015-06-09 09:11:12 +02:00
is_same_dense.cpp Fix unit test. 2016-06-03 08:12:14 +02:00
jacobi.cpp
jacobisvd.cpp Reduce compiler memory consumption for SVD unit tests 2015-06-22 09:58:06 +02:00
linearstructure.cpp Enable and fix -Wdouble-conversion warnings 2016-05-05 13:35:45 +02:00
lscg.cpp
lu.cpp Addresses comments on Eigen pull request PR-174. 2016-04-04 14:20:01 -07:00
main.h Disable MSVC's "decorated name length exceeded, name was truncated" warning in unit tests. 2016-06-02 14:48:38 +02:00
mapped_matrix.cpp Fix numerous pointer-to-integer conversion warnings in unit tests. 2016-05-26 17:41:28 +02:00
mapstaticmethods.cpp
mapstride.cpp Fix numerous pointer-to-integer conversion warnings in unit tests. 2016-05-26 17:41:28 +02:00
meta.cpp
metis_support.cpp Switch to MPL2 2015-10-23 10:36:33 +02:00
miscmatrices.cpp
mixingtypes.cpp Make EIGEN_HAS_STD_RESULT_OF user configurable 2016-05-20 15:01:27 +02:00
mpl2only.cpp Make the IterativeLinearSolvers module compatible with MPL2-only mode 2015-10-26 15:17:52 +01:00
nesting_ops.cpp Fix unit tests wrt EIGEN_DEFAULT_TO_ROW_MAJOR 2015-12-11 10:06:28 +01:00
nomalloc.cpp add nomalloc unit test for rank2 updates 2016-01-27 17:26:48 +01:00
nullary.cpp Fix integer path for num_steps==1 2016-02-01 15:00:04 +01:00
packetmath.cpp Disabled GCC6's ignored-attributes warning in packetmath unit test. 2016-05-26 17:42:58 +02:00
pardiso_support.cpp
pastix_support.cpp bug #1149: fix Pastix*::*parm() 2016-01-20 19:01:24 +01:00
permutationmatrices.cpp Check number of temporaries when applying permutations 2015-06-19 16:39:24 +02:00
prec_inverse_4x4.cpp
product_extra.cpp Add regression test for bug #817 2015-09-02 13:16:03 +02:00
product_large.cpp Fixed compilation error with clang. 2016-04-27 19:32:12 -07:00
product_mmtr.cpp Add unit test for bug #879 2015-06-16 22:11:41 +02:00
product_notemporary.cpp bug #1144: fix regression in x=y+A*x (aliasing), and move evaluator_traits::AssumeAliasing to evaluator_assume_aliasing. 2016-01-09 08:30:38 +01:00
product_selfadjoint.cpp
product_small.cpp Extend unit test of coeff-based product to check many more combinations 2015-12-08 11:27:43 +01:00
product_symm.cpp
product_syrk.cpp
product_trmm.cpp Limit matrix sizes for trmm unit test and complexes. 2015-10-30 15:07:50 +01:00
product_trmv.cpp
product_trsolve.cpp
product.h Add regression test for nesting type handling in blas_traits 2016-03-29 22:33:57 +02:00
qr_colpivoting.cpp Silenced several double-promotion warnings 2016-05-22 18:17:04 +02:00
qr_fullpivoting.cpp Use VERIFY_IS_EQUAL instead of VERIFY(a==b) to get more feedback in case of failure 2015-06-26 16:22:49 +02:00
qr.cpp
qtvector.cpp
rand.cpp Add debug output for random unit test 2016-04-13 22:56:12 +02:00
real_qz.cpp
redux.cpp Refactoring of the cost model: 2015-10-28 11:42:14 +01:00
ref.cpp Workaround i387 issue in unit test 2015-11-16 13:33:54 +01:00
resize.cpp
rvalue_types.cpp Fix pointer to long conversion warning. 2016-06-02 14:45:45 +02:00
schur_complex.cpp Limit matrix size when testing for NaN: they can become prohibitively expensive when running on x87 fp unit 2015-10-30 14:44:22 +01:00
schur_real.cpp typo 2015-10-30 22:16:23 +01:00
selfadjoint.cpp
simplicial_cholesky.cpp Skip too large real-world problems for solvers that do not scale (e.g., SimplicialLLT without reordering) 2015-06-09 09:29:53 +02:00
sizeof.cpp bug #973: update macro-level control of alignement by introducing user-controllable EIGEN_MAX_ALIGN_BYTES and EIGEN_MAX_STATIC_ALIGN_BYTES macros. This changeset also removes EIGEN_ALIGN (replaced by EIGEN_MAX_ALIGN_BYTES>0), EIGEN_ALIGN_STATICALLY (replaced by EIGEN_MAX_STATIC_ALIGN_BYTES>0), EIGEN_USER_ALIGN*, EIGEN_ALIGN_DEFAULT (replaced by EIGEN_ALIGN_MAX). 2015-07-29 10:22:25 +02:00
sizeoverflow.cpp
smallvectors.cpp
sparse_basic.cpp bug #1238: fix SparseMatrix::sum() overload for un-compressed mode. 2016-05-31 10:56:53 +02:00
sparse_block.cpp Fix some conversion warnings in unit tests. 2016-05-26 17:42:12 +02:00
sparse_permutations.cpp Fix gcc 4.4 compilation issue 2015-10-30 08:44:37 +01:00
sparse_product.cpp Extend sparse*sparse product unit test to check that the expected implementation is used (conservative vs auto pruning). 2016-05-18 16:50:54 +02:00
sparse_ref.cpp Fix unit test. 2016-05-19 22:48:16 +02:00
sparse_solver.h bug #1092: fix iterative solver ctors for expressions as input 2015-10-26 16:16:24 +01:00
sparse_solvers.cpp
sparse_vector.cpp Enable and fix -Wdouble-conversion warnings 2016-05-05 13:35:45 +02:00
sparse.h Fix ForceNonZeroDiag for complexes 2015-08-04 16:12:16 +02:00
sparseLM.cpp
sparselu.cpp Switch to MPL2 2015-10-23 10:36:33 +02:00
sparseqr.cpp Enable and fix -Wdouble-conversion warnings 2016-05-05 13:35:45 +02:00
special_numbers.cpp
spqr_support.cpp
stable_norm.cpp Avoid overflow in unit test. 2016-01-30 22:26:17 +01:00
stddeque_overload.cpp Fix unit test: accessing elements in a deque by offsetting a pointer to another element causes undefined behavior. 2016-02-12 15:31:16 +01:00
stddeque.cpp
stdlist_overload.cpp bug #1164: fix list and deque specializations such that our aligned allocator is automatically activatived only when the user did not specified an allocator (or specified the default std::allocator). 2016-02-03 18:07:25 +01:00
stdlist.cpp
stdvector_overload.cpp Fix numerous pointer-to-integer conversion warnings in unit tests. 2016-05-26 17:41:28 +02:00
stdvector.cpp Fix numerous pointer-to-integer conversion warnings in unit tests. 2016-05-26 17:41:28 +02:00
superlu_support.cpp
svd_common.h Enable and fix -Wdouble-conversion warnings 2016-05-05 13:35:45 +02:00
svd_fill.h Enable and fix -Wdouble-conversion warnings 2016-05-05 13:35:45 +02:00
swap.cpp Fix corner case in unit test. 2016-04-13 22:18:02 +02:00
triangular.cpp Add support for SelfAdjointView::diagonal() 2016-05-19 13:05:33 +02:00
umeyama.cpp
umfpack_support.cpp
unalignedassert.cpp Fix numerous pointer-to-integer conversion warnings in unit tests. 2016-05-26 17:41:28 +02:00
unalignedcount.cpp
upperbidiagonalization.cpp
vectorization_logic.cpp bug #256: enable vectorization with unaligned loads/stores. 2016-05-24 21:54:03 +02:00
vectorwiseop.cpp Fix some conversion warnings in unit tests. 2016-05-26 17:42:12 +02:00
visitor.cpp Add regression unit test for prod.maxCoeff(i) 2015-11-18 23:29:07 +01:00
zerosized.cpp Extend unit test to stress smart_copy with empty input/output. 2016-02-19 22:59:28 +01:00