-
Notifications
You must be signed in to change notification settings - Fork 17
Description
Is your feature request related to a problem? Please describe.
There is a very large parameter space for rapidtide workflows. To improve transparency, it would be nice to generate citable reports. It's also great to be able to just copy the text over to your methods section, as is done with BIDS Apps like fMRIPrep (generally with a note like this about using it verbatim).
Describe the solution you'd like
Two options that have worked for me in the past are:
- Make a formattable paragraph in the workflow script, then format the paragraph with the argument values as necessary. I've done this in
NiMAREbut it's not very scalable since you're adding a lot of text and you have to know what the paragraph should look like for every version of the parameters. - Using
loggingto build reports based on individual functions that are called. We do this intedana, and I prefer this approach, but it requires solid modularization.- For certain steps that may be run several times, this can require a bit of effort to prevent duplicate sentences in the report, but it's definitely doable.
Describe alternatives you've considered
A more elegant solution is to leverage Nipype workflows like fMRIPrep does. Specifically, it uses a derived class called LiterateWorkflow that allows individual workflows to have "description" attributes that can be compiled and written to a file by a larger, wrapper workflow. However, short of breaking rapidtide up into individual mini-workflows and wrapping those in Nipype workflows, this isn't feasible here. (It's also hard to access parameters within these workflows, which makes writing specific descriptions harder.)
Additional context
None.