Differences between revisions 4 and 5
Deletions are marked like this. Additions are marked like this.
Line 104: Line 104:

== Possible Replacements ==
 * VXL/VNL for SV Decomposition
 * ITK for some of the distribution functions?

GSL Replacement

GPL is bad and we're going to replace GSL.

Stub library located at: /usr/pubsw/packages/gsl/stub/include/

Files with GSL

  • randomfields.h
  • mri_cht2p.c
  • mri_diff.c -- seems to only include gsl
  • mri_glmfit.c -- seems to only include gsl
  • mri_mcsim.c -- seems to only include gsl
  • mri_stats2reg.c -- seems to only include gsl
  • optseq2.c
  • fmriutils.c
  • fsglm.c
  • matrix.c -- lots of matrix functionality that we can replace with vxl
  • randomfields.c
  • sig.c -- uses a gsl function if MGH_GSL is defined and it never is
  • volcluster.c

GSL Types and Functions Used

  • gsl_matrix
    • optseq2.c::AR1WhitenMatrix
    • matrix.c::MatrixToGSL
    • matrix.c::MatrixFromGSL
    • matrix.c::MatrixSVDPseudoInverse
  • gsl_matrix_alloc
    • matrix.c::MatrixToGSL
    • matrix.c::MatrixSVDPseudoInverse
  • gsl_matrix_calloc
    • optseq2.c::AR1WhitenMatrix
  • gsl_matrix_free
    • optseq2.c::AR1WhitenMatrix
    • matrix.c::MatrixSVDPseudoInverse
  • gsl_matrix_get
    • optseq2.c::AR1WhitenMatrix
    • matrix.c::MatrixFromGSL
  • gsl_matrix_set
    • optseq2.c::AR1WhitenMatrix
    • matrix.c::MatrixFromGSL
  • gsl_vector
    • matrix.c::MatrixSVDPseudoInverse
    • matrix.c::VectorFromGSL
  • gsl_vector_alloc
    • matrix.c::MatrixSVDPseudoInverse
  • gsl_vector_free
    • matrix.c::MatrixSVDPseudoInverse
  • gsl_vector_get
    • matrix.c::VectorFromGSL
  • gsl_vector_set -- not used
  • gsl_cdf_fdist_Q
    • fmriutils.c::fMRIsigF
    • fsglm.c::GLMtest
    • randomfields.c::RFstat2PVal
  • gsl_cdf_flat_Q
    • randomfields.c::RFstat2PVal
  • gsl_cdf_gaussian_Q
    • randomfields.c::RFstat2PVal
  • gsl_cdf_tdist_Q
    • randomfields.c::RFstat2PVal
    • sig.c::sigt -- only used if MGH_GSL is defined and it never is
  • gsl_cdf_chisq_Q
    • randomfields.c::RFstat2PVal
  • gsl_cdf_flat_Qinv
    • randomfields.c::RFp2StatVal
  • gsl_cdf_gaussian_Qinv
    • randomfields.c::RFp2StatVal
  • gsl_cdf_tdist_Qinv
    • randomfields.c::RFp2StatVal
  • gsl_cdf_chisq_Qinv
    • randomfields.c::RFp2StatVal
  • gsl_linalg_SV_decomp
    • matrix.c::MatrixSVDPseudoInverse
  • gsl_linalg_cholesky_decomp
    • optseq2.c::AR1WhitenMatrix
  • gsl_rng_type
    • randomfields.h::RANDOM_FIELD_SPEC, RFS
    • randomfields.h::RFspecInit
    • randomfields.c::RFspecInit
  • gsl_rng_ranlux389
    • randomfields.c::RFspecInit
  • gsl_rng
    • randomfields.h::RANDOM_FIELD_SPEC, RFS
  • gsl_rng_alloc
    • randomfields.c::RFspecInit
  • gsl_rng_free
    • randomfields.c::RFspecFree
  • gsl_rng_set
    • randomfields.c::RFspecSetSeed
  • gsl_ran_flat
    • randomfields.c::RFdrawVal
  • gsl_ran_gaussian
    • randomfields.c::RFdrawVal
  • gsl_ran_fdist
    • randomfields.c::RFdrawVal
  • gsl_ran_tdist
    • randomfields.c::RFdrawVal
  • gsl_ran_chisq
    • randomfields.c::RFdrawVal
  • gsl_ran_binomial_pdf
    • mri_cht2p.c::main
    • volcluster.c::CSDpvalClustSize

Possible Replacements

  • VXL/VNL for SV Decomposition
  • ITK for some of the distribution functions?