17#ifndef __stats_permtest_h__
18#define __stats_permtest_h__
36#define DEFAULT_NUMBER_PERMUTATIONS 5000
37#define DEFAULT_NUMBER_PERMUTATIONS_NONSTATIONARITY 5000
60 const std::shared_ptr<EnhancerBase>
enhancer,
79 std::shared_ptr<std::mutex>
mutex;
89 const std::shared_ptr<EnhancerBase>
enhancer,
120 const std::shared_ptr<EnhancerBase> enhancer,
129 const std::shared_ptr<EnhancerBase> enhancer,
139 const std::shared_ptr<EnhancerBase> enhancer,
142 const bool fwe_strong,
count_matrix_type enhanced_count
matrix_type enhanced_stats
count_matrix_type & global_enhanced_count
std::shared_ptr< EnhancerBase > enhancer
std::shared_ptr< Math::Stats::GLM::TestBase > stats_calculator
std::shared_ptr< std::mutex > mutex
matrix_type & global_enhanced_sum
count_matrix_type & global_uncorrected_pvalue_counter
std::shared_ptr< EnhancerBase > enhancer
count_matrix_type null_dist_contribution_counter
const matrix_type & empirical_enhanced_statistics
std::shared_ptr< std::mutex > mutex
const matrix_type & default_enhanced_statistics
count_matrix_type uncorrected_pvalue_counter
std::shared_ptr< Math::Stats::GLM::TestBase > stats_calculator
matrix_type enhanced_statistics
count_matrix_type & global_null_dist_contributions
MR::default_type value_type
Eigen::Array< value_type, Eigen::Dynamic, 1 > vector_type
Eigen::Matrix< value_type, Eigen::Dynamic, Eigen::Dynamic > matrix_type
void precompute_default_permutation(const std::shared_ptr< Math::Stats::GLM::TestBase > stats_calculator, const std::shared_ptr< EnhancerBase > enhancer, const matrix_type &empirical_enhanced_statistic, matrix_type &output_statistics, matrix_type &output_zstats, matrix_type &output_enhanced)
Math::Stats::matrix_type matrix_type
Math::Stats::vector_type vector_type
Eigen::Array< uint32_t, Eigen::Dynamic, Eigen::Dynamic > count_matrix_type
Math::Stats::value_type value_type
void precompute_empirical_stat(const std::shared_ptr< Math::Stats::GLM::TestBase > stats_calculator, const std::shared_ptr< EnhancerBase > enhancer, const default_type skew, matrix_type &empirical_statistic)
void run_permutations(const std::shared_ptr< Math::Stats::GLM::TestBase > stats_calculator, const std::shared_ptr< EnhancerBase > enhancer, const matrix_type &empirical_enhanced_statistic, const matrix_type &default_enhanced_statistics, const bool fwe_strong, matrix_type &perm_dist, count_matrix_type &perm_dist_contributions, matrix_type &uncorrected_pvalues)
double default_type
the default type used throughout MRtrix