Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Should a probe that moves during the same experiment be the same probe in the schema? #7

Open
h-mayorquin opened this issue Aug 8, 2024 · 0 comments

Comments

@h-mayorquin
Copy link
Contributor

h-mayorquin commented Aug 8, 2024

This came up during a discussion with @bendichter yesterday and also came up in our in person discussion in April 2024. I wanted to write it down here as an issue so when we can refer to it when writing the enhancement document.

Currently we are making a distinction between a Probe which should represent the physical object in a concrete experimental setup and the ProbeModel which is mean to be a generic represention of the device. In other words, the probe in the experimental setup vs the probe in the catalogue.

However, there might be situations where the following happens:

  • A probe insertion is made and recording is made at a certain depth.
  • Then the probe is moved deper and more recording data is collected.

This process might continue iteratively.

Here are some examples from the literature:

  • Ye, Zhiwen, et al. "Ultra-high density electrodes improve detection, yield, and cell type identification in neuronal recordings." bioRxiv (2023).
  • Kajikawa, Yoshinao, and Charles E. Schroeder. "How local is the local field potential?." Neuron 72.5 (2011): 847-858.

Plus the literature of micro and hyperdrives with tetrodes.

How do we handle this? do we consider the same probes at different depths different probes in the schema? Not doing so introduces some complications. This issues is to discuss and document those and the pros and cons of doing it or not.

In the previous schema this was possible at the cost of duplicating the ChannelsTable somehow

%%{init: {'theme': 'base', 'themeVariables': {'primaryColor': '#ffffff', "primaryBorderColor': '#144E73', 'lineColor': '#D96F32'}}}%%


classDiagram
    direction LR

    class ExtracellularSeriesFirstDepth {
        <<TimeSeries>>


    }

    class ExtracellularSeriesSecondDepth {
        <<TimeSeries>>


    }

    class ChannelsTable1 {
        <<DynamicTable>>

    }

    class ChannelsTable2 {
        <<DynamicTable>>

    }

    class ProbeInsertion1{
        <<Container>>

    }

    class ProbeInsertion2{
        <<Container>>

    }

    class Probe {
            <<Device>>


        }


    ExtracellularSeriesFirstDepth ..> ChannelsTable1 : 
    ExtracellularSeriesSecondDepth ..> ChannelsTable2 : 

    ChannelsTable1 ..> Probe : 
    ChannelsTable2 ..> Probe : 

    ChannelsTable1 ..> ProbeInsertion1 : 
    ChannelsTable2 ..> ProbeInsertion2 : 


Loading

In the latest version of the schema we made ProbeInsertion linked to Probe so this is no longer possible unless a probe can be linked to more than one insertion:

%%{init: {'theme': 'base', 'themeVariables': {'primaryColor': '#ffffff', "primaryBorderColor': '#144E73', 'lineColor': '#D96F32'}}}%%


classDiagram
    direction LR

    class ExtracellularSeriesFirstDepth {
        <<TimeSeries>>


    }

    class ExtracellularSeriesSecondDepth {
        <<TimeSeries>>


    }

    class ChannelsTable1 {
        <<DynamicTable>>

    }

    class ChannelsTable2 {
        <<DynamicTable>>

    }

    class ProbeInsertion1{
        <<Container>>

    }

    class ProbeInsertion2{
        <<Container>>

    }

    class ProbeFirstDepth {
            <<Device>>


        }

    class ProbeSecondDepth {
            <<Device>>


        }


    ExtracellularSeriesFirstDepth ..> ChannelsTable1 : 
    ExtracellularSeriesSecondDepth ..> ChannelsTable2 : 

    ChannelsTable1 ..> ProbeFirstDepth : 
    ChannelsTable2 ..> ProbeSecondDepth : 

    ProbeFirstDepth ..> ProbeInsertion1 : 
    ProbeSecondDepth ..> ProbeInsertion2 : 

Loading

Note that in both cases the ChannelsTable is duplicated.

@h-mayorquin h-mayorquin changed the title Should a probe that moves during the same experiment be the same probe? Should a probe that moves during the same experiment be the same probe in the schema? Aug 8, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant