---
title: "C++ Functions"
---
## Standalone Functions
Documentation for standalone utility functions.
* [addDiagonals](addDiagonals.qmd)* [after_fork](after_fork.qmd)* [avoid_openmp_hang_within_fork](avoid_openmp_hang_within_fork.qmd)* [Bblock_matrix_mul_parallel](Bblock_matrix_mul_parallel.qmd)* [bdcrossproduct](bdcrossproduct.qmd)* [bdtcrossproduct](bdtcrossproduct.qmd)* [calc_freq](calc_freq.qmd)* [calculate_multiplication_blocks](calculate_multiplication_blocks.qmd)* [checkClose_file](checkClose_file.qmd)* [Cholesky_decomposition_hdf5](Cholesky_decomposition_hdf5.qmd)* [Cholesky_decomposition_intermediate_hdf5](Cholesky_decomposition_intermediate_hdf5.qmd)* [Cholesky_decomposition_outofcore_hdf5](Cholesky_decomposition_outofcore_hdf5.qmd)* [classify_matrix_type](classify_matrix_type.qmd)* [cleanup_temp_datasets](cleanup_temp_datasets.qmd)* [compute_pvalues_optimized](compute_pvalues_optimized.qmd)* [correlation_pvalue](correlation_pvalue.qmd)* [createHardLink](createHardLink.qmd)* [crossprod](crossprod.qmd)* [cumsum](cumsum.qmd)* [dgemm_](dgemm_.qmd)* [dgesdd_](dgesdd_.qmd)* [dgesv_](dgesv_.qmd)* [dgesvd_](dgesvd_.qmd)* [divideDiagonals](divideDiagonals.qmd)* [dscal_](dscal_.qmd)* [dsysv_](dsysv_.qmd)* [estimateOptimalBlockSize](estimateOptimalBlockSize.qmd)* [exists_HDF5_element](exists_HDF5_element.qmd)* [extractDiagonalToVector](extractDiagonalToVector.qmd)* [find_all](find_all.qmd)* [First_level_SvdBlock_decomposition_hdf5](First_level_SvdBlock_decomposition_hdf5.qmd)* [get_block_size](get_block_size.qmd)* [get_data_as_Matrix](get_data_as_Matrix.qmd)* [get_HDF5_mean_sd_by_column](get_HDF5_mean_sd_by_column.qmd)* [get_HDF5_mean_sd_by_row](get_HDF5_mean_sd_by_row.qmd)* [get_NewLineEnding](get_NewLineEnding.qmd)* [get_number_threads](get_number_threads.qmd)* [get_SplitData_in_vectorString](get_SplitData_in_vectorString.qmd)* [get_threads](get_threads.qmd)* [get_value_to_impute_discrete](get_value_to_impute_discrete.qmd)* [getAvailableMemoryMB](getAvailableMemoryMB.qmd)* [getBlockPositionsSizes_hdf5](getBlockPositionsSizes_hdf5.qmd)* [getBlockPositionsSizes_mat](getBlockPositionsSizes_mat.qmd)* [getBlockPositionsSizes](getBlockPositionsSizes.qmd)* [getDiagonalfromMatrix](getDiagonalfromMatrix.qmd)* [getDTthreads_R](getDTthreads_R.qmd)* [getDTthreads](getDTthreads.qmd)* [getGeneralSortRule](getGeneralSortRule.qmd)* [getInitialPosition](getInitialPosition.qmd)* [getIntEnv](getIntEnv.qmd)* [getMatrixBlockSize](getMatrixBlockSize.qmd)* [getMaxBlockSize](getMaxBlockSize.qmd)* [getObjecDataType](getObjecDataType.qmd)* [getObjectDims](getObjectDims.qmd)* [getOptimalBlockElements](getOptimalBlockElements.qmd)* [getOptimBlockSize](getOptimBlockSize.qmd)* [getSizetoRead](getSizetoRead.qmd)* [getSymmetricSortRule](getSymmetricSortRule.qmd)* [getVectorBlockSize](getVectorBlockSize.qmd)* [hdf5_matrixVector_calculus](hdf5_matrixVector_calculus.qmd)* [imax](imax.qmd)* [imin](imin.qmd)* [initDTthreads](initDTthreads.qmd)* [Inverse_Matrix_Cholesky_hdf5](Inverse_Matrix_Cholesky_hdf5.qmd)* [Inverse_Matrix_Cholesky_intermediate_hdf5](Inverse_Matrix_Cholesky_intermediate_hdf5.qmd)* [Inverse_Matrix_Cholesky_outofcore_hdf5](Inverse_Matrix_Cholesky_outofcore_hdf5.qmd)* [Inverse_of_Cholesky_decomposition_hdf5](Inverse_of_Cholesky_decomposition_hdf5.qmd)* [Inverse_of_Cholesky_decomposition_intermediate_hdf5](Inverse_of_Cholesky_decomposition_intermediate_hdf5.qmd)* [Inverse_of_Cholesky_decomposition_outofcore_hdf5](Inverse_of_Cholesky_decomposition_outofcore_hdf5.qmd)* [is_number](is_number.qmd)* [isDiagonalVector](isDiagonalVector.qmd)* [isMatrixSymmetric](isMatrixSymmetric.qmd)* [join_datasets](join_datasets.qmd)* [multiplication](multiplication.qmd)* [multiplicationSparse](multiplicationSparse.qmd)* [multiplyDiagonals](multiplyDiagonals.qmd)* [mygetenv](mygetenv.qmd)* [Next_level_SvdBlock_decomposition_hdf5](Next_level_SvdBlock_decomposition_hdf5.qmd)* [pathExists](pathExists.qmd)* [pearson_correlation](pearson_correlation.qmd)* [performMatrixDiagonalOperation](performMatrixDiagonalOperation.qmd)* [powerDiagonals](powerDiagonals.qmd)* [prepareForParallelization](prepareForParallelization.qmd)* [Rcpp_block_matrix_mul_parallel](Rcpp_block_matrix_mul_parallel.qmd)* [Rcpp_block_matrix_mul](Rcpp_block_matrix_mul.qmd)* [Rcpp_block_matrix_substract_hdf5](Rcpp_block_matrix_substract_hdf5.qmd)* [Rcpp_block_matrix_sum_hdf5](Rcpp_block_matrix_sum_hdf5.qmd)* [Rcpp_block_matrix_vector_substract_hdf5](Rcpp_block_matrix_vector_substract_hdf5.qmd)* [Rcpp_block_matrix_vector_substract](Rcpp_block_matrix_vector_substract.qmd)* [Rcpp_block_matrix_vector_sum_hdf5](Rcpp_block_matrix_vector_sum_hdf5.qmd)* [Rcpp_FileExist](Rcpp_FileExist.qmd)* [Rcpp_Import_File_to_hdf5](Rcpp_Import_File_to_hdf5.qmd)* [Rcpp_Impute_snps_hdf5](Rcpp_Impute_snps_hdf5.qmd)* [Rcpp_InvCholesky_hdf5](Rcpp_InvCholesky_hdf5.qmd)* [Rcpp_matrix_blockSubstract](Rcpp_matrix_blockSubstract.qmd)* [Rcpp_matrix_blockSum](Rcpp_matrix_blockSum.qmd)* [Rcpp_matrix_substract](Rcpp_matrix_substract.qmd)* [Rcpp_matrix_sum](Rcpp_matrix_sum.qmd)* [Rcpp_matrix_vect_mult](Rcpp_matrix_vect_mult.qmd)* [Rcpp_matrix_vect_substract](Rcpp_matrix_vect_substract.qmd)* [Rcpp_matrix_vect_sum](Rcpp_matrix_vect_sum.qmd)* [Rcpp_matrix_vector_blockMult](Rcpp_matrix_vector_blockMult.qmd)* [Rcpp_matrix_vector_blockSubstract](Rcpp_matrix_vector_blockSubstract.qmd)* [Rcpp_matrix_vector_blockSum](Rcpp_matrix_vector_blockSum.qmd)* [Rcpp_matrixVectorDivision_byCol](Rcpp_matrixVectorDivision_byCol.qmd)* [Rcpp_matrixVectorDivision_byRow](Rcpp_matrixVectorDivision_byRow.qmd)* [Rcpp_matrixVectorMultiplication_byCol](Rcpp_matrixVectorMultiplication_byCol.qmd)* [Rcpp_matrixVectorMultiplication_byRow](Rcpp_matrixVectorMultiplication_byRow.qmd)* [Rcpp_matrixVectorPow_byRow](Rcpp_matrixVectorPow_byRow.qmd)* [Rcpp_matrixVectorPower_byCol](Rcpp_matrixVectorPower_byCol.qmd)* [Rcpp_matrixVectorSubstract_byCol](Rcpp_matrixVectorSubstract_byCol.qmd)* [Rcpp_matrixVectorSubstract_byRow](Rcpp_matrixVectorSubstract_byRow.qmd)* [Rcpp_matrixVectorSum_byCol](Rcpp_matrixVectorSum_byCol.qmd)* [Rcpp_matrixVectorSum_byRow](Rcpp_matrixVectorSum_byRow.qmd)* [Rcpp_Remove_Low_Data_hdf5](Rcpp_Remove_Low_Data_hdf5.qmd)* [Rcpp_Remove_MAF_hdf5](Rcpp_Remove_MAF_hdf5.qmd)* [Rcpp_vector_add_hdf5](Rcpp_vector_add_hdf5.qmd)* [Rcpp_vector_divide_hdf5](Rcpp_vector_divide_hdf5.qmd)* [Rcpp_vector_mult](Rcpp_vector_mult.qmd)* [Rcpp_vector_multiply_hdf5](Rcpp_vector_multiply_hdf5.qmd)* [Rcpp_vector_power_hdf5](Rcpp_vector_power_hdf5.qmd)* [Rcpp_vector_substract](Rcpp_vector_substract.qmd)* [Rcpp_vector_subtract_hdf5](Rcpp_vector_subtract_hdf5.qmd)* [Rcpp_vector_sum](Rcpp_vector_sum.qmd)* [RcppApplyFunctionHdf5](RcppApplyFunctionHdf5.qmd)* [RcppbdCorr_hdf5_Block_cross](RcppbdCorr_hdf5_Block_cross.qmd)* [RcppbdCorr_hdf5_Block_single](RcppbdCorr_hdf5_Block_single.qmd)* [RcppbdCorr_hdf5_cross](RcppbdCorr_hdf5_cross.qmd)* [RcppbdCorr_hdf5_single](RcppbdCorr_hdf5_single.qmd)* [RcppbdCorr_matrix_cross](RcppbdCorr_matrix_cross.qmd)* [RcppbdCorr_matrix_single](RcppbdCorr_matrix_single.qmd)* [RcppbdEigen_hdf5_Block](RcppbdEigen_hdf5_Block.qmd)* [RcppbdEigen_hdf5](RcppbdEigen_hdf5.qmd)* [RcppbdEigen_spectra](RcppbdEigen_spectra.qmd)* [RcppbdSVD_hdf5_Block](RcppbdSVD_hdf5_Block.qmd)* [RcppbdSVD_hdf5](RcppbdSVD_hdf5.qmd)* [RcppbdSVD_lapack](RcppbdSVD_lapack.qmd)* [RcppbdSVD](RcppbdSVD.qmd)* [RcppBind_datasets_hdf5](RcppBind_datasets_hdf5.qmd)* [RcppGetPCAIndividualsHdf5](RcppGetPCAIndividualsHdf5.qmd)* [RcppGetPCAVariablesHdf5](RcppGetPCAVariablesHdf5.qmd)* [RcppNormalize_Data_R_hdf5](RcppNormalize_Data_R_hdf5.qmd)* [RcppNormalize_Data](RcppNormalize_Data.qmd)* [RcppNormalizeColwise](RcppNormalizeColwise.qmd)* [RcppNormalizeHdf5](RcppNormalizeHdf5.qmd)* [RcppNormalizeRowwise](RcppNormalizeRowwise.qmd)* [RcppPCAHdf5](RcppPCAHdf5.qmd)* [RcppPseudoinv](RcppPseudoinv.qmd)* [RcppPseudoinvHdf5](RcppPseudoinvHdf5.qmd)* [RcppQR](RcppQR.qmd)* [RcppQRHdf5](RcppQRHdf5.qmd)* [RcppReduce_dataset_hdf5](RcppReduce_dataset_hdf5.qmd)* [RcppRemove_hdf5_elements](RcppRemove_hdf5_elements.qmd)* [RcppSolve](RcppSolve.qmd)* [RcppSolveHdf5](RcppSolveHdf5.qmd)* [RcppSort_dataset_hdf5](RcppSort_dataset_hdf5.qmd)* [RcppSplit_matrix_hdf5_internal](RcppSplit_matrix_hdf5_internal.qmd)* [RcppSplit_matrix_hdf5](RcppSplit_matrix_hdf5.qmd)* [RcppTypifyNormalizeHdf5](RcppTypifyNormalizeHdf5.qmd)* [remove_elements](remove_elements.qmd)* [removeColumn](removeColumn.qmd)* [removeRow](removeRow.qmd)* [renameElement](renameElement.qmd)* [scalarOperation](scalarOperation.qmd)* [setDiagonalMatrix](setDiagonalMatrix.qmd)* [setLowerTriangularMatrix](setLowerTriangularMatrix.qmd)* [setUpperTriangularMatrix](setUpperTriangularMatrix.qmd)* [spearman_correlation](spearman_correlation.qmd)* [SplitElementName](SplitElementName.qmd)* [subtractDiagonals](subtractDiagonals.qmd)* [t_distribution_cdf](t_distribution_cdf.qmd)* [tcrossprod](tcrossprod.qmd)* [transpose](transpose.qmd)* [validateSpectraParams](validateSpectraParams.qmd)* [validateVector](validateVector.qmd)* [validateVectorDataset](validateVectorDataset.qmd)* [VectortoOrderedMap_SNP_counts](VectortoOrderedMap_SNP_counts.qmd)* [wdX_parallel](wdX_parallel.qmd)* [wdX](wdX.qmd)* [when_fork](when_fork.qmd)* [writeDiagonalFromVector](writeDiagonalFromVector.qmd)* [wX](wX.qmd)* [xtwx](xtwx.qmd)* [Xw](Xw.qmd)* [Xwd_parallel](Xwd_parallel.qmd)* [Xwd](Xwd.qmd)* [xwxt](xwxt.qmd)