You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: src/software/automation_pipeline_developer.md
+112-1Lines changed: 112 additions & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -21,6 +21,112 @@ To accomplish this we developed three tools:
21
21
22
22
## Ephys/Imaging Automation GUI
23
23
24
+
In this mini guide for the automation GUI we will show the relationship between the GUI and the Database. From which tables some values are taken and which records are written by the GUI.
+**u19_pipeline_ephys_element.#pre_cluster_method** List of methods (or algorithms) supported for ephys preprocessing
37
+
+**u19_pipeline_ephys_element.pre_cluster_param_set** Specific set of parameters (mainly a dictionary) for a given preprocessing method. Multiple set of parameters can be stored for the same method.
38
+
+**u19_pipeline_ephys_element.pre_cluster_param_steps** (Ephys) Reference to a set to steps to perform in ephys preprocessing
39
+
+**u19_pipeline_ephys_element.pre_cluster_param_steps__step** These records indicate which set of parameters for given preprocessing methods will be executed (and in which order).
<center><figcaption>Cluster tables record examples </figcaption></center>
64
+
</figure>
65
+
66
+
#### Main tables
67
+
+**u19_pipeline_ephys_element.#clustering_method** List of methods (or algorithms) supported for ephys processing
68
+
+**u19_pipeline_ephys_element.#clustering_param_set** Specific set of parameters (mainly a dictionary) for a given processing method. Multiple set of parameters can be stored for the same method.
69
+
70
+
+ Each recording (or to be precise, recording process) can be processed with a different set of parameters. Default parameters are used for the majority of the recordings in BRAINCoGS.
71
+
72
+
### Default parameters for preprocessing and processing
73
+
74
+
+ As seen in in Automation GUI main screen, **u19_recording.#modality** stores default parameters for each modality.
75
+
+ As a developer **manually update default parameters** for all modalities when needed by the project.
<center><figcaption>From which tables default parameters are taken </figcaption></center>
80
+
</figure>
81
+
82
+
+ In **u19_recording.#modality** table it is stored a reference for default parameters most commonly used for processing ephys & imaging.
83
+
+ Main table to store preprocessing parameters:
84
+
1.**u19_pipeline_ephys_element.pre_cluster_param_steps**: (Ephys) Reference to a set to steps to perform in ephys preprocessing
85
+
2.**Imaging, u19_pipeline_imaging_element.pre_process_param_steps**: (Imaging) Reference to a set to steps to perform in imaging preprocessing (No preprocessing in imaging for any user at the moment)
86
+
+ Main table to store processing parameters:
87
+
1.**Ephys, u19_pipeline_ephys_element.#clustering_param_set**: (Ephys) Reference to a set of parameters for chosen sorting algorithm.
88
+
2.**Imaging, u19_pipeline_imaging_element.#processing_param_set**: (Imaging) Reference to a set of parameters for chosen segmentation algorithm.
<center><figcaption>Tables written when new recording is registered </figcaption></center>
104
+
</figure>
105
+
106
+
+ When a new recording is created three tables are written:
107
+
1.**u19_recording.recording**: Main table for recordings. Recording_id is created will identify the recording through all the process
108
+
2.**u19_recording.recording__behavior_session**: Reference to which behavior session corresponds this recording.
109
+
3.**u19_recording.default_params**: Set of parameters chosen for this recording.
110
+
111
+
+ If there is no behavior session attached to recording:
112
+
***u19_recording.recording__recording_session**: Subject and datetime of recording is stored as reference in this table.
113
+
114
+
#### u19_recording.default_params design:
115
+
116
+
+ Default_params works as a "guide" to know which parameters where chosen for recording.
117
+
+ Explanation for all fields of this table:
118
+
1.**recording_id** Reference to which recording parameters are being selected
119
+
2.**fragment_number** Reference to which "fragment" (or job) the parameters apply to. (Check next session to know how recordings are split in fragments).
120
+
3.**default_same_preparams_all** If default_same_preparams_all = 1 (default case), same preprocessing parameters will be applied to all fragments of recording.
121
+
4.**preprocess_param_steps_id** Preprocessing parameter id chosen for this recording-fragment. Taken from u19_recording.#modality by default.
122
+
5.**default_same_params_all** If default_same_params_all = 1 (default case), same processing parameters will be applied to all fragments of recording.
123
+
6.**paramset_idx** Processing parameter id chosen for this recording-fragment. Taken from u19_recording.#modality by default.
124
+
125
+
+ In the default case (main screen Automation GUI) default_same_preparams_all=1 & default_same_params_all=1 so default parameters will be applied to all fragments of recording.
126
+
127
+
128
+
129
+
24
130
## Workflow management description
25
131
26
132
Workflow management code creates and coordinates of a set of tasks for all recordings that were registered with the GUI to make sure they are entirely processed.
@@ -108,6 +214,11 @@ The class that manages workflow at the recording level is (<a href="https://gith
108
214
109
215
### BrainCogsEphysSorters
110
216
217
+
218
+
111
219
#### Set up instructions for BrainCogsEphysSorters in cluster system
112
220
113
-
1.
221
+
222
+
### Set up new processing cluster
223
+
224
+
Instructions to set up a new computing cluster to process Ephys & Imaging
0 commit comments