pyAFQ 1.2__tar.gz → 1.3__tar.gz

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.
Files changed (389) hide show
  1. {pyAFQ-1.2 → pyAFQ-1.3}/.github/workflows/docbuild.yml +4 -2
  2. {pyAFQ-1.2 → pyAFQ-1.3}/.github/workflows/docker_pyafq.yml +3 -3
  3. {pyAFQ-1.2 → pyAFQ-1.3}/.github/workflows/docker_pyafq_cuda12.yml +1 -1
  4. {pyAFQ-1.2 → pyAFQ-1.3}/.github/workflows/nightly_anisotropic_test.yml +1 -1
  5. {pyAFQ-1.2 → pyAFQ-1.3}/.github/workflows/nightly_basic_test.yml +1 -1
  6. {pyAFQ-1.2 → pyAFQ-1.3}/.github/workflows/nightly_custom_test.yml +1 -1
  7. {pyAFQ-1.2 → pyAFQ-1.3}/.github/workflows/nightly_pft_test.yml +1 -1
  8. {pyAFQ-1.2 → pyAFQ-1.3}/.github/workflows/nightly_reco80_test.yml +1 -1
  9. {pyAFQ-1.2 → pyAFQ-1.3}/.github/workflows/nightly_reco_test.yml +1 -1
  10. {pyAFQ-1.2 → pyAFQ-1.3}/.github/workflows/nightly_test.yml +1 -1
  11. {pyAFQ-1.2 → pyAFQ-1.3}/.github/workflows/test.yml +1 -1
  12. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/_fixes.py +0 -79
  13. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/api/bundle_dict.py +430 -427
  14. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/api/group.py +4 -4
  15. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/api/participant.py +1 -2
  16. pyAFQ-1.3/AFQ/data/utils.py +42 -0
  17. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/definitions/image.py +49 -47
  18. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/definitions/mapping.py +4 -15
  19. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/definitions/utils.py +39 -9
  20. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/models/csd.py +13 -1
  21. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/segmentation.py +68 -78
  22. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tasks/data.py +48 -14
  23. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tasks/mapping.py +28 -25
  24. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tasks/segmentation.py +25 -21
  25. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tasks/tractography.py +19 -13
  26. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tasks/utils.py +1 -1
  27. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tasks/viz.py +2 -4
  28. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/test_api.py +76 -51
  29. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/test_bundle_dict.py +6 -12
  30. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/test_segmentation.py +32 -50
  31. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/test_tractography.py +16 -12
  32. pyAFQ-1.3/AFQ/tractography/gputractography.py +177 -0
  33. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tractography/tractography.py +27 -50
  34. pyAFQ-1.3/AFQ/tractography/utils.py +45 -0
  35. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/utils/bin.py +2 -2
  36. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/utils/conversion.py +6 -1
  37. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/utils/tests/test_conversions.py +2 -2
  38. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/version.py +2 -2
  39. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/viz/altair.py +19 -15
  40. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/viz/plotly_backend.py +11 -5
  41. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/viz/utils.py +103 -90
  42. {pyAFQ-1.2 → pyAFQ-1.3}/CHANGES.rst +33 -0
  43. {pyAFQ-1.2/pyAFQ.egg-info → pyAFQ-1.3}/PKG-INFO +9 -5
  44. {pyAFQ-1.2 → pyAFQ-1.3}/bin/pyAFQ +22 -0
  45. {pyAFQ-1.2 → pyAFQ-1.3}/docs/source/_progressbars.py +0 -2
  46. {pyAFQ-1.2 → pyAFQ-1.3}/docs/source/index.rst +1 -1
  47. {pyAFQ-1.2 → pyAFQ-1.3}/examples/howto_examples/cerebellar_peduncles.py +3 -63
  48. {pyAFQ-1.2 → pyAFQ-1.3}/examples/howto_examples/cloudknot_example.py +2 -2
  49. pyAFQ-1.2/examples/howto_examples/plot_accoustic_radiations.py → pyAFQ-1.3/examples/howto_examples/plot_acoustic_radiations.py +5 -5
  50. {pyAFQ-1.2 → pyAFQ-1.3}/examples/howto_examples/plot_afq_callosal.py +3 -2
  51. {pyAFQ-1.2 → pyAFQ-1.3}/examples/howto_examples/plot_afq_fwdti.py +2 -2
  52. {pyAFQ-1.2 → pyAFQ-1.3}/examples/howto_examples/plot_optic_radiations.py +6 -30
  53. pyAFQ-1.3/examples/howto_examples/plot_stages_of_tractometry.py +566 -0
  54. {pyAFQ-1.2 → pyAFQ-1.3}/examples/howto_examples/vof_example.py +4 -1
  55. {pyAFQ-1.2 → pyAFQ-1.3}/examples/tutorial_examples/plot_001_afq_api.py +17 -2
  56. {pyAFQ-1.2 → pyAFQ-1.3}/examples/tutorial_examples/plot_002_bids_layout.py +7 -2
  57. {pyAFQ-1.2 → pyAFQ-1.3}/examples/tutorial_examples/plot_003_viz.py +34 -4
  58. {pyAFQ-1.2 → pyAFQ-1.3}/gpu_docker/Dockerfile +3 -2
  59. pyAFQ-1.3/gpu_docker/cuda_build.sh +15 -0
  60. pyAFQ-1.3/gpu_docker/cuda_track_template.def +63 -0
  61. {pyAFQ-1.2 → pyAFQ-1.3/pyAFQ.egg-info}/PKG-INFO +9 -5
  62. {pyAFQ-1.2 → pyAFQ-1.3}/pyAFQ.egg-info/SOURCES.txt +5 -4
  63. {pyAFQ-1.2 → pyAFQ-1.3}/pyAFQ.egg-info/requires.txt +8 -4
  64. {pyAFQ-1.2 → pyAFQ-1.3}/pyafq_docker/Dockerfile +1 -0
  65. {pyAFQ-1.2 → pyAFQ-1.3}/setup.cfg +6 -3
  66. pyAFQ-1.2/AFQ/data/s3bids.py +0 -1264
  67. pyAFQ-1.2/AFQ/data/utils.py +0 -33
  68. pyAFQ-1.2/AFQ/tests/test_s3bids.py +0 -163
  69. pyAFQ-1.2/AFQ/tractography/gputractography.py +0 -121
  70. pyAFQ-1.2/pyafq_cli.json +0 -576
  71. {pyAFQ-1.2 → pyAFQ-1.3}/.github/CITATION.cff +0 -0
  72. {pyAFQ-1.2 → pyAFQ-1.3}/.github/CONTRIBUTING.md +0 -0
  73. {pyAFQ-1.2 → pyAFQ-1.3}/.github/workflows/publish-to-test-pypi.yml +0 -0
  74. {pyAFQ-1.2 → pyAFQ-1.3}/.gitignore +0 -0
  75. {pyAFQ-1.2 → pyAFQ-1.3}/.mailmap +0 -0
  76. {pyAFQ-1.2 → pyAFQ-1.3}/.maintenance/update_changes.sh +0 -0
  77. {pyAFQ-1.2 → pyAFQ-1.3}/.maintenance/update_zenodo.py +0 -0
  78. {pyAFQ-1.2 → pyAFQ-1.3}/.pep8speaks.yml +0 -0
  79. {pyAFQ-1.2 → pyAFQ-1.3}/.zenodo.json +0 -0
  80. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/__init__.py +0 -0
  81. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/afq_bids_entities.json +0 -0
  82. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/api/__init__.py +0 -0
  83. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/api/utils.py +0 -0
  84. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/data/__init__.py +0 -0
  85. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/data/fetch.py +0 -0
  86. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/definitions/__init__.py +0 -0
  87. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/models/QBallTP.py +0 -0
  88. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/models/__init__.py +0 -0
  89. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/models/dki.py +0 -0
  90. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/models/dti.py +0 -0
  91. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/models/fwdti.py +0 -0
  92. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/registration.py +0 -0
  93. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tasks/__init__.py +0 -0
  94. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tasks/decorators.py +0 -0
  95. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/__init__.py +0 -0
  96. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/MoriGroups_Test.mat +0 -0
  97. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/WholeBrainFG_test.mat +0 -0
  98. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/.datalad/.gitattributes +0 -0
  99. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/.datalad/config +0 -0
  100. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/.gitattributes +0 -0
  101. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/CHANGES +0 -0
  102. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/README +0 -0
  103. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/T1w.json +0 -0
  104. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/annex-uuid +0 -0
  105. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/dataset_description.json +0 -0
  106. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/derivatives/mriqc/aMRIQC.csv +0 -0
  107. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/derivatives/mriqc/anatomical_group.pdf +0 -0
  108. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/derivatives/mriqc/anatomical_sub-01.pdf +0 -0
  109. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/derivatives/mriqc/anatomical_sub-02.pdf +0 -0
  110. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/derivatives/mriqc/anatomical_sub-03.pdf +0 -0
  111. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/derivatives/mriqc/anatomical_sub-04.pdf +0 -0
  112. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/derivatives/mriqc/anatomical_sub-05.pdf +0 -0
  113. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/derivatives/mriqc/anatomical_sub-06.pdf +0 -0
  114. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/derivatives/mriqc/anatomical_sub-07.pdf +0 -0
  115. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/derivatives/mriqc/anatomical_sub-08.pdf +0 -0
  116. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/derivatives/mriqc/anatomical_sub-09.pdf +0 -0
  117. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/derivatives/mriqc/anatomical_sub-10.pdf +0 -0
  118. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/derivatives/mriqc/anatomical_sub-11.pdf +0 -0
  119. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/derivatives/mriqc/anatomical_sub-12.pdf +0 -0
  120. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/derivatives/mriqc/anatomical_sub-13.pdf +0 -0
  121. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/derivatives/mriqc/anatomical_sub-14.pdf +0 -0
  122. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/derivatives/mriqc/anatomical_sub-15.pdf +0 -0
  123. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/derivatives/mriqc/anatomical_sub-16.pdf +0 -0
  124. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/derivatives/mriqc/anatomical_sub-17.pdf +0 -0
  125. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/derivatives/mriqc/anatomical_sub-18.pdf +0 -0
  126. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/derivatives/mriqc/anatomical_sub-19.pdf +0 -0
  127. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/derivatives/mriqc/anatomical_sub-20.pdf +0 -0
  128. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/derivatives/mriqc/anatomical_sub-21.pdf +0 -0
  129. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/derivatives/mriqc/anatomical_sub-22.pdf +0 -0
  130. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/derivatives/mriqc/anatomical_sub-23.pdf +0 -0
  131. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/derivatives/mriqc/anatomical_sub-24.pdf +0 -0
  132. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/derivatives/mriqc/anatomical_sub-25.pdf +0 -0
  133. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/derivatives/mriqc/anatomical_sub-26.pdf +0 -0
  134. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/derivatives/mriqc/fMRIQC.csv +0 -0
  135. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/derivatives/mriqc/functional_group.pdf +0 -0
  136. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/derivatives/mriqc/functional_sub-01.pdf +0 -0
  137. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/derivatives/mriqc/functional_sub-02.pdf +0 -0
  138. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/derivatives/mriqc/functional_sub-03.pdf +0 -0
  139. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/derivatives/mriqc/functional_sub-04.pdf +0 -0
  140. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/derivatives/mriqc/functional_sub-05.pdf +0 -0
  141. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/derivatives/mriqc/functional_sub-06.pdf +0 -0
  142. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/derivatives/mriqc/functional_sub-07.pdf +0 -0
  143. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/derivatives/mriqc/functional_sub-08.pdf +0 -0
  144. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/derivatives/mriqc/functional_sub-09.pdf +0 -0
  145. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/derivatives/mriqc/functional_sub-10.pdf +0 -0
  146. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/derivatives/mriqc/functional_sub-11.pdf +0 -0
  147. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/derivatives/mriqc/functional_sub-12.pdf +0 -0
  148. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/derivatives/mriqc/functional_sub-13.pdf +0 -0
  149. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/derivatives/mriqc/functional_sub-14.pdf +0 -0
  150. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/derivatives/mriqc/functional_sub-15.pdf +0 -0
  151. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/derivatives/mriqc/functional_sub-16.pdf +0 -0
  152. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/derivatives/mriqc/functional_sub-17.pdf +0 -0
  153. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/derivatives/mriqc/functional_sub-18.pdf +0 -0
  154. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/derivatives/mriqc/functional_sub-19.pdf +0 -0
  155. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/derivatives/mriqc/functional_sub-20.pdf +0 -0
  156. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/derivatives/mriqc/functional_sub-21.pdf +0 -0
  157. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/derivatives/mriqc/functional_sub-22.pdf +0 -0
  158. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/derivatives/mriqc/functional_sub-23.pdf +0 -0
  159. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/derivatives/mriqc/functional_sub-24.pdf +0 -0
  160. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/derivatives/mriqc/functional_sub-25.pdf +0 -0
  161. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/derivatives/mriqc/functional_sub-26.pdf +0 -0
  162. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/participants.tsv +0 -0
  163. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/sub-01/anat/sub-01_T1w.nii.gz +0 -0
  164. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/sub-01/func/sub-01_task-flanker_run-1_bold.nii.gz +0 -0
  165. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/sub-01/func/sub-01_task-flanker_run-1_events.tsv +0 -0
  166. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/sub-01/func/sub-01_task-flanker_run-2_bold.nii.gz +0 -0
  167. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/sub-01/func/sub-01_task-flanker_run-2_events.tsv +0 -0
  168. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/sub-02/anat/sub-02_T1w.nii.gz +0 -0
  169. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/sub-02/func/sub-02_task-flanker_run-1_bold.nii.gz +0 -0
  170. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/sub-02/func/sub-02_task-flanker_run-1_events.tsv +0 -0
  171. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/sub-02/func/sub-02_task-flanker_run-2_bold.nii.gz +0 -0
  172. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/sub-02/func/sub-02_task-flanker_run-2_events.tsv +0 -0
  173. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/sub-03/anat/sub-03_T1w.nii.gz +0 -0
  174. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/sub-03/func/sub-03_task-flanker_run-1_bold.nii.gz +0 -0
  175. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/sub-03/func/sub-03_task-flanker_run-1_events.tsv +0 -0
  176. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/sub-03/func/sub-03_task-flanker_run-2_bold.nii.gz +0 -0
  177. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/sub-03/func/sub-03_task-flanker_run-2_events.tsv +0 -0
  178. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/sub-04/anat/sub-04_T1w.nii.gz +0 -0
  179. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/sub-04/func/sub-04_task-flanker_run-1_bold.nii.gz +0 -0
  180. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/sub-04/func/sub-04_task-flanker_run-1_events.tsv +0 -0
  181. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/sub-04/func/sub-04_task-flanker_run-2_bold.nii.gz +0 -0
  182. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/sub-04/func/sub-04_task-flanker_run-2_events.tsv +0 -0
  183. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/sub-05/anat/sub-05_T1w.nii.gz +0 -0
  184. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/sub-05/func/sub-05_task-flanker_run-1_bold.nii.gz +0 -0
  185. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/sub-05/func/sub-05_task-flanker_run-1_events.tsv +0 -0
  186. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/sub-05/func/sub-05_task-flanker_run-2_bold.nii.gz +0 -0
  187. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/sub-05/func/sub-05_task-flanker_run-2_events.tsv +0 -0
  188. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/sub-06/anat/sub-06_T1w.nii.gz +0 -0
  189. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/sub-06/func/sub-06_task-flanker_run-1_bold.nii.gz +0 -0
  190. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/sub-06/func/sub-06_task-flanker_run-1_events.tsv +0 -0
  191. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/sub-06/func/sub-06_task-flanker_run-2_bold.nii.gz +0 -0
  192. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/sub-06/func/sub-06_task-flanker_run-2_events.tsv +0 -0
  193. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/sub-07/anat/sub-07_T1w.nii.gz +0 -0
  194. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/sub-07/func/sub-07_task-flanker_run-1_bold.nii.gz +0 -0
  195. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/sub-07/func/sub-07_task-flanker_run-1_events.tsv +0 -0
  196. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/sub-07/func/sub-07_task-flanker_run-2_bold.nii.gz +0 -0
  197. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/sub-07/func/sub-07_task-flanker_run-2_events.tsv +0 -0
  198. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/sub-08/anat/sub-08_T1w.nii.gz +0 -0
  199. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/sub-08/func/sub-08_task-flanker_run-1_bold.nii.gz +0 -0
  200. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/sub-08/func/sub-08_task-flanker_run-1_events.tsv +0 -0
  201. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/sub-08/func/sub-08_task-flanker_run-2_bold.nii.gz +0 -0
  202. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/sub-08/func/sub-08_task-flanker_run-2_events.tsv +0 -0
  203. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/sub-09/anat/sub-09_T1w.nii.gz +0 -0
  204. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/sub-09/func/sub-09_task-flanker_run-1_bold.nii.gz +0 -0
  205. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/sub-09/func/sub-09_task-flanker_run-1_events.tsv +0 -0
  206. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/sub-09/func/sub-09_task-flanker_run-2_bold.nii.gz +0 -0
  207. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/sub-09/func/sub-09_task-flanker_run-2_events.tsv +0 -0
  208. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/sub-10/anat/sub-10_T1w.nii.gz +0 -0
  209. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/sub-10/func/sub-10_task-flanker_run-1_bold.nii.gz +0 -0
  210. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/sub-10/func/sub-10_task-flanker_run-1_events.tsv +0 -0
  211. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/sub-10/func/sub-10_task-flanker_run-2_bold.nii.gz +0 -0
  212. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/sub-10/func/sub-10_task-flanker_run-2_events.tsv +0 -0
  213. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/sub-11/anat/sub-11_T1w.nii.gz +0 -0
  214. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/sub-11/func/sub-11_task-flanker_run-1_bold.nii.gz +0 -0
  215. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/sub-11/func/sub-11_task-flanker_run-1_events.tsv +0 -0
  216. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/sub-11/func/sub-11_task-flanker_run-2_bold.nii.gz +0 -0
  217. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/sub-11/func/sub-11_task-flanker_run-2_events.tsv +0 -0
  218. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/sub-12/anat/sub-12_T1w.nii.gz +0 -0
  219. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/sub-12/func/sub-12_task-flanker_run-1_bold.nii.gz +0 -0
  220. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/sub-12/func/sub-12_task-flanker_run-1_events.tsv +0 -0
  221. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/sub-12/func/sub-12_task-flanker_run-2_bold.nii.gz +0 -0
  222. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/sub-12/func/sub-12_task-flanker_run-2_events.tsv +0 -0
  223. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/sub-13/anat/sub-13_T1w.nii.gz +0 -0
  224. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/sub-13/func/sub-13_task-flanker_run-1_bold.nii.gz +0 -0
  225. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/sub-13/func/sub-13_task-flanker_run-1_events.tsv +0 -0
  226. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/sub-13/func/sub-13_task-flanker_run-2_bold.nii.gz +0 -0
  227. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/sub-13/func/sub-13_task-flanker_run-2_events.tsv +0 -0
  228. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/sub-14/anat/sub-14_T1w.nii.gz +0 -0
  229. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/sub-14/func/sub-14_task-flanker_run-1_bold.nii.gz +0 -0
  230. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/sub-14/func/sub-14_task-flanker_run-1_events.tsv +0 -0
  231. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/sub-14/func/sub-14_task-flanker_run-2_bold.nii.gz +0 -0
  232. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/sub-14/func/sub-14_task-flanker_run-2_events.tsv +0 -0
  233. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/sub-15/anat/sub-15_T1w.nii.gz +0 -0
  234. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/sub-15/func/sub-15_task-flanker_run-1_bold.nii.gz +0 -0
  235. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/sub-15/func/sub-15_task-flanker_run-1_events.tsv +0 -0
  236. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/sub-15/func/sub-15_task-flanker_run-2_bold.nii.gz +0 -0
  237. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/sub-15/func/sub-15_task-flanker_run-2_events.tsv +0 -0
  238. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/sub-16/anat/sub-16_T1w.nii.gz +0 -0
  239. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/sub-16/func/sub-16_task-flanker_run-1_bold.nii.gz +0 -0
  240. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/sub-16/func/sub-16_task-flanker_run-1_events.tsv +0 -0
  241. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/sub-16/func/sub-16_task-flanker_run-2_bold.nii.gz +0 -0
  242. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/sub-16/func/sub-16_task-flanker_run-2_events.tsv +0 -0
  243. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/sub-17/anat/sub-17_T1w.nii.gz +0 -0
  244. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/sub-17/func/sub-17_task-flanker_run-1_bold.nii.gz +0 -0
  245. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/sub-17/func/sub-17_task-flanker_run-1_events.tsv +0 -0
  246. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/sub-17/func/sub-17_task-flanker_run-2_bold.nii.gz +0 -0
  247. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/sub-17/func/sub-17_task-flanker_run-2_events.tsv +0 -0
  248. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/sub-18/anat/sub-18_T1w.nii.gz +0 -0
  249. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/sub-18/func/sub-18_task-flanker_run-1_bold.nii.gz +0 -0
  250. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/sub-18/func/sub-18_task-flanker_run-1_events.tsv +0 -0
  251. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/sub-18/func/sub-18_task-flanker_run-2_bold.nii.gz +0 -0
  252. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/sub-18/func/sub-18_task-flanker_run-2_events.tsv +0 -0
  253. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/sub-19/anat/sub-19_T1w.nii.gz +0 -0
  254. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/sub-19/func/sub-19_task-flanker_run-1_bold.nii.gz +0 -0
  255. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/sub-19/func/sub-19_task-flanker_run-1_events.tsv +0 -0
  256. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/sub-19/func/sub-19_task-flanker_run-2_bold.nii.gz +0 -0
  257. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/sub-19/func/sub-19_task-flanker_run-2_events.tsv +0 -0
  258. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/sub-20/anat/sub-20_T1w.nii.gz +0 -0
  259. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/sub-20/func/sub-20_task-flanker_run-1_bold.nii.gz +0 -0
  260. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/sub-20/func/sub-20_task-flanker_run-1_events.tsv +0 -0
  261. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/sub-20/func/sub-20_task-flanker_run-2_bold.nii.gz +0 -0
  262. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/sub-20/func/sub-20_task-flanker_run-2_events.tsv +0 -0
  263. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/sub-21/anat/sub-21_T1w.nii.gz +0 -0
  264. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/sub-21/func/sub-21_task-flanker_run-1_bold.nii.gz +0 -0
  265. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/sub-21/func/sub-21_task-flanker_run-1_events.tsv +0 -0
  266. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/sub-21/func/sub-21_task-flanker_run-2_bold.nii.gz +0 -0
  267. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/sub-21/func/sub-21_task-flanker_run-2_events.tsv +0 -0
  268. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/sub-22/anat/sub-22_T1w.nii.gz +0 -0
  269. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/sub-22/func/sub-22_task-flanker_run-1_bold.nii.gz +0 -0
  270. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/sub-22/func/sub-22_task-flanker_run-1_events.tsv +0 -0
  271. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/sub-22/func/sub-22_task-flanker_run-2_bold.nii.gz +0 -0
  272. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/sub-22/func/sub-22_task-flanker_run-2_events.tsv +0 -0
  273. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/sub-23/anat/sub-23_T1w.nii.gz +0 -0
  274. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/sub-23/func/sub-23_task-flanker_run-1_bold.nii.gz +0 -0
  275. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/sub-23/func/sub-23_task-flanker_run-1_events.tsv +0 -0
  276. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/sub-23/func/sub-23_task-flanker_run-2_bold.nii.gz +0 -0
  277. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/sub-23/func/sub-23_task-flanker_run-2_events.tsv +0 -0
  278. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/sub-24/anat/sub-24_T1w.nii.gz +0 -0
  279. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/sub-24/func/sub-24_task-flanker_run-1_bold.nii.gz +0 -0
  280. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/sub-24/func/sub-24_task-flanker_run-1_events.tsv +0 -0
  281. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/sub-24/func/sub-24_task-flanker_run-2_bold.nii.gz +0 -0
  282. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/sub-24/func/sub-24_task-flanker_run-2_events.tsv +0 -0
  283. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/sub-25/anat/sub-25_T1w.nii.gz +0 -0
  284. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/sub-25/func/sub-25_task-flanker_run-1_bold.nii.gz +0 -0
  285. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/sub-25/func/sub-25_task-flanker_run-1_events.tsv +0 -0
  286. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/sub-25/func/sub-25_task-flanker_run-2_bold.nii.gz +0 -0
  287. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/sub-25/func/sub-25_task-flanker_run-2_events.tsv +0 -0
  288. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/sub-26/anat/sub-26_T1w.nii.gz +0 -0
  289. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/sub-26/func/sub-26_task-flanker_run-1_bold.nii.gz +0 -0
  290. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/sub-26/func/sub-26_task-flanker_run-1_events.tsv +0 -0
  291. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/sub-26/func/sub-26_task-flanker_run-2_bold.nii.gz +0 -0
  292. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/sub-26/func/sub-26_task-flanker_run-2_events.tsv +0 -0
  293. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/data/mocks3/ds000102-mimic/task-flanker_bold.json +0 -0
  294. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/test_csd.py +0 -0
  295. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/test_data.py +0 -0
  296. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/test_definitions.py +0 -0
  297. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/test_dki.py +0 -0
  298. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/test_dti.py +0 -0
  299. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/test_fixes.py +0 -0
  300. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/test_registration.py +0 -0
  301. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tests/test_viz.py +0 -0
  302. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/tractography/__init__.py +0 -0
  303. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/utils/__init__.py +0 -0
  304. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/utils/docs.py +0 -0
  305. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/utils/models.py +0 -0
  306. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/utils/path.py +0 -0
  307. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/utils/stats.py +0 -0
  308. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/utils/streamlines.py +0 -0
  309. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/utils/testing.py +0 -0
  310. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/utils/tests/__init__.py +0 -0
  311. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/utils/tests/test_path.py +0 -0
  312. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/utils/tests/test_stats.py +0 -0
  313. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/utils/tests/test_streamlines.py +0 -0
  314. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/utils/tests/test_volume.py +0 -0
  315. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/utils/volume.py +0 -0
  316. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/viz/__init__.py +0 -0
  317. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/viz/fury_backend.py +0 -0
  318. {pyAFQ-1.2 → pyAFQ-1.3}/AFQ/viz/plot.py +0 -0
  319. {pyAFQ-1.2 → pyAFQ-1.3}/CITATION +0 -0
  320. {pyAFQ-1.2 → pyAFQ-1.3}/LICENSE +0 -0
  321. {pyAFQ-1.2 → pyAFQ-1.3}/MANIFEST.in +0 -0
  322. {pyAFQ-1.2 → pyAFQ-1.3}/Makefile +0 -0
  323. {pyAFQ-1.2 → pyAFQ-1.3}/README.md +0 -0
  324. {pyAFQ-1.2 → pyAFQ-1.3}/docs/Makefile +0 -0
  325. {pyAFQ-1.2 → pyAFQ-1.3}/docs/source/_static/BDE_Banner_revised20160211-01.jpg +0 -0
  326. {pyAFQ-1.2 → pyAFQ-1.3}/docs/source/_static/custom.css +0 -0
  327. {pyAFQ-1.2 → pyAFQ-1.3}/docs/source/_static/eScience_Logo_HR.png +0 -0
  328. {pyAFQ-1.2 → pyAFQ-1.3}/docs/source/_static/escience-logo.png +0 -0
  329. {pyAFQ-1.2 → pyAFQ-1.3}/docs/source/_static/logo.png +0 -0
  330. {pyAFQ-1.2 → pyAFQ-1.3}/docs/source/_templates/layout.html +0 -0
  331. {pyAFQ-1.2 → pyAFQ-1.3}/docs/source/conf.py +0 -0
  332. {pyAFQ-1.2 → pyAFQ-1.3}/docs/source/explanations/_static/down_left_arrow.png +0 -0
  333. {pyAFQ-1.2 → pyAFQ-1.3}/docs/source/explanations/_static/down_right_arrow.png +0 -0
  334. {pyAFQ-1.2 → pyAFQ-1.3}/docs/source/explanations/_static/greencheck.png +0 -0
  335. {pyAFQ-1.2 → pyAFQ-1.3}/docs/source/explanations/_static/tract_modeling2.png +0 -0
  336. {pyAFQ-1.2 → pyAFQ-1.3}/docs/source/explanations/_static/tract_profiling.png +0 -0
  337. {pyAFQ-1.2 → pyAFQ-1.3}/docs/source/explanations/_static/tract_recognition.png +0 -0
  338. {pyAFQ-1.2 → pyAFQ-1.3}/docs/source/explanations/_static/tract_tractography.png +0 -0
  339. {pyAFQ-1.2 → pyAFQ-1.3}/docs/source/explanations/index.rst +0 -0
  340. {pyAFQ-1.2 → pyAFQ-1.3}/docs/source/explanations/modeling.rst +0 -0
  341. {pyAFQ-1.2 → pyAFQ-1.3}/docs/source/explanations/profiling.rst +0 -0
  342. {pyAFQ-1.2 → pyAFQ-1.3}/docs/source/explanations/recognition.rst +0 -0
  343. {pyAFQ-1.2 → pyAFQ-1.3}/docs/source/explanations/tractography.rst +0 -0
  344. {pyAFQ-1.2 → pyAFQ-1.3}/docs/source/explanations/tractometry_pipeline.rst +0 -0
  345. {pyAFQ-1.2 → pyAFQ-1.3}/docs/source/howto/cite.rst +0 -0
  346. {pyAFQ-1.2 → pyAFQ-1.3}/docs/source/howto/contributing.rst +0 -0
  347. {pyAFQ-1.2 → pyAFQ-1.3}/docs/source/howto/developing/definitions.rst +0 -0
  348. {pyAFQ-1.2 → pyAFQ-1.3}/docs/source/howto/developing/index.rst +0 -0
  349. {pyAFQ-1.2 → pyAFQ-1.3}/docs/source/howto/developing/releasing.rst +0 -0
  350. {pyAFQ-1.2 → pyAFQ-1.3}/docs/source/howto/developing/tasks.rst +0 -0
  351. {pyAFQ-1.2 → pyAFQ-1.3}/docs/source/howto/getting_help.rst +0 -0
  352. {pyAFQ-1.2 → pyAFQ-1.3}/docs/source/howto/index.rst +0 -0
  353. {pyAFQ-1.2 → pyAFQ-1.3}/docs/source/howto/installation_guide.rst +0 -0
  354. {pyAFQ-1.2 → pyAFQ-1.3}/docs/source/howto/usage/converter.rst +0 -0
  355. {pyAFQ-1.2 → pyAFQ-1.3}/docs/source/howto/usage/data.rst +0 -0
  356. {pyAFQ-1.2 → pyAFQ-1.3}/docs/source/howto/usage/docker.rst +0 -0
  357. {pyAFQ-1.2 → pyAFQ-1.3}/docs/source/howto/usage/image.rst +0 -0
  358. {pyAFQ-1.2 → pyAFQ-1.3}/docs/source/howto/usage/index.rst +0 -0
  359. {pyAFQ-1.2 → pyAFQ-1.3}/docs/source/howto/usage/kwargs.rst +0 -0
  360. {pyAFQ-1.2 → pyAFQ-1.3}/docs/source/howto/usage/methods.rst +0 -0
  361. {pyAFQ-1.2 → pyAFQ-1.3}/docs/source/howto/usage/scalars.rst +0 -0
  362. {pyAFQ-1.2 → pyAFQ-1.3}/docs/source/reference/bundledict.rst +0 -0
  363. {pyAFQ-1.2 → pyAFQ-1.3}/docs/source/reference/index.rst +0 -0
  364. {pyAFQ-1.2 → pyAFQ-1.3}/docs/source/reference/kwargs.rst +0 -0
  365. {pyAFQ-1.2 → pyAFQ-1.3}/docs/source/reference/mapping.rst +0 -0
  366. {pyAFQ-1.2 → pyAFQ-1.3}/docs/source/reference/methods.rst +0 -0
  367. {pyAFQ-1.2 → pyAFQ-1.3}/docs/source/reference/viz_backend.rst +0 -0
  368. {pyAFQ-1.2 → pyAFQ-1.3}/docs/source/sphinxext/kwargsdocs.py +0 -0
  369. {pyAFQ-1.2 → pyAFQ-1.3}/docs/source/sphinxext/methodsdocs.py +0 -0
  370. {pyAFQ-1.2 → pyAFQ-1.3}/docs/source/sphinxext/updatedocs.py +0 -0
  371. {pyAFQ-1.2 → pyAFQ-1.3}/docs/source/tutorials/index.rst +0 -0
  372. {pyAFQ-1.2 → pyAFQ-1.3}/docs/upload-gh-pages.sh +0 -0
  373. {pyAFQ-1.2 → pyAFQ-1.3}/examples/howto_examples/README.rst +0 -0
  374. {pyAFQ-1.2 → pyAFQ-1.3}/examples/howto_examples/add_custom_bundle.py +0 -0
  375. {pyAFQ-1.2 → pyAFQ-1.3}/examples/howto_examples/baby_afq.py +0 -0
  376. {pyAFQ-1.2 → pyAFQ-1.3}/examples/howto_examples/cloudknot_hcp_example.py +0 -0
  377. {pyAFQ-1.2 → pyAFQ-1.3}/examples/howto_examples/plot_recobundles.py +0 -0
  378. {pyAFQ-1.2 → pyAFQ-1.3}/examples/howto_examples/use_subject_space_rois_from_freesurfer.py +0 -0
  379. {pyAFQ-1.2 → pyAFQ-1.3}/examples/tutorial_examples/README.rst +0 -0
  380. {pyAFQ-1.2 → pyAFQ-1.3}/gpu_docker/docker-build.sh +0 -0
  381. {pyAFQ-1.2 → pyAFQ-1.3}/gpu_docker/docker-push.sh +0 -0
  382. {pyAFQ-1.2 → pyAFQ-1.3}/pyAFQ.egg-info/dependency_links.txt +0 -0
  383. {pyAFQ-1.2 → pyAFQ-1.3}/pyAFQ.egg-info/not-zip-safe +0 -0
  384. {pyAFQ-1.2 → pyAFQ-1.3}/pyAFQ.egg-info/top_level.txt +0 -0
  385. {pyAFQ-1.2 → pyAFQ-1.3}/pyafq_docker/docker-build.sh +0 -0
  386. {pyAFQ-1.2 → pyAFQ-1.3}/pyafq_docker/docker-push.sh +0 -0
  387. {pyAFQ-1.2 → pyAFQ-1.3}/pyproject.toml +0 -0
  388. {pyAFQ-1.2 → pyAFQ-1.3}/setup.py +0 -0
  389. {pyAFQ-1.2 → pyAFQ-1.3}/tox.ini +0 -0
@@ -8,7 +8,7 @@ jobs:
8
8
  strategy:
9
9
  max-parallel: 4
10
10
  matrix:
11
- python-version: [3.9, 3.8]
11
+ python-version: ["3.9", "3.10", "3.11"]
12
12
 
13
13
  steps:
14
14
  - name: Checkout repo
@@ -21,11 +21,13 @@ jobs:
21
21
  run: |
22
22
  python -m pip install --upgrade pip
23
23
  pip install .[all]
24
- conda install -c conda-forge xvfbwrapper
24
+ sudo apt-get install -y xvfb
25
25
  - name: Build docs
26
26
  env:
27
27
  XVFB: 1
28
+ DISPLAY: :99
28
29
  run: |
30
+ Xvfb :99 -screen 0 1280x1024x24 &
29
31
  cd docs
30
32
  make html
31
33
  - name: Upload docs
@@ -1,6 +1,6 @@
1
1
  name: Build and Push pyAFQ Docker Image
2
2
 
3
- on: [push, pull_request]
3
+ on: [push]
4
4
 
5
5
  jobs:
6
6
  build:
@@ -27,13 +27,13 @@ jobs:
27
27
 
28
28
  - name: Build pyAFQ GPU docker image
29
29
  run: sh ./gpu_docker/docker-build.sh \
30
- "${{github.sha}}" "nrdg" "11.0.3-devel" "11"
30
+ "${{github.sha}}" "nrdg" "11.4.3-devel-ubuntu20.04" "11"
31
31
 
32
32
  - name: Build a tagged GPU image
33
33
  if: startsWith(github.event.ref, 'refs/tags')
34
34
  run: |
35
35
  sh ./gpu_docker/docker-build.sh \
36
- "${GITHUB_REF:10}" "nrdg" "11.0.3-devel" "11"
36
+ "${GITHUB_REF:10}" "nrdg" "11.4.3-devel-ubuntu20.04" "11"
37
37
 
38
38
  - name: Login to GHCR
39
39
  if: github.ref == 'refs/heads/master' || startsWith(github.event.ref, 'refs/tags')
@@ -1,6 +1,6 @@
1
1
  name: Build and Push pyAFQ CUDA12 Image
2
2
 
3
- on: [push, pull_request]
3
+ on: [push]
4
4
 
5
5
  jobs:
6
6
  build:
@@ -11,7 +11,7 @@ jobs:
11
11
  strategy:
12
12
  max-parallel: 4
13
13
  matrix:
14
- python-version: [3.9, 3.8]
14
+ python-version: ["3.9", "3.10", "3.11"]
15
15
 
16
16
  steps:
17
17
  - name: Checkout repo
@@ -11,7 +11,7 @@ jobs:
11
11
  strategy:
12
12
  max-parallel: 4
13
13
  matrix:
14
- python-version: [3.9, 3.8]
14
+ python-version: ["3.9", "3.10", "3.11"]
15
15
 
16
16
  steps:
17
17
  - name: Checkout repo
@@ -11,7 +11,7 @@ jobs:
11
11
  strategy:
12
12
  max-parallel: 4
13
13
  matrix:
14
- python-version: [3.9, 3.8]
14
+ python-version: ["3.9", "3.10", "3.11"]
15
15
 
16
16
  steps:
17
17
  - name: Checkout repo
@@ -11,7 +11,7 @@ jobs:
11
11
  strategy:
12
12
  max-parallel: 4
13
13
  matrix:
14
- python-version: [3.9, 3.8]
14
+ python-version: ["3.9", "3.10", "3.11"]
15
15
 
16
16
  steps:
17
17
  - name: Checkout repo
@@ -11,7 +11,7 @@ jobs:
11
11
  strategy:
12
12
  max-parallel: 4
13
13
  matrix:
14
- python-version: [3.9, 3.8]
14
+ python-version: ["3.9", "3.10", "3.11"]
15
15
 
16
16
  steps:
17
17
  - name: Checkout repo
@@ -11,7 +11,7 @@ jobs:
11
11
  strategy:
12
12
  max-parallel: 4
13
13
  matrix:
14
- python-version: [3.9, 3.8]
14
+ python-version: ["3.9", "3.10", "3.11"]
15
15
 
16
16
  steps:
17
17
  - name: Checkout repo
@@ -11,7 +11,7 @@ jobs:
11
11
  strategy:
12
12
  max-parallel: 4
13
13
  matrix:
14
- python-version: [3.9, 3.8]
14
+ python-version: ["3.9", "3.10", "3.11"]
15
15
 
16
16
  steps:
17
17
  - name: Checkout repo
@@ -9,7 +9,7 @@ jobs:
9
9
  strategy:
10
10
  max-parallel: 4
11
11
  matrix:
12
- python-version: [3.9, 3.8]
12
+ python-version: ["3.9", "3.10", "3.11"]
13
13
  nibabel-pre: [true, false]
14
14
 
15
15
  steps:
@@ -3,11 +3,6 @@ import numpy as np
3
3
  from scipy.special import lpmv, gammaln
4
4
 
5
5
  from tqdm import tqdm
6
- from dipy.align import Bunch
7
- from dipy.tracking.local_tracking import (LocalTracking,
8
- ParticleFilteringTracking)
9
- from dipy.tracking.stopping_criterion import StreamlineStatus
10
- import random
11
6
 
12
7
  import math
13
8
 
@@ -43,80 +38,6 @@ def spherical_harmonics(m, n, theta, phi):
43
38
  return val
44
39
 
45
40
 
46
- TissueTypes = Bunch(OUTSIDEIMAGE=-1, INVALIDPOINT=0, TRACKPOINT=1, ENDPOINT=2)
47
-
48
-
49
- def _verbose_generate_tractogram(self):
50
- """A streamline generator"""
51
-
52
- # Get inverse transform (lin/offset) for seeds
53
- inv_A = np.linalg.inv(self.affine)
54
- lin = inv_A[:3, :3]
55
- offset = inv_A[:3, 3]
56
-
57
- F = np.empty((self.max_length + 1, 3), dtype=float)
58
- B = F.copy()
59
- for s in tqdm(self.seeds):
60
- s = np.dot(lin, s) + offset
61
- # Set the random seed in numpy and random
62
- if self.random_seed is not None:
63
- s_random_seed = hash(np.abs((np.sum(s)) + self.random_seed)) \
64
- % (2**32 - 1)
65
- random.seed(s_random_seed)
66
- np.random.seed(s_random_seed)
67
- directions = self.direction_getter.initial_direction(s)
68
- if directions.size == 0 and self.return_all:
69
- # only the seed position
70
- if self.save_seeds:
71
- yield [s], s
72
- else:
73
- yield [s]
74
- directions = directions[:self.max_cross]
75
- for first_step in directions:
76
- stepsF, stream_status = self._tracker(s, first_step, F)
77
- if not (self.return_all
78
- or stream_status == StreamlineStatus.ENDPOINT
79
- or stream_status == StreamlineStatus.OUTSIDEIMAGE):
80
- continue
81
- first_step = -first_step
82
- stepsB, stream_status = self._tracker(s, first_step, B)
83
- if not (self.return_all
84
- or stream_status == StreamlineStatus.ENDPOINT
85
- or stream_status == StreamlineStatus.OUTSIDEIMAGE):
86
- continue
87
- if stepsB == 1:
88
- streamline = F[:stepsF].copy()
89
- else:
90
- parts = (B[stepsB - 1:0:-1], F[:stepsF])
91
- streamline = np.concatenate(parts, axis=0)
92
-
93
- # move to the next streamline if only the seed position
94
- # and not return all
95
- len_sl = len(streamline)
96
- if len_sl >= self.min_length:
97
- if len_sl <= self.max_length:
98
- if self.save_seeds:
99
- yield streamline, s
100
- else:
101
- yield streamline
102
-
103
-
104
- class VerboseLocalTracking(LocalTracking):
105
- def __init__(self, *args, min_length=10, max_length=1000, **kwargs):
106
- super().__init__(*args, **kwargs)
107
- self.min_length = min_length
108
- self.max_length = max_length
109
- _generate_tractogram = _verbose_generate_tractogram
110
-
111
-
112
- class VerboseParticleFilteringTracking(ParticleFilteringTracking):
113
- def __init__(self, *args, min_length=10, max_length=1000, **kwargs):
114
- super().__init__(*args, **kwargs)
115
- self.min_length = min_length
116
- self.max_length = max_length
117
- _generate_tractogram = _verbose_generate_tractogram
118
-
119
-
120
41
  def in_place_norm(vec, axis=-1, keepdims=False, delvec=True):
121
42
  """ Return Vectors with Euclidean (L2) norm
122
43