-
Notifications
You must be signed in to change notification settings - Fork 0
/
index.html
113 lines (94 loc) · 5.01 KB
/
index.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>CITNTL</title>
<link href="styles.css" rel="stylesheet" type="text/css">
<link href="images/favicon.ico" rel="shortcut icon" type="image/x-icon">
<style media="screen"></style>
</head>
<body style="left-margin:1000px;right-margin:500px;bottom-margin:100px;">
<div id="navbar">
<div></div>
<a href="about.html">About</a>
<a href="https://github.com/citneuro">Github</a>
<a href="contact.html">Contact</a>
</div>
<p>
Welcome to the California Institute of Technology Neurotech Lab website. Professor Daniel Wagenaar and students
have developed several general-use hardware and software tools over the years, and we believe the community would
benefit from have open-sourcing them in-depth tutorials. Topics range from visual neuroscience tools to barcode generation
and alignment for neuropixel + NIDAQ experimental rigs.
</p>
<h2><a href="https://github.com/citneuro/magnetsearch">magnetsearch</a></h2>
<p>We are undertaking an crowdsourced search for neurons that respond to magnetic fields; a neural correlate of "magnetosensation".
We are actively seeking collaborators to help us search! If you do ephys, calcium imaging, or another physiological recording technique,
we would love your help! We will send you the equipment, and you just do your experiments as usual. At the end of your recording session,
flip our device on, record for another minute or two, and send us the data!</p>
<p>To participate, please fill out our
<a href src="https://docs.google.com/forms/d/e/1FAIpQLSfntDIwzxcYllrXk804CxTl-9dhOhCQjkY-I_gg12nW6pa4HQ/viewform">Participation Form</a> and take a look at our
<a href src="https://github.com/citneuro/magnetsearch/raw/main/MagnetSearch.pdf">Collaboration Plan</a>. We look forward to hearing from you!</p>
<h2><a href="https://github.com/citneuro/stimbarcoduino">stimbarcoduino</a></h2>
<p>Code for sending unique barcodes to multiple data acquisition systems for later alignment. Barcodes always have exactly ten
high and ten low signals, and the duration of the signals, as well as the interval between them, can be easily adjusted.</p>
<p>Furthermore, it also allows for multiplexing stimulus identity signals into the barcode stream, specifically for optogenetics.</p>
<h2><a href="https://github.com/citneuro/ephysio">openephysio</a></h2>
<p>
Input/output utilities specially designed for aligning barcodes (see above) sent in parallel to a
neuropixel PXI chassis and to a NI-DAQ system, even when the sampling rates of these systems are not the same
(even by an order of magnitude).
</p>
<pre style="text-align: left;"><code>
# Create loader object
ldr = openEphysIO.Loader(path, cntlbarcodes=True)
# Convert event times
t_up = ldr.shifttime(times,
deststream="Neuropix-PXI-102.0",
sourcestream="NI-DAQmx-100.0",
sourcebarcode="A2")
</code></pre>
<p>
Additionally, ephysio includes a nifty spike browser! Written with pyQt, it is snappy, full-featured, and aesthetically pleasing.
We hope the community will benefit from this tool.
</p>
<img src="images/vizio_demo.gif" width="40%">
<h2><a href="https://github.com/citneuro/screenreader">screenreader</a></h2>
<p>
Design files and gerber files for printing a phototransistor circuit for fast encoding of high/low signals on a screen.
This device is particularly useful for precisely aligning visual presentations on a screen with physiological recordings (e.g.,
electrophysiological recordings)
</p>
<img src="images/screenreader_circuit.png" width="30%">
<h2><a href="https://github.com/citneuro/python-daw">python-daw</a></h2>
<p>
A series of python utilities, including a handy schmitt trigger for cleanly and efficiently thresholding often noisy signal data!
</p>
<pre style="text-align: left;">
<code>
# Thresholding a signal using the Schmitt trigger function.
up, down = schmitt(
np.array(signal_trace, dtype="float64"),
thr_on=12_000, thr_off=2_500, starttype=0, endtype=0
)
</code>
</pre>
<script>
// from: https://www.w3schools.com/howto/howto_js_navbar_sticky.asp
// When the user scrolls the page, execute myFunction
window.onscroll = function() {myFunction()};
// Get the navbar
var navbar = document.getElementById("navbar");
// Get the offset position of the navbar
var sticky = navbar.offsetTop;
// Add the sticky class to the navbar when you reach its scroll position. Remove "sticky" when you leave the scroll position
function myFunction() {
if (window.pageYOffset >= sticky) {
navbar.classList.add("sticky")
} else {
navbar.classList.remove("sticky");
}
}
</script>
</body>
</html>