├── .gitignore ├── Dockerfile ├── LICENSE ├── README.md ├── docker └── Dockerfile ├── img └── ironclust_logo.png ├── matlab ├── DataHash.m ├── HDF2Struct.m ├── IronClust manual.pdf ├── NPMK │ ├── @KTFigure │ │ ├── .svn │ │ │ ├── all-wcprops │ │ │ ├── entries │ │ │ └── text-base │ │ │ │ └── KTFigure.m.svn-base │ │ └── KTFigure.m │ ├── @KTFigureAxis │ │ ├── .svn │ │ │ ├── all-wcprops │ │ │ ├── entries │ │ │ └── text-base │ │ │ │ └── KTFigureAxis.m.svn-base │ │ └── KTFigureAxis.m │ ├── @KTNEVComments │ │ └── KTNEVComments.m │ ├── @KTNSPOnline │ │ ├── .svn │ │ │ ├── all-wcprops │ │ │ ├── entries │ │ │ └── text-base │ │ │ │ └── KTNSPOnline.m.svn-base │ │ └── KTNSPOnline.m │ ├── @KTUEAImpedanceFile │ │ ├── .svn │ │ │ ├── all-wcprops │ │ │ ├── entries │ │ │ └── text-base │ │ │ │ └── KTUEAImpedanceFile.m.svn-base │ │ └── KTUEAImpedanceFile.m │ ├── @KTUEAMapFile │ │ ├── .svn │ │ │ ├── all-wcprops │ │ │ ├── entries │ │ │ └── text-base │ │ │ │ └── KTUEAMapFile.m.svn-base │ │ └── KTUEAMapFile.m │ ├── Dependent Functions │ │ ├── .DS_Store │ │ ├── .svn │ │ │ ├── all-wcprops │ │ │ ├── entries │ │ │ └── text-base │ │ │ │ ├── getFile.m.svn-base │ │ │ │ ├── getFolder.m.svn-base │ │ │ │ ├── getSettingFileFullPath.m.svn-base │ │ │ │ ├── parseCommand.m.svn-base │ │ │ │ └── sortNEV.m.svn-base │ │ ├── bnsx.dat │ │ ├── getFile.ini │ │ ├── getFile.m │ │ ├── getFolder.m │ │ ├── getSettingFileFullPath.m │ │ ├── parseCCF.m │ │ ├── parseCommand.m │ │ ├── syncPatternDetectNEV.m │ │ ├── syncPatternDetectNSx.m │ │ └── syncPatternFinderNSx.m │ ├── LoadingEngines │ │ ├── .svn │ │ │ ├── all-wcprops │ │ │ └── entries │ │ ├── MClust │ │ │ ├── .DS_Store │ │ │ ├── .svn │ │ │ │ ├── all-wcprops │ │ │ │ ├── entries │ │ │ │ └── text-base │ │ │ │ │ └── BlackrockNEVLoadingEngine.m.svn-base │ │ │ └── BlackrockNEVLoadingEngine.m │ │ └── nsNEVLIbrary 3.05 │ │ │ ├── NevLIb-3-05 │ │ │ ├── Linux │ │ │ │ └── nsNEVLibrary.so │ │ │ ├── Windows │ │ │ │ ├── msvcp71.dll │ │ │ │ ├── msvcr71.dll │ │ │ │ ├── nsNEVLibrary.dll │ │ │ │ └── nsNEVLibrary64.dll │ │ │ └── ns │ │ │ │ ├── ns.c │ │ │ │ └── ns.h │ │ │ ├── Nex Setup.jpg │ │ │ └── OFS Setup.jpg │ ├── NEV Utilities │ │ ├── .DS_Store │ │ ├── findEventTimes.m │ │ ├── mergeNEV.m │ │ ├── openNEVTracking.m │ │ ├── saveNEV.m │ │ ├── saveNEVSpikes.m │ │ ├── saveNEVSubSpikes.m │ │ ├── sortNEV.m │ │ └── splitNEVResets.m │ ├── NPMKverChecker.m │ ├── NSx Utilities │ │ ├── .DS_Store │ │ ├── NSxPowerSpectrum.m │ │ ├── NSxToHL.m │ │ ├── calcTimeDelay.m │ │ ├── combineNSxNEV.m │ │ ├── findSpikes.m │ │ ├── matrixToNSx.m │ │ ├── mergeNSxNEV.m │ │ ├── mergeNSxNEVSeries.m │ │ ├── openNSxHL.m │ │ ├── plotAverageWaveforms.m │ │ ├── removeNSxData.m │ │ ├── rethresholdNSx.m │ │ ├── saveChNSx.m │ │ ├── saveNSx.m │ │ ├── separatePausedNSx.m │ │ ├── separatePausedNSx_old.m │ │ ├── splitNSx.m │ │ └── splitNSxPauses.m │ ├── NTrode Utilities │ │ ├── .DS_Store │ │ ├── ntrodeGroups.m │ │ ├── saveNEVTetrodes.m │ │ ├── splitNEVNTrode.m │ │ └── splitNSxNTrode.m │ ├── Other tools │ │ ├── .svn │ │ │ ├── all-wcprops │ │ │ ├── entries │ │ │ └── text-base │ │ │ │ ├── kshuffle.m.svn-base │ │ │ │ ├── offline2Struct.m.svn-base │ │ │ │ └── playSound.m.svn-base │ │ ├── edgeDetect.m │ │ ├── kshuffle.m │ │ ├── offline2Struct.m │ │ ├── periEventPlot.m │ │ └── playSound.m │ ├── Users Guide.pdf │ ├── Versions.txt │ ├── installNPMK.m │ ├── openCCF.m │ ├── openNEV.m │ ├── openNSx.m │ └── openNSxSync.m ├── accuracy_snr_drift.pdf ├── average_accuracy.txt ├── bar_error.m ├── calc_dist_ccg.m ├── calc_dist_drift.m ├── calc_dist_knn_clu.m ├── cellstr2file.m ├── change_log.txt ├── changelog.md ├── clu_wave_similarity_paged.m ├── clusterVerify.m ├── compile_mex_jisotonic5.m ├── convert_mda.m ├── convert_mda_ui.m ├── correlogram.m ├── cuda_delta_drift.ptx ├── cuda_delta_knn.cu ├── cuda_delta_knn.ptx ├── cuda_knn.cu ├── cuda_knn.ptx ├── cuda_knn_drift.ptx ├── cuda_knn_full.cu ├── cuda_knn_full.ptx ├── cuda_knn_ib.cu ├── cuda_knn_ib.ptx ├── cuda_knn_index.cu ├── cuda_knn_index.ptx ├── cuda_min_drift.ptx ├── dan_english.cfg ├── default.cfg ├── default.prm ├── default1.cfg ├── default2.prm ├── drift2_template.prm ├── drift_template.prm ├── f191016_accuracy_comparison_siprobe.eps ├── f191016_accuracy_comparison_siprobe.fig ├── f191016_accuracy_comparison_siprobe.png ├── f191016_accuracy_comparison_siprobe.svg ├── f191016_accuracy_comparison_tetrode.eps ├── f191016_accuracy_comparison_tetrode.fig ├── f191016_accuracy_comparison_tetrode.png ├── f191016_accuracy_comparison_tetrode.svg ├── f191016_runtime_comparison_channel.eps ├── f191016_runtime_comparison_channel.fig ├── f191016_runtime_comparison_channel.png ├── f191016_runtime_comparison_channel.svg ├── f191016_runtime_comparison_duration.eps ├── f191016_runtime_comparison_duration.fig ├── f191016_runtime_comparison_duration.png ├── f191016_runtime_comparison_duration.svg ├── f191104_burst_ksort2_vs_irc_snr8.fig ├── f191104_burst_ksort2_vs_irc_snr8.pdf ├── f191104_overlap_ksort2_vs_irc_snr4.fig ├── fastplot.m ├── fft_clean.m ├── fft_filter.m ├── fft_filter_transpose.m ├── figures │ ├── F200129_F1score_comparison.fig │ ├── F200129_goodunits_comparison.fig │ ├── F200129_scores_comparison.fig │ ├── F200203_count_f1_comparison.fig │ ├── F200203_f1_snr_comparison.fig │ ├── F200203_scores_comparison.fig │ ├── F200204_count_f1_compare.fig │ ├── F200204_f1_prmset_compare.fig │ ├── F200204_score_snr_compare.fig │ ├── F200204_scores_snr_compare.fig │ ├── accuracy_comparison_english.fig │ ├── comparison_irc2_ms4_ksort2.png │ ├── f191016_accuracy_comparison_siprobe.fig │ ├── f191016_accuracy_comparison_tetrode.fig │ ├── f191016_runtime_comparison_channel.fig │ ├── f191016_runtime_comparison_duration.fig │ ├── f191104_burst_ksort2_vs_irc_snr8.fig │ ├── f191104_overlap_ksort2_vs_irc_snr4.fig │ ├── scaling_diagram_irc2.fig │ └── untitled.fig ├── file2struct.m ├── filtfilt_chain.m ├── findjobj.m ├── fir1_octave.m ├── generate_eMouse_drift.m ├── get0.m ├── get_nan.m ├── img │ ├── benchmark_accuracy.png │ ├── benchmark_patch.png │ ├── benchmark_snr.png │ ├── benchmark_speed.png │ ├── doc │ │ ├── image001.png │ │ ├── image003.png │ │ ├── image005.png │ │ ├── image007.png │ │ ├── image009.png │ │ ├── image011.png │ │ ├── image013.png │ │ ├── image015.png │ │ ├── image017.png │ │ ├── image019.png │ │ ├── image021.png │ │ ├── image023.png │ │ ├── image025.png │ │ ├── image027.png │ │ ├── image029.png │ │ ├── image031.png │ │ ├── image033.png │ │ ├── image035.png │ │ ├── image037.png │ │ ├── image039.png │ │ ├── image041.png │ │ ├── image043.png │ │ ├── image045.png │ │ ├── image047.png │ │ ├── image049.png │ │ └── image051.png │ ├── event_group.png │ ├── fft_clean_operation.png │ ├── figure1_spikesorting.png │ ├── gui_background.png │ ├── manual_gui_menu.png │ ├── nneigh_min_detect.png │ ├── nsight1.png │ ├── nsight2.png │ ├── rho_delta_plot.png │ ├── trials │ │ ├── trials1.png │ │ ├── trials2.png │ │ ├── trials3.png │ │ ├── trials4.png │ │ ├── trials5.png │ │ ├── trials6.png │ │ ├── trials7.png │ │ └── trials8.png │ ├── ui_main.png │ ├── ui_manual1.png │ ├── ui_manual2.png │ ├── ui_manual3.png │ ├── ui_manual4.png │ ├── ui_manual5.png │ ├── ui_manual6.png │ ├── ui_manual7.png │ ├── ui_preview.png │ ├── ui_probe.png │ └── ui_psth.png ├── import_rhd.m ├── import_rhs.m ├── install.txt ├── irc.m ├── irc2.m ├── irc2.prmset ├── irc2_manual.m ├── irc2_scoreboard.m ├── irc2_traces.m ├── irc2klusters.m ├── irc2klusters_v2.m ├── irc2phy.m ├── irc_cuda_delta.cu ├── irc_cuda_delta.ptx ├── irc_cuda_delta_drift.cu ├── irc_cuda_delta_drift.ptx ├── irc_cuda_rho.cu ├── irc_cuda_rho.ptx ├── irc_cuda_rho_drift.cu ├── irc_cuda_rho_drift.ptx ├── irc_gui.m ├── irc_par.m ├── irc_scoreboard.m ├── ironclust.m ├── ironclust_1.prmset ├── isocut5.m ├── isosplit.m ├── jisotonic5.m ├── jrclust.m ├── jrclust_patch │ ├── export_jrclust.m │ ├── loadProbe.m │ ├── neCell2mat.m │ └── processArgs.m ├── jsonlab-1.5 │ ├── AUTHORS.txt │ ├── ChangeLog.txt │ ├── LICENSE_BSD.txt │ ├── README.txt │ ├── examples │ │ ├── demo_jsonlab_basic.m │ │ ├── demo_ubjson_basic.m │ │ ├── jsonlab_basictest.matlab │ │ ├── jsonlab_selftest.m │ │ ├── jsonlab_selftest.matlab │ │ └── jsonlab_speedtest.m │ ├── jsonopt.m │ ├── loadjson.m │ ├── loadubjson.m │ ├── mergestruct.m │ ├── savejson.m │ ├── saveubjson.m │ ├── struct2jdata.m │ └── varargin2struct.m ├── kampff-npx_template.prm ├── kilosort.m ├── kilosort │ ├── PCspikes.mat │ ├── PCspikes2.mat │ ├── initialize_waves0.m │ ├── mexMPmuFEAT.cu │ ├── mexMPregMU.cu │ ├── mexMPregMUcpu.m │ ├── mexWtW2.cu │ └── mexWtW2.exp ├── ksort2.txt ├── localize_moment.m ├── localize_monopole.m ├── localize_monopole_diff.m ├── maximalCliques.m ├── maximalCliques_cvi.m ├── mdaio │ ├── arrayify.m │ ├── pathify32.m │ ├── pathify64.m │ ├── readmda.m │ ├── readmda_block.m │ ├── readmdadims.m │ ├── writemda.m │ ├── writemda16i.m │ ├── writemda16ui.m │ ├── writemda32.m │ ├── writemda32ui.m │ └── writemda64.m ├── meta2struct.m ├── ml_ironclust_spec.m ├── ml_slopefilter_spec.m ├── mountainsort4.prmset ├── mouse_figure.m ├── mov_resize.m ├── multiplot.m ├── neuroshare │ ├── examples │ │ ├── RawFilterDemo.m │ │ ├── RippleNeuroshareDemo1.m │ │ ├── RippleNeuroshareDemo2.m │ │ ├── RipplePollDirectoryForNevRecordings.m │ │ ├── extract_all_data.m │ │ ├── get_ripple_entity.m │ │ ├── low_pass_resample.m │ │ ├── plot_analog.m │ │ ├── plot_isi_hist.m │ │ ├── plot_ripple_analog.m │ │ ├── plot_ripple_channel.m │ │ ├── plot_ripple_hist.m │ │ ├── plot_ripple_spikes.m │ │ ├── plot_spikes.m │ │ └── spike_hist.m │ ├── ns_CloseFile.m │ ├── ns_GetAnalogData.m │ ├── ns_GetAnalogDataBlock.m │ ├── ns_GetAnalogInfo.m │ ├── ns_GetEntityInfo.m │ ├── ns_GetEventData.m │ ├── ns_GetEventInfo.m │ ├── ns_GetFileInfo.m │ ├── ns_GetIndexByTime.m │ ├── ns_GetLastErrorMsg.m │ ├── ns_GetNeuralData.m │ ├── ns_GetNeuralInfo.m │ ├── ns_GetSegmentData.m │ ├── ns_GetSegmentInfo.m │ ├── ns_GetSegmentSourceInfo.m │ ├── ns_GetTimeByIndex.m │ └── ns_OpenFile.m ├── npy-matlab │ ├── .gitignore │ ├── .ipynb_checkpoints │ │ └── npy-checkpoint.ipynb │ ├── LICENSE │ ├── README.md │ ├── constructNPYheader.m │ ├── datToNPY.m │ ├── data │ │ ├── chelsea_float32.npy │ │ ├── chelsea_float64.npy │ │ ├── chelsea_int16.npy │ │ ├── chelsea_int32.npy │ │ ├── chelsea_int64.npy │ │ ├── chelsea_int8.npy │ │ ├── chelsea_uint16.npy │ │ ├── chelsea_uint32.npy │ │ ├── chelsea_uint64.npy │ │ ├── chelsea_uint8.npy │ │ ├── matlab_chelsea_float32.npy │ │ ├── matlab_chelsea_float64.npy │ │ ├── matlab_chelsea_int16.npy │ │ ├── matlab_chelsea_int32.npy │ │ ├── matlab_chelsea_int64.npy │ │ ├── matlab_chelsea_int8.npy │ │ ├── matlab_chelsea_uint16.npy │ │ ├── matlab_chelsea_uint32.npy │ │ ├── matlab_chelsea_uint64.npy │ │ ├── matlab_chelsea_uint8.npy │ │ ├── matlab_sine_float32.npy │ │ ├── matlab_sine_float64.npy │ │ ├── matlab_sine_int16.npy │ │ ├── matlab_sine_int32.npy │ │ ├── matlab_sine_int64.npy │ │ ├── matlab_sine_int8.npy │ │ ├── matlab_sine_uint16.npy │ │ ├── matlab_sine_uint32.npy │ │ ├── matlab_sine_uint64.npy │ │ ├── matlab_sine_uint8.npy │ │ ├── sine_float32.npy │ │ ├── sine_float64.npy │ │ ├── sine_int16.npy │ │ ├── sine_int32.npy │ │ ├── sine_int64.npy │ │ ├── sine_int8.npy │ │ ├── sine_uint16.npy │ │ ├── sine_uint32.npy │ │ ├── sine_uint64.npy │ │ ├── sine_uint8.npy │ │ └── test.npy │ ├── exampleMemmap.m │ ├── npy.ipynb │ ├── readNPY.m │ ├── readNPYheader.m │ ├── test_readNPY.m │ └── writeNPY.m ├── nuke.m ├── openNSx_jjj.m ├── p_ironclust.m ├── param1.prm ├── param2.prm ├── param3.prm ├── param4.prm ├── plotSpikeRaster.m ├── plot_raster.m ├── plot_sort.m ├── post_merge_drift.m ├── post_merge_knn.m ├── post_merge_knn1.m ├── post_merge_knnwav.m ├── prb │ ├── 5trode.prb │ ├── 6trode.prb │ ├── 7trode.prb │ ├── 8trode.prb │ ├── AYA6_day4.prb │ ├── Austin_2shank4x4.prb │ ├── Austin_5shank3x4.prb │ ├── IMEC_3A_4column.prb │ ├── IMEC_3A_4column_july.prb │ ├── IMEC_3A_4column_julyA.prb │ ├── IMEC_3B_1column.prb │ ├── IMEC_3B_1columnR.prb │ ├── IMEC_3B_1columnR_july.prb │ ├── IMEC_3B_1column_july.prb │ ├── IMEC_3B_2column.prb │ ├── IMEC_3B_2column_july.prb │ ├── IMEC_3C_2column.prb │ ├── IMEC_3C_2column_july.prb │ ├── IMEC_3D_2column.prb │ ├── IMEC_3D_2column_july.prb │ ├── IMEC_3E_2column_july.prb │ ├── a4x4nn.prb │ ├── aibs1080.prb │ ├── aibs1080_270.prb │ ├── austin.prb │ ├── austin_2shank.prb │ ├── boyden128.prb │ ├── boyden128.prm │ ├── boyden256.prb │ ├── boyden256A.prb │ ├── boyden256B.prb │ ├── boyden256C.prb │ ├── boyden256D.prb │ ├── boyden256_2A.prb │ ├── boyden256_2B.prb │ ├── boyden256_2C.prb │ ├── boyden256_2D.prb │ ├── boyden256_2E.prb │ ├── boyden256_2F.prb │ ├── boyden256_2G.prb │ ├── boyden256_2H.prb │ ├── boyden256_3C.prb │ ├── boyden256_3D.prb │ ├── boyden256_4A.prb │ ├── boyden256_4B.prb │ ├── boyden256_4C.prb │ ├── boyden256_4D.prb │ ├── boyden256_4G.prb │ ├── boyden4.prb │ ├── boyden64.prb │ ├── bruns64.prb │ ├── buz64.prb │ ├── catalin15.prb │ ├── catalin30.prb │ ├── cnt_edge_32.prb │ ├── ej49_geometry1.prb │ ├── emouse.prb │ ├── example.prb │ ├── flyprobe.prb │ ├── gaoz32.prb │ ├── h1_dudman.prb │ ├── hextrode.prb │ ├── hh1_dudman.prb │ ├── hh2_arseny.prb │ ├── hh2_chronic.prb │ ├── hh2_economo.prb │ ├── hh2_economo1.prb │ ├── hh2_economo2.prb │ ├── hide32.prb │ ├── hide32_new.prb │ ├── hide64.prb │ ├── hires_4x16.prb │ ├── imec1.prb │ ├── imec1_mark.prb │ ├── imec1_richp.prb │ ├── imec2.prb │ ├── imec2_12edge.prb │ ├── imec2_21edge.prb │ ├── imec2_23edge.prb │ ├── imec2_32edge.prb │ ├── imec2_all.prb │ ├── imec2_nerf.prb │ ├── imec2_ucl.prb │ ├── imec2_zshift.prb │ ├── imec2all.prb │ ├── imec2aux.prb │ ├── imec3.prb │ ├── imec3B2.prb │ ├── imec3_150.prb │ ├── imec3_160.prb │ ├── imec3_all.prb │ ├── imec3_hopkins.prb │ ├── imec3_marius.prb │ ├── imec3_opt1.prb │ ├── imec3_opt2.prb │ ├── imec3_opt3.prb │ ├── imec3_opt3_195_245.prb │ ├── imec3_opt4.prb │ ├── imec54_dylan.prb │ ├── imec54_dylan_64.prb │ ├── imec54_dylan_64_shank1.prb │ ├── imec54_dylan_64_shank2.prb │ ├── imec54_dylan_64_shank3.prb │ ├── imec54_dylan_64_shank4.prb │ ├── imec54_dylan_shank1.prb │ ├── imec54_dylan_shank2.prb │ ├── imec54_dylan_shank3.prb │ ├── imec54_dylan_shank4.prb │ ├── imec54_nlx.prb │ ├── imec54_nlx_shank1.prb │ ├── imec54_nlx_shank2.prb │ ├── imec54_nlx_shank3.prb │ ├── imec54_nlx_shank4.prb │ ├── imec54_tahl.prb │ ├── imec54_tahl_shank1.prb │ ├── imec54_tahl_shank2.prb │ ├── imec54_tahl_shank3.prb │ ├── imec54_tahl_shank4.prb │ ├── int128-1dbc.prb │ ├── int128-2dbc.prb │ ├── int128-3dbc.prb │ ├── int128-4dbc.prb │ ├── int128-5dbc.prb │ ├── int128-6dbc.prb │ ├── int128-7dbc.prb │ ├── int128-8-125dbc.prb │ ├── int128-8dbc.prb │ ├── int128-9dbc.prb │ ├── int64-10dbc.prb │ ├── int64-11dbc.prb │ ├── int64-1dbc.prb │ ├── int64-2dbc.prb │ ├── int64-3dbc.prb │ ├── int64-4dbc.prb │ ├── int64-5dbc.prb │ ├── int64-6dbc.prb │ ├── int64-7dbc.prb │ ├── int64-8dbc.prb │ ├── int64-9dbc.prb │ ├── invitro8.prb │ ├── invivo8.prb │ ├── kampff128.prb │ ├── kampff128A.prb │ ├── kampff128B.prb │ ├── kampff128C.prb │ ├── kampff128D.prb │ ├── kampff32.prb │ ├── kampff32A.prb │ ├── kampff32B.prb │ ├── kampff32_2A.prb │ ├── kampff32_2B.prb │ ├── kampff32_2C.prb │ ├── kampff64A.prb │ ├── kampff64B.prb │ ├── ledprobe.prb │ ├── ledprobe_buz.prb │ ├── mea252.prb │ ├── mea256.prb │ ├── mea256yger.prb │ ├── mea60.prb │ ├── mea_49.prb │ ├── mixedbank.prb │ ├── neuroDSM_r64.prb │ ├── neurogrid128.prb │ ├── neuronexus_4x16.prb │ ├── neuronexus_4x16_shank1.prb │ ├── neuropix3A_64c.prb │ ├── ntrode.prb │ ├── nxpoly2.prb │ ├── pedot54.prb │ ├── pedot54_64.prb │ ├── pedot54_64_shank1.prb │ ├── pedot54_64_shank2.prb │ ├── pedot54_64_shank3.prb │ ├── pedot54_64_shank4.prb │ ├── pedot54_shank1.prb │ ├── pedot54_shank2.prb │ ├── pedot54_shank3.prb │ ├── pedot54_shank4.prb │ ├── pen60.prb │ ├── poly2nn.prb │ ├── poly3nn.prb │ ├── qtrodenn.prb │ ├── rect64.prb │ ├── rhs32.prb │ ├── rhs32ito.prb │ ├── rhs32ito2.prb │ ├── sample.prb │ ├── sample_10_13.prb │ ├── sample_2shanks.prb │ ├── sample_msort.prb │ ├── sample_v1.prb │ ├── schoonover32.prb │ ├── silico120_1col_1.prb │ ├── silico120_1col_2.prb │ ├── silico120_1col_3.prb │ ├── silico120_1col_4.prb │ ├── silico120_2colA_1.prb │ ├── silico120_2colA_2.prb │ ├── silico120_2colA_3.prb │ ├── silico120_2colB_1.prb │ ├── silico120_2colB_2.prb │ ├── silico120_2colC_1.prb │ ├── silico120_3col_1.prb │ ├── silico120_3col_2.prb │ ├── silico120_4col2_1.prb │ ├── silico120_4col2_2.prb │ ├── silico120_4col_1.prb │ ├── silico_8x_120_2colA.prb │ ├── silico_8x_120_2colB.prb │ ├── silico_8x_120_3colA.prb │ ├── silico_8x_120_3colB.prb │ ├── silico_8x_120_4colA.prb │ ├── silico_8x_120_4colB.prb │ ├── silico_8x_120_4colC.prb │ ├── silico_8x_2colA.prb │ ├── silico_8x_2colB.prb │ ├── silico_8x_3colA.prb │ ├── silico_8x_3colB.prb │ ├── silico_8x_4col.prb │ ├── silico_8x_4colA.prb │ ├── silico_8x_4colB.prb │ ├── silico_feb8_1colA.prb │ ├── silico_feb8_1colB.prb │ ├── silico_feb8_1colC.prb │ ├── silico_feb8_1colD.prb │ ├── silico_feb8_2colA16_1.prb │ ├── silico_feb8_2colA16_2.prb │ ├── silico_feb8_2colA16_3.prb │ ├── silico_feb8_2colA16_4.prb │ ├── silico_feb8_2colA_1.prb │ ├── silico_feb8_2colA_2.prb │ ├── silico_feb8_2colA_3.prb │ ├── silico_feb8_2colA_4.prb │ ├── silico_feb8_2colA_60.prb │ ├── silico_feb8_2colB16_1.prb │ ├── silico_feb8_2colB16_2.prb │ ├── silico_feb8_2colB16_3.prb │ ├── silico_feb8_2colB16_4.prb │ ├── silico_feb8_2colB_1.prb │ ├── silico_feb8_2colB_2.prb │ ├── silico_feb8_2colB_3.prb │ ├── silico_feb8_2colB_4.prb │ ├── silico_feb8_2colB_60.prb │ ├── silico_feb8_2colC16_1.prb │ ├── silico_feb8_2colC16_2.prb │ ├── silico_feb8_2colC16_3.prb │ ├── silico_feb8_2colC16_4.prb │ ├── silico_feb8_3colA_90.prb │ ├── silico_feb8_3colB_90.prb │ ├── silico_feb8_4col.prb │ ├── silico_feb8_4colA_1.prb │ ├── silico_feb8_4colA_2.prb │ ├── silico_feb8_4colA_3.prb │ ├── silico_feb8_4colA_4.prb │ ├── silico_feb8_4colA_60.prb │ ├── silico_feb8_4colB.prb │ ├── silico_feb8_4colB_1.prb │ ├── silico_feb8_4colB_2.prb │ ├── silico_feb8_4colB_3.prb │ ├── silico_feb8_4colB_4.prb │ ├── silico_feb8_4colB_60.prb │ ├── silico_feb8_4col_120.prb │ ├── silico_jul_2colA.prb │ ├── silico_jul_2colA16.prb │ ├── silico_jul_2colB.prb │ ├── silico_jul_2colB16.prb │ ├── silico_jul_2colC16.prb │ ├── silico_jul_4colA.prb │ ├── silico_jul_4colB.prb │ ├── silico_oct18_2colA.prb │ ├── silico_oct18_2colA16.prb │ ├── silico_oct18_2colB.prb │ ├── silico_oct18_2colB16.prb │ ├── silico_oct18_2colC16.prb │ ├── silico_oct18_4colA.prb │ ├── silico_oct18_4colB.prb │ ├── swt1_imec.prb │ ├── swt1_pedot.prb │ ├── swt2_aleks.prb │ ├── tetrode.prb │ ├── tetrodes.prb │ ├── tritrode.prb │ ├── unitrode.prb │ ├── yingxue.prb │ ├── yuri64.prb │ └── zengcai.prb ├── prb_json │ ├── int128-1dbc.json │ ├── int128-2dbc.json │ ├── int128-3dbc.json │ ├── int128-4dbc.json │ ├── int128-5dbc.json │ ├── int128-6dbc.json │ ├── int128-7dbc.json │ ├── int128-8-125dbc.json │ ├── int128-8dbc.json │ ├── int128-9dbc.json │ ├── int64-10dbc.json │ ├── int64-11dbc.json │ ├── int64-1dbc.json │ ├── int64-2dbc.json │ ├── int64-3dbc.json │ ├── int64-4dbc.json │ ├── int64-5dbc.json │ ├── int64-6dbc.json │ ├── int64-7dbc.json │ ├── int64-8dbc.json │ ├── int64-9dbc.json │ └── sample.json ├── ranksort.m ├── real_template.prm ├── rhs32_template.prm ├── rhs_template.prm ├── run_irc.m ├── run_ksort2.m ├── sample.meta ├── sample3.meta ├── sample_list.txt ├── sample_sample_merge.prm ├── sbatch_bionet.m ├── sbatch_magland_synth.m ├── scripts │ ├── S190322_hybrid_drift.m │ ├── S190402_monopolefit.m │ ├── S190516_hybrid_static.m │ ├── S190529_params.m │ ├── S190530_fix_monotrode.m │ ├── S190530_fix_paired.m │ ├── S190622_irc_demo.m │ ├── S190622_irc_demo_2d.m │ ├── S190624_speed_gpu.m │ ├── S190702_drift_merge.m │ ├── S190718_burst_merge.m │ ├── S190911_memory_profile.m │ ├── S190919_parfeval.m │ ├── S190920_test_compress.m │ ├── S190921_memory_profile_irc2.m │ ├── S191011_english_batch.m │ ├── S191013_english_drift.m │ ├── S191014_english_uled.m │ ├── S191016_load_validation.m │ ├── S191016_spikeforest_plot.m │ ├── S191024_fread.m │ ├── S191029_compare_irc_ks2.m │ ├── S191118_spikeforest_plot.m │ ├── S191209_join_dat_english_uled.m │ ├── S191210_memory_profile_irc2.m │ ├── S191224_pctdemo.m │ ├── S200110_compare_firings_mda.m │ ├── S200131_copy_english.m │ ├── S200203_english_r01.m │ ├── S200304_emg_simm.m │ ├── S200324_longrecordings.m │ ├── S200403_spikeforest_plot.m │ ├── S200414_longrecordings_static.m │ └── test_parfor_fwrite.m ├── search_delta_drift.cu ├── search_delta_drift.ptx ├── search_min_drift.cu ├── search_min_drift.ptx ├── search_monopole.m ├── settings.scoreboard ├── settings2.scoreboard ├── sf_json2tbl_study.m ├── show_drift_view.m ├── spatial_whiten.m ├── spykingcircus.prmset ├── static_diff_template.prm ├── static_template.prm ├── struct_compare.m ├── tbl_acc_prc_rcl0.txt ├── test │ ├── 191014_runtime_comparison │ ├── 191025_runtime_comparison_v5.0.6 │ ├── 191029_ksort2_drift.txt │ ├── 191029_ksort2_static.txt │ ├── 191104_ksort2_vs_irc_overlap_burst.m │ ├── S191029_irc2_drift.txt │ ├── S191029_irc2_static.txt │ ├── S191104_ksort2_vs_irc_overlap_burst.m │ ├── hybrid_janelia_static_drift.txt │ ├── hybrid_janelia_static_drift_tetrode.txt │ └── spikeforest_2019-1015 │ │ ├── average_accuracy_2019-1015.csv │ │ ├── average_precision_2019-1015.csv │ │ ├── average_recall_2019-1015.csv │ │ ├── average_runtime_2019-1015.csv │ │ ├── count_accuracy_2019-1015.csv │ │ ├── median_accuracy_2019-1015.csv │ │ ├── median_precision_2019-1015.csv │ │ ├── median_recall_2019-1015.csv │ │ └── median_runtime_2019-1015.csv ├── test_irc.m ├── testfun.m ├── tetrode_template.prm ├── version.txt ├── vline0.m ├── writemda_fid.m └── xml2struct.m ├── ml_ironclust.mp ├── ml_slopefilter.mp ├── python ├── .vscode │ └── settings.json └── main.py ├── setup_conda.sh ├── spikeforest_analysis.ipynb └── test_ironclust.txt /.gitignore: -------------------------------------------------------------------------------- 1 | octave-workspace 2 | 3 | # Recording files 4 | *.mda 5 | *.bin 6 | *.irc 7 | *.csv 8 | 9 | # Matlab output files 10 | *.asv 11 | *.mat 12 | 13 | # Compiled matlab code 14 | matlab/run_irc.exe 15 | 16 | # User configuration files 17 | user.cfg 18 | user.prm 19 | -------------------------------------------------------------------------------- /Dockerfile: -------------------------------------------------------------------------------- 1 | FROM ubuntu:16.04 2 | 3 | MAINTAINER James Jun 4 | 5 | # Node JS 6 | RUN apt-get update && apt-get install -y nodejs nodejs-legacy 7 | 8 | # Octave (and transfig for fig2dev) 9 | RUN apt-get update && apt-get install -y octave 10 | # RUN apt-get update && apt-get install -y transfig 11 | 12 | ADD . /package 13 | 14 | # Build 15 | WORKDIR /package 16 | RUN ./ml_ironclust.mp spec > ml_ironclust.spec 17 | 18 | -------------------------------------------------------------------------------- /docker/Dockerfile: -------------------------------------------------------------------------------- 1 | FROM magland/mcr_docker_2018b 2 | RUN mkdir /irc_mcc 3 | WORKDIR /irc_mcc 4 | ADD run_irc /irc_mcc/run_irc 5 | RUN chmod a+x run_irc 6 | -------------------------------------------------------------------------------- /img/ironclust_logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/img/ironclust_logo.png -------------------------------------------------------------------------------- /matlab/IronClust manual.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/IronClust manual.pdf -------------------------------------------------------------------------------- /matlab/NPMK/@KTFigure/.svn/all-wcprops: -------------------------------------------------------------------------------- 1 | K 25 2 | svn:wc:ra_dav:version-url 3 | V 35 4 | /svnroot/npmk/!svn/ver/15/@KTFigure 5 | END 6 | KTFigure.m 7 | K 25 8 | svn:wc:ra_dav:version-url 9 | V 46 10 | /svnroot/npmk/!svn/ver/15/@KTFigure/KTFigure.m 11 | END 12 | -------------------------------------------------------------------------------- /matlab/NPMK/@KTFigure/.svn/entries: -------------------------------------------------------------------------------- 1 | 10 2 | 3 | dir 4 | 42 5 | https://kianabc@npmk.svn.sourceforge.net/svnroot/npmk/@KTFigure 6 | https://kianabc@npmk.svn.sourceforge.net/svnroot/npmk 7 | 8 | 9 | 10 | 2010-12-23T18:16:55.094307Z 11 | 15 12 | kianabc 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 393bbe0d-84b2-4775-9cca-1b2fa99bc5f5 28 | 29 | KTFigure.m 30 | file 31 | 32 | 33 | 34 | 35 | 2011-10-27T11:57:49.000000Z 36 | f9ab77035fb67ad3ef3e274b35fe0a36 37 | 2010-12-23T18:16:55.094307Z 38 | 15 39 | kianabc 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 1619 62 | 63 | -------------------------------------------------------------------------------- /matlab/NPMK/@KTFigureAxis/.svn/all-wcprops: -------------------------------------------------------------------------------- 1 | K 25 2 | svn:wc:ra_dav:version-url 3 | V 39 4 | /svnroot/npmk/!svn/ver/15/@KTFigureAxis 5 | END 6 | KTFigureAxis.m 7 | K 25 8 | svn:wc:ra_dav:version-url 9 | V 54 10 | /svnroot/npmk/!svn/ver/15/@KTFigureAxis/KTFigureAxis.m 11 | END 12 | -------------------------------------------------------------------------------- /matlab/NPMK/@KTFigureAxis/.svn/entries: -------------------------------------------------------------------------------- 1 | 10 2 | 3 | dir 4 | 42 5 | https://kianabc@npmk.svn.sourceforge.net/svnroot/npmk/@KTFigureAxis 6 | https://kianabc@npmk.svn.sourceforge.net/svnroot/npmk 7 | 8 | 9 | 10 | 2010-12-23T18:16:55.094307Z 11 | 15 12 | kianabc 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 393bbe0d-84b2-4775-9cca-1b2fa99bc5f5 28 | 29 | KTFigureAxis.m 30 | file 31 | 32 | 33 | 34 | 35 | 2011-10-27T11:57:49.000000Z 36 | c7d88344edd087dfcc8bf6d7c5571bfc 37 | 2010-12-23T18:16:55.094307Z 38 | 15 39 | kianabc 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 3052 62 | 63 | -------------------------------------------------------------------------------- /matlab/NPMK/@KTNSPOnline/.svn/all-wcprops: -------------------------------------------------------------------------------- 1 | K 25 2 | svn:wc:ra_dav:version-url 3 | V 38 4 | /svnroot/npmk/!svn/ver/47/@KTNSPOnline 5 | END 6 | KTNSPOnline.m 7 | K 25 8 | svn:wc:ra_dav:version-url 9 | V 52 10 | /svnroot/npmk/!svn/ver/51/@KTNSPOnline/KTNSPOnline.m 11 | END 12 | -------------------------------------------------------------------------------- /matlab/NPMK/@KTNSPOnline/.svn/entries: -------------------------------------------------------------------------------- 1 | 10 2 | 3 | dir 4 | 47 5 | https://kianabc@npmk.svn.sourceforge.net/svnroot/npmk/@KTNSPOnline 6 | https://kianabc@npmk.svn.sourceforge.net/svnroot/npmk 7 | 8 | 9 | 10 | 2012-03-27T23:38:47.453382Z 11 | 47 12 | kianabc 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 393bbe0d-84b2-4775-9cca-1b2fa99bc5f5 28 | 29 | KTNSPOnline.m 30 | file 31 | 51 32 | 33 | 34 | 35 | 2011-12-08T21:00:27.000000Z 36 | ddb9405dadccf2d4fceffc1b4abe26fa 37 | 2012-03-27T23:44:26.915984Z 38 | 51 39 | kianabc 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 19793 62 | 63 | -------------------------------------------------------------------------------- /matlab/NPMK/@KTUEAImpedanceFile/.svn/all-wcprops: -------------------------------------------------------------------------------- 1 | K 25 2 | svn:wc:ra_dav:version-url 3 | V 45 4 | /svnroot/npmk/!svn/ver/28/@KTUEAImpedanceFile 5 | END 6 | KTUEAImpedanceFile.m 7 | K 25 8 | svn:wc:ra_dav:version-url 9 | V 66 10 | /svnroot/npmk/!svn/ver/28/@KTUEAImpedanceFile/KTUEAImpedanceFile.m 11 | END 12 | -------------------------------------------------------------------------------- /matlab/NPMK/@KTUEAImpedanceFile/.svn/entries: -------------------------------------------------------------------------------- 1 | 10 2 | 3 | dir 4 | 42 5 | https://kianabc@npmk.svn.sourceforge.net/svnroot/npmk/@KTUEAImpedanceFile 6 | https://kianabc@npmk.svn.sourceforge.net/svnroot/npmk 7 | 8 | 9 | 10 | 2011-04-04T18:37:20.186713Z 11 | 28 12 | kianabc 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 393bbe0d-84b2-4775-9cca-1b2fa99bc5f5 28 | 29 | KTUEAImpedanceFile.m 30 | file 31 | 32 | 33 | 34 | 35 | 2011-10-27T11:57:48.000000Z 36 | 99041615af9e89a38cec95b0b8a61cb1 37 | 2011-04-04T18:37:20.186713Z 38 | 28 39 | kianabc 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 11510 62 | 63 | -------------------------------------------------------------------------------- /matlab/NPMK/@KTUEAMapFile/.svn/all-wcprops: -------------------------------------------------------------------------------- 1 | K 25 2 | svn:wc:ra_dav:version-url 3 | V 39 4 | /svnroot/npmk/!svn/ver/23/@KTUEAMapFile 5 | END 6 | KTUEAMapFile.m 7 | K 25 8 | svn:wc:ra_dav:version-url 9 | V 54 10 | /svnroot/npmk/!svn/ver/52/@KTUEAMapFile/KTUEAMapFile.m 11 | END 12 | -------------------------------------------------------------------------------- /matlab/NPMK/@KTUEAMapFile/.svn/entries: -------------------------------------------------------------------------------- 1 | 10 2 | 3 | dir 4 | 42 5 | https://kianabc@npmk.svn.sourceforge.net/svnroot/npmk/@KTUEAMapFile 6 | https://kianabc@npmk.svn.sourceforge.net/svnroot/npmk 7 | 8 | 9 | 10 | 2011-03-03T23:50:24.982281Z 11 | 23 12 | kianabc 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 393bbe0d-84b2-4775-9cca-1b2fa99bc5f5 28 | 29 | KTUEAMapFile.m 30 | file 31 | 52 32 | 33 | 34 | 35 | 2011-12-15T09:00:23.000000Z 36 | 16768f4f955aae2358290461af25039e 37 | 2012-03-27T23:48:00.007201Z 38 | 52 39 | kianabc 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 10770 62 | 63 | -------------------------------------------------------------------------------- /matlab/NPMK/Dependent Functions/.DS_Store: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/NPMK/Dependent Functions/.DS_Store -------------------------------------------------------------------------------- /matlab/NPMK/Dependent Functions/.svn/text-base/getSettingFileFullPath.m.svn-base: -------------------------------------------------------------------------------- 1 | function settingFileFullPath = getSettingFileFullPath(functionName) 2 | 3 | settingFileFullPath = which(functionName); 4 | 5 | if ~isempty(settingFileFullPath) 6 | settingFilePath = fileparts(settingFileFullPath); 7 | settingFileFullPath = [settingFilePath '\' functionName '.ini']; 8 | else 9 | disp('Function not valid.'); 10 | settingFileFullPath = []; 11 | end -------------------------------------------------------------------------------- /matlab/NPMK/Dependent Functions/bnsx.dat: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/NPMK/Dependent Functions/bnsx.dat -------------------------------------------------------------------------------- /matlab/NPMK/Dependent Functions/getFile.ini: -------------------------------------------------------------------------------- 1 | /Users/kianabc/Downloads/Dong Wong Bug/ -------------------------------------------------------------------------------- /matlab/NPMK/Dependent Functions/getSettingFileFullPath.m: -------------------------------------------------------------------------------- 1 | function settingFileFullPath = getSettingFileFullPath(functionName) 2 | 3 | settingFileFullPath = which(functionName); 4 | 5 | if ~isempty(settingFileFullPath) 6 | settingFilePath = fileparts(settingFileFullPath); 7 | if ismac 8 | settingFileFullPath = [settingFilePath '/' functionName '.ini']; 9 | else 10 | settingFileFullPath = [settingFilePath '\' functionName '.ini']; 11 | end 12 | else 13 | disp('Function not valid.'); 14 | settingFileFullPath = []; 15 | end -------------------------------------------------------------------------------- /matlab/NPMK/LoadingEngines/.svn/all-wcprops: -------------------------------------------------------------------------------- 1 | K 25 2 | svn:wc:ra_dav:version-url 3 | V 40 4 | /svnroot/npmk/!svn/ver/37/LoadingEngines 5 | END 6 | -------------------------------------------------------------------------------- /matlab/NPMK/LoadingEngines/.svn/entries: -------------------------------------------------------------------------------- 1 | 10 2 | 3 | dir 4 | 46 5 | https://kianabc@npmk.svn.sourceforge.net/svnroot/npmk/LoadingEngines 6 | https://kianabc@npmk.svn.sourceforge.net/svnroot/npmk 7 | 8 | 9 | 10 | 2011-06-28T04:44:42.888298Z 11 | 37 12 | kianabc 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 393bbe0d-84b2-4775-9cca-1b2fa99bc5f5 28 | 29 | MClust 30 | dir 31 | 32 | -------------------------------------------------------------------------------- /matlab/NPMK/LoadingEngines/MClust/.DS_Store: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/NPMK/LoadingEngines/MClust/.DS_Store -------------------------------------------------------------------------------- /matlab/NPMK/LoadingEngines/MClust/.svn/all-wcprops: -------------------------------------------------------------------------------- 1 | K 25 2 | svn:wc:ra_dav:version-url 3 | V 47 4 | /svnroot/npmk/!svn/ver/37/LoadingEngines/MClust 5 | END 6 | BlackrockNEVLoadingEngine.m 7 | K 25 8 | svn:wc:ra_dav:version-url 9 | V 75 10 | /svnroot/npmk/!svn/ver/62/LoadingEngines/MClust/BlackrockNEVLoadingEngine.m 11 | END 12 | -------------------------------------------------------------------------------- /matlab/NPMK/LoadingEngines/MClust/.svn/entries: -------------------------------------------------------------------------------- 1 | 10 2 | 3 | dir 4 | 46 5 | https://kianabc@npmk.svn.sourceforge.net/svnroot/npmk/LoadingEngines/MClust 6 | https://kianabc@npmk.svn.sourceforge.net/svnroot/npmk 7 | 8 | 9 | 10 | 2011-06-28T04:44:42.888298Z 11 | 37 12 | kianabc 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 393bbe0d-84b2-4775-9cca-1b2fa99bc5f5 28 | 29 | BlackrockNEVLoadingEngine.m 30 | file 31 | 62 32 | 33 | 34 | 35 | 2012-04-26T14:37:53.000000Z 36 | 5f2b26c0999a1957ab341537ce93717a 37 | 2012-04-26T14:38:23.485809Z 38 | 62 39 | kianabc 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 6331 62 | 63 | -------------------------------------------------------------------------------- /matlab/NPMK/LoadingEngines/nsNEVLIbrary 3.05/NevLIb-3-05/Linux/nsNEVLibrary.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/NPMK/LoadingEngines/nsNEVLIbrary 3.05/NevLIb-3-05/Linux/nsNEVLibrary.so -------------------------------------------------------------------------------- /matlab/NPMK/LoadingEngines/nsNEVLIbrary 3.05/NevLIb-3-05/Windows/msvcp71.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/NPMK/LoadingEngines/nsNEVLIbrary 3.05/NevLIb-3-05/Windows/msvcp71.dll -------------------------------------------------------------------------------- /matlab/NPMK/LoadingEngines/nsNEVLIbrary 3.05/NevLIb-3-05/Windows/msvcr71.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/NPMK/LoadingEngines/nsNEVLIbrary 3.05/NevLIb-3-05/Windows/msvcr71.dll -------------------------------------------------------------------------------- /matlab/NPMK/LoadingEngines/nsNEVLIbrary 3.05/NevLIb-3-05/Windows/nsNEVLibrary.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/NPMK/LoadingEngines/nsNEVLIbrary 3.05/NevLIb-3-05/Windows/nsNEVLibrary.dll -------------------------------------------------------------------------------- /matlab/NPMK/LoadingEngines/nsNEVLIbrary 3.05/NevLIb-3-05/Windows/nsNEVLibrary64.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/NPMK/LoadingEngines/nsNEVLIbrary 3.05/NevLIb-3-05/Windows/nsNEVLibrary64.dll -------------------------------------------------------------------------------- /matlab/NPMK/LoadingEngines/nsNEVLIbrary 3.05/Nex Setup.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/NPMK/LoadingEngines/nsNEVLIbrary 3.05/Nex Setup.jpg -------------------------------------------------------------------------------- /matlab/NPMK/LoadingEngines/nsNEVLIbrary 3.05/OFS Setup.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/NPMK/LoadingEngines/nsNEVLIbrary 3.05/OFS Setup.jpg -------------------------------------------------------------------------------- /matlab/NPMK/NEV Utilities/.DS_Store: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/NPMK/NEV Utilities/.DS_Store -------------------------------------------------------------------------------- /matlab/NPMK/NSx Utilities/.DS_Store: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/NPMK/NSx Utilities/.DS_Store -------------------------------------------------------------------------------- /matlab/NPMK/NSx Utilities/NSxPowerSpectrum.m: -------------------------------------------------------------------------------- 1 | function NSxPowerSpectrum(NSx, channelNumber, colorCode) 2 | 3 | if ~exist('colorCode', 'var') 4 | colorCode = 'b'; 5 | end 6 | 7 | x = double(NSx.Data(channelNumber,:)); 8 | 9 | rng default; 10 | Fs = 300; 11 | t = linspace(0,1,length(x)); 12 | 13 | N = length(x); 14 | xdft = fft(x); 15 | xdft = xdft(1:N/2+1); 16 | psdx = (1/(Fs*N)).*abs(xdft).^2; 17 | psdx(2:end-1) = 2*psdx(2:end-1); 18 | freq = 0:Fs/length(x):Fs/2; 19 | plot(freq,10*log10(psdx), colorCode); grid on; 20 | title('Periodogram Using FFT'); 21 | xlabel('Frequency (Hz)'); ylabel('Power/Frequency (dB/Hz)'); -------------------------------------------------------------------------------- /matlab/NPMK/NSx Utilities/matrixToNSx.m: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/NPMK/NSx Utilities/matrixToNSx.m -------------------------------------------------------------------------------- /matlab/NPMK/NSx Utilities/rethresholdNSx.m: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/NPMK/NSx Utilities/rethresholdNSx.m -------------------------------------------------------------------------------- /matlab/NPMK/NSx Utilities/separatePausedNSx.m: -------------------------------------------------------------------------------- 1 | function separatePausedNSx(varargin) 2 | 3 | % separatePausedNsx Obsoleted. Use splitNSxPauses instead. 4 | 5 | disp('This function is obsoleted.') 6 | disp('Use splitNSxPauses instead.'); 7 | 8 | splitNSxPauses; -------------------------------------------------------------------------------- /matlab/NPMK/NTrode Utilities/.DS_Store: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/NPMK/NTrode Utilities/.DS_Store -------------------------------------------------------------------------------- /matlab/NPMK/NTrode Utilities/ntrodeGroups.m: -------------------------------------------------------------------------------- 1 | function output = ntrodeGroups(ccf) 2 | 3 | % ntrodeGroups 4 | % 5 | % This script takes in a CCF file and displays the information on the 6 | % ntrode groups within the data file. 7 | % 8 | % ccf: Pass the CCF of interest. If no CCF is passed, the user will 9 | % be prompted to choose a CCF file. 10 | % DEFAULT: Will open Open File UI. 11 | % 12 | % Kian Torab 13 | % ktorab@blackrockmicro.com 14 | % Blackrock Microsystems 15 | % Version 1.1.0.0 16 | % 17 | 18 | 19 | 20 | if ~exist('ccf', 'var') 21 | ccf = openCCF; 22 | end 23 | 24 | for idx = 1:length(ccf.NTrodeInfo.NTrodeID) 25 | fprintf('NTrode group %d members: %s\n', idx, int2str(ccf.NTrodeInfo.NTrodeMembers{idx})); 26 | end 27 | 28 | output = ccf.NTrodeInfo.NTrodeMembers; 29 | -------------------------------------------------------------------------------- /matlab/NPMK/Other tools/.svn/all-wcprops: -------------------------------------------------------------------------------- 1 | K 25 2 | svn:wc:ra_dav:version-url 3 | V 39 4 | /svnroot/npmk/!svn/ver/29/Other%20tools 5 | END 6 | kshuffle.m 7 | K 25 8 | svn:wc:ra_dav:version-url 9 | V 50 10 | /svnroot/npmk/!svn/ver/16/Other%20tools/kshuffle.m 11 | END 12 | offline2Struct.m 13 | K 25 14 | svn:wc:ra_dav:version-url 15 | V 56 16 | /svnroot/npmk/!svn/ver/29/Other%20tools/offline2Struct.m 17 | END 18 | playSound.m 19 | K 25 20 | svn:wc:ra_dav:version-url 21 | V 51 22 | /svnroot/npmk/!svn/ver/16/Other%20tools/playSound.m 23 | END 24 | -------------------------------------------------------------------------------- /matlab/NPMK/Other tools/.svn/text-base/kshuffle.m.svn-base: -------------------------------------------------------------------------------- 1 | function shuffledArray = kshuffle(inputArray, DIM) 2 | 3 | % 4 | % shuffledArray = kshuffle(inputArray, DIM) 5 | % 6 | % Shuffles a matrix by row or column dimension. 7 | % 8 | % Kian Torab 9 | % kian.torab@utah.edu 10 | % Department of Bioengineering 11 | % University of Utah 12 | % Version 1.1.0 - March 4, 2010 13 | 14 | switch DIM 15 | case 'row' 16 | shuffledArray = inputArray(randperm(size(inputArray, 1)), :); 17 | case 'column' 18 | shuffledArray = inputArray(:, randperm(size(inputArray, 2))); 19 | otherwise 20 | disp('DIM is invalid. See HELP for more information.'); 21 | end -------------------------------------------------------------------------------- /matlab/NPMK/Other tools/.svn/text-base/offline2Struct.m.svn-base: -------------------------------------------------------------------------------- 1 | %% Converts offline sorter variables into a structure for easy MATLAB manipulation 2 | % 3 | % Kian Torab 4 | % ktorab@blackrockmicro.com 5 | % Blackrock Microsystems 6 | 7 | 8 | for i = 1:96 9 | ChannelName = ['Chan', num2str(i, '%03.0f')]; 10 | if exist(ChannelName, 'var') 11 | VariableName = eval(ChannelName); 12 | Channels.(['Chan', num2str(i, '%3.0f')]) = VariableName; 13 | end 14 | end 15 | 16 | clear Chan0*; -------------------------------------------------------------------------------- /matlab/NPMK/Other tools/kshuffle.m: -------------------------------------------------------------------------------- 1 | function shuffledArray = kshuffle(inputArray, DIM) 2 | 3 | % 4 | % shuffledArray = kshuffle(inputArray, DIM) 5 | % 6 | % Shuffles a matrix by row or column dimension. 7 | % 8 | % Kian Torab 9 | % kian.torab@utah.edu 10 | % Department of Bioengineering 11 | % University of Utah 12 | % Version 1.1.0 - March 4, 2010 13 | 14 | switch DIM 15 | case 'row' 16 | shuffledArray = inputArray(randperm(size(inputArray, 1)), :); 17 | case 'column' 18 | shuffledArray = inputArray(:, randperm(size(inputArray, 2))); 19 | otherwise 20 | disp('DIM is invalid. See HELP for more information.'); 21 | end -------------------------------------------------------------------------------- /matlab/NPMK/Other tools/offline2Struct.m: -------------------------------------------------------------------------------- 1 | %% Converts offline sorter variables into a structure for easy MATLAB manipulation 2 | % 3 | % Kian Torab 4 | % ktorab@blackrockmicro.com 5 | % Blackrock Microsystems 6 | 7 | 8 | for i = 1:96 9 | ChannelName = ['Chan', num2str(i, '%03.0f')]; 10 | if exist(ChannelName, 'var') 11 | VariableName = eval(ChannelName); 12 | Channels.(['Chan', num2str(i, '%3.0f')]) = VariableName; 13 | end 14 | end 15 | 16 | clear Chan0*; -------------------------------------------------------------------------------- /matlab/NPMK/Users Guide.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/NPMK/Users Guide.pdf -------------------------------------------------------------------------------- /matlab/accuracy_snr_drift.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/accuracy_snr_drift.pdf -------------------------------------------------------------------------------- /matlab/bar_error.m: -------------------------------------------------------------------------------- 1 | function [hbar, herr] = bar_error(mr, width) 2 | if nargin<2, width=0; end 3 | 4 | if size(mr,1)>1 5 | vrY = nanmean(mr); 6 | vrE = nanstd(mr); 7 | vrX = 1:size(mr,2); 8 | else 9 | vrY = mr; 10 | vrE = []; 11 | vrX = 1:numel(vrY); 12 | end 13 | if width==0 14 | hbar = bar(vrX, vrY, .5); 15 | else 16 | hbar = bar(vrX+width/2, vrY, width); 17 | end 18 | if ~isempty(vrE) 19 | hold on; 20 | herr = errorbar(vrX+width/2, vrY, zeros(size(vrY)), vrE); 21 | herr.LineStyle = 'none'; 22 | herr.Color = [0 0 0]; 23 | grid on; 24 | end 25 | axis([min(vrX)-.5, max(vrX)+.5, 0, max(vrY)]); 26 | end %func -------------------------------------------------------------------------------- /matlab/cellstr2file.m: -------------------------------------------------------------------------------- 1 | function cellstr2file(cs, vcFile) 2 | fid=fopen(vcFile,'w'); cellfun(@(x)fprintf(fid,'%s\n',x), cs); fclose(fid); 3 | end %func -------------------------------------------------------------------------------- /matlab/change_log.txt: -------------------------------------------------------------------------------- 1 | see changelog.md -------------------------------------------------------------------------------- /matlab/compile_mex_jisotonic5.m: -------------------------------------------------------------------------------- 1 | path0=fileparts(mfilename('fullpath')); %directory of this script 2 | mex([path0,'/jisotonic5_mex.cpp'],'-output',[path0,'/jisotonic5_mex']); 3 | -------------------------------------------------------------------------------- /matlab/f191016_accuracy_comparison_siprobe.fig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/f191016_accuracy_comparison_siprobe.fig -------------------------------------------------------------------------------- /matlab/f191016_accuracy_comparison_siprobe.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/f191016_accuracy_comparison_siprobe.png -------------------------------------------------------------------------------- /matlab/f191016_accuracy_comparison_tetrode.fig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/f191016_accuracy_comparison_tetrode.fig -------------------------------------------------------------------------------- /matlab/f191016_accuracy_comparison_tetrode.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/f191016_accuracy_comparison_tetrode.png -------------------------------------------------------------------------------- /matlab/f191016_runtime_comparison_channel.fig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/f191016_runtime_comparison_channel.fig -------------------------------------------------------------------------------- /matlab/f191016_runtime_comparison_channel.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/f191016_runtime_comparison_channel.png -------------------------------------------------------------------------------- /matlab/f191016_runtime_comparison_duration.fig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/f191016_runtime_comparison_duration.fig -------------------------------------------------------------------------------- /matlab/f191016_runtime_comparison_duration.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/f191016_runtime_comparison_duration.png -------------------------------------------------------------------------------- /matlab/f191104_burst_ksort2_vs_irc_snr8.fig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/f191104_burst_ksort2_vs_irc_snr8.fig -------------------------------------------------------------------------------- /matlab/f191104_burst_ksort2_vs_irc_snr8.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/f191104_burst_ksort2_vs_irc_snr8.pdf -------------------------------------------------------------------------------- /matlab/f191104_overlap_ksort2_vs_irc_snr4.fig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/f191104_overlap_ksort2_vs_irc_snr4.fig -------------------------------------------------------------------------------- /matlab/figures/F200129_F1score_comparison.fig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/figures/F200129_F1score_comparison.fig -------------------------------------------------------------------------------- /matlab/figures/F200129_goodunits_comparison.fig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/figures/F200129_goodunits_comparison.fig -------------------------------------------------------------------------------- /matlab/figures/F200129_scores_comparison.fig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/figures/F200129_scores_comparison.fig -------------------------------------------------------------------------------- /matlab/figures/F200203_count_f1_comparison.fig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/figures/F200203_count_f1_comparison.fig -------------------------------------------------------------------------------- /matlab/figures/F200203_f1_snr_comparison.fig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/figures/F200203_f1_snr_comparison.fig -------------------------------------------------------------------------------- /matlab/figures/F200203_scores_comparison.fig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/figures/F200203_scores_comparison.fig -------------------------------------------------------------------------------- /matlab/figures/F200204_count_f1_compare.fig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/figures/F200204_count_f1_compare.fig -------------------------------------------------------------------------------- /matlab/figures/F200204_f1_prmset_compare.fig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/figures/F200204_f1_prmset_compare.fig -------------------------------------------------------------------------------- /matlab/figures/F200204_score_snr_compare.fig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/figures/F200204_score_snr_compare.fig -------------------------------------------------------------------------------- /matlab/figures/F200204_scores_snr_compare.fig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/figures/F200204_scores_snr_compare.fig -------------------------------------------------------------------------------- /matlab/figures/accuracy_comparison_english.fig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/figures/accuracy_comparison_english.fig -------------------------------------------------------------------------------- /matlab/figures/comparison_irc2_ms4_ksort2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/figures/comparison_irc2_ms4_ksort2.png -------------------------------------------------------------------------------- /matlab/figures/f191016_accuracy_comparison_siprobe.fig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/figures/f191016_accuracy_comparison_siprobe.fig -------------------------------------------------------------------------------- /matlab/figures/f191016_accuracy_comparison_tetrode.fig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/figures/f191016_accuracy_comparison_tetrode.fig -------------------------------------------------------------------------------- /matlab/figures/f191016_runtime_comparison_channel.fig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/figures/f191016_runtime_comparison_channel.fig -------------------------------------------------------------------------------- /matlab/figures/f191016_runtime_comparison_duration.fig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/figures/f191016_runtime_comparison_duration.fig -------------------------------------------------------------------------------- /matlab/figures/f191104_burst_ksort2_vs_irc_snr8.fig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/figures/f191104_burst_ksort2_vs_irc_snr8.fig -------------------------------------------------------------------------------- /matlab/figures/f191104_overlap_ksort2_vs_irc_snr4.fig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/figures/f191104_overlap_ksort2_vs_irc_snr4.fig -------------------------------------------------------------------------------- /matlab/figures/scaling_diagram_irc2.fig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/figures/scaling_diagram_irc2.fig -------------------------------------------------------------------------------- /matlab/figures/untitled.fig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/figures/untitled.fig -------------------------------------------------------------------------------- /matlab/get_nan.m: -------------------------------------------------------------------------------- 1 | function val = get_nan(S, name) 2 | try 3 | val = S.(name); 4 | catch 5 | val = nan; 6 | end 7 | end %func -------------------------------------------------------------------------------- /matlab/img/benchmark_accuracy.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/img/benchmark_accuracy.png -------------------------------------------------------------------------------- /matlab/img/benchmark_patch.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/img/benchmark_patch.png -------------------------------------------------------------------------------- /matlab/img/benchmark_snr.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/img/benchmark_snr.png -------------------------------------------------------------------------------- /matlab/img/benchmark_speed.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/img/benchmark_speed.png -------------------------------------------------------------------------------- /matlab/img/doc/image001.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/img/doc/image001.png -------------------------------------------------------------------------------- /matlab/img/doc/image003.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/img/doc/image003.png -------------------------------------------------------------------------------- /matlab/img/doc/image005.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/img/doc/image005.png -------------------------------------------------------------------------------- /matlab/img/doc/image007.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/img/doc/image007.png -------------------------------------------------------------------------------- /matlab/img/doc/image009.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/img/doc/image009.png -------------------------------------------------------------------------------- /matlab/img/doc/image011.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/img/doc/image011.png -------------------------------------------------------------------------------- /matlab/img/doc/image013.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/img/doc/image013.png -------------------------------------------------------------------------------- /matlab/img/doc/image015.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/img/doc/image015.png -------------------------------------------------------------------------------- /matlab/img/doc/image017.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/img/doc/image017.png -------------------------------------------------------------------------------- /matlab/img/doc/image019.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/img/doc/image019.png -------------------------------------------------------------------------------- /matlab/img/doc/image021.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/img/doc/image021.png -------------------------------------------------------------------------------- /matlab/img/doc/image023.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/img/doc/image023.png -------------------------------------------------------------------------------- /matlab/img/doc/image025.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/img/doc/image025.png -------------------------------------------------------------------------------- /matlab/img/doc/image027.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/img/doc/image027.png -------------------------------------------------------------------------------- /matlab/img/doc/image029.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/img/doc/image029.png -------------------------------------------------------------------------------- /matlab/img/doc/image031.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/img/doc/image031.png -------------------------------------------------------------------------------- /matlab/img/doc/image033.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/img/doc/image033.png -------------------------------------------------------------------------------- /matlab/img/doc/image035.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/img/doc/image035.png -------------------------------------------------------------------------------- /matlab/img/doc/image037.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/img/doc/image037.png -------------------------------------------------------------------------------- /matlab/img/doc/image039.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/img/doc/image039.png -------------------------------------------------------------------------------- /matlab/img/doc/image041.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/img/doc/image041.png -------------------------------------------------------------------------------- /matlab/img/doc/image043.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/img/doc/image043.png -------------------------------------------------------------------------------- /matlab/img/doc/image045.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/img/doc/image045.png -------------------------------------------------------------------------------- /matlab/img/doc/image047.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/img/doc/image047.png -------------------------------------------------------------------------------- /matlab/img/doc/image049.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/img/doc/image049.png -------------------------------------------------------------------------------- /matlab/img/doc/image051.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/img/doc/image051.png -------------------------------------------------------------------------------- /matlab/img/event_group.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/img/event_group.png -------------------------------------------------------------------------------- /matlab/img/fft_clean_operation.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/img/fft_clean_operation.png -------------------------------------------------------------------------------- /matlab/img/figure1_spikesorting.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/img/figure1_spikesorting.png -------------------------------------------------------------------------------- /matlab/img/gui_background.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/img/gui_background.png -------------------------------------------------------------------------------- /matlab/img/manual_gui_menu.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/img/manual_gui_menu.png -------------------------------------------------------------------------------- /matlab/img/nneigh_min_detect.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/img/nneigh_min_detect.png -------------------------------------------------------------------------------- /matlab/img/nsight1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/img/nsight1.png -------------------------------------------------------------------------------- /matlab/img/nsight2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/img/nsight2.png -------------------------------------------------------------------------------- /matlab/img/rho_delta_plot.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/img/rho_delta_plot.png -------------------------------------------------------------------------------- /matlab/img/trials/trials1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/img/trials/trials1.png -------------------------------------------------------------------------------- /matlab/img/trials/trials2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/img/trials/trials2.png -------------------------------------------------------------------------------- /matlab/img/trials/trials3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/img/trials/trials3.png -------------------------------------------------------------------------------- /matlab/img/trials/trials4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/img/trials/trials4.png -------------------------------------------------------------------------------- /matlab/img/trials/trials5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/img/trials/trials5.png -------------------------------------------------------------------------------- /matlab/img/trials/trials6.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/img/trials/trials6.png -------------------------------------------------------------------------------- /matlab/img/trials/trials7.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/img/trials/trials7.png -------------------------------------------------------------------------------- /matlab/img/trials/trials8.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/img/trials/trials8.png -------------------------------------------------------------------------------- /matlab/img/ui_main.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/img/ui_main.png -------------------------------------------------------------------------------- /matlab/img/ui_manual1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/img/ui_manual1.png -------------------------------------------------------------------------------- /matlab/img/ui_manual2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/img/ui_manual2.png -------------------------------------------------------------------------------- /matlab/img/ui_manual3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/img/ui_manual3.png -------------------------------------------------------------------------------- /matlab/img/ui_manual4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/img/ui_manual4.png -------------------------------------------------------------------------------- /matlab/img/ui_manual5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/img/ui_manual5.png -------------------------------------------------------------------------------- /matlab/img/ui_manual6.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/img/ui_manual6.png -------------------------------------------------------------------------------- /matlab/img/ui_manual7.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/img/ui_manual7.png -------------------------------------------------------------------------------- /matlab/img/ui_preview.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/img/ui_preview.png -------------------------------------------------------------------------------- /matlab/img/ui_probe.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/img/ui_probe.png -------------------------------------------------------------------------------- /matlab/img/ui_psth.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/img/ui_psth.png -------------------------------------------------------------------------------- /matlab/irc_par.m: -------------------------------------------------------------------------------- 1 | 2 | % load data 3 | % todo: ues distributed file loading from ceph 4 | 5 | 6 | % detect 7 | cS_detect = cell(nBatch,1); 8 | plan_detect_(P); % if multifile, parfor file. if long recording, parfor ... 9 | cviLim_batch = cell(nBatch, 1); 10 | 11 | parfor iBatch = 1:nBatch 12 | cS_detect{iBatch} = detect_batch_(P, cviLim_batch{iBatch}); 13 | end 14 | % sort 15 | 16 | 17 | 18 | % merge -------------------------------------------------------------------------------- /matlab/ironclust.m: -------------------------------------------------------------------------------- 1 | function ironclust(varargin) 2 | % calls irc.m 3 | 4 | warning off; 5 | fprintf('Running ''%s%sirc.m''\n', fileparts(mfilename('fullpath')), filesep()); 6 | irc(varargin{:}); -------------------------------------------------------------------------------- /matlab/ironclust_1.prmset: -------------------------------------------------------------------------------- 1 | % filter 2 | freqLim = {[300,6000], [300,8000]}; 3 | qqFactor = {3.5, 4, 4.5}; 4 | 5 | % fft_thresh = {0, 8, 10, 12}; 6 | % detect (disable filter) 7 | %spkLim_ms = {[-.25,.75], [-.25, 1], [-.25, 1.25], [-.5,.75], [-.5,1], [-.5,1.25]}; 8 | %maxDist_site_spk_um = {100}; % Event extraction radius 9 | %maxDist_site_um = {50}; % Event merge radius 10 | 11 | 12 | % merge 13 | maxWavCor = {.985, .99, .995, 1}; -------------------------------------------------------------------------------- /matlab/jrclust.m: -------------------------------------------------------------------------------- 1 | function jrclust(varargin) 2 | % calls irc.m 3 | 4 | warning off; 5 | fprintf('Running ''%s%sirc.m''\n', fileparts(mfilename('fullpath')), filesep()); 6 | irc(varargin{:}); -------------------------------------------------------------------------------- /matlab/jrclust_patch/neCell2mat.m: -------------------------------------------------------------------------------- 1 | function mat_ = neCell2mat(cell_) 2 | %NECELL2MAT Like cell2mat, but keeps only nonempty cells 3 | nonempty = cellfun(@(x) ~isempty(x), cell_); 4 | cell_ = cell_(nonempty); 5 | try 6 | % mat_ = cell2mat(cell_(nonempty)); 7 | mat_ = cat(1, cell_{:}); 8 | catch 9 | mat_ = cat(2, cell_{:}); 10 | end 11 | end 12 | -------------------------------------------------------------------------------- /matlab/jsonlab-1.5/README.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/jsonlab-1.5/README.txt -------------------------------------------------------------------------------- /matlab/jsonlab-1.5/examples/jsonlab_speedtest.m: -------------------------------------------------------------------------------- 1 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 2 | % Benchmarking processing speed of savejson and loadjson 3 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 4 | 5 | datalen=[1e3 1e4 1e5 1e6]; 6 | len=length(datalen); 7 | tsave=zeros(len,1); 8 | tload=zeros(len,1); 9 | for i=1:len 10 | tic; 11 | json=savejson('data',struct('d1',rand(datalen(i),3),'d2',rand(datalen(i),3)>0.5)); 12 | tsave(i)=toc; 13 | data=loadjson(json); 14 | tload(i)=toc-tsave(i); 15 | fprintf(1,'matrix size: %d\n',datalen(i)); 16 | end 17 | 18 | loglog(datalen,tsave,'o-',datalen,tload,'r*-'); 19 | legend('savejson runtime (s)','loadjson runtime (s)'); 20 | xlabel('array size'); 21 | ylabel('running time (s)'); 22 | -------------------------------------------------------------------------------- /matlab/kampff-npx_template.prm: -------------------------------------------------------------------------------- 1 | fft_thresh = 10; 2 | -------------------------------------------------------------------------------- /matlab/kilosort/PCspikes.mat: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/kilosort/PCspikes.mat -------------------------------------------------------------------------------- /matlab/kilosort/PCspikes2.mat: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/kilosort/PCspikes2.mat -------------------------------------------------------------------------------- /matlab/kilosort/mexWtW2.exp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/kilosort/mexWtW2.exp -------------------------------------------------------------------------------- /matlab/ksort2.txt: -------------------------------------------------------------------------------- 1 | samplerate=30000 2 | detect_sign=-1 3 | adjacency_radius=75 4 | detect_threshold=5 5 | merge_thresh=.98 6 | freq_min=150 7 | freq_max=6000 8 | pc_per_chan=3 9 | -------------------------------------------------------------------------------- /matlab/maximalCliques.m: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/maximalCliques.m -------------------------------------------------------------------------------- /matlab/maximalCliques_cvi.m: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/maximalCliques_cvi.m -------------------------------------------------------------------------------- /matlab/mdaio/arrayify.m: -------------------------------------------------------------------------------- 1 | function X = arrayify(X) 2 | % ARRAYIFY - if a string, read in from file, otherwise leave as an array 3 | % 4 | % X = arrayify(X) 5 | 6 | % Barnett 6/16/16 7 | 8 | if ischar(X), X = readmda(X); end 9 | 10 | -------------------------------------------------------------------------------- /matlab/mdaio/pathify32.m: -------------------------------------------------------------------------------- 1 | function X = pathify32(X) 2 | % PATHIFY32 if array, write to an MDA & give path, otherwise leave as path. 3 | % 4 | % X = pathify32(X) uses single-precision float MDA files. 5 | 6 | % Barnett 6/17/16 7 | 8 | if isnumeric(X) 9 | dir = [tempdir,'/mountainlab/tmp_short_term']; 10 | if ~exist(dir,'dir'), mkdir(dir); end % note can handle creation of parents 11 | fname = [dir,'/',num2str(randi(1e15)),'.mda']; % random filename 12 | writemda(X,fname,'float32'); 13 | X = fname; 14 | end 15 | -------------------------------------------------------------------------------- /matlab/mdaio/pathify64.m: -------------------------------------------------------------------------------- 1 | function X = pathify64(X) 2 | % PATHIFY64 if array, write to an MDA & give path, otherwise leave as path. 3 | % 4 | % X = pathify64(X) uses double-precision float MDA files. 5 | 6 | % Barnett 6/17/16 7 | 8 | if isnumeric(X) 9 | dir = [tempdir,'/mountainlab/tmp_short_term']; 10 | if ~exist(dir,'dir'), mkdir(dir); end % note can handle creation of parents 11 | fname = [dir,'/',num2str(randi(1e15)),'.mda']; % random filename 12 | writemda(X,fname,'float64'); 13 | X = fname; 14 | end 15 | -------------------------------------------------------------------------------- /matlab/mdaio/writemda16i.m: -------------------------------------------------------------------------------- 1 | function writemda16i(X,fname) 2 | writemda(X,fname,'int16'); 3 | end -------------------------------------------------------------------------------- /matlab/mdaio/writemda16ui.m: -------------------------------------------------------------------------------- 1 | function writemda16ui(X,fname) 2 | writemda(X,fname,'uint16'); 3 | end -------------------------------------------------------------------------------- /matlab/mdaio/writemda32.m: -------------------------------------------------------------------------------- 1 | function writemda32(X,fname) 2 | writemda(X,fname,'float32'); 3 | end -------------------------------------------------------------------------------- /matlab/mdaio/writemda32ui.m: -------------------------------------------------------------------------------- 1 | function writemda32ui(X,fname) 2 | writemda(X,fname,'uint32'); 3 | end -------------------------------------------------------------------------------- /matlab/mdaio/writemda64.m: -------------------------------------------------------------------------------- 1 | function writemda64(X,fname) 2 | writemda(X,fname,'float64'); 3 | end -------------------------------------------------------------------------------- /matlab/mountainsort4.prmset: -------------------------------------------------------------------------------- 1 | freq_min = {300}; 2 | freq_max = {6000, 8000}; 3 | clip_size = {40, 50, 60}; 4 | detect_threshold = {3, 3.5}; 5 | whiten = {1}; 6 | curation = {0}; -------------------------------------------------------------------------------- /matlab/mouse_figure.m: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/mouse_figure.m -------------------------------------------------------------------------------- /matlab/mov_resize.m: -------------------------------------------------------------------------------- 1 | function mov1 = mov_resize(mov, siz) 2 | % mov: 4D uint8 3 | % siz: [height, width] 4 | 5 | mov1 = zeros(siz(1), siz(2), size(mov,3), size(mov,4), 'like', mov); 6 | 7 | for iF = 1:size(mov,4) 8 | mov1(:,:,:,iF) = imresize(mov(:,:,:,iF), siz, 'Colormap', 'original'); 9 | end 10 | end %func -------------------------------------------------------------------------------- /matlab/neuroshare/ns_GetSegmentSourceInfo.m: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/neuroshare/ns_GetSegmentSourceInfo.m -------------------------------------------------------------------------------- /matlab/npy-matlab/.gitignore: -------------------------------------------------------------------------------- 1 | *.asv -------------------------------------------------------------------------------- /matlab/npy-matlab/README.md: -------------------------------------------------------------------------------- 1 | # npy-matlab 2 | 3 | Code to read/write NumPy .NPY files in MATLAB 4 | 5 | 6 | ## Usage example: 7 | ``` 8 | >> a = rand(5,4,3); 9 | >> writeNPY(a, 'a.npy'); 10 | >> b = readNPY('a.npy'); 11 | >> sum(a(:)==b(:)) 12 | ans = 13 | 14 | 60 15 | ``` 16 | 17 | ## Tests 18 | [See the notebook for python tests](npy.ipynb) 19 | 20 | See test_readNPY.m for matlab reading/writing tests. 21 | 22 | ## Note re: memory mapping npy files 23 | See exampleMemmap.m for example of how to memory map a npy file in matlab, which is not trivial when the file uses C-ordering (i.e. row-major order) rather than fortran-ordering (i.e. column-major ordering). Matlab's memory mapping only supports fortran, but Python's default is C so npy files created with Python defaults are not straightforward to read in Matlab. 24 | -------------------------------------------------------------------------------- /matlab/npy-matlab/data/chelsea_float32.npy: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/npy-matlab/data/chelsea_float32.npy -------------------------------------------------------------------------------- /matlab/npy-matlab/data/chelsea_float64.npy: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/npy-matlab/data/chelsea_float64.npy -------------------------------------------------------------------------------- /matlab/npy-matlab/data/chelsea_int16.npy: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/npy-matlab/data/chelsea_int16.npy -------------------------------------------------------------------------------- /matlab/npy-matlab/data/chelsea_int32.npy: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/npy-matlab/data/chelsea_int32.npy -------------------------------------------------------------------------------- /matlab/npy-matlab/data/chelsea_int64.npy: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/npy-matlab/data/chelsea_int64.npy -------------------------------------------------------------------------------- /matlab/npy-matlab/data/chelsea_int8.npy: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/npy-matlab/data/chelsea_int8.npy -------------------------------------------------------------------------------- /matlab/npy-matlab/data/chelsea_uint16.npy: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/npy-matlab/data/chelsea_uint16.npy -------------------------------------------------------------------------------- /matlab/npy-matlab/data/chelsea_uint32.npy: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/npy-matlab/data/chelsea_uint32.npy -------------------------------------------------------------------------------- /matlab/npy-matlab/data/chelsea_uint64.npy: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/npy-matlab/data/chelsea_uint64.npy -------------------------------------------------------------------------------- /matlab/npy-matlab/data/chelsea_uint8.npy: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/npy-matlab/data/chelsea_uint8.npy -------------------------------------------------------------------------------- /matlab/npy-matlab/data/matlab_chelsea_float32.npy: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/npy-matlab/data/matlab_chelsea_float32.npy -------------------------------------------------------------------------------- /matlab/npy-matlab/data/matlab_chelsea_float64.npy: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/npy-matlab/data/matlab_chelsea_float64.npy -------------------------------------------------------------------------------- /matlab/npy-matlab/data/matlab_chelsea_int16.npy: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/npy-matlab/data/matlab_chelsea_int16.npy -------------------------------------------------------------------------------- /matlab/npy-matlab/data/matlab_chelsea_int32.npy: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/npy-matlab/data/matlab_chelsea_int32.npy -------------------------------------------------------------------------------- /matlab/npy-matlab/data/matlab_chelsea_int64.npy: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/npy-matlab/data/matlab_chelsea_int64.npy -------------------------------------------------------------------------------- /matlab/npy-matlab/data/matlab_chelsea_int8.npy: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/npy-matlab/data/matlab_chelsea_int8.npy -------------------------------------------------------------------------------- /matlab/npy-matlab/data/matlab_chelsea_uint16.npy: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/npy-matlab/data/matlab_chelsea_uint16.npy -------------------------------------------------------------------------------- /matlab/npy-matlab/data/matlab_chelsea_uint32.npy: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/npy-matlab/data/matlab_chelsea_uint32.npy -------------------------------------------------------------------------------- /matlab/npy-matlab/data/matlab_chelsea_uint64.npy: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/npy-matlab/data/matlab_chelsea_uint64.npy -------------------------------------------------------------------------------- /matlab/npy-matlab/data/matlab_chelsea_uint8.npy: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/npy-matlab/data/matlab_chelsea_uint8.npy -------------------------------------------------------------------------------- /matlab/npy-matlab/data/matlab_sine_float32.npy: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/npy-matlab/data/matlab_sine_float32.npy -------------------------------------------------------------------------------- /matlab/npy-matlab/data/matlab_sine_float64.npy: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/npy-matlab/data/matlab_sine_float64.npy -------------------------------------------------------------------------------- /matlab/npy-matlab/data/matlab_sine_int16.npy: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/npy-matlab/data/matlab_sine_int16.npy -------------------------------------------------------------------------------- /matlab/npy-matlab/data/matlab_sine_int32.npy: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/npy-matlab/data/matlab_sine_int32.npy -------------------------------------------------------------------------------- /matlab/npy-matlab/data/matlab_sine_int64.npy: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/npy-matlab/data/matlab_sine_int64.npy -------------------------------------------------------------------------------- /matlab/npy-matlab/data/matlab_sine_int8.npy: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/npy-matlab/data/matlab_sine_int8.npy -------------------------------------------------------------------------------- /matlab/npy-matlab/data/matlab_sine_uint16.npy: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/npy-matlab/data/matlab_sine_uint16.npy -------------------------------------------------------------------------------- /matlab/npy-matlab/data/matlab_sine_uint32.npy: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/npy-matlab/data/matlab_sine_uint32.npy -------------------------------------------------------------------------------- /matlab/npy-matlab/data/matlab_sine_uint64.npy: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/npy-matlab/data/matlab_sine_uint64.npy -------------------------------------------------------------------------------- /matlab/npy-matlab/data/matlab_sine_uint8.npy: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/npy-matlab/data/matlab_sine_uint8.npy -------------------------------------------------------------------------------- /matlab/npy-matlab/data/sine_float32.npy: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/npy-matlab/data/sine_float32.npy -------------------------------------------------------------------------------- /matlab/npy-matlab/data/sine_float64.npy: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/npy-matlab/data/sine_float64.npy -------------------------------------------------------------------------------- /matlab/npy-matlab/data/sine_int16.npy: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/npy-matlab/data/sine_int16.npy -------------------------------------------------------------------------------- /matlab/npy-matlab/data/sine_int32.npy: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/npy-matlab/data/sine_int32.npy -------------------------------------------------------------------------------- /matlab/npy-matlab/data/sine_int64.npy: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/npy-matlab/data/sine_int64.npy -------------------------------------------------------------------------------- /matlab/npy-matlab/data/sine_int8.npy: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/npy-matlab/data/sine_int8.npy -------------------------------------------------------------------------------- /matlab/npy-matlab/data/sine_uint16.npy: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/npy-matlab/data/sine_uint16.npy -------------------------------------------------------------------------------- /matlab/npy-matlab/data/sine_uint32.npy: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/npy-matlab/data/sine_uint32.npy -------------------------------------------------------------------------------- /matlab/npy-matlab/data/sine_uint64.npy: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/npy-matlab/data/sine_uint64.npy -------------------------------------------------------------------------------- /matlab/npy-matlab/data/sine_uint8.npy: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/npy-matlab/data/sine_uint8.npy -------------------------------------------------------------------------------- /matlab/npy-matlab/data/test.npy: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/npy-matlab/data/test.npy -------------------------------------------------------------------------------- /matlab/npy-matlab/writeNPY.m: -------------------------------------------------------------------------------- 1 | 2 | 3 | function writeNPY(var, filename) 4 | % function writeNPY(var, filename) 5 | % 6 | % Only writes little endian, fortran (column-major) ordering; only writes 7 | % with NPY version number 1.0. 8 | % 9 | % Always outputs a shape according to matlab's convention, e.g. (10, 1) 10 | % rather than (10,). 11 | 12 | 13 | shape = size(var); 14 | dataType = class(var); 15 | 16 | header = constructNPYheader(dataType, shape); 17 | 18 | fid = fopen(filename, 'w'); 19 | fwrite(fid, header, 'uint8'); 20 | fwrite(fid, var, dataType); 21 | fclose(fid); 22 | 23 | 24 | end 25 | 26 | -------------------------------------------------------------------------------- /matlab/nuke.m: -------------------------------------------------------------------------------- 1 | close all; clear all; clc; profile clear; -------------------------------------------------------------------------------- /matlab/param1.prm: -------------------------------------------------------------------------------- 1 | % execution 2 | fGpu = 0; 3 | fParfor = 0; 4 | MAX_BYTES_LOAD = .5e9; 5 | 6 | % detect 7 | vcFilter = 'bandpass'; 8 | freqLim = [300, 6000]; 9 | 10 | % filter 11 | qqFactor = 4; 12 | nPc_spk = 6; 13 | spkLim_ms = [-.5, 1]; 14 | nChans_min_car = 16; 15 | fInterp_fet = 1; 16 | fSpatialMask_clu = 0; 17 | 18 | % sort 19 | nPcPerChan = 2; 20 | nFet_max = []; 21 | sort_mode = 1; 22 | step_sec_drift = 20; 23 | batch_sec_drift = 300; 24 | 25 | % auto-merge 26 | %post_merge_mode0 = [12]; 27 | post_merge_mode0 = [12, 17]; 28 | %post_merge_mode0 = [5]; 29 | post_merge_mode = 1; 30 | maxWavCor = .99; 31 | min_snr_clu = 4; % remove clusters below SNR threshold, set to [] to skip 32 | 33 | % validation 34 | fValidate = 0; -------------------------------------------------------------------------------- /matlab/param2.prm: -------------------------------------------------------------------------------- 1 | % execution 2 | fGpu = 0; 3 | fParfor = 1; 4 | MAX_BYTES_LOAD = .5e9; 5 | 6 | % detect 7 | vcFilter = 'bandpass'; 8 | freqLim = [300, 6000]; 9 | 10 | % filter 11 | qqFactor = 4; 12 | nPc_spk = 6; 13 | spkLim_ms = [-.5, 1]; 14 | nChans_min_car = 16; 15 | fInterp_fet = 1; 16 | fSpatialMask_clu = 0; 17 | 18 | % sort 19 | nPcPerChan = 2; 20 | nFet_max = []; 21 | sort_mode = 1; 22 | step_sec_drift = 20; 23 | batch_sec_drift = 300; 24 | 25 | % auto-merge 26 | %post_merge_mode0 = [12]; 27 | post_merge_mode0 = [12, 17]; 28 | %post_merge_mode0 = [5]; 29 | post_merge_mode = 1; 30 | maxWavCor = .99; 31 | min_snr_clu = 4; % remove clusters below SNR threshold, set to [] to skip 32 | 33 | % validation 34 | fValidate = 0; -------------------------------------------------------------------------------- /matlab/param3.prm: -------------------------------------------------------------------------------- 1 | % execution 2 | fGpu = 1; 3 | fParfor = 0; 4 | MAX_BYTES_LOAD = .5e9; 5 | 6 | % detect 7 | vcFilter = 'bandpass'; 8 | freqLim = [300, 6000]; 9 | 10 | % filter 11 | qqFactor = 4; 12 | nPc_spk = 6; 13 | spkLim_ms = [-.5, 1]; 14 | nChans_min_car = 16; 15 | fInterp_fet = 1; 16 | fSpatialMask_clu = 0; 17 | 18 | % sort 19 | nPcPerChan = 2; 20 | nFet_max = []; 21 | sort_mode = 1; 22 | step_sec_drift = 20; 23 | batch_sec_drift = 300; 24 | 25 | % auto-merge 26 | %post_merge_mode0 = [12]; 27 | post_merge_mode0 = [12, 17]; 28 | %post_merge_mode0 = [5]; 29 | post_merge_mode = 1; 30 | maxWavCor = .99; 31 | min_snr_clu = 4; % remove clusters below SNR threshold, set to [] to skip 32 | 33 | % validation 34 | fValidate = 0; -------------------------------------------------------------------------------- /matlab/param4.prm: -------------------------------------------------------------------------------- 1 | % execution 2 | fGpu = 1; 3 | fParfor = 1; 4 | MAX_BYTES_LOAD = .5e9; 5 | 6 | % detect 7 | vcFilter = 'bandpass'; 8 | freqLim = [300, 6000]; 9 | 10 | % filter 11 | qqFactor = 4; 12 | nPc_spk = 6; 13 | spkLim_ms = [-.5, 1]; 14 | nChans_min_car = 16; 15 | fInterp_fet = 1; 16 | fSpatialMask_clu = 0; 17 | 18 | % sort 19 | nPcPerChan = 2; 20 | nFet_max = []; 21 | sort_mode = 1; 22 | step_sec_drift = 20; 23 | batch_sec_drift = 300; 24 | 25 | % auto-merge 26 | %post_merge_mode0 = [12]; 27 | post_merge_mode0 = [12, 17]; 28 | %post_merge_mode0 = [5]; 29 | post_merge_mode = 1; 30 | maxWavCor = .99; 31 | min_snr_clu = 4; % remove clusters below SNR threshold, set to [] to skip 32 | 33 | % validation 34 | fValidate = 0; -------------------------------------------------------------------------------- /matlab/plot_sort.m: -------------------------------------------------------------------------------- 1 | function plot_sort(varargin) 2 | hold on; 3 | for iArg = 1:nargin 4 | vy = varargin{iArg}; 5 | plot((1:numel(vy))/numel(vy), sort(vy)); 6 | end -------------------------------------------------------------------------------- /matlab/prb/5trode.prb: -------------------------------------------------------------------------------- 1 | nChans = 5; % change this number for n-trodes 2 | channels = 1:nChans; % 8 channels mapped to sites 3 | geometry = [zeros(nChans,1), (1:nChans)']; % (8 x 2 matrix, fist col.: x pos (um), second col.: y pos (um) 4 | 5 | pad = [1 1]; % site pad dimension for visualization (w x h (um)) 6 | um_per_pix = 1; % grid spacing (for visualization) 7 | -------------------------------------------------------------------------------- /matlab/prb/6trode.prb: -------------------------------------------------------------------------------- 1 | nChans = 6; % change this number for n-trodes 2 | channels = 1:nChans; % 8 channels mapped to sites 3 | geometry = [zeros(nChans,1), (1:nChans)']; % (8 x 2 matrix, fist col.: x pos (um), second col.: y pos (um) 4 | 5 | pad = [1 1]; % site pad dimension for visualization (w x h (um)) 6 | um_per_pix = 1; % grid spacing (for visualization) 7 | -------------------------------------------------------------------------------- /matlab/prb/7trode.prb: -------------------------------------------------------------------------------- 1 | nChans = 7; % change this number for n-trodes 2 | channels = 1:nChans; % 8 channels mapped to sites 3 | geometry = [zeros(nChans,1), (1:nChans)']; % (8 x 2 matrix, fist col.: x pos (um), second col.: y pos (um) 4 | 5 | pad = [1 1]; % site pad dimension for visualization (w x h (um)) 6 | um_per_pix = 1; % grid spacing (for visualization) 7 | -------------------------------------------------------------------------------- /matlab/prb/8trode.prb: -------------------------------------------------------------------------------- 1 | nChans = 8; % change this number for n-trodes 2 | channels = 1:nChans; % 8 channels mapped to sites 3 | geometry = [zeros(nChans,1), (1:nChans)']; % (8 x 2 matrix, fist col.: x pos (um), second col.: y pos (um) 4 | 5 | pad = [1 1]; % site pad dimension for visualization (w x h (um)) 6 | um_per_pix = 1; % grid spacing (for visualization) 7 | -------------------------------------------------------------------------------- /matlab/prb/AYA6_day4.prb: -------------------------------------------------------------------------------- 1 | % Order of the probe sites in the recording file 2 | channels = 1:256; 3 | 4 | % Site location in micrometers (x and y) 5 | geometry = zeros(256, 2); 6 | nCh_shank = 32; 7 | vi32 = 1:nCh_shank; 8 | geometry(:,2) = repmat((0:nCh_shank-1)'*50, [8,1]); 9 | toVec = @(x)x(:); 10 | geometry(:,1) = toVec(bsxfun(@times, [0:200:1400], ones(nCh_shank,1))); 11 | 12 | % Reference sites are being excluded 13 | ref_sites = []; 14 | channels(ref_sites) = []; 15 | geometry(ref_sites,:) = []; 16 | 17 | % Recording contact pad size in micrometers. Height x width 18 | pad = [15 11]; 19 | shank = 1:8; shank = repmat(shank, [32,1]); shank=shank(:); 20 | 21 | -------------------------------------------------------------------------------- /matlab/prb/IMEC_3A_4column.prb: -------------------------------------------------------------------------------- 1 | % IMEC_3A_4column 2 | 3 | %channels = 1:60; 4 | channels = [1:4:60; 3:4:60; 2:4:60; 4:4:60]; channels = channels(:); 5 | 6 | nChans = numel(channels); 7 | geometry = zeros(nChans, 2); 8 | 9 | % x pos 10 | geometry(1:4:end,1) = 1; 11 | geometry(2:4:end,1) = 33; 12 | geometry(3:4:end,1) = 17; 13 | geometry(4:4:end,1) = 49; 14 | 15 | % y pos 16 | vi1 = 1:floor(nChans/4); 17 | geometry(1:4:end,2) = 40*(vi1-1) + 750; 18 | geometry(2:4:end,2) = geometry(1:4:end,2); 19 | geometry(3:4:end,2) = 40*(vi1-1) + 750+20; 20 | geometry(4:4:end,2) = geometry(3:4:end,2); 21 | 22 | pad = [12 12]; %in micrometers, height x width 23 | 24 | % Shank group per site 25 | %shank = ones(4,15); shank([2,4],:) = 2; shank=shank(:); -------------------------------------------------------------------------------- /matlab/prb/IMEC_3A_4column_july.prb: -------------------------------------------------------------------------------- 1 | % IMEC_3A_4column 2 | 3 | channels = 1:60; 4 | 5 | nChans = numel(channels); 6 | geometry = zeros(nChans, 2); 7 | 8 | % x pos 9 | geometry(1:4:end,1) = -23; 10 | geometry(2:4:end,1) = 9; 11 | geometry(3:4:end,1) = -7; 12 | geometry(4:4:end,1) = 25; 13 | 14 | % y pos 15 | vi1 = 1:floor(nChans/4); 16 | geometry(1:4:end,2) = 40*(vi1-1) + 750; 17 | geometry(2:4:end,2) = geometry(1:4:end,2); 18 | geometry(3:4:end,2) = 40*(vi1-1) + 750 + 20; 19 | geometry(4:4:end,2) = geometry(3:4:end,2); 20 | 21 | pad = [12 12]; %in micrometers, height x width 22 | %shank = ones(4,15); shank([2,4],:) = 2; shank=shank(:); -------------------------------------------------------------------------------- /matlab/prb/IMEC_3A_4column_julyA.prb: -------------------------------------------------------------------------------- 1 | % IMEC_3A_4column 2 | 3 | channels = 1:60; 4 | 5 | nChans = numel(channels); 6 | geometry = zeros(nChans, 2); 7 | 8 | % x pos 9 | geometry(1:4:end,1) = -23; 10 | geometry(2:4:end,1) = 9; 11 | geometry(3:4:end,1) = -7; 12 | geometry(4:4:end,1) = 25; 13 | geometry(:,1) = geometry(:,1); %choose same depth preferentially 14 | 15 | % y pos 16 | vi1 = 1:floor(nChans/4); 17 | geometry(1:4:end,2) = 40*(vi1-1) + 750; 18 | geometry(2:4:end,2) = geometry(1:4:end,2); 19 | geometry(3:4:end,2) = 40*(vi1-1) + 750 + 20; 20 | geometry(4:4:end,2) = geometry(3:4:end,2); 21 | 22 | pad = [12 12]; %in micrometers, height x width -------------------------------------------------------------------------------- /matlab/prb/IMEC_3B_1column.prb: -------------------------------------------------------------------------------- 1 | % IMEC_3B_1column.prb 2 | 3 | channels = 1:2:60; 4 | 5 | geometry = zeros(numel(channels), 2); 6 | 7 | % x pos 8 | geometry(:,1) = 1; 9 | %geometry(:,1) = 17; 10 | 11 | % y pos 12 | vi1 = 1:numel(channels); 13 | geometry(:,2) = 20*(vi1-1) + 750; 14 | 15 | pad = [12 12]; %in micrometers, height x width -------------------------------------------------------------------------------- /matlab/prb/IMEC_3B_1columnR.prb: -------------------------------------------------------------------------------- 1 | % IMEC_3B_1columnR.prb 2 | 3 | channels = 2:2:60; 4 | 5 | geometry = zeros(numel(channels), 2); 6 | 7 | % x pos 8 | %geometry(:,1) = 1; 9 | geometry(:,1) = 17; 10 | 11 | % y pos 12 | vi1 = 1:numel(channels); 13 | geometry(:,2) = 20*(vi1-1) + 750; 14 | 15 | pad = [12 12]; %in micrometers, height x width -------------------------------------------------------------------------------- /matlab/prb/IMEC_3B_1columnR_july.prb: -------------------------------------------------------------------------------- 1 | % IMEC_3B_1column_july.prb. 32 um spacing 2 | 3 | channels = 2:2:60; 4 | 5 | geometry = zeros(numel(channels), 2); 6 | 7 | % x pos 8 | geometry(:,1) = 9; 9 | 10 | % y pos 11 | vi1 = 1:numel(channels); 12 | geometry(:,2) = 20*(vi1-1) + 750; 13 | 14 | pad = [12 12]; %in micrometers, height x width -------------------------------------------------------------------------------- /matlab/prb/IMEC_3B_1column_july.prb: -------------------------------------------------------------------------------- 1 | % IMEC_3B_1column_july.prb. 32 um spacing 2 | 3 | channels = 1:2:60; 4 | 5 | geometry = zeros(numel(channels), 2); 6 | 7 | % x pos 8 | geometry(:,1) = -7; 9 | 10 | % y pos 11 | vi1 = 1:numel(channels); 12 | geometry(:,2) = 20*(vi1-1) + 750; 13 | 14 | pad = [12 12]; %in micrometers, height x width -------------------------------------------------------------------------------- /matlab/prb/IMEC_3B_2column.prb: -------------------------------------------------------------------------------- 1 | % IMEC_3B_2column.prb 2 | 3 | channels = 1:60; 4 | 5 | nChans = numel(channels); 6 | geometry = zeros(nChans, 2); 7 | 8 | % x pos 9 | geometry(1:2:end,1) = 1; 10 | geometry(2:2:end,1) = 17; 11 | 12 | % y pos 13 | vi1 = 1:floor(nChans/2); 14 | geometry(1:2:end,2) = 20*(vi1-1) + 750; 15 | geometry(2:2:end,2) = geometry(1:2:end,2); 16 | 17 | pad = [12 12]; %in micrometers, height x width 18 | %shank = ones(4,15); shank([2,4],:) = 2; shank=shank(:); -------------------------------------------------------------------------------- /matlab/prb/IMEC_3B_2column_july.prb: -------------------------------------------------------------------------------- 1 | % IMEC_3D_2column.prb. 32 um spacing 2 | 3 | channels = 1:60; 4 | 5 | nChans = numel(channels); 6 | geometry = zeros(nChans, 2); 7 | 8 | % x pos 9 | geometry(1:2:end,1) = -7; 10 | geometry(2:2:end,1) = 9; 11 | 12 | % y pos 13 | vi1 = 1:floor(nChans/2); 14 | geometry(1:2:end,2) = 20*(vi1-1) + 750; 15 | geometry(2:2:end,2) = geometry(1:2:end,2); 16 | 17 | pad = [12 12]; %in micrometers, height x width 18 | %shank = ones(4,15); shank([2,4],:) = 2; shank=shank(:); -------------------------------------------------------------------------------- /matlab/prb/IMEC_3C_2column.prb: -------------------------------------------------------------------------------- 1 | 2 | % IMEC_3B_2column.prb 3 | 4 | channels = 1:60; 5 | 6 | nChans = numel(channels); 7 | geometry = zeros(nChans, 2); 8 | 9 | % x pos 10 | geometry(1:2:end,1) = 1; 11 | geometry(2:2:end,1) = 49; 12 | 13 | % y pos 14 | vi1 = 1:floor(nChans/2); 15 | geometry(1:2:end,2) = 20*(vi1-1) + 750; 16 | geometry(2:2:end,2) = geometry(1:2:end,2); 17 | 18 | pad = [12 12]; %in micrometers, height x width -------------------------------------------------------------------------------- /matlab/prb/IMEC_3C_2column_july.prb: -------------------------------------------------------------------------------- 1 | % IMEC_3D_2column.prb. 32 um spacing 2 | 3 | channels = 1:60; 4 | 5 | nChans = numel(channels); 6 | geometry = zeros(nChans, 2); 7 | 8 | % x pos 9 | geometry(1:2:end,1) = -23; 10 | geometry(2:2:end,1) = 25; 11 | 12 | % y pos 13 | vi1 = 1:floor(nChans/2); 14 | geometry(1:2:end,2) = 20*(vi1-1) + 750; 15 | geometry(2:2:end,2) = geometry(1:2:end,2); 16 | 17 | pad = [12 12]; %in micrometers, height x width -------------------------------------------------------------------------------- /matlab/prb/IMEC_3D_2column.prb: -------------------------------------------------------------------------------- 1 | % IMEC_3D_2column.prb. 32 um spacing 2 | 3 | channels = 1:60; 4 | 5 | nChans = numel(channels); 6 | geometry = zeros(nChans, 2); 7 | 8 | % x pos 9 | geometry(1:2:end,1) = 1; 10 | geometry(2:2:end,1) = 33; 11 | 12 | % y pos 13 | vi1 = 1:floor(nChans/2); 14 | geometry(1:2:end,2) = 20*(vi1-1) + 750; 15 | geometry(2:2:end,2) = geometry(1:2:end,2); 16 | 17 | pad = [12 12]; %in micrometers, height x width -------------------------------------------------------------------------------- /matlab/prb/IMEC_3D_2column_july.prb: -------------------------------------------------------------------------------- 1 | % IMEC_3D_2column.prb. 32 um spacing 2 | 3 | channels = 1:60; 4 | 5 | nChans = numel(channels); 6 | geometry = zeros(nChans, 2); 7 | 8 | % x pos 9 | geometry(1:2:end,1) = -23; 10 | geometry(2:2:end,1) = 9; 11 | 12 | % y pos 13 | vi1 = 1:floor(nChans/2); 14 | geometry(1:2:end,2) = 20*(vi1-1) + 750; 15 | geometry(2:2:end,2) = geometry(1:2:end,2); 16 | 17 | pad = [12 12]; %in micrometers, height x width 18 | %shank = ones(4,15); shank([2,4],:) = 2; shank=shank(:); -------------------------------------------------------------------------------- /matlab/prb/IMEC_3E_2column_july.prb: -------------------------------------------------------------------------------- 1 | % IMEC_3D_2column.prb. 32 um spacing 2 | 3 | channels = 1:60; 4 | 5 | nChans = numel(channels); 6 | geometry = zeros(nChans, 2); 7 | 8 | % x pos 9 | geometry(1:2:end,1) = -7; 10 | geometry(2:2:end,1) = 25; 11 | 12 | % y pos 13 | vi1 = 1:floor(nChans/2); 14 | geometry(1:2:end,2) = 20*(vi1-1) + 750; 15 | geometry(2:2:end,2) = geometry(1:2:end,2); 16 | 17 | pad = [12 12]; %in micrometers, height x width 18 | %shank = ones(4,15); shank([2,4],:) = 2; shank=shank(:); -------------------------------------------------------------------------------- /matlab/prb/a4x4nn.prb: -------------------------------------------------------------------------------- 1 | % Order of the probe sites in the recording file 2 | channels = 1:64; % assuming linear mapping between sites to channels. Refer to the NeuroNexus documentation for correct channel mapping. 3 | 4 | % Site location in micrometers (x and y) 5 | fh_col = @(x)x(:); 6 | geometry = repmat([0, -17.6777, 17.6777, 0; 0, 17.6777, 17.6777, 35.3554]',[16,1]); 7 | geometry(:,1) = geometry(:,1) + fh_col(repmat([0,200,400,600],[16,1])); 8 | geometry(:,2) = geometry(:,2) + repmat(fh_col(repmat([0,150,300,450],[4,1])),[4,1]); 9 | 10 | 11 | % Recording contact pad size in micrometers. Height x width 12 | pad = [11 11]; 13 | 14 | % Shanks 15 | shank = fh_col(repmat(1:16,[4,1]))'; 16 | 17 | % Micrometers per center-to-center vertical site spacing 18 | um_per_pix = 17.6777; 19 | -------------------------------------------------------------------------------- /matlab/prb/boyden128.prb: -------------------------------------------------------------------------------- 1 | % Order of the probe sites in the recording file 2 | channels = 1:128; 3 | 4 | % Site location in micrometers (x and y) 5 | geometry = zeros(128, 2); 6 | geometry(:,1) = repmat((0:1)'*11, [64,1]); 7 | geometry(:,2) = reshape(repmat((0:63)*11, [2,1]), 128,1); 8 | 9 | % Recording contact pad size in micrometers. Height x width 10 | pad = [9 9]; 11 | 12 | % Default prm 13 | % maxSite = 4.5; 14 | um_per_pix = 11; 15 | 16 | % Shanks 17 | % shank = ones(size(channels)); shank(geometry(:,1)>0)=2; -------------------------------------------------------------------------------- /matlab/prb/boyden128.prm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flatironinstitute/ironclust/2d7b56c4a10bdca7606d7f4958d11358aaa658ee/matlab/prb/boyden128.prm -------------------------------------------------------------------------------- /matlab/prb/boyden256.prb: -------------------------------------------------------------------------------- 1 | % Order of the probe sites in the recording file 2 | channels = 1:256; 3 | 4 | % Site location in micrometers (x and y) 5 | geometry = zeros(256, 2); 6 | geometry(:,1) = repmat((0:3)'*11, [64,1]); 7 | geometry(:,2) = reshape(repmat((0:63)*11, [4,1]), 256,1); 8 | 9 | % Recording contact pad size in micrometers. Height x width 10 | pad = [9 9]; 11 | 12 | % Default prm 13 | % maxSite = 4.5; 14 | um_per_pix = 11; 15 | 16 | % Shanks 17 | % shank = ones(size(channels)); shank(geometry(:,1)>0)=2; -------------------------------------------------------------------------------- /matlab/prb/boyden256A.prb: -------------------------------------------------------------------------------- 1 | % Order of the probe sites in the recording file 2 | channels = sort([1:8:256, 3:8:256, 6:8:256, 8:8:256]); 3 | %channels = setdiff(channels, [12 28 32 43 44 47 52 63 64 68 71 83 106 116 172 214 218 221 253 254]); 4 | 5 | % Site location in micrometers (x and y) 6 | geometry = zeros(256, 2); 7 | geometry(:,1) = repmat((0:3)'*11, [64,1]); 8 | geometry(:,2) = reshape(repmat((0:63)*11, [4,1]), 256,1); 9 | geometry = geometry(channels,:); 10 | 11 | % Recording contact pad size in micrometers. Height x width 12 | pad = [9 9]; 13 | 14 | % Default prm 15 | % maxSite = 4.5; 16 | um_per_pix = 11; 17 | 18 | % Shanks 19 | % shank = ones(size(channels)); shank(geometry(:,1)>0)=2; -------------------------------------------------------------------------------- /matlab/prb/boyden256B.prb: -------------------------------------------------------------------------------- 1 | % Order of the probe sites in the recording file 2 | channels = sort([2:8:256, 4:8:256, 5:8:256, 7:8:256]); 3 | %channels = setdiff(channels, [12 28 32 43 44 47 52 63 64 68 71 83 106 116 172 214 218 221 253 254]); 4 | 5 | % Site location in micrometers (x and y) 6 | geometry = zeros(256, 2); 7 | geometry(:,1) = repmat((0:3)'*11, [64,1]); 8 | geometry(:,2) = reshape(repmat((0:63)*11, [4,1]), 256,1); 9 | geometry = geometry(channels,:); 10 | 11 | % Recording contact pad size in micrometers. Height x width 12 | pad = [9 9]; 13 | 14 | % Default prm 15 | % maxSite = 4.5; 16 | um_per_pix = 11; 17 | 18 | % Shanks 19 | % shank = ones(size(channels)); shank(geometry(:,1)>0)=2; -------------------------------------------------------------------------------- /matlab/prb/boyden256C.prb: -------------------------------------------------------------------------------- 1 | % Order of the probe sites in the recording file 2 | channels = sort([1:8:256, 3:8:256, 5:8:256, 7:8:256]); 3 | %channels = setdiff(channels, [12 28 32 43 44 47 52 63 64 68 71 83 106 116 172 214 218 221 253 254]); 4 | 5 | % Site location in micrometers (x and y) 6 | geometry = zeros(256, 2); 7 | geometry(:,1) = repmat((0:3)'*11, [64,1]); 8 | geometry(:,2) = reshape(repmat((0:63)*11, [4,1]), 256,1); 9 | geometry = geometry(channels,:); 10 | 11 | % Recording contact pad size in micrometers. Height x width 12 | pad = [9 9]; 13 | 14 | % Default prm 15 | % maxSite = 4.5; 16 | um_per_pix = 11; 17 | 18 | % Shanks 19 | % shank = ones(size(channels)); shank(geometry(:,1)>0)=2; -------------------------------------------------------------------------------- /matlab/prb/boyden256D.prb: -------------------------------------------------------------------------------- 1 | % Order of the probe sites in the recording file 2 | channels = sort([2:8:256, 4:8:256, 6:8:256, 8:8:256]); 3 | %channels = setdiff(channels, [12 28 32 43 44 47 52 63 64 68 71 83 106 116 172 214 218 221 253 254]); 4 | 5 | % Site location in micrometers (x and y) 6 | geometry = zeros(256, 2); 7 | geometry(:,1) = repmat((0:3)'*11, [64,1]); 8 | geometry(:,2) = reshape(repmat((0:63)*11, [4,1]), 256,1); 9 | geometry = geometry(channels,:); 10 | 11 | % Recording contact pad size in micrometers. Height x width 12 | pad = [9 9]; 13 | 14 | % Default prm 15 | % maxSite = 4.5; 16 | um_per_pix = 11; 17 | 18 | % Shanks 19 | % shank = ones(size(channels)); shank(geometry(:,1)>0)=2; -------------------------------------------------------------------------------- /matlab/prb/boyden256_2A.prb: -------------------------------------------------------------------------------- 1 | % Order of the probe sites in the recording file 2 | channels = sort([1:8:256, 3:8:256]); 3 | 4 | % Site location in micrometers (x and y) 5 | geometry = zeros(256, 2); 6 | geometry(:,1) = repmat((0:3)'*11, [64,1]); 7 | geometry(:,2) = reshape(repmat((0:63)*11, [4,1]), 256,1); 8 | geometry = geometry(channels,:); 9 | 10 | % Recording contact pad size in micrometers. Height x width 11 | pad = [9 9]; 12 | 13 | % Default prm 14 | % maxSite = 4.5; 15 | um_per_pix = 11; 16 | 17 | % Shanks 18 | % shank = ones(size(channels)); shank(geometry(:,1)>0)=2; -------------------------------------------------------------------------------- /matlab/prb/boyden256_2B.prb: -------------------------------------------------------------------------------- 1 | % Order of the probe sites in the recording file 2 | channels = sort([2:8:256, 4:8:256]); 3 | 4 | % Site location in micrometers (x and y) 5 | geometry = zeros(256, 2); 6 | geometry(:,1) = repmat((0:3)'*11, [64,1]); 7 | geometry(:,2) = reshape(repmat((0:63)*11, [4,1]), 256,1); 8 | geometry = geometry(channels,:); 9 | 10 | % Recording contact pad size in micrometers. Height x width 11 | pad = [9 9]; 12 | 13 | % Default prm 14 | % maxSite = 4.5; 15 | um_per_pix = 11; 16 | 17 | % Shanks 18 | % shank = ones(size(channels)); shank(geometry(:,1)>0)=2; -------------------------------------------------------------------------------- /matlab/prb/boyden256_2C.prb: -------------------------------------------------------------------------------- 1 | % Order of the probe sites in the recording file 2 | channels = sort([5:8:256, 7:8:256]); 3 | 4 | % Site location in micrometers (x and y) 5 | geometry = zeros(256, 2); 6 | geometry(:,1) = repmat((0:3)'*11, [64,1]); 7 | geometry(:,2) = reshape(repmat((0:63)*11, [4,1]), 256,1); 8 | geometry = geometry(channels,:); 9 | 10 | % Recording contact pad size in micrometers. Height x width 11 | pad = [9 9]; 12 | 13 | % Default prm 14 | % maxSite = 4.5; 15 | um_per_pix = 11; 16 | 17 | % Shanks 18 | % shank = ones(size(channels)); shank(geometry(:,1)>0)=2; -------------------------------------------------------------------------------- /matlab/prb/boyden256_2D.prb: -------------------------------------------------------------------------------- 1 | % Order of the probe sites in the recording file 2 | channels = sort([6:8:256, 8:8:256]); 3 | 4 | % Site location in micrometers (x and y) 5 | geometry = zeros(256, 2); 6 | geometry(:,1) = repmat((0:3)'*11, [64,1]); 7 | geometry(:,2) = reshape(repmat((0:63)*11, [4,1]), 256,1); 8 | geometry = geometry(channels,:); 9 | 10 | % Recording contact pad size in micrometers. Height x width 11 | pad = [9 9]; 12 | 13 | % Default prm 14 | % maxSite = 4.5; 15 | um_per_pix = 11; 16 | 17 | % Shanks 18 | % shank = ones(size(channels)); shank(geometry(:,1)>0)=2; -------------------------------------------------------------------------------- /matlab/prb/boyden256_2E.prb: -------------------------------------------------------------------------------- 1 | % Order of the probe sites in the recording file 2 | channels = sort([1:8:256, 7:8:256]); 3 | 4 | % Site location in micrometers (x and y) 5 | geometry = zeros(256, 2); 6 | geometry(:,1) = repmat((0:3)'*11, [64,1]); 7 | geometry(:,2) = reshape(repmat((0:63)*11, [4,1]), 256,1); 8 | geometry = geometry(channels,:); 9 | 10 | % Recording contact pad size in micrometers. Height x width 11 | pad = [9 9]; 12 | 13 | % Default prm 14 | % maxSite = 4.5; 15 | um_per_pix = 11; 16 | 17 | % Shanks 18 | % shank = ones(size(channels)); shank(geometry(:,1)>0)=2; -------------------------------------------------------------------------------- /matlab/prb/boyden256_2F.prb: -------------------------------------------------------------------------------- 1 | % Order of the probe sites in the recording file 2 | channels = sort([2:8:256, 8:8:256]); 3 | 4 | % Site location in micrometers (x and y) 5 | geometry = zeros(256, 2); 6 | geometry(:,1) = repmat((0:3)'*11, [64,1]); 7 | geometry(:,2) = reshape(repmat((0:63)*11, [4,1]), 256,1); 8 | geometry = geometry(channels,:); 9 | 10 | % Recording contact pad size in micrometers. Height x width 11 | pad = [9 9]; 12 | 13 | % Default prm 14 | % maxSite = 4.5; 15 | um_per_pix = 11; 16 | 17 | % Shanks 18 | % shank = ones(size(channels)); shank(geometry(:,1)>0)=2; -------------------------------------------------------------------------------- /matlab/prb/boyden256_2G.prb: -------------------------------------------------------------------------------- 1 | % Order of the probe sites in the recording file 2 | channels = sort([5:8:256, 3:8:256]); 3 | 4 | % Site location in micrometers (x and y) 5 | geometry = zeros(256, 2); 6 | geometry(:,1) = repmat((0:3)'*11, [64,1]); 7 | geometry(:,2) = reshape(repmat((0:63)*11, [4,1]), 256,1); 8 | geometry = geometry(channels,:); 9 | 10 | % Recording contact pad size in micrometers. Height x width 11 | pad = [9 9]; 12 | 13 | % Default prm 14 | % maxSite = 4.5; 15 | um_per_pix = 11; 16 | 17 | % Shanks 18 | % shank = ones(size(channels)); shank(geometry(:,1)>0)=2; -------------------------------------------------------------------------------- /matlab/prb/boyden256_2H.prb: -------------------------------------------------------------------------------- 1 | % Order of the probe sites in the recording file 2 | channels = sort([6:8:256, 4:8:256]); 3 | 4 | % Site location in micrometers (x and y) 5 | geometry = zeros(256, 2); 6 | geometry(:,1) = repmat((0:3)'*11, [64,1]); 7 | geometry(:,2) = reshape(repmat((0:63)*11, [4,1]), 256,1); 8 | geometry = geometry(channels,:); 9 | 10 | % Recording contact pad size in micrometers. Height x width 11 | pad = [9 9]; 12 | 13 | % Default prm 14 | % maxSite = 4.5; 15 | um_per_pix = 11; 16 | 17 | % Shanks 18 | % shank = ones(size(channels)); shank(geometry(:,1)>0)=2; -------------------------------------------------------------------------------- /matlab/prb/boyden256_3C.prb: -------------------------------------------------------------------------------- 1 | % Order of the probe sites in the recording file 2 | channels = sort([5:16:256, 8:16:256, 14:16:256, 16:16:256]); 3 | 4 | % Site location in micrometers (x and y) 5 | geometry = zeros(256, 2); 6 | geometry(:,1) = repmat((0:3)'*11, [64,1]); 7 | geometry(:,2) = reshape(repmat((0:63)*11, [4,1]), 256,1); 8 | geometry = geometry(channels,:); 9 | 10 | % Recording contact pad size in micrometers. Height x width 11 | pad = [9 9]; 12 | 13 | % Default prm 14 | % maxSite = 4.5; 15 | um_per_pix = 11; 16 | 17 | % Shanks 18 | % shank = ones(size(channels)); shank(geometry(:,1)>0)=2; -------------------------------------------------------------------------------- /matlab/prb/boyden256_3D.prb: -------------------------------------------------------------------------------- 1 | % Order of the probe sites in the recording file 2 | channels = sort([6:16:256, 8:16:256, 13:16:256, 16:16:256]); 3 | 4 | % Site location in micrometers (x and y) 5 | geometry = zeros(256, 2); 6 | geometry(:,1) = repmat((0:3)'*11, [64,1]); 7 | geometry(:,2) = reshape(repmat((0:63)*11, [4,1]), 256,1); 8 | geometry = geometry(channels,:); 9 | 10 | % Recording contact pad size in micrometers. Height x width 11 | pad = [9 9]; 12 | 13 | % Default prm 14 | % maxSite = 4.5; 15 | um_per_pix = 11; 16 | 17 | % Shanks 18 | % shank = ones(size(channels)); shank(geometry(:,1)>0)=2; -------------------------------------------------------------------------------- /matlab/prb/boyden256_4A.prb: -------------------------------------------------------------------------------- 1 | % Order of the probe sites in the recording file 2 | channels = sort([1:16:256, 3:16:256, 10:16:256, 12:16:256]); 3 | 4 | % Site location in micrometers (x and y) 5 | geometry = zeros(256, 2); 6 | geometry(:,1) = repmat((0:3)'*11, [64,1]); 7 | geometry(:,2) = reshape(repmat((0:63)*11, [4,1]), 256,1); 8 | geometry = geometry(channels,:); 9 | 10 | % Recording contact pad size in micrometers. Height x width 11 | pad = [9 9]; 12 | 13 | % Default prm 14 | % maxSite = 4.5; 15 | um_per_pix = 11; 16 | 17 | % Shanks 18 | % shank = ones(size(channels)); shank(geometry(:,1)>0)=2; -------------------------------------------------------------------------------- /matlab/prb/boyden256_4B.prb: -------------------------------------------------------------------------------- 1 | % Order of the probe sites in the recording file 2 | channels = sort([2:16:256, 4:16:256, 9:16:256, 11:16:256]); 3 | 4 | % Site location in micrometers (x and y) 5 | geometry = zeros(256, 2); 6 | geometry(:,1) = repmat((0:3)'*11, [64,1]); 7 | geometry(:,2) = reshape(repmat((0:63)*11, [4,1]), 256,1); 8 | geometry = geometry(channels,:); 9 | 10 | % Recording contact pad size in micrometers. Height x width 11 | pad = [9 9]; 12 | 13 | % Default prm 14 | % maxSite = 4.5; 15 | um_per_pix = 11; 16 | 17 | % Shanks 18 | % shank = ones(size(channels)); shank(geometry(:,1)>0)=2; -------------------------------------------------------------------------------- /matlab/prb/boyden256_4C.prb: -------------------------------------------------------------------------------- 1 | % Order of the probe sites in the recording file 2 | channels = sort([5:16:256, 7:16:256, 14:16:256, 16:16:256]); 3 | 4 | % Site location in micrometers (x and y) 5 | geometry = zeros(256, 2); 6 | geometry(:,1) = repmat((0:3)'*11, [64,1]); 7 | geometry(:,2) = reshape(repmat((0:63)*11, [4,1]), 256,1); 8 | geometry = geometry(channels,:); 9 | 10 | % Recording contact pad size in micrometers. Height x width 11 | pad = [9 9]; 12 | 13 | % Default prm 14 | % maxSite = 4.5; 15 | um_per_pix = 11; 16 | 17 | % Shanks 18 | % shank = ones(size(channels)); shank(geometry(:,1)>0)=2; -------------------------------------------------------------------------------- /matlab/prb/boyden256_4D.prb: -------------------------------------------------------------------------------- 1 | % Order of the probe sites in the recording file 2 | channels = sort([6:16:256, 8:16:256, 13:16:256, 15:16:256]); 3 | 4 | % Site location in micrometers (x and y) 5 | geometry = zeros(256, 2); 6 | geometry(:,1) = repmat((0:3)'*11, [64,1]); 7 | geometry(:,2) = reshape(repmat((0:63)*11, [4,1]), 256,1); 8 | geometry = geometry(channels,:); 9 | 10 | % Recording contact pad size in micrometers. Height x width 11 | pad = [9 9]; 12 | 13 | % Default prm 14 | % maxSite = 4.5; 15 | um_per_pix = 11; 16 | 17 | % Shanks 18 | % shank = ones(size(channels)); shank(geometry(:,1)>0)=2; -------------------------------------------------------------------------------- /matlab/prb/boyden256_4G.prb: -------------------------------------------------------------------------------- 1 | % Order of the probe sites in the recording file 2 | channels = sort([5:16:256, 7:16:256, 14:16:256, 16:16:256]); 3 | 4 | % Site location in micrometers (x and y) 5 | geometry = zeros(256, 2); 6 | geometry(:,1) = repmat((0:3)'*11, [64,1]); 7 | geometry(:,2) = reshape(repmat((0:63)*11, [4,1]), 256,1); 8 | geometry = geometry(channels,:); 9 | 10 | % Recording contact pad size in micrometers. Height x width 11 | pad = [9 9]; 12 | 13 | % Default prm 14 | % maxSite = 4.5; 15 | um_per_pix = 11; 16 | 17 | % Shanks 18 | % shank = ones(size(channels)); shank(geometry(:,1)>0)=2; -------------------------------------------------------------------------------- /matlab/prb/boyden4.prb: -------------------------------------------------------------------------------- 1 | % Order of the probe sites in the recording file 2 | channels = 1:256; 3 | 4 | % Site location in micrometers (x and y) 5 | geometry = zeros(256, 2); 6 | geometry(:,1) = repmat((0:3)'*11, [64,1]); 7 | geometry(:,2) = reshape(repmat((0:63)*11, [4,1]), 256,1); 8 | 9 | % Recording contact pad size in micrometers. Height x width 10 | pad = [9 9]; 11 | 12 | % Default prm 13 | % maxSite = 4.5; 14 | um_per_pix = 11; 15 | 16 | % Shanks 17 | % shank = ones(size(channels)); shank(geometry(:,1)>0)=2; -------------------------------------------------------------------------------- /matlab/prb/boyden64.prb: -------------------------------------------------------------------------------- 1 | % Order of the probe sites in the recording file 2 | channels = 1:64; 3 | 4 | % Site location in micrometers (x and y) 5 | geometry = zeros(64, 2); 6 | geometry(:,1) = repmat((0:1)'*11, [32,1]); 7 | geometry(:,2) = reshape(repmat((0:31)*11, [2,1]), 64,1); 8 | 9 | % Recording contact pad size in micrometers. Height x width 10 | pad = [9 9]; 11 | 12 | % Default prm 13 | % maxSite = 4.5; 14 | um_per_pix = 11; 15 | 16 | % Shanks 17 | % shank = ones(size(channels)); shank(geometry(:,1)>0)=2; -------------------------------------------------------------------------------- /matlab/prb/bruns64.prb: -------------------------------------------------------------------------------- 1 | channels = 1:64; 2 | 3 | geometry = zeros(64, 2); 4 | geometry(:,2) = 25*(0:63); 5 | geometry(:,1) = 0; 6 | 7 | pad = [12 12]; %in micrometers, height x width 8 | shank = ones(1,64); 9 | 10 | maxSite = 3; 11 | nSites_ref = 2; -------------------------------------------------------------------------------- /matlab/prb/catalin15.prb: -------------------------------------------------------------------------------- 1 | % catalin15.prb. single column 2 | 3 | channels = 1:15; 4 | 5 | nChans = numel(channels); 6 | geometry = zeros(nChans, 2); 7 | vi1 = 1:nChans; 8 | geometry(:,2) = 22*(vi1-1); 9 | 10 | pad = [12 12]; %in micrometers, height x width -------------------------------------------------------------------------------- /matlab/prb/catalin30.prb: -------------------------------------------------------------------------------- 1 | % catalin30.prb. two column 2 | 3 | channels = 1:30; 4 | 5 | nChans = numel(channels); 6 | geometry = zeros(nChans, 2); 7 | geometry(1:2:end,1) = 0; 8 | geometry(2:2:end,1) = 22; 9 | 10 | vi1 = 1:2:nChans; 11 | geometry(vi1,2) = 22*(vi1-1); 12 | geometry(vi1+1,2) = 22*(vi1-1); 13 | 14 | pad = [12 12]; %in micrometers, height x width -------------------------------------------------------------------------------- /matlab/prb/cnt_edge_32.prb: -------------------------------------------------------------------------------- 1 | % Two shank DBC edge probe, 32 channels chronic 2 | % "DBC 1.1" 3 | 4 | channels = [1:32]; 5 | geometry = [0, 0; 8, 40; 16, 80; 24, 120; 6 | 32, 160; 40, 200; 48, 240; 54, 280; 7 | 62, 300; 70, 260; 78, 220; 86, 180; 8 | 94, 140; 102, 100; 110, 60; 118, 20; 9 | 0, 0; 8, 40; 16, 80; 24, 120; 10 | 32, 160; 40, 200; 48, 240; 54, 280; 11 | 62, 300; 70, 260; 78, 220; 86, 180; 12 | 94, 140; 102, 100; 110, 60; 118, 20]; 13 | geometry(17:end,1) = geometry(17:end,1) + 250*118/70; %shanks are 250 um apart 14 | 15 | 16 | pad = [15 11]; %in micrometers, height x width 17 | 18 | cviShank = {1:16, 17:32}; -------------------------------------------------------------------------------- /matlab/prb/example.prb: -------------------------------------------------------------------------------- 1 | % Order of the probe sites in the recording file 2 | channels = [25 26 27 28 29 30 4 31 5 32 6 1 7 2 8 3]; 3 | 4 | % Site coordinate (x,y) in micrometers 5 | geometry = [... 6 | 0, 0; 7 | 22, 12.5; 8 | 0, 25; 9 | 22, 37.5; 10 | 0, 50; 11 | 22, 62.5; 12 | 0, 75; 13 | 22, 87.5; 14 | 0, 100; 15 | 22, 112.5; 16 | 0, 125; 17 | 22, 137.5; 18 | 0, 150; 19 | 22, 162.5; 20 | 0, 175; 21 | 22, 187.5]; 22 | 23 | % Recording contact pad size in micrometers. Height x width 24 | pad = [15 11]; 25 | 26 | % Single shank contains site 1-16 27 | shank = ones(1,16); 28 | -------------------------------------------------------------------------------- /matlab/prb/gaoz32.prb: -------------------------------------------------------------------------------- 1 | % Z Gao 32 channel probe 2 | % ASSY-37W-DBC 1.1 & 1.2-A (Wire Bonded Variation) 3 | 4 | channels = 1 + [28 19 27 20 17 26 30 21 18 25 29 22 24 23 16 31 12 3 11 4 1 10 14 5 2 9 13 6 8 7 0 15]; 5 | 6 | % Site location in micrometers (x and y) 7 | vi16 = 1:16; 8 | geometry(vi16, 1) = -1*[0, 7, -9, 7+2.75, -9-2.75, 7+2.75*2, -9-2.75*2, 7+2.75*3, -9-2.75*3, 7+2.75*4, -9-2.75*4, 7+2.75*5, -9-2.75*5, 7+2.75*6, -9-2.75*6, 7+2.75*7]; 9 | geometry(vi16, 2) = [0:21:315]; 10 | geometry(vi16+16,1) = geometry(vi16,1) + 250; 11 | geometry(vi16+16,2) = geometry(vi16,2); 12 | 13 | % Recording contact pad size in micrometers. Height x width 14 | pad = [16 10]; 15 | 16 | shank = [repmat(1,[1,16]), repmat(2,[1,16])]; 17 | maxSite = 3; 18 | nSites_ref = 2; -------------------------------------------------------------------------------- /matlab/prb/h1_dudman.prb: -------------------------------------------------------------------------------- 1 | channels = 1+[42 39 63 24 44 19 26 38 37 21 43 36 41 40 20 28 47 32 27 18 46 22 31 16 34 35 17 33 45 29 25 30, 60 2 61 50 62 1 14 6 15 0 9 49 13 4 23 48 3 11 55 54 59 52 10 58 8 53 5 51 7 56 57 12]; 2 | geometry = zeros(64, 2); 3 | 4 | % first shank 5 | vi32 = 1:32; 6 | vi32_a = 1:4:32; 7 | geometry(vi32,1) = toVec(repmat(25*(0:3), [1,8])); 8 | geometry(vi32,2) = toVec(repmat(25*(0:7), [4,1])); 9 | 10 | % sescond shank 11 | geometry(vi32+32,1) = geometry(vi32,1) + 250; 12 | geometry(vi32+32,2) = geometry(vi32,2); 13 | 14 | pad = [12 12]; %in micrometers, height x width 15 | shank = [ones(1, 32), 2*ones(1,32)]; -------------------------------------------------------------------------------- /matlab/prb/hextrode.prb: -------------------------------------------------------------------------------- 1 | % Order of the probe sites in the recording file 2 | channels = 1:6; 3 | 4 | % Site location in micrometers (x and y) 5 | %geometry = [0 10 20 20 10 0; 0 0 10 10 20 20]'; 6 | geometry = [0 0 0 0 0 0; 0 1 2 3 4 5]*25'; 7 | 8 | % Reference sites are being excluded 9 | pad = [12 12]; 10 | 11 | % Default prm 12 | maxSite = 2.5; 13 | um_per_pix = 25; -------------------------------------------------------------------------------- /matlab/prb/hh1_dudman.prb: -------------------------------------------------------------------------------- 1 | channels = [112 111 110 109 107 108 105 106 103 104 101 102 99 100 97 98 81 82 83 84 86 85 88 87 90 89 92 91 94 93 96 95 66 65 68 67 70 69 72 71 74 73 76 75 77 78 79 80 127 128 125 126 123 124 121 122 119 120 117 118 116 115 114 113]; 2 | 3 | geometry = zeros(64, 2); 4 | geometry(:,2) = 20*(0:63); 5 | pad = [12 12]; %in micrometers, height x width -------------------------------------------------------------------------------- /matlab/prb/hh2_arseny.prb: -------------------------------------------------------------------------------- 1 | channels = 64+ [[48 47 46 45 43 44 41 42 39 40 37 38 35 36 33 34 17 18 19 20 22 21 24 23 26 25 28 27 30 29 32 31], [2 1 4 3 6 5 8 7 10 9 12 11 13 14 15 16 63 64 61 62 59 60 57 58 55 56 53 54 52 51 50 49]]; 2 | 3 | vi32 = 1:32; 4 | geometry = zeros(64, 2); 5 | geometry(vi32,2) = 25*(vi32-1); 6 | geometry(vi32+32,1) = 250; 7 | geometry(vi32+32,2) = geometry(vi32,2); 8 | 9 | pad = [12 12]; %in micrometers, height x width 10 | shank = [ones(1, 32), 2*ones(1,32)]; -------------------------------------------------------------------------------- /matlab/prb/hh2_chronic.prb: -------------------------------------------------------------------------------- 1 | channels = 1 + [17 38 60 40 24 23 25 22 26 21 27 28 29 31 34 45 39 41 37 42 11 59 58 33 47 19 35 43 36 44 46 56 32 57 10 13 3 51 53 55 48 18 20 14 15 63 62 49 7 8 6 9 5 52 4 12 1 0 16 50 61 2 30 54]; 2 | 3 | vi32 = 1:32; 4 | geometry = zeros(64, 2); 5 | geometry(vi32,2) = 25*(vi32-1); 6 | geometry(vi32+32,1) = 250; 7 | geometry(vi32+32,2) = geometry(vi32,2); 8 | 9 | pad = [12 12]; %in micrometers, height x width 10 | shank = [ones(1, 32), 2*ones(1,32)]; -------------------------------------------------------------------------------- /matlab/prb/hh2_economo.prb: -------------------------------------------------------------------------------- 1 | channels = [112 111 110 109 107 108 105 106 103 104 101 102 99 100 97 98 81 82 83 84 86 85 88 87 90 89 92 91 94 93 96 95 66 65 68 67 70 69 72 71 74 73 76 75 77 78 79 80 127 128 125 126 123 124 121 122 119 120 117 118 116 115 114 113]; 2 | 3 | vi32 = 1:32; 4 | geometry = zeros(64, 2); 5 | geometry(vi32,2) = 25*(vi32-1); 6 | geometry(vi32+32,1) = 250; 7 | geometry(vi32+32,2) = geometry(vi32,2); 8 | 9 | pad = [12 12]; %in micrometers, height x width 10 | shank = [ones(1, 32), 2*ones(1,32)]; -------------------------------------------------------------------------------- /matlab/prb/hh2_economo1.prb: -------------------------------------------------------------------------------- 1 | channels = [112 111 110 109 107 108 105 106 103 104 101 102 99 100 97 98 81 82 83 84 86 85 88 87 90 89 92 91 94 93 96 95 66 65 68 67 70 69 72 71 74 73 76 75 77 78 79 80 127 128 125 126 123 124 121 122 119 120 117 118 116 115 114 113]; 2 | 3 | channels = channels(1:32); 4 | geometry = zeros(32, 2); 5 | geometry(:,2) = 25*(0:31); 6 | 7 | pad = [12 12]; %in micrometers, height x width 8 | shank = [ones(1, 32)]; -------------------------------------------------------------------------------- /matlab/prb/hh2_economo2.prb: -------------------------------------------------------------------------------- 1 | channels = [112 111 110 109 107 108 105 106 103 104 101 102 99 100 97 98 81 82 83 84 86 85 88 87 90 89 92 91 94 93 96 95 66 65 68 67 70 69 72 71 74 73 76 75 77 78 79 80 127 128 125 126 123 124 121 122 119 120 117 118 116 115 114 113]; 2 | 3 | channels = channels(33:end); 4 | geometry = zeros(32, 2); 5 | geometry(:,2) = 25*(0:31); 6 | 7 | pad = [12 12]; %in micrometers, height x width 8 | shank = [ones(1, 32)]; -------------------------------------------------------------------------------- /matlab/prb/hide32.prb: -------------------------------------------------------------------------------- 1 | channels = 0 + [32:-1:1]; 2 | 3 | geometry = zeros(32, 2); 4 | geometry(:,1) = 0; 5 | geometry(:,2) = 25*(0:31); 6 | 7 | pad = [12 12]; %in micrometers, height x width -------------------------------------------------------------------------------- /matlab/prb/hide32_new.prb: -------------------------------------------------------------------------------- 1 | channels = 0 + [1:1:32]; 2 | 3 | geometry = zeros(32, 2); 4 | geometry(:,1) = 0; 5 | geometry(:,2) = 25*(0:31); 6 | 7 | pad = [12 12]; %in micrometers, height x width -------------------------------------------------------------------------------- /matlab/prb/hide64.prb: -------------------------------------------------------------------------------- 1 | nSites = 64; 2 | 3 | channels = 0 + [nSites:-1:1]; 4 | 5 | geometry = zeros(nSites, 2); 6 | geometry(:,1) = 0; 7 | geometry(:,2) = 20*(0:nSites-1); 8 | 9 | pad = [12 12]; %in micrometers, height x width -------------------------------------------------------------------------------- /matlab/prb/imec2_nerf.prb: -------------------------------------------------------------------------------- 1 | % Order of the probe sites in the recording file 2 | channels = 1:120; 3 | 4 | % Site location in micrometers (x and y) 5 | geometry = zeros(128, 2); 6 | geometry(1:2:end,1) = 0; 7 | geometry(2:2:end,1) = 30; 8 | geometry(1:2:end,2) = 20*(0:63); 9 | geometry(2:2:end,2) = geometry(1:2:end,2); 10 | 11 | % Reference sites are being excluded 12 | ref_sites = [1 18 33 50 65 82 97 114]; 13 | geometry(ref_sites,:) = []; 14 | 15 | % Recording contact pad size in micrometers. Height x width 16 | pad = [12 12]; -------------------------------------------------------------------------------- /matlab/prb/imec3.prb: -------------------------------------------------------------------------------- 1 | % Order of the probe sites in the recording file 2 | channels = 1:384; 3 | 4 | % Site location in micrometers (x and y) 5 | geometry = zeros(384, 2); 6 | viHalf = 0:(384/2-1); 7 | geometry(1:2:end,2) = viHalf * 20; 8 | geometry(2:2:end,2) = geometry(1:2:end,2); 9 | geometry(1:4:end,1) = 16; %0 before 10 | geometry(2:4:end,1) = 48; %32 before 11 | geometry(3:4:end,1) = 0; %16 before 12 | geometry(4:4:end,1) = 32; %48 before 13 | 14 | % Reference sites are being excluded 15 | ref_sites = [37 76 113 152 189 228 265 304 341 380]; 16 | channels(ref_sites) = []; 17 | geometry(ref_sites,:) = []; 18 | 19 | % Recording contact pad size in micrometers. Height x width 20 | pad = [12 12]; 21 | 22 | % Default prm 23 | maxSite = 4.5; 24 | um_per_pix = 20; 25 | nChans = 769; 26 | sRateHz = 30000; -------------------------------------------------------------------------------- /matlab/prb/imec3B2.prb: -------------------------------------------------------------------------------- 1 | % Neuropixels Phase 3B probe (staggered) 2 | % Order of the probe sites in the recording file 3 | channels = 1:384; 4 | 5 | % Site location in micrometers (x and y) 6 | geometry = [repmat([43; 11; 59; 27], 96, 1), 20*reshape(repmat((1:192), 2, 1), 384, 1)]; 7 | 8 | % Reference sites: not removed by default 9 | ref_sites = [192]; %192: tip reference 10 | channels(ref_sites) = []; 11 | geometry(ref_sites,:) = []; 12 | 13 | % Recording contact pad size in micrometers. Height x width 14 | pad = [12 12]; -------------------------------------------------------------------------------- /matlab/prb/imec3_150.prb: -------------------------------------------------------------------------------- 1 | % Order of the probe sites in the recording file 2 | nSites = 150; 3 | channels = 1:nSites; 4 | 5 | % Site location in micrometers (x and y) 6 | geometry = zeros(nSites, 2); 7 | viHalf = 0:(nSites/2-1); 8 | geometry(1:2:end,2) = viHalf * 20; 9 | geometry(2:2:end,2) = geometry(1:2:end,2); 10 | geometry(1:4:end,1) = 0; 11 | geometry(2:4:end,1) = 32; 12 | geometry(3:4:end,1) = 16; 13 | geometry(4:4:end,1) = 48; 14 | 15 | % Reference sites are being excluded 16 | ref_sites = [37 76 113]; 17 | channels(ref_sites) = []; 18 | geometry(ref_sites,:) = []; 19 | 20 | % Recording contact pad size in micrometers. Height x width 21 | pad = [12 12]; 22 | 23 | % Default prm 24 | um_per_pix = 20; -------------------------------------------------------------------------------- /matlab/prb/imec3_all.prb: -------------------------------------------------------------------------------- 1 | % Order of the probe sites in the recording file 2 | channels = 1:384; 3 | 4 | % Site location in micrometers (x and y) 5 | geometry = zeros(384, 2); 6 | viHalf = 0:(384/2-1); 7 | geometry(1:2:end,2) = viHalf * 20; 8 | geometry(2:2:end,2) = geometry(1:2:end,2); 9 | geometry(1:4:end,1) = 0; 10 | geometry(2:4:end,1) = 32; 11 | geometry(3:4:end,1) = 16; 12 | geometry(4:4:end,1) = 48; 13 | 14 | % Reference sites are being excluded 15 | ref_sites = [37 76 113 152 189 228 265 304 341 380]; 16 | % channels(ref_sites) = []; 17 | % geometry(ref_sites,:) = []; 18 | 19 | % Recording contact pad size in micrometers. Height x width 20 | pad = [12 12]; 21 | 22 | % Default prm 23 | maxSite = 4.5; 24 | um_per_pix = 20; -------------------------------------------------------------------------------- /matlab/prb/imec3_hopkins.prb: -------------------------------------------------------------------------------- 1 | % Order of the probe sites in the recording file 2 | channels = 1:384; 3 | 4 | % Site location in micrometers (x and y) 5 | geometry = zeros(384, 2); 6 | viHalf = 0:(384/2-1); 7 | geometry(1:2:end,2) = viHalf * 20; 8 | geometry(2:2:end,2) = geometry(1:2:end,2); 9 | geometry(1:4:end,1) = 16; %0 before 10 | geometry(2:4:end,1) = 48; %32 before 11 | geometry(3:4:end,1) = 0; %16 before 12 | geometry(4:4:end,1) = 32; %48 before 13 | 14 | % Reference sites are being excluded 15 | ref_sites = [37 76 113 152 189 228 265 304 341 380]; 16 | channels(ref_sites) = []; 17 | geometry(ref_sites,:) = []; 18 | 19 | % Recording contact pad size in micrometers. Height x width 20 | pad = [12 12]; 21 | 22 | % Default prm 23 | maxSite = 4.5; 24 | um_per_pix = 20; 25 | nChans = 769; 26 | sRateHz = 30000; -------------------------------------------------------------------------------- /matlab/prb/imec3_opt1.prb: -------------------------------------------------------------------------------- 1 | % Order of the probe sites in the recording file 2 | channels = 1:384; 3 | 4 | % Site location in micrometers (x and y) 5 | geometry = zeros(384, 2); 6 | viHalf = 0:(384/2-1); 7 | geometry(1:2:end,2) = viHalf * 20; 8 | geometry(2:2:end,2) = geometry(1:2:end,2); 9 | geometry(1:4:end,1) = 7; %0 before 10 | geometry(2:4:end,1) = 28; %21 before 11 | geometry(3:4:end,1) = 0; %7 before 12 | geometry(4:4:end,1) = 21; %28 before 13 | 14 | % Reference sites are being excluded 15 | ref_sites = [37 76 113 152 189 228 265 304 341 380]; 16 | channels(ref_sites) = []; 17 | geometry(ref_sites,:) = []; 18 | 19 | % Recording contact pad size in micrometers. Height x width 20 | pad = [12 12]; 21 | 22 | um_per_pix = 20; 23 | %maxSite = 6.5; 24 | %nSites_ref = 4; -------------------------------------------------------------------------------- /matlab/prb/imec3_opt2.prb: -------------------------------------------------------------------------------- 1 | % Order of the probe sites in the recording file 2 | channels = 1:384; 3 | 4 | % Site location in micrometers (x and y) 5 | geometry = zeros(384, 2); 6 | viHalf = 0:(384/2-1); 7 | geometry(1:2:end,2) = viHalf * 20; 8 | geometry(2:2:end,2) = geometry(1:2:end,2); 9 | geometry(1:4:end,1) = 16; %0 before 10 | geometry(2:4:end,1) = 48; %32 before 11 | geometry(3:4:end,1) = 0; %16 before 12 | geometry(4:4:end,1) = 32; %48 before 13 | 14 | % Reference sites are being excluded 15 | ref_sites = [37 76 113 152 189 228 265 304 341 380]; 16 | channels(ref_sites) = []; 17 | geometry(ref_sites,:) = []; 18 | 19 | % Recording contact pad size in micrometers. Height x width 20 | pad = [12 12]; 21 | 22 | um_per_pix = 20; 23 | %maxSite = 6.5; 24 | %nSites_ref = 4; -------------------------------------------------------------------------------- /matlab/prb/imec3_opt3.prb: -------------------------------------------------------------------------------- 1 | % Order of the probe sites in the recording file 2 | channels = 1:384; 3 | 4 | % Site location in micrometers (x and y) 5 | geometry = zeros(384, 2); 6 | viHalf = 0:(384/2-1); 7 | geometry(1:2:end,2) = viHalf * 20; 8 | geometry(2:2:end,2) = geometry(1:2:end,2); 9 | geometry(1:4:end,1) = 16; %0 before 10 | geometry(2:4:end,1) = 48; %32 before 11 | geometry(3:4:end,1) = 0; %16 before 12 | geometry(4:4:end,1) = 32; %48 before 13 | 14 | % Reference sites are being excluded 15 | ref_sites = [37 76 113 152 189 228 265 304 341 380]; 16 | channels(ref_sites) = []; 17 | geometry(ref_sites,:) = []; 18 | 19 | % Recording contact pad size in micrometers. Height x width 20 | pad = [12 12]; 21 | 22 | % Default prm 23 | um_per_pix = 20; 24 | %maxSite = 6.5; 25 | %nSites_ref = 4; -------------------------------------------------------------------------------- /matlab/prb/imec3_opt3_195_245.prb: -------------------------------------------------------------------------------- 1 | % Order of the probe sites in the recording file 2 | channels = 195:246; 3 | 4 | % Site location in micrometers (x and y) 5 | geometry = zeros(numel(channels), 2); 6 | viHalf = 0:(numel(channels)/2-1); 7 | geometry(1:2:end,2) = viHalf * 20; 8 | geometry(2:2:end,2) = geometry(1:2:end,2); 9 | geometry(1:4:end,1) = 0; 10 | geometry(2:4:end,1) = 32; 11 | geometry(3:4:end,1) = 16; 12 | geometry(4:4:end,1) = 48; 13 | 14 | % Reference sites are being excluded 15 | 16 | 17 | % Recording contact pad size in micrometers. Height x width 18 | pad = [12 12]; 19 | 20 | % Default prm 21 | maxSite = 4.5; 22 | um_per_pix = 20; -------------------------------------------------------------------------------- /matlab/prb/imec3_opt4.prb: -------------------------------------------------------------------------------- 1 | % Order of the probe sites in the recording file 2 | channels = 1:276; 3 | 4 | % Site location in micrometers (x and y) 5 | nChans = numel(channels); 6 | geometry = zeros(nChans, 2); 7 | viHalf = 0:(nChans/2-1); 8 | geometry(1:2:end,2) = viHalf * 20; 9 | geometry(2:2:end,2) = geometry(1:2:end,2); 10 | geometry(1:4:end,1) = 16; %0 before 11 | geometry(2:4:end,1) = 48; %32 before 12 | geometry(3:4:end,1) = 0; %16 before 13 | geometry(4:4:end,1) = 32; %48 before 14 | 15 | % Reference sites are being excluded 16 | ref_sites = [37 76 113 152 189 228 265]; 17 | channels(ref_sites) = []; 18 | geometry(ref_sites,:) = []; 19 | 20 | % Recording contact pad size in micrometers. Height x width 21 | pad = [12 12]; 22 | 23 | % Default prm 24 | um_per_pix = 20; 25 | %maxSite = 6.5; 26 | %nSites_ref = 4; -------------------------------------------------------------------------------- /matlab/prb/imec54_nlx_shank1.prb: -------------------------------------------------------------------------------- 1 | % Order of the probe sites in the recording file 2 | channels = [16:-1:1]; %[(16:-1:1), (27:-1:17), (48:-1:33), (59:-1:49)]; 3 | 4 | % Site location, x (first column) 5 | nSites = numel(channels); 6 | site_x = zeros(nSites, 1); 7 | site_y = zeros(nSites, 1); 8 | 9 | site_x(1:2:16) = 0; 10 | site_x(2:2:16) = 22; 11 | site_y(1:16) = (0:15) * 12.5; 12 | geometry = [site_x(:), site_y(:)]; 13 | 14 | % Recording contact pad size in micrometers. Height x width 15 | pad = [15 11]; -------------------------------------------------------------------------------- /matlab/prb/imec54_nlx_shank2.prb: -------------------------------------------------------------------------------- 1 | % Order of the probe sites in the recording file 2 | channels = [27:-1:17]; %[(16:-1:1), (27:-1:17), (48:-1:33), (59:-1:49)]; 3 | 4 | % Site location, x (first column) 5 | nSites = numel(channels); 6 | site_x = zeros(nSites, 1); 7 | site_y = zeros(nSites, 1); 8 | 9 | site_x(1:2:11) = 250; 10 | site_x(2:2:11) = 250 + 22; 11 | site_y(1:11) = (0:10) * 12.5; 12 | geometry = [site_x(:), site_y(:)]; 13 | 14 | % Recording contact pad size in micrometers. Height x width 15 | pad = [15 11]; -------------------------------------------------------------------------------- /matlab/prb/imec54_nlx_shank3.prb: -------------------------------------------------------------------------------- 1 | % Order of the probe sites in the recording file 2 | channels = [48:-1:33]; %[(16:-1:1), (27:-1:17), (48:-1:33), (59:-1:49)]; 3 | 4 | % Site location, x (first column) 5 | nSites = numel(channels); 6 | site_x = zeros(nSites, 1); 7 | site_y = zeros(nSites, 1); 8 | 9 | site_x(1:2:16) = 500; 10 | site_x(2:2:16) = 500+22; 11 | site_y(1:16) = (0:15) * 12.5; 12 | geometry = [site_x(:), site_y(:)]; 13 | 14 | % Recording contact pad size in micrometers. Height x width 15 | pad = [15 11]; -------------------------------------------------------------------------------- /matlab/prb/imec54_nlx_shank4.prb: -------------------------------------------------------------------------------- 1 | % Order of the probe sites in the recording file 2 | channels = [59:-1:49]; %[(16:-1:1), (27:-1:17), (48:-1:33), (59:-1:49)]; 3 | 4 | % Site location, x (first column) 5 | nSites = numel(channels); 6 | site_x = zeros(nSites, 1); 7 | site_y = zeros(nSites, 1); 8 | 9 | site_x(1:2:11) = 750; 10 | site_x(2:2:11) = 750 + 22; 11 | site_y(1:11) = (0:10) * 12.5; 12 | geometry = [site_x(:), site_y(:)]; 13 | 14 | % Recording contact pad size in micrometers. Height x width 15 | pad = [15 11]; -------------------------------------------------------------------------------- /matlab/prb/int128-2dbc.prb: -------------------------------------------------------------------------------- 1 | % int128-2dbc.prb 2 | 3 | nc_ = 128; % number of channels 4 | n_shank_ = 2; % number of shanks 5 | p_shank_ = 500; % shank pitch in um 6 | v_pitch_ = 20; % vertical site pitch in um 7 | h_pitch_ = 0; % horizontal site pitch, use negative to flip L/R 8 | pad = [15, 11]; % site pad height x width in um 9 | 10 | nc_shank_ = floor(nc_/n_shank_); 11 | channels = 1 + [48:63, 32:47, 16:31, 0:15]; 12 | channels = channels(:) + [0:n_shank_-1]*nc_shank_; channels=channels(:)'; 13 | 14 | geometry = zeros(nc_, 2); 15 | geometry(1:2:end,1) = 0 + floor((0:2:nc_-1)/nc_shank_)*p_shank_; 16 | geometry(2:2:end,1) = geometry(1:2:end,1) + h_pitch_; 17 | geometry(:,2) = mod(0:nc_-1,nc_shank_) * v_pitch_; 18 | 19 | shank = (ones(nc_shank_,1)*[1:n_shank_]); shank=shank(:); -------------------------------------------------------------------------------- /matlab/prb/int128-4dbc.prb: -------------------------------------------------------------------------------- 1 | % int128-4dbc.prb 2 | 3 | nc_ = 128; % number of channels 4 | n_shank_ = 2; % number of shanks 5 | p_shank_ = 500; % shank pitch in um 6 | v_pitch_ = 50; % vertical site pitch in um 7 | h_pitch_ = 0; % horizontal site pitch, use negative to flip L/R 8 | pad = [15, 11]; % site pad height x width in um 9 | 10 | nc_shank_ = floor(nc_/n_shank_); 11 | channels = 1 + [48:63, 32:47, 16:31, 0:15]; 12 | channels = channels(:) + [0:n_shank_-1]*nc_shank_; channels=channels(:)'; 13 | 14 | geometry = zeros(nc_, 2); 15 | geometry(1:2:end,1) = 0 + floor((0:2:nc_-1)/nc_shank_)*p_shank_; 16 | geometry(2:2:end,1) = geometry(1:2:end,1) + h_pitch_; 17 | geometry(:,2) = mod(0:nc_-1,nc_shank_) * v_pitch_; 18 | 19 | shank = (ones(nc_shank_,1)*[1:n_shank_]); shank=shank(:); -------------------------------------------------------------------------------- /matlab/prb/int128-6dbc.prb: -------------------------------------------------------------------------------- 1 | % int128-6dbc.prb 2 | % two-column probe 3 | 4 | nc_ = 128; % number of channels 5 | n_shank_ = 4; % number of shanks 6 | p_shank_ = 150; % shank pitch in um 7 | v_pitch_ = 25; % vertical site pitch in um 8 | h_pitch_ = 0; % horizontal site pitch, use negative to flip L/R 9 | pad = [15, 11]; % site pad height x width in um 10 | 11 | nc_shank_ = floor(nc_/n_shank_); 12 | channels = 1 + [16:31,0:15]; 13 | channels = channels(:) + [0:n_shank_-1]*nc_shank_; channels=channels(:)'; 14 | 15 | geometry = zeros(nc_, 2); 16 | geometry(1:2:end,1) = 0 + floor((0:2:nc_-1)/nc_shank_)*p_shank_; 17 | geometry(2:2:end,1) = geometry(1:2:end,1) + h_pitch_; 18 | geometry(:,2) = mod(0:nc_-1,nc_shank_) * v_pitch_; 19 | 20 | shank = (ones(nc_shank_,1)*[1:n_shank_]); shank=shank(:); -------------------------------------------------------------------------------- /matlab/prb/int128-9dbc.prb: -------------------------------------------------------------------------------- 1 | % int128-9dbc.prb 2 | 3 | nc_ = 128; % number of channels 4 | n_shank_ = 8; % number of shanks 5 | p_shank_ = 150; % shank pitch in um 6 | v_pitch_ = 50; % vertical site pitch in um 7 | h_pitch_ = 0; % horizontal site pitch, use negative to flip L/R 8 | pad = [15, 11]; % site pad height x width in um 9 | 10 | nc_shank_ = floor(nc_/n_shank_); 11 | channels = 1 + [0:15]; 12 | channels = channels(:) + [0:n_shank_-1]*nc_shank_; channels=channels(:)'; 13 | 14 | geometry = zeros(nc_, 2); 15 | geometry(1:2:end,1) = 0 + floor((0:2:nc_-1)/nc_shank_)*p_shank_; 16 | geometry(2:2:end,1) = geometry(1:2:end,1) + h_pitch_; 17 | geometry(:,2) = mod(0:nc_-1,nc_shank_) * v_pitch_; 18 | 19 | shank = (ones(nc_shank_,1)*[1:n_shank_]); shank=shank(:); -------------------------------------------------------------------------------- /matlab/prb/int64-11dbc.prb: -------------------------------------------------------------------------------- 1 | % int64-11dbc.prb 2 | % one-column probe 3 | 4 | nc_ = 64; % number of channels 5 | n_shank_ = 1; % number of shanks 6 | p_shank_ = 250; % shank pitch in um 7 | v_pitch_ = 31; % vertical site pitch in um 8 | h_pitch_ = 0; % horizontal site pitch, use negative to flip L/R 9 | pad = [11.5, 11.5]; % site pad height x width in um 10 | 11 | nc_shank_ = floor(nc_/n_shank_); 12 | channels = 1+[63:-2:49, 48:2:62, 47:-2:33, 32:2:46, 17:2:31, 30:-2:16, 1:2:15, 14:-2:0]; 13 | 14 | geometry = zeros(nc_, 2); 15 | geometry(1:2:end,1) = 0 + floor((0:2:nc_-1)/nc_shank_)*p_shank_; 16 | geometry(2:2:end,1) = geometry(1:2:end,1) + h_pitch_; 17 | geometry(:,2) = mod(0:nc_-1,nc_shank_) * v_pitch_; 18 | 19 | shank = (ones(nc_shank_,1)*[1:n_shank_]); shank=shank(:); -------------------------------------------------------------------------------- /matlab/prb/int64-4dbc.prb: -------------------------------------------------------------------------------- 1 | % int64-4dbc.prb 2 | % one-column probe 3 | 4 | nc_ = 64; % number of channels 5 | n_shank_ = 1; % number of shanks 6 | p_shank_ = 250; % shank pitch in um 7 | v_pitch_ = 20; % vertical site pitch in um 8 | h_pitch_ = 0; % horizontal site pitch, use negative to flip L/R 9 | pad = [15, 11]; % site pad height x width in um 10 | 11 | nc_shank_ = floor(nc_/n_shank_); 12 | channels = 1+[62:-2:48, 49:2:63, 46:-2:32, 33:2:47, 17:2:31, 30:-2:16, 1:2:15, 14:-2:0]; 13 | 14 | geometry = zeros(nc_, 2); 15 | geometry(1:2:end,1) = 0 + floor((0:2:nc_-1)/nc_shank_)*p_shank_; 16 | geometry(2:2:end,1) = geometry(1:2:end,1) + h_pitch_; 17 | geometry(:,2) = mod(0:nc_-1,nc_shank_) * v_pitch_; 18 | 19 | shank = (ones(nc_shank_,1)*[1:n_shank_]); shank=shank(:); -------------------------------------------------------------------------------- /matlab/prb/invitro8.prb: -------------------------------------------------------------------------------- 1 | channels = 1:8; 2 | 3 | geometry(channels, 1) = [0, 7, -9, 7+2.75, -9-2.75, 7+2.75*2, -9-2.75*2, 7+2.75*3]; 4 | geometry(channels, 2) = (channels-1)*28; 5 | 6 | pad = [16 10]; %in micrometers, height x width -------------------------------------------------------------------------------- /matlab/prb/invivo8.prb: -------------------------------------------------------------------------------- 1 | channels = 1:8; 2 | 3 | geometry(channels, 1) = [0, 7, -9, 7+2.75, -9-2.75, 7+2.75*2, -9-2.75*2, 7+2.75*3]; 4 | geometry(channels, 2) = (channels-1)*28; 5 | 6 | pad = [16 10]; %in micrometers, height x width -------------------------------------------------------------------------------- /matlab/prb/kampff32.prb: -------------------------------------------------------------------------------- 1 | channels = 1 + [22 2 29 9 3 28 23 13 18 8 4 27 17 12 19 14 5 26 16 11 20 15 6 25 30 10 21 1 7 24 31 0]; 2 | 3 | geometry = zeros(numel(channels), 2); %x,y 4 | geometry(1:3:end,1) = 0; 5 | geometry(2:3:end,1) = 18; 6 | geometry(3:3:end,1) = -18; 7 | geometry(end,1) = 0; 8 | 9 | nChans = numel(channels); 10 | viLeft = [2:3:nChans]; 11 | geometry(viLeft, 2) = (0:numel(viLeft)-1) * 25 + 12.5; 12 | viRight = [3:3:nChans]; 13 | geometry(viRight, 2) = (0:numel(viRight)-1) * 25 + 12.5; 14 | viMid = [1:3:nChans, nChans]; 15 | geometry(viMid, 2) = (0:numel(viMid)-1) * 25; 16 | 17 | pad = [15 15]; %in micrometers, height x width. circle. 18 | 19 | clear viMid viRight viLeft -------------------------------------------------------------------------------- /matlab/prb/kampff32_2A.prb: -------------------------------------------------------------------------------- 1 | channels = 1 + [22 2 29 9 3 28 23 13 18 8 4 27 17 12 19 14 5 26 16 11 20 15 6 25 30 10 21 1 7 24 31 0]; 2 | 3 | geometry = zeros(numel(channels), 2); %x,y 4 | geometry(1:3:end,1) = 0; 5 | geometry(2:3:end,1) = 18; 6 | geometry(3:3:end,1) = -18; 7 | geometry(end,1) = 0; 8 | 9 | nChans = numel(channels); 10 | viLeft = [2:3:nChans]; 11 | geometry(viLeft, 2) = (0:numel(viLeft)-1) * 25 + 12.5; 12 | viRight = [3:3:nChans]; 13 | geometry(viRight, 2) = (0:numel(viRight)-1) * 25 + 12.5; 14 | viMid = [1:3:nChans, nChans]; 15 | geometry(viMid, 2) = (0:numel(viMid)-1) * 25; 16 | 17 | viRef = viRight; 18 | geometry(viRef, :) = []; 19 | channels(viRef) = []; 20 | 21 | pad = [15 15]; %in micrometers, height x width. circle. 22 | 23 | clear viMid viRight viLeft viRef; -------------------------------------------------------------------------------- /matlab/prb/kampff32_2B.prb: -------------------------------------------------------------------------------- 1 | channels = 1 + [22 2 29 9 3 28 23 13 18 8 4 27 17 12 19 14 5 26 16 11 20 15 6 25 30 10 21 1 7 24 31 0]; 2 | 3 | geometry = zeros(numel(channels), 2); %x,y 4 | geometry(1:3:end,1) = 0; 5 | geometry(2:3:end,1) = 18; 6 | geometry(3:3:end,1) = -18; 7 | geometry(end,1) = 0; 8 | 9 | nChans = numel(channels); 10 | viLeft = [2:3:nChans]; 11 | geometry(viLeft, 2) = (0:numel(viLeft)-1) * 25 + 12.5; 12 | viRight = [3:3:nChans]; 13 | geometry(viRight, 2) = (0:numel(viRight)-1) * 25 + 12.5; 14 | viMid = [1:3:nChans, nChans]; 15 | geometry(viMid, 2) = (0:numel(viMid)-1) * 25; 16 | 17 | viRef = viMid; 18 | geometry(viRef, :) = []; 19 | channels(viRef) = []; 20 | 21 | pad = [15 15]; %in micrometers, height x width. circle. 22 | 23 | clear viMid viRight viLeft viRef; -------------------------------------------------------------------------------- /matlab/prb/kampff32_2C.prb: -------------------------------------------------------------------------------- 1 | channels = 1 + [22 2 29 9 3 28 23 13 18 8 4 27 17 12 19 14 5 26 16 11 20 15 6 25 30 10 21 1 7 24 31 0]; 2 | 3 | geometry = zeros(numel(channels), 2); %x,y 4 | geometry(1:3:end,1) = 0; 5 | geometry(2:3:end,1) = 18; 6 | geometry(3:3:end,1) = -18; 7 | geometry(end,1) = 0; 8 | 9 | nChans = numel(channels); 10 | viLeft = [2:3:nChans]; 11 | geometry(viLeft, 2) = (0:numel(viLeft)-1) * 25 + 12.5; 12 | viRight = [3:3:nChans]; 13 | geometry(viRight, 2) = (0:numel(viRight)-1) * 25 + 12.5; 14 | viMid = [1:3:nChans, nChans]; 15 | geometry(viMid, 2) = (0:numel(viMid)-1) * 25; 16 | 17 | viRef = viMid; 18 | geometry(viRef, :) = []; 19 | channels(viRef) = []; 20 | 21 | pad = [15 15]; %in micrometers, height x width. circle. 22 | 23 | clear viMid viRight viLeft viRef; -------------------------------------------------------------------------------- /matlab/prb/ledprobe.prb: -------------------------------------------------------------------------------- 1 | % Order of the probe sites in the recording file 2 | channels = [1 5 2 6 3 7 4 8]; 3 | channels = repmat(channels, [1,4]); 4 | channels(9:16) = channels(1:8) + 8; 5 | channels(17:24) = channels(1:8) + 16; 6 | channels(25:32) = channels(1:8) + 24; 7 | 8 | % Site location, x (first column) 9 | geometry = [0 0; 13 20; -18.5 40; 23.5 60; -26.5 80; 27.5 100; -26.5 120; 27.5 140]; 10 | geometry = repmat(geometry, [4,1]); 11 | geometry(9:16,1) = geometry(1:8,1) + 250; 12 | geometry(17:24,1) = geometry(1:8,1) + 500; 13 | geometry(25:32,1) = geometry(1:8,1) + 750; 14 | 15 | % Recording contact pad size in micrometers. Height x width 16 | pad = [13 11]; 17 | shank = [repmat(1,1,8), repmat(2,1,8),repmat(3,1,8),repmat(4,1,8)]; -------------------------------------------------------------------------------- /matlab/prb/ledprobe_buz.prb: -------------------------------------------------------------------------------- 1 | % Order of the probe sites in the recording file 2 | channels = [20 24 21 25 27 23 26 22 16 28 17 29 31 19 30 18 12 0 13 1 3 15 2 14 8 4 9 5 7 11 6 10] + 1; 3 | %channels = 1:32; 4 | 5 | % Site location, x (first column) 6 | geometry = [0 0; 13 20; -18.5 40; 23.5 60; -26.5 80; 27.5 100; -26.5 120; 27.5 140]; 7 | geometry = repmat(geometry, [4,1]); 8 | geometry(9:16,1) = geometry(1:8,1) + 250; 9 | geometry(17:24,1) = geometry(1:8,1) + 500; 10 | geometry(25:32,1) = geometry(1:8,1) + 750; 11 | 12 | % Recording contact pad size in micrometers. Height x width 13 | pad = [13 11]; 14 | shank = [repmat(1,1,8), repmat(2,1,8),repmat(3,1,8),repmat(4,1,8)]; -------------------------------------------------------------------------------- /matlab/prb/mixedbank.prb: -------------------------------------------------------------------------------- 1 | % Order of the probe sites in the recording file 2 | channels = [93:384,1:92]; 3 | 4 | % Site location in micrometers (x and y) 5 | geometry = zeros(384, 2); 6 | viHalf = 0:(384/2-1); 7 | geometry(1:2:end,2) = viHalf * 20; 8 | geometry(2:2:end,2) = geometry(1:2:end,2); 9 | geometry(1:4:end,1) = 0; 10 | geometry(2:4:end,1) = 32; 11 | geometry(3:4:end,1) = 16; 12 | geometry(4:4:end,1) = 48; 13 | 14 | % Reference sites are being excluded 15 | ref_sites = [37 76 113 152 189 228 265 304 341 380]; 16 | channels(ref_sites) = []; 17 | geometry(ref_sites,:) = []; 18 | 19 | % Recording contact pad size in micrometers. Height x width 20 | pad = [12 12]; 21 | -------------------------------------------------------------------------------- /matlab/prb/neurogrid128.prb: -------------------------------------------------------------------------------- 1 | % Order of the probe sites in the recording file 2 | channels = 32 + (1:128); 3 | 4 | % Site location in micrometers (x and y) 5 | geometry = zeros(128, 2); 6 | geometry(1:2:end,1) = 0; 7 | geometry(2:2:end,1) = 28; 8 | geometry(1:2:end,2) = 20*(0:63); 9 | geometry(2:2:end,2) = geometry(1:2:end,2); 10 | 11 | % Reference sites are being excluded 12 | % ref_sites = [1 18 33 50 65 82 97 114]; 13 | % channels(ref_sites) = []; 14 | % geometry(ref_sites,:) = []; 15 | 16 | % Recording contact pad size in micrometers. Height x width 17 | pad = [12 12]; 18 | 19 | % Default prm 20 | maxSite = 4.5; 21 | um_per_pix = 20; 22 | 23 | % Shanks 24 | % shank = ones(size(channels)); shank(geometry(:,1)>0)=2; 25 | -------------------------------------------------------------------------------- /matlab/prb/neuronexus_4x16_shank1.prb: -------------------------------------------------------------------------------- 1 | % Four shank NN 4x16 probe, 64 channels 2 | 3 | dx = 23; 4 | dy = 23; 5 | 6 | channels = 1+[ 21 20 22 32 23 19 26 34 27 17 31 36 29 16 18 25 ]; % Wheel room mapping 7 | %channels = 1+[ 5 4 6 16 7 3 10 18 11 1 15 20 13 0 2 9 ]; % Behavior room mapping 8 | 9 | vi16 = 1:16; 10 | geometry = zeros(16,2); 11 | geometry(1:2:end,1) = 0; 12 | geometry(2:2:end,1) = dx; 13 | geometry(:,2) = 345-(0:15)*dy; 14 | 15 | pad = [10 10]; %in micrometers, height x width 16 | cviShank = {vi16}; -------------------------------------------------------------------------------- /matlab/prb/neuropix3A_64c.prb: -------------------------------------------------------------------------------- 1 | % Order of the probe sites in the recording file 2 | channels = 1:64; 3 | 4 | % Site location in micrometers (x and y) 5 | geometry = zeros(numel(channels), 2); 6 | viHalf = 0:(numel(channels)/2-1); 7 | geometry(1:2:end,2) = viHalf * 20; 8 | geometry(2:2:end,2) = geometry(1:2:end,2); 9 | geometry(1:4:end,1) = 43; %0 before 10 | geometry(2:4:end,1) = 11; %32 before 11 | geometry(3:4:end,1) = 57; %16 before 12 | geometry(4:4:end,1) = 27; %48 before 13 | 14 | % Recording contact pad size in micrometers. Height x width 15 | pad = [12 12]; 16 | 17 | % Default prm 18 | um_per_pix = 20; 19 | -------------------------------------------------------------------------------- /matlab/prb/ntrode.prb: -------------------------------------------------------------------------------- 1 | nChans = 4; % change this number for n-trodes 2 | channels = 1:nChans; % 8 channels mapped to sites 3 | geometry = [zeros(nChans,1), (1:nChans)']; % (8 x 2 matrix, fist col.: x pos (um), second col.: y pos (um) 4 | 5 | pad = [1 1]; % site pad dimension for visualization (w x h (um)) 6 | um_per_pix = 1; % grid spacing (for visualization) 7 | -------------------------------------------------------------------------------- /matlab/prb/nxpoly2.prb: -------------------------------------------------------------------------------- 1 | % Order of the probe sites in the recording file 2 | channels = 1:32; %1 most superficial 3 | 4 | % Site location in micrometers (x and y) 5 | geometry = zeros(32, 2); 6 | geometry(1:2:end,1) = 0; 7 | geometry(2:2:end,1) = 50; 8 | geometry(1:2:end,2) = (15.5:-1:.5)*50; 9 | geometry(2:2:end,2) = (15:-1:0)*50; 10 | 11 | % Recording contact pad size in micrometers. Height x width 12 | pad = [15 15]; %circle 13 | 14 | cviShank = {1:32}; -------------------------------------------------------------------------------- /matlab/prb/pen60.prb: -------------------------------------------------------------------------------- 1 | channels = [63 33 62 36 59 37 60 38 57 39 58 40 55 41 56 42 53 43 54 44 51 45 52 46 1 31 2 32 3 29 4 30 5 27 6 28 7 25 8 26 9 23 10 24 11 21 12 22 13 19 14 20 15 17 16 18 50 48 49 47]; 2 | 3 | geometry = zeros(numel(channels), 2); 4 | geometry(:,2) = [0:numel(channels)-1]*20; 5 | geometry(1:2:end,1) = 34.6; 6 | 7 | pad = [15 5]; %in micrometers, height x width (270 um2) 8 | shank = ones(1, numel(channels)); 9 | 10 | maxSite = 2; 11 | nSites_ref = 0; -------------------------------------------------------------------------------- /matlab/prb/poly2nn.prb: -------------------------------------------------------------------------------- 1 | channels = 1+fliplr([13, 20, 28, 5, 9, 30, 3, 24, 31, 2, 4, 32, 1, 29, 23, 10, 8, 22, 11, 25, 21, 12, 7, 19, 14, 26, 18, 15, 6, 17, 16, 27]); 2 | geometry = zeros(numel(channels), 2); %x,y 3 | geometry(1:2:end,1) = 0; 4 | geometry(2:2:end,1) = 43.3; 5 | 6 | nChans = numel(channels); 7 | viLeft = [1:2:nChans]; 8 | geometry(viLeft, 2) = (0:numel(viLeft)-1) * 50; 9 | viRight = [2:2:nChans]; 10 | geometry(viRight, 2) = (0:numel(viRight)-1) * 50 + 25; 11 | 12 | pad = [15 15]; %in micrometers, height x width. circle. 13 | 14 | clear viRight viLeft -------------------------------------------------------------------------------- /matlab/prb/poly3nn.prb: -------------------------------------------------------------------------------- 1 | channels = 1+fliplr([13, 20, 28, 5, 9, 30, 3, 24, 31, 2, 4, 32, 1, 29, 23, 10, 8, 22, 11, 25, 21, 12, 7, 19, 14, 26, 18, 15, 6, 17, 16, 27]); 2 | %channels = fliplr(1:33); 3 | geometry = zeros(numel(channels), 2); %x,y 4 | geometry(1:3:end,1) = 0; 5 | geometry(2:3:end,1) = -18; 6 | geometry(3:3:end,1) = 18; 7 | geometry(end,1) = 0; 8 | 9 | nChans = numel(channels); 10 | viLeft = [2:3:nChans]; 11 | geometry(viLeft, 2) = (0:numel(viLeft)-1) * 25 + 12.5; 12 | viRight = [3:3:nChans]; 13 | geometry(viRight, 2) = (0:numel(viRight)-1) * 25 + 12.5; 14 | viMid = [1:3:nChans, nChans]; 15 | geometry(viMid, 2) = (0:numel(viMid)-1) * 25; 16 | 17 | pad = [15 15]; %in micrometers, height x width. circle. 18 | 19 | clear viMid viRight viLeft -------------------------------------------------------------------------------- /matlab/prb/qtrodenn.prb: -------------------------------------------------------------------------------- 1 | channels = [15:18]+1; 2 | geometry = [0 0; 0 25; 25 0; 25 25]; 3 | pad = [15 15]; %in micrometers, height x width. circle. 4 | -------------------------------------------------------------------------------- /matlab/prb/rhs32.prb: -------------------------------------------------------------------------------- 1 | % Order of the probe sites in the recording file 2 | %channels = 1:32; 3 | channels = [27 4 3 2 26 5 28 29 25 6 30 1 24 7 31 0 8 23 15 16 9 22 14 17 10 21 12 13 11 20 19 18] + 1; 4 | 5 | % Site location in micrometers (x and y) 6 | [xx,yy] = meshgrid((1:4)*40,(1:8)*40); 7 | xx=xx'; 8 | yy=yy'; 9 | geometry = [xx(:), yy(:)]; 10 | 11 | % Recording contact pad size in micrometers. Height x width 12 | pad = [12 12]; 13 | 14 | % Default prm 15 | um_per_pix = 40; 16 | 17 | %shank = [ 2 2 2 2 2 2 2 2 2 2 2 2 2 1 1 1 1 1 1 1 2 2 2 2 1 2 1 2 1 1 2 2]; 18 | %shank = [2 2 2 2 2 2 2 2 2 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ]; -------------------------------------------------------------------------------- /matlab/prb/rhs32ito.prb: -------------------------------------------------------------------------------- 1 | % Order of the probe sites in the recording file 2 | %channels = 1:32; 3 | channels = [9 25 24 8 10 26 23 7 11 27 22 6 12 28 21 5 13 23 20 4 14 30 13 3 15 31 18 2 16 32 17 1]; 4 | 5 | % Site location in micrometers (x and y) 6 | [xx,yy] = meshgrid((1:2)*30,(1:16)*26); 7 | xx=xx'; 8 | yy=yy'; 9 | geometry = [xx(:), yy(:)]; 10 | geometry(3:4:end,1) = geometry(3:4:end,1) + 15; 11 | geometry(4:4:end,1) = geometry(4:4:end,1) + 15; 12 | 13 | viKill = ismember(channels, [1 3 9 10 11 16 20 21 23 24 26 32]); 14 | channels(viKill) = []; 15 | geometry(viKill,:) = []; 16 | clear viKill; 17 | 18 | % Recording contact pad size in micrometers. Height x width 19 | pad = [15 15]; 20 | 21 | % Default prm 22 | um_per_pix = 30; 23 | -------------------------------------------------------------------------------- /matlab/prb/rhs32ito2.prb: -------------------------------------------------------------------------------- 1 | % Order of the probe sites in the recording file 2 | %channels = 1:32; 3 | channels = [9 25 24 8 10 26 23 7 11 27 22 6 12 28 21 5 13 23 20 4 14 30 13 3 15 31 18 2 16 32 17 1]; 4 | 5 | % Site location in micrometers (x and y) 6 | [xx,yy] = meshgrid((1:2)*30,(1:16)*26); 7 | xx=xx'; 8 | yy=yy'; 9 | geometry = [xx(:), yy(:)]; 10 | geometry(3:4:end,1) = geometry(3:4:end,1) + 15; 11 | geometry(4:4:end,1) = geometry(4:4:end,1) + 15; 12 | 13 | %viKill = ismember(channels, [1 3 9 10 11 16 20 21 23 24 26 32]); 14 | %channels(viKill) = []; 15 | %geometry(viKill,:) = []; 16 | %clear viKill; 17 | 18 | % Recording contact pad size in micrometers. Height x width 19 | pad = [15 15]; 20 | 21 | % Default prm 22 | um_per_pix = 30; 23 | -------------------------------------------------------------------------------- /matlab/prb/schoonover32.prb: -------------------------------------------------------------------------------- 1 | channels = 1+[3 10 20 29 8 22 1 11 21 31 6 24 13 9 23 19 4 26 15 7 25 17 2 28 12 5 27 18 0 30 14 16]; 2 | 3 | geometry = zeros(numel(channels), 2); %x,y 4 | geometry(1:3:end,1) = 0; 5 | geometry(2:3:end,1) = 18; 6 | geometry(3:3:end,1) = -18; 7 | geometry(end,1) = 0; 8 | 9 | nChans = numel(channels); 10 | viLeft = [2:3:nChans]; geometry(viLeft, 2) = (0:numel(viLeft)-1) * 25 + 12.5; 11 | viRight = [3:3:nChans]; geometry(viRight, 2) = (0:numel(viRight)-1) * 25 + 12.5; 12 | viMid = [1:3:nChans, nChans]; geometry(viMid, 2) = (0:numel(viMid)-1) * 25; 13 | 14 | pad = [15 15]; %in micrometers, height x width. circle. -------------------------------------------------------------------------------- /matlab/prb/silico120_1col_1.prb: -------------------------------------------------------------------------------- 1 | % Order of the probe sites in the recording file 2 | % silico360_1col_11.prb 3 | 4 | iLayer = 1; iCol = 1; 5 | channels = sub2ind([30,4,1], 1:30, repmat(iCol,[1,30]), repmat(iLayer,[1,30])); 6 | 7 | % Site location in micrometers (x and y) 8 | geometry = zeros(30, 2); 9 | geometry(:,1) = -23 + 16*(iCol-1); 10 | geometry(:,2) = 750 + (0:29)*20; 11 | 12 | % Recording contact pad size in micrometers. Height x width 13 | pad = [12 12]; 14 | 15 | % Default prm 16 | um_per_pix = 20; -------------------------------------------------------------------------------- /matlab/prb/silico120_1col_2.prb: -------------------------------------------------------------------------------- 1 | % Order of the probe sites in the recording file 2 | % silico360_1col_12.prb 3 | 4 | iLayer = 1; iCol = 2; 5 | channels = sub2ind([30,4,1], 1:30, repmat(iCol,[1,30]), repmat(iLayer,[1,30])); 6 | 7 | % Site location in micrometers (x and y) 8 | geometry = zeros(30, 2); 9 | geometry(:,1) = -23 + 16*(iCol-1); 10 | geometry(:,2) = 750 + (0:29)*20; 11 | 12 | % Recording contact pad size in micrometers. Height x width 13 | pad = [12 12]; 14 | 15 | % Default prm 16 | um_per_pix = 20; -------------------------------------------------------------------------------- /matlab/prb/silico120_1col_3.prb: -------------------------------------------------------------------------------- 1 | % Order of the probe sites in the recording file 2 | % silico360_1col_13.prb 3 | 4 | iLayer = 1; iCol = 3; 5 | channels = sub2ind([30,4,1], 1:30, repmat(iCol,[1,30]), repmat(iLayer,[1,30])); 6 | 7 | % Site location in micrometers (x and y) 8 | geometry = zeros(30, 2); 9 | geometry(:,1) = -23 + 16*(iCol-1); 10 | geometry(:,2) = 750 + (0:29)*20; 11 | 12 | % Recording contact pad size in micrometers. Height x width 13 | pad = [12 12]; 14 | 15 | % Default prm 16 | um_per_pix = 20; -------------------------------------------------------------------------------- /matlab/prb/silico120_1col_4.prb: -------------------------------------------------------------------------------- 1 | % Order of the probe sites in the recording file 2 | % silico360_1col_14.prb 3 | 4 | iLayer = 1; iCol = 4; 5 | channels = sub2ind([30,4,1], 1:30, repmat(iCol,[1,30]), repmat(iLayer,[1,30])); 6 | 7 | % Site location in micrometers (x and y) 8 | geometry = zeros(30, 2); 9 | geometry(:,1) = -23 + 16*(iCol-1); 10 | geometry(:,2) = 750 + (0:29)*20; 11 | 12 | % Recording contact pad size in micrometers. Height x width 13 | pad = [12 12]; 14 | 15 | % Default prm 16 | um_per_pix = 20; -------------------------------------------------------------------------------- /matlab/prb/silico120_2colA_1.prb: -------------------------------------------------------------------------------- 1 | % Order of the probe sites in the recording file 2 | % silico360_2colA_11.prb 3 | 4 | iLayer = 1; iCol1 = 1; iCol2 = 2; 5 | channels = sub2ind([30,4,1], toRow(repmat(1:30,[2,1])), toRow([repmat(iCol1,[1,30]); repmat(iCol2,[1,30])]), repmat(iLayer,[1,60])); 6 | 7 | % Site location in micrometers (x and y) 8 | geometry = zeros(60, 2); 9 | geometry(1:2:60,1) = -23 + 16*(iCol1-1); 10 | geometry(2:2:60,1) = -23 + 16*(iCol2-1); 11 | geometry(:,2) = toRow(repmat(750 + (0:29)*20, [2,1])); 12 | 13 | % Recording contact pad size in micrometers. Height x width 14 | pad = [12 12]; 15 | 16 | % Default prm 17 | um_per_pix = 20; -------------------------------------------------------------------------------- /matlab/prb/silico120_2colA_2.prb: -------------------------------------------------------------------------------- 1 | % Order of the probe sites in the recording file 2 | % silico360_2colA_12.prb 3 | 4 | iLayer = 1; iCol1 = 2; iCol2 = 3; 5 | channels = sub2ind([30,4,1], toRow(repmat(1:30,[2,1])), toRow([repmat(iCol1,[1,30]); repmat(iCol2,[1,30])]), repmat(iLayer,[1,60])); 6 | 7 | % Site location in micrometers (x and y) 8 | geometry = zeros(60, 2); 9 | geometry(1:2:60,1) = -23 + 16*(iCol1-1); 10 | geometry(2:2:60,1) = -23 + 16*(iCol2-1); 11 | geometry(:,2) = toRow(repmat(750 + (0:29)*20, [2,1])); 12 | 13 | % Recording contact pad size in micrometers. Height x width 14 | pad = [12 12]; 15 | 16 | % Default prm 17 | um_per_pix = 20; -------------------------------------------------------------------------------- /matlab/prb/silico120_2colA_3.prb: -------------------------------------------------------------------------------- 1 | % Order of the probe sites in the recording file 2 | % silico360_2colA_13.prb 3 | 4 | iLayer = 1; iCol1 = 3; iCol2 = 4; 5 | channels = sub2ind([30,4,1], toRow(repmat(1:30,[2,1])), toRow([repmat(iCol1,[1,30]); repmat(iCol2,[1,30])]), repmat(iLayer,[1,60])); 6 | 7 | % Site location in micrometers (x and y) 8 | geometry = zeros(60, 2); 9 | geometry(1:2:60,1) = -23 + 16*(iCol1-1); 10 | geometry(2:2:60,1) = -23 + 16*(iCol2-1); 11 | geometry(:,2) = toRow(repmat(750 + (0:29)*20, [2,1])); 12 | 13 | % Recording contact pad size in micrometers. Height x width 14 | pad = [12 12]; 15 | 16 | % Default prm 17 | um_per_pix = 20; -------------------------------------------------------------------------------- /matlab/prb/silico120_2colB_1.prb: -------------------------------------------------------------------------------- 1 | % Order of the probe sites in the recording file 2 | % silico360_2colB_11.prb 3 | 4 | iLayer = 1; iCol1 = 1; iCol2 = 3; 5 | channels = sub2ind([30,4,1], toRow(repmat(1:30,[2,1])), toRow([repmat(iCol1,[1,30]); repmat(iCol2,[1,30])]), repmat(iLayer,[1,60])); 6 | 7 | % Site location in micrometers (x and y) 8 | geometry = zeros(60, 2); 9 | geometry(1:2:60,1) = -23 + 16*(iCol1-1); 10 | geometry(2:2:60,1) = -23 + 16*(iCol2-1); 11 | geometry(:,2) = toRow(repmat(750 + (0:29)*20, [2,1])); 12 | 13 | % Recording contact pad size in micrometers. Height x width 14 | pad = [12 12]; 15 | 16 | % Default prm 17 | um_per_pix = 20; -------------------------------------------------------------------------------- /matlab/prb/silico120_2colB_2.prb: -------------------------------------------------------------------------------- 1 | % Order of the probe sites in the recording file 2 | % silico360_2colB_12.prb 3 | 4 | iLayer = 1; iCol1 = 2; iCol2 = 4; 5 | channels = sub2ind([30,4,1], toRow(repmat(1:30,[2,1])), toRow([repmat(iCol1,[1,30]); repmat(iCol2,[1,30])]), repmat(iLayer,[1,60])); 6 | 7 | % Site location in micrometers (x and y) 8 | geometry = zeros(60, 2); 9 | geometry(1:2:60,1) = -23 + 16*(iCol1-1); 10 | geometry(2:2:60,1) = -23 + 16*(iCol2-1); 11 | geometry(:,2) = toRow(repmat(750 + (0:29)*20, [2,1])); 12 | 13 | % Recording contact pad size in micrometers. Height x width 14 | pad = [12 12]; 15 | 16 | % Default prm 17 | um_per_pix = 20; -------------------------------------------------------------------------------- /matlab/prb/silico120_2colC_1.prb: -------------------------------------------------------------------------------- 1 | % Order of the probe sites in the recording file 2 | % silico360_2colC_11.prb 3 | 4 | iLayer = 1; iCol1 = 1; iCol2 = 4; 5 | channels = sub2ind([30,4,1], toRow(repmat(1:30,[2,1])), toRow([repmat(iCol1,[1,30]); repmat(iCol2,[1,30])]), repmat(iLayer,[1,60])); 6 | 7 | % Site location in micrometers (x and y) 8 | geometry = zeros(60, 2); 9 | geometry(1:2:60,1) = -23 + 16*(iCol1-1); 10 | geometry(2:2:60,1) = -23 + 16*(iCol2-1); 11 | geometry(:,2) = toRow(repmat(750 + (0:29)*20, [2,1])); 12 | 13 | % Recording contact pad size in micrometers. Height x width 14 | pad = [12 12]; 15 | 16 | % Default prm 17 | um_per_pix = 20; -------------------------------------------------------------------------------- /matlab/prb/silico120_3col_1.prb: -------------------------------------------------------------------------------- 1 | % Order of the probe sites in the recording file 2 | % silico360_3col_11.prb 3 | 4 | iLayer = 1; iCol1 = 1; iCol2 = 2; iCol3 = 3; 5 | channels = sub2ind([30,4,1], toRow(repmat(1:30,[3,1])), toRow([repmat(iCol1,[1,30]); repmat(iCol2,[1,30]); repmat(iCol3,[1,30])]), repmat(iLayer,[1,90])); 6 | 7 | % Site location in micrometers (x and y) 8 | geometry = zeros(90, 2); 9 | geometry(1:3:90,1) = -23 + 16*(iCol1-1); 10 | geometry(2:3:90,1) = -23 + 16*(iCol2-1); 11 | geometry(3:3:90,1) = -23 + 16*(iCol3-1); 12 | geometry(:,2) = toRow(repmat(750 + (0:29)*20, [3,1])); 13 | 14 | % Recording contact pad size in micrometers. Height x width 15 | pad = [12 12]; 16 | 17 | % Default prm 18 | um_per_pix = 20; -------------------------------------------------------------------------------- /matlab/prb/silico120_3col_2.prb: -------------------------------------------------------------------------------- 1 | % Order of the probe sites in the recording file 2 | % silico360_3col_12.prb 3 | 4 | iLayer = 1; iCol1 = 2; iCol2 = 3; iCol3 = 4; 5 | channels = sub2ind([30,4,1], toRow(repmat(1:30,[3,1])), toRow([repmat(iCol1,[1,30]); repmat(iCol2,[1,30]); repmat(iCol3,[1,30])]), repmat(iLayer,[1,90])); 6 | 7 | % Site location in micrometers (x and y) 8 | geometry = zeros(90, 2); 9 | geometry(1:3:90,1) = -23 + 16*(iCol1-1); 10 | geometry(2:3:90,1) = -23 + 16*(iCol2-1); 11 | geometry(3:3:90,1) = -23 + 16*(iCol3-1); 12 | geometry(:,2) = toRow(repmat(750 + (0:29)*20, [3,1])); 13 | 14 | % Recording contact pad size in micrometers. Height x width 15 | pad = [12 12]; 16 | 17 | % Default prm 18 | um_per_pix = 20; -------------------------------------------------------------------------------- /matlab/prb/silico120_4col2_1.prb: -------------------------------------------------------------------------------- 1 | % Order of the probe sites in the recording file 2 | % silico360_4col2_11.prb 3 | 4 | iLayer = 1; 5 | channels = sub2ind([30,4,1], toRow(repmat(1:30,[2,1])), toRow(repmat([1,3,2,4],[1,15])), repmat(iLayer,[1,60])); 6 | 7 | % Site location in micrometers (x and y) 8 | geometry = zeros(60, 2); 9 | geometry(1:4:60,1) = -23 + 16*(1-1); 10 | geometry(2:4:60,1) = -23 + 16*(3-1); 11 | geometry(3:4:60,1) = -23 + 16*(2-1); 12 | geometry(4:4:60,1) = -23 + 16*(4-1); 13 | geometry(1:4:60,2) = 750 + (0:2:29)*20; 14 | geometry(2:4:60,2) = 750 + (0:2:29)*20; 15 | geometry(3:4:60,2) = 750 + (1:2:29)*20; 16 | geometry(4:4:60,2) = 750 + (1:2:29)*20; 17 | 18 | % Recording contact pad size in micrometers. Height x width 19 | pad = [12 12]; 20 | 21 | % Default prm 22 | um_per_pix = 20; -------------------------------------------------------------------------------- /matlab/prb/silico120_4col2_2.prb: -------------------------------------------------------------------------------- 1 | % Order of the probe sites in the recording file 2 | % silico360_4col2_12.prb 3 | 4 | iLayer = 1; 5 | channels = sub2ind([30,4,1], toRow(repmat(1:30,[2,1])), toRow(repmat([2,4,1,3],[1,15])), repmat(iLayer,[1,60])); 6 | 7 | % Site location in micrometers (x and y) 8 | geometry = zeros(60, 2); 9 | geometry(1:4:60,1) = -23 + 16*(2-1); 10 | geometry(2:4:60,1) = -23 + 16*(4-1); 11 | geometry(3:4:60,1) = -23 + 16*(1-1); 12 | geometry(4:4:60,1) = -23 + 16*(3-1); 13 | geometry(1:4:60,2) = 750 + (0:2:29)*20; 14 | geometry(2:4:60,2) = 750 + (0:2:29)*20; 15 | geometry(3:4:60,2) = 750 + (1:2:29)*20; 16 | geometry(4:4:60,2) = 750 + (1:2:29)*20; 17 | 18 | % Recording contact pad size in micrometers. Height x width 19 | pad = [12 12]; 20 | 21 | % Default prm 22 | um_per_pix = 20; -------------------------------------------------------------------------------- /matlab/prb/silico120_4col_1.prb: -------------------------------------------------------------------------------- 1 | % Order of the probe sites in the recording file 2 | % silico360_4col_11.prb 3 | 4 | iLayer = 1; 5 | channels = sub2ind([30,4,1], toRow(repmat(1:30,[4,1])), toRow(repmat([1:4],[1,30])), repmat(iLayer,[1,120])); 6 | 7 | % Site location in micrometers (x and y) 8 | geometry = zeros(120, 2); 9 | geometry(1:4:120,1) = -23 + 16*(0-1); 10 | geometry(2:4:120,1) = -23 + 16*(1-1); 11 | geometry(3:4:120,1) = -23 + 16*(2-1); 12 | geometry(4:4:120,1) = -23 + 16*(3-1); 13 | geometry(:,2) = toRow(repmat(750 + (0:29)*20, [4,1])); 14 | 15 | % Recording contact pad size in micrometers. Height x width 16 | pad = [12 12]; 17 | 18 | % Default prm 19 | um_per_pix = 20; -------------------------------------------------------------------------------- /matlab/prb/silico_8x_120_2colA.prb: -------------------------------------------------------------------------------- 1 | % Order of the probe sites in the recording file 2 | % silico_8x_120_2colA.prb 3 | 4 | channels = [1:30; 61:90]; channels = channels(:); 5 | 6 | % Site location in micrometers (x and y) 7 | geometry = zeros(60, 2); 8 | viHalf = 0:29; 9 | geometry(1:2:end,2) = viHalf * 20; 10 | geometry(2:2:end,2) = geometry(1:2:end,2); 11 | geometry(1:2:end,1) = 0; geometry(2:2:end,1) = 32; %Type A 12 | %geometry(1:2:end,1) = 16; geometry(2:2:end,1) = 48; %Type B 13 | 14 | % Recording contact pad size in micrometers. Height x width 15 | pad = [12 12]; 16 | -------------------------------------------------------------------------------- /matlab/prb/silico_8x_120_2colB.prb: -------------------------------------------------------------------------------- 1 | % Order of the probe sites in the recording file 2 | % silico_8x_120_2colB.prb 3 | 4 | channels = [1:30; 61:90]+30; channels = channels(:); 5 | 6 | % Site location in micrometers (x and y) 7 | geometry = zeros(60, 2); 8 | viHalf = 0:29; 9 | geometry(1:2:end,2) = viHalf * 20; 10 | geometry(2:2:end,2) = geometry(1:2:end,2); 11 | %geometry(1:2:end,1) = 0; geometry(2:2:end,1) = 32; %Type A 12 | geometry(1:2:end,1) = 16; geometry(2:2:end,1) = 48; %Type B 13 | 14 | % Recording contact pad size in micrometers. Height x width 15 | pad = [12 12]; 16 | -------------------------------------------------------------------------------- /matlab/prb/silico_8x_120_3colA.prb: -------------------------------------------------------------------------------- 1 | % Order of the probe sites in the recording file 2 | % silico_8x_120_3colA.prb 3 | 4 | channels = [1:30; 31:60; 61:90]; channels = channels(:); 5 | 6 | % Site location in micrometers (x and y) 7 | geometry = zeros(90, 2); 8 | geometry(1:3:end,2) = (0:29) * 20; 9 | geometry(2:3:end,2) = geometry(1:3:end,2); 10 | geometry(3:3:end,2) = geometry(1:3:end,2); 11 | 12 | geometry(1:3:end,1) = 0; 13 | geometry(2:3:end,1) = 16; 14 | geometry(3:3:end,1) = 32; 15 | 16 | % Recording contact pad size in micrometers. Height x width 17 | pad = [12 12]; 18 | -------------------------------------------------------------------------------- /matlab/prb/silico_8x_120_3colB.prb: -------------------------------------------------------------------------------- 1 | % Order of the probe sites in the recording file 2 | % silico_8x_120_3colB.prb 3 | 4 | channels = [1:30; 31:60; 61:90]+30; channels = channels(:); 5 | 6 | % Site location in micrometers (x and y) 7 | geometry = zeros(90, 2); 8 | geometry(1:3:end,2) = (0:29) * 20; 9 | geometry(2:3:end,2) = geometry(1:3:end,2); 10 | geometry(3:3:end,2) = geometry(1:3:end,2); 11 | 12 | geometry(1:3:end,1) = 0; 13 | geometry(2:3:end,1) = 16; 14 | geometry(3:3:end,1) = 32; 15 | geometry(:,1) = geometry(:,1) + 16; 16 | 17 | % Recording contact pad size in micrometers. Height x width 18 | pad = [12 12]; 19 | -------------------------------------------------------------------------------- /matlab/prb/silico_8x_120_4colA.prb: -------------------------------------------------------------------------------- 1 | % Order of the probe sites in the recording file 2 | % silico_8x_120_4colA.prb 3 | 4 | channels = [1:2:30; 61:2:90; 32:2:60; 92:2:120]; channels = channels(:); 5 | 6 | % Site location in micrometers (x and y) 7 | geometry = zeros(60, 2); 8 | viHalf = 0:29; 9 | geometry(1:2:end,2) = viHalf * 20; 10 | geometry(2:2:end,2) = geometry(1:2:end,2); 11 | geometry(1:4:end,1) = 0; 12 | geometry(2:4:end,1) = 32; 13 | geometry(3:4:end,1) = 16; 14 | geometry(4:4:end,1) = 48; 15 | 16 | % Recording contact pad size in micrometers. Height x width 17 | pad = [12 12]; 18 | -------------------------------------------------------------------------------- /matlab/prb/silico_8x_120_4colB.prb: -------------------------------------------------------------------------------- 1 | % Order of the probe sites in the recording file 2 | % silico_8x_120_4colB.prb 3 | 4 | channels = [31:2:60; 91:2:120; 2:2:30; 62:2:90]; channels = channels(:); 5 | 6 | % Site location in micrometers (x and y) 7 | geometry = zeros(60, 2); 8 | viHalf = 0:29; 9 | geometry(1:2:end,2) = viHalf * 20; 10 | geometry(2:2:end,2) = geometry(1:2:end,2); 11 | geometry(1:4:end,1) = 16; 12 | geometry(2:4:end,1) = 48; 13 | geometry(3:4:end,1) = 0; 14 | geometry(4:4:end,1) = 32; 15 | 16 | % Recording contact pad size in micrometers. Height x width 17 | pad = [12 12]; 18 | -------------------------------------------------------------------------------- /matlab/prb/silico_8x_120_4colC.prb: -------------------------------------------------------------------------------- 1 | % Order of the probe sites in the recording file 2 | % silico_8x_120_4colC.prb 3 | 4 | channels = [1:30; 31:60; 61:90; 91:120]; channels = channels(:); 5 | 6 | % Site location in micrometers (x and y) 7 | geometry = zeros(120, 2); 8 | geometry(1:4:end,2) = (0:29) * 20; 9 | geometry(2:4:end,2) = geometry(1:4:end,2); 10 | geometry(3:4:end,2) = geometry(1:4:end,2); 11 | geometry(4:4:end,2) = geometry(1:4:end,2); 12 | 13 | geometry(1:4:end,1) = 0; geometry(2:4:end,1) = 16; 14 | geometry(3:4:end,1) = 32; geometry(4:4:end,1) = 48; 15 | 16 | % Recording contact pad size in micrometers. Height x width 17 | pad = [12 12]; 18 | -------------------------------------------------------------------------------- /matlab/prb/silico_8x_2colA.prb: -------------------------------------------------------------------------------- 1 | % Order of the probe sites in the recording file 2 | % silico_8x_2colA.prb 3 | istart = 1; 4 | channels = [1:30; 31:60]; channels = channels(:); 5 | 6 | % Site location in micrometers (x and y) 7 | geometry = zeros(60, 2); 8 | viHalf = 0:29; 9 | geometry(1:2:end,2) = viHalf * 20 + (istart-1)*4; 10 | geometry(2:2:end,2) = geometry(1:2:end,2); 11 | geometry(1:2:end,1) = 0; geometry(2:2:end,1) = 32; %Type A 12 | %geometry(1:2:end,1) = 16; geometry(2:2:end,1) = 48; %Type B 13 | 14 | % Recording contact pad size in micrometers. Height x width 15 | pad = [12 12]; 16 | -------------------------------------------------------------------------------- /matlab/prb/silico_8x_2colB.prb: -------------------------------------------------------------------------------- 1 | % Order of the probe sites in the recording file 2 | % silico_8x_2colA.prb 3 | istart = 1; 4 | channels = [1:30; 31:60]; channels = channels(:); 5 | 6 | % Site location in micrometers (x and y) 7 | geometry = zeros(60, 2); 8 | viHalf = 0:29; 9 | geometry(1:2:end,2) = viHalf * 20 + (istart-1)*4; 10 | geometry(2:2:end,2) = geometry(1:2:end,2); 11 | %geometry(1:2:end,1) = 0; geometry(2:2:end,1) = 32; %Type A 12 | geometry(1:2:end,1) = 16; geometry(2:2:end,1) = 48; %Type B 13 | 14 | % Recording contact pad size in micrometers. Height x width 15 | pad = [12 12]; 16 | -------------------------------------------------------------------------------- /matlab/prb/silico_8x_3colA.prb: -------------------------------------------------------------------------------- 1 | % Order of the probe sites in the recording file 2 | % silico_8x_3colA.prb 3 | istart = 1; 4 | channels = [1:30; 31:60; 61:90]; 5 | channels = channels(:); 6 | 7 | % Site location in micrometers (x and y) 8 | geometry = zeros(90, 2); 9 | geometry(1:3:end,2) = (0:29) * 20 + (istart-1)*4; 10 | geometry(2:3:end,2) = geometry(1:3:end,2); 11 | geometry(3:3:end,2) = geometry(1:3:end,2); 12 | 13 | geometry(1:3:end,1) = 0; geometry(2:3:end,1) = 16; geometry(3:3:end,1) = 32; 14 | %geometry(:,1) = geometry(:,1) + 16; %do it if Type B 15 | 16 | % Recording contact pad size in micrometers. Height x width 17 | pad = [12 12]; 18 | -------------------------------------------------------------------------------- /matlab/prb/silico_8x_3colB.prb: -------------------------------------------------------------------------------- 1 | % Order of the probe sites in the recording file 2 | % silico_8x_3colB.prb 3 | istart = 1; 4 | channels = [1:30; 31:60; 61:90]; 5 | channels = channels(:); 6 | 7 | % Site location in micrometers (x and y) 8 | geometry = zeros(90, 2); 9 | geometry(1:3:end,2) = (0:29) * 20 + (istart-1)*4; 10 | geometry(2:3:end,2) = geometry(1:3:end,2); 11 | geometry(3:3:end,2) = geometry(1:3:end,2); 12 | 13 | geometry(1:3:end,1) = 0; geometry(2:3:end,1) = 16; geometry(3:3:end,1) = 32; 14 | geometry(:,1) = geometry(:,1) + 16; %do it if Type B 15 | 16 | % Recording contact pad size in micrometers. Height x width 17 | pad = [12 12]; 18 | -------------------------------------------------------------------------------- /matlab/prb/silico_8x_4col.prb: -------------------------------------------------------------------------------- 1 | % Order of the probe sites in the recording file 2 | % silico_8x_4col.prb 3 | istart = 1; 4 | channels = [1:30; 31:60; 61:90; 91:120]; 5 | channels = channels(:); 6 | 7 | % Site location in micrometers (x and y) 8 | geometry = zeros(120, 2); 9 | geometry(1:4:end,2) = (0:29) * 20; 10 | geometry(2:4:end,2) = geometry(1:4:end,2); 11 | geometry(3:4:end,2) = geometry(1:4:end,2); 12 | geometry(4:4:end,2) = geometry(1:4:end,2); 13 | geometry(1:4:end,1) = 0; 14 | geometry(2:4:end,1) = 16; 15 | geometry(3:4:end,1) = 32; 16 | geometry(4:4:end,1) = 48; 17 | 18 | % Recording contact pad size in micrometers. Height x width 19 | pad = [12 12]; 20 | -------------------------------------------------------------------------------- /matlab/prb/silico_8x_4colA.prb: -------------------------------------------------------------------------------- 1 | % Order of the probe sites in the recording file 2 | % silico_feb8_4colA_60.prb 3 | istart = 1; %{1,2,3,4} 4 | channels = [1:15; 31:45; 16:30; 46:60]; 5 | channels = channels(:); 6 | 7 | % Site location in micrometers (x and y) 8 | geometry = zeros(60, 2); 9 | viHalf = 0:29; 10 | geometry(1:2:end,2) = viHalf * 20 + (istart-1)*5; 11 | geometry(2:2:end,2) = geometry(1:2:end,2); 12 | geometry(1:4:end,1) = 0; 13 | geometry(2:4:end,1) = 32; 14 | geometry(3:4:end,1) = 16; 15 | geometry(4:4:end,1) = 48; 16 | 17 | % Recording contact pad size in micrometers. Height x width 18 | pad = [12 12]; 19 | -------------------------------------------------------------------------------- /matlab/prb/silico_8x_4colB.prb: -------------------------------------------------------------------------------- 1 | % Order of the probe sites in the recording file 2 | % silico_feb8_4colA_60.prb 3 | istart = 1; %{1,2,3,4} 4 | channels = [16:30; 46:60; 1:15; 31:45]; 5 | channels = channels(:); 6 | 7 | % Site location in micrometers (x and y) 8 | geometry = zeros(60, 2); 9 | viHalf = 0:29; 10 | geometry(1:2:end,2) = viHalf * 20 + (istart-1)*5; 11 | geometry(2:2:end,2) = geometry(1:2:end,2); 12 | geometry(1:4:end,1) = 16; 13 | geometry(2:4:end,1) = 48; 14 | geometry(3:4:end,1) = 0; 15 | geometry(4:4:end,1) = 32; 16 | 17 | % Recording contact pad size in micrometers. Height x width 18 | pad = [12 12]; 19 | -------------------------------------------------------------------------------- /matlab/prb/silico_feb8_1colA.prb: -------------------------------------------------------------------------------- 1 | % Order of the probe sites in the recording file 2 | % silico_feb8_1colA.prb 3 | % reads 'E:\CatalinMitelut\feb_8_2017_4mins_600chs\drift_4col.bin' 4 | istart = 1; %{1,2,3,4} 5 | channels = istart:4:120; 6 | 7 | % Site location in micrometers (x and y) 8 | geometry = zeros(30, 2); 9 | geometry(:,2) = (0:29) * 20; 10 | geometry(:,1) = 0; 11 | 12 | % Recording contact pad size in micrometers. Height x width 13 | pad = [12 12]; 14 | -------------------------------------------------------------------------------- /matlab/prb/silico_feb8_1colB.prb: -------------------------------------------------------------------------------- 1 | % Order of the probe sites in the recording file 2 | % silico_feb8_1colB.prb 3 | % reads 'E:\CatalinMitelut\feb_8_2017_4mins_600chs\drift_4col.bin' 4 | istart = 2; %{1,2,3,4} 5 | channels = istart:4:120; 6 | 7 | % Site location in micrometers (x and y) 8 | geometry = zeros(30, 2); 9 | geometry(:,2) = (0:29) * 20; 10 | geometry(:,1) = 16; %0 16 32 48 11 | 12 | % Recording contact pad size in micrometers. Height x width 13 | pad = [12 12]; 14 | -------------------------------------------------------------------------------- /matlab/prb/silico_feb8_1colC.prb: -------------------------------------------------------------------------------- 1 | % Order of the probe sites in the recording file 2 | % silico_feb8_1colC.prb 3 | % reads 'E:\CatalinMitelut\feb_8_2017_4mins_600chs\drift_4col.bin' 4 | istart = 3; %{1,2,3,4} 5 | channels = istart:4:120; 6 | 7 | % Site location in micrometers (x and y) 8 | geometry = zeros(30, 2); 9 | geometry(:,2) = (0:29) * 20; 10 | geometry(:,1) = 32; %0 16 32 48 11 | 12 | % Recording contact pad size in micrometers. Height x width 13 | pad = [12 12]; 14 | -------------------------------------------------------------------------------- /matlab/prb/silico_feb8_1colD.prb: -------------------------------------------------------------------------------- 1 | % Order of the probe sites in the recording file 2 | % silico_feb8_1colD.prb 3 | % reads 'E:\CatalinMitelut\feb_8_2017_4mins_600chs\drift_4col.bin' 4 | istart = 4; %{1,2,3,4} 5 | channels = istart:4:120; 6 | 7 | % Site location in micrometers (x and y) 8 | geometry = zeros(30, 2); 9 | geometry(:,2) = (0:29) * 20; 10 | geometry(:,1) = 48; %0 16 32 48 11 | 12 | % Recording contact pad size in micrometers. Height x width 13 | pad = [12 12]; -------------------------------------------------------------------------------- /matlab/prb/silico_feb8_2colA16_1.prb: -------------------------------------------------------------------------------- 1 | % Order of the probe sites in the recording file 2 | istart = 1; %{1,2,3,4} 3 | channels = istart:5:600; 4 | 5 | channels = channels([1:30; 31:60]); %Type A 6 | %channels = channels([31:60; 61:90]); %Type B 7 | %channels = channels([61:90; 91:120]); %Type C 8 | 9 | channels = channels(:)'; 10 | 11 | % Site location in micrometers (x and y) 12 | geometry = zeros(60, 2); 13 | viHalf = 0:29; 14 | geometry(1:2:end,2) = viHalf * 20 + (istart-1)*5; 15 | geometry(2:2:end,2) = geometry(1:2:end,2); 16 | geometry(1:2:end,1) = 0; geometry(2:2:end,1) = 16; %Type A 17 | %geometry(1:2:end,1) = 16; geometry(2:2:end,1) = 32; %Type B 18 | %geometry(1:2:end,1) = 32; geometry(2:2:end,1) = 48; %Type C 19 | 20 | % Recording contact pad size in micrometers. Height x width 21 | pad = [12 12]; 22 | -------------------------------------------------------------------------------- /matlab/prb/silico_feb8_2colA16_2.prb: -------------------------------------------------------------------------------- 1 | % Order of the probe sites in the recording file 2 | istart = 2; %{1,2,3,4} 3 | channels = istart:5:600; 4 | 5 | channels = channels([1:30; 31:60]); %Type A 6 | %channels = channels([31:60; 61:90]); %Type B 7 | %channels = channels([61:90; 91:120]); %Type C 8 | 9 | channels = channels(:)'; 10 | 11 | % Site location in micrometers (x and y) 12 | geometry = zeros(60, 2); 13 | viHalf = 0:29; 14 | geometry(1:2:end,2) = viHalf * 20 + (istart-1)*5; 15 | geometry(2:2:end,2) = geometry(1:2:end,2); 16 | geometry(1:2:end,1) = 0; geometry(2:2:end,1) = 16; %Type A 17 | %geometry(1:2:end,1) = 16; geometry(2:2:end,1) = 32; %Type B 18 | %geometry(1:2:end,1) = 32; geometry(2:2:end,1) = 48; %Type C 19 | 20 | % Recording contact pad size in micrometers. Height x width 21 | pad = [12 12]; 22 | -------------------------------------------------------------------------------- /matlab/prb/silico_feb8_2colA16_3.prb: -------------------------------------------------------------------------------- 1 | % Order of the probe sites in the recording file 2 | istart = 3; %{1,2,3,4} 3 | channels = istart:5:600; 4 | 5 | channels = channels([1:30; 31:60]); %Type A 6 | %channels = channels([31:60; 61:90]); %Type B 7 | %channels = channels([61:90; 91:120]); %Type C 8 | 9 | channels = channels(:)'; 10 | 11 | % Site location in micrometers (x and y) 12 | geometry = zeros(60, 2); 13 | viHalf = 0:29; 14 | geometry(1:2:end,2) = viHalf * 20 + (istart-1)*5; 15 | geometry(2:2:end,2) = geometry(1:2:end,2); 16 | geometry(1:2:end,1) = 0; geometry(2:2:end,1) = 16; %Type A 17 | %geometry(1:2:end,1) = 16; geometry(2:2:end,1) = 32; %Type B 18 | %geometry(1:2:end,1) = 32; geometry(2:2:end,1) = 48; %Type C 19 | 20 | % Recording contact pad size in micrometers. Height x width 21 | pad = [12 12]; 22 | -------------------------------------------------------------------------------- /matlab/prb/silico_feb8_2colA16_4.prb: -------------------------------------------------------------------------------- 1 | % Order of the probe sites in the recording file 2 | istart = 4; %{1,2,3,4} 3 | channels = istart:5:600; 4 | 5 | channels = channels([1:30; 31:60]); %Type A 6 | %channels = channels([31:60; 61:90]); %Type B 7 | %channels = channels([61:90; 91:120]); %Type C 8 | 9 | channels = channels(:)'; 10 | 11 | % Site location in micrometers (x and y) 12 | geometry = zeros(60, 2); 13 | viHalf = 0:29; 14 | geometry(1:2:end,2) = viHalf * 20 + (istart-1)*5; 15 | geometry(2:2:end,2) = geometry(1:2:end,2); 16 | geometry(1:2:end,1) = 0; geometry(2:2:end,1) = 16; %Type A 17 | %geometry(1:2:end,1) = 16; geometry(2:2:end,1) = 32; %Type B 18 | %geometry(1:2:end,1) = 32; geometry(2:2:end,1) = 48; %Type C 19 | 20 | % Recording contact pad size in micrometers. Height x width 21 | pad = [12 12]; 22 | -------------------------------------------------------------------------------- /matlab/prb/silico_feb8_2colA_1.prb: -------------------------------------------------------------------------------- 1 | % Order of the probe sites in the recording file 2 | istart = 1; %{1,2,3,4} 3 | channels = istart:5:600; 4 | 5 | channels = channels([1:30; 61:90]); %Type A 6 | %channels = channels([31:60; 91:120]); %Type B 7 | channels = channels(:)'; 8 | 9 | % Site location in micrometers (x and y) 10 | geometry = zeros(60, 2); 11 | viHalf = 0:29; 12 | geometry(1:2:end,2) = viHalf * 20 + (istart-1)*5; 13 | geometry(2:2:end,2) = geometry(1:2:end,2); 14 | geometry(1:2:end,1) = 0; geometry(2:2:end,1) = 32; %Type A 15 | %geometry(1:2:end,1) = 16; geometry(2:2:end,1) = 48; %Type B 16 | 17 | % Recording contact pad size in micrometers. Height x width 18 | pad = [12 12]; 19 | -------------------------------------------------------------------------------- /matlab/prb/silico_feb8_2colA_2.prb: -------------------------------------------------------------------------------- 1 | % Order of the probe sites in the recording file 2 | istart = 2; %{1,2,3,4} 3 | channels = istart:5:600; 4 | 5 | channels = channels([1:30; 61:90]); %Type A 6 | %channels = channels([31:60; 91:120]); %Type B 7 | channels = channels(:)'; 8 | 9 | % Site location in micrometers (x and y) 10 | geometry = zeros(60, 2); 11 | viHalf = 0:29; 12 | geometry(1:2:end,2) = viHalf * 20 + (istart-1)*5; 13 | geometry(2:2:end,2) = geometry(1:2:end,2); 14 | geometry(1:2:end,1) = 0; geometry(2:2:end,1) = 32; %Type A 15 | %geometry(1:2:end,1) = 16; geometry(2:2:end,1) = 48; %Type B 16 | 17 | % Recording contact pad size in micrometers. Height x width 18 | pad = [12 12]; 19 | -------------------------------------------------------------------------------- /matlab/prb/silico_feb8_2colA_3.prb: -------------------------------------------------------------------------------- 1 | % Order of the probe sites in the recording file 2 | istart = 3; %{1,2,3,4} 3 | channels = istart:5:600; 4 | 5 | channels = channels([1:30; 61:90]); %Type A 6 | %channels = channels([31:60; 91:120]); %Type B 7 | channels = channels(:)'; 8 | 9 | % Site location in micrometers (x and y) 10 | geometry = zeros(60, 2); 11 | viHalf = 0:29; 12 | geometry(1:2:end,2) = viHalf * 20 + (istart-1)*5; 13 | geometry(2:2:end,2) = geometry(1:2:end,2); 14 | geometry(1:2:end,1) = 0; geometry(2:2:end,1) = 32; %Type A 15 | %geometry(1:2:end,1) = 16; geometry(2:2:end,1) = 48; %Type B 16 | 17 | % Recording contact pad size in micrometers. Height x width 18 | pad = [12 12]; 19 | -------------------------------------------------------------------------------- /matlab/prb/silico_feb8_2colA_4.prb: -------------------------------------------------------------------------------- 1 | % Order of the probe sites in the recording file 2 | istart = 4; %{1,2,3,4} 3 | channels = istart:5:600; 4 | 5 | channels = channels([1:30; 61:90]); %Type A 6 | %channels = channels([31:60; 91:120]); %Type B 7 | channels = channels(:)'; 8 | 9 | % Site location in micrometers (x and y) 10 | geometry = zeros(60, 2); 11 | viHalf = 0:29; 12 | geometry(1:2:end,2) = viHalf * 20 + (istart-1)*5; 13 | geometry(2:2:end,2) = geometry(1:2:end,2); 14 | geometry(1:2:end,1) = 0; geometry(2:2:end,1) = 32; %Type A 15 | %geometry(1:2:end,1) = 16; geometry(2:2:end,1) = 48; %Type B 16 | 17 | % Recording contact pad size in micrometers. Height x width 18 | pad = [12 12]; 19 | -------------------------------------------------------------------------------- /matlab/prb/silico_feb8_2colA_60.prb: -------------------------------------------------------------------------------- 1 | % Order of the probe sites in the recording file 2 | % silico_feb8_2colA_60.prb 3 | istart = 1; %{1,2,3,4} 4 | channels = 1:60; 5 | 6 | % Site location in micrometers (x and y) 7 | geometry = zeros(60, 2); 8 | viHalf = 0:29; 9 | geometry(1:2:end,2) = viHalf * 20 + (istart-1)*4; 10 | geometry(2:2:end,2) = geometry(1:2:end,2); 11 | geometry(1:2:end,1) = 0; geometry(2:2:end,1) = 32; %Type A 12 | %geometry(1:2:end,1) = 16; geometry(2:2:end,1) = 48; %Type B 13 | 14 | % Recording contact pad size in micrometers. Height x width 15 | pad = [12 12]; 16 | -------------------------------------------------------------------------------- /matlab/prb/silico_feb8_2colB16_1.prb: -------------------------------------------------------------------------------- 1 | % Order of the probe sites in the recording file 2 | istart = 1; %{1,2,3,4} 3 | channels = istart:5:600; 4 | 5 | %channels = channels([1:30; 31:60]); %Type A 6 | channels = channels([31:60; 61:90]); %Type B 7 | %channels = channels([61:90; 91:120]); %Type C 8 | 9 | channels = channels(:)'; 10 | 11 | % Site location in micrometers (x and y) 12 | geometry = zeros(60, 2); 13 | viHalf = 0:29; 14 | geometry(1:2:end,2) = viHalf * 20 + (istart-1)*5; 15 | geometry(2:2:end,2) = geometry(1:2:end,2); 16 | %geometry(1:2:end,1) = 0; geometry(2:2:end,1) = 16; %Type A 17 | geometry(1:2:end,1) = 16; geometry(2:2:end,1) = 32; %Type B 18 | %geometry(1:2:end,1) = 32; geometry(2:2:end,1) = 48; %Type C 19 | 20 | % Recording contact pad size in micrometers. Height x width 21 | pad = [12 12]; 22 | -------------------------------------------------------------------------------- /matlab/prb/silico_feb8_2colB16_2.prb: -------------------------------------------------------------------------------- 1 | % Order of the probe sites in the recording file 2 | istart = 2; %{1,2,3,4} 3 | channels = istart:5:600; 4 | 5 | %channels = channels([1:30; 31:60]); %Type A 6 | channels = channels([31:60; 61:90]); %Type B 7 | %channels = channels([61:90; 91:120]); %Type C 8 | 9 | channels = channels(:)'; 10 | 11 | % Site location in micrometers (x and y) 12 | geometry = zeros(60, 2); 13 | viHalf = 0:29; 14 | geometry(1:2:end,2) = viHalf * 20 + (istart-1)*5; 15 | geometry(2:2:end,2) = geometry(1:2:end,2); 16 | %geometry(1:2:end,1) = 0; geometry(2:2:end,1) = 16; %Type A 17 | geometry(1:2:end,1) = 16; geometry(2:2:end,1) = 32; %Type B 18 | %geometry(1:2:end,1) = 32; geometry(2:2:end,1) = 48; %Type C 19 | 20 | % Recording contact pad size in micrometers. Height x width 21 | pad = [12 12]; 22 | -------------------------------------------------------------------------------- /matlab/prb/silico_feb8_2colB16_3.prb: -------------------------------------------------------------------------------- 1 | % Order of the probe sites in the recording file 2 | istart = 3; %{1,2,3,4} 3 | channels = istart:5:600; 4 | 5 | %channels = channels([1:30; 31:60]); %Type A 6 | channels = channels([31:60; 61:90]); %Type B 7 | %channels = channels([61:90; 91:120]); %Type C 8 | 9 | channels = channels(:)'; 10 | 11 | % Site location in micrometers (x and y) 12 | geometry = zeros(60, 2); 13 | viHalf = 0:29; 14 | geometry(1:2:end,2) = viHalf * 20 + (istart-1)*5; 15 | geometry(2:2:end,2) = geometry(1:2:end,2); 16 | %geometry(1:2:end,1) = 0; geometry(2:2:end,1) = 16; %Type A 17 | geometry(1:2:end,1) = 16; geometry(2:2:end,1) = 32; %Type B 18 | %geometry(1:2:end,1) = 32; geometry(2:2:end,1) = 48; %Type C 19 | 20 | % Recording contact pad size in micrometers. Height x width 21 | pad = [12 12]; 22 | -------------------------------------------------------------------------------- /matlab/prb/silico_feb8_2colB_1.prb: -------------------------------------------------------------------------------- 1 | % Order of the probe sites in the recording file 2 | istart = 1; %{1,2,3,4} 3 | channels = istart:5:600; 4 | 5 | %channels = channels([1:30; 61:90]); %Type A 6 | channels = channels([31:60; 91:120]); %Type B 7 | channels = channels(:)'; 8 | 9 | % Site location in micrometers (x and y) 10 | geometry = zeros(60, 2); 11 | viHalf = 0:29; 12 | geometry(1:2:end,2) = viHalf * 20 + (istart-1)*5; 13 | geometry(2:2:end,2) = geometry(1:2:end,2); 14 | %geometry(1:2:end,1) = 0; geometry(2:2:end,1) = 32; %Type A 15 | geometry(1:2:end,1) = 16; geometry(2:2:end,1) = 48; %Type B 16 | 17 | % Recording contact pad size in micrometers. Height x width 18 | pad = [12 12]; 19 | -------------------------------------------------------------------------------- /matlab/prb/silico_feb8_2colB_2.prb: -------------------------------------------------------------------------------- 1 | % Order of the probe sites in the recording file 2 | istart = 2; %{1,2,3,4} 3 | channels = istart:5:600; 4 | 5 | %channels = channels([1:30; 61:90]); %Type A 6 | channels = channels([31:60; 91:120]); %Type B 7 | channels = channels(:)'; 8 | 9 | % Site location in micrometers (x and y) 10 | geometry = zeros(60, 2); 11 | viHalf = 0:29; 12 | geometry(1:2:end,2) = viHalf * 20 + (istart-1)*5; 13 | geometry(2:2:end,2) = geometry(1:2:end,2); 14 | %geometry(1:2:end,1) = 0; geometry(2:2:end,1) = 32; %Type A 15 | geometry(1:2:end,1) = 16; geometry(2:2:end,1) = 48; %Type B 16 | 17 | % Recording contact pad size in micrometers. Height x width 18 | pad = [12 12]; 19 | -------------------------------------------------------------------------------- /matlab/prb/silico_feb8_2colB_3.prb: -------------------------------------------------------------------------------- 1 | % Order of the probe sites in the recording file 2 | istart = 3; %{1,2,3,4} 3 | channels = istart:5:600; 4 | 5 | %channels = channels([1:30; 61:90]); %Type A 6 | channels = channels([31:60; 91:120]); %Type B 7 | channels = channels(:)'; 8 | 9 | % Site location in micrometers (x and y) 10 | geometry = zeros(60, 2); 11 | viHalf = 0:29; 12 | geometry(1:2:end,2) = viHalf * 20 + (istart-1)*5; 13 | geometry(2:2:end,2) = geometry(1:2:end,2); 14 | %geometry(1:2:end,1) = 0; geometry(2:2:end,1) = 32; %Type A 15 | geometry(1:2:end,1) = 16; geometry(2:2:end,1) = 48; %Type B 16 | 17 | % Recording contact pad size in micrometers. Height x width 18 | pad = [12 12]; 19 | -------------------------------------------------------------------------------- /matlab/prb/silico_feb8_2colB_4.prb: -------------------------------------------------------------------------------- 1 | % Order of the probe sites in the recording file 2 | istart = 4; %{1,2,3,4} 3 | channels = istart:5:600; 4 | 5 | %channels = channels([1:30; 61:90]); %Type A 6 | channels = channels([31:60; 91:120]); %Type B 7 | channels = channels(:)'; 8 | 9 | % Site location in micrometers (x and y) 10 | geometry = zeros(60, 2); 11 | viHalf = 0:29; 12 | geometry(1:2:end,2) = viHalf * 20 + (istart-1)*5; 13 | geometry(2:2:end,2) = geometry(1:2:end,2); 14 | %geometry(1:2:end,1) = 0; geometry(2:2:end,1) = 32; %Type A 15 | geometry(1:2:end,1) = 16; geometry(2:2:end,1) = 48; %Type B 16 | 17 | % Recording contact pad size in micrometers. Height x width 18 | pad = [12 12]; 19 | -------------------------------------------------------------------------------- /matlab/prb/silico_feb8_2colB_60.prb: -------------------------------------------------------------------------------- 1 | % Order of the probe sites in the recording file 2 | % silico_feb8_2colB_60.prb 3 | istart = 1; %{1,2,3,4} 4 | channels = 1:60; 5 | 6 | % Site location in micrometers (x and y) 7 | geometry = zeros(60, 2); 8 | viHalf = 0:29; 9 | geometry(1:2:end,2) = viHalf * 20 + (istart-1)*5; 10 | geometry(2:2:end,2) = geometry(1:2:end,2); 11 | %geometry(1:2:end,1) = 0; geometry(2:2:end,1) = 32; %Type A 12 | geometry(1:2:end,1) = 16; geometry(2:2:end,1) = 48; %Type B 13 | 14 | % Recording contact pad size in micrometers. Height x width 15 | pad = [12 12]; 16 | -------------------------------------------------------------------------------- /matlab/prb/silico_feb8_3colA_90.prb: -------------------------------------------------------------------------------- 1 | % Order of the probe sites in the recording file 2 | % silico_feb8_3colA_90.prb 3 | istart = 1; %{1,2,3,4} 4 | channels = 1:90; 5 | 6 | % Site location in micrometers (x and y) 7 | geometry = zeros(90, 2); 8 | geometry(1:3:end,2) = (0:29) * 20 + (istart-1)*4; 9 | geometry(2:3:end,2) = geometry(1:3:end,2); 10 | geometry(3:3:end,2) = geometry(1:3:end,2); 11 | 12 | geometry(1:3:end,1) = 0; geometry(2:3:end,1) = 16; geometry(3:3:end,1) = 32; 13 | %geometry(:,1) = geometry(:,1) + 16; %do it if Type B 14 | 15 | % Recording contact pad size in micrometers. Height x width 16 | pad = [12 12]; 17 | -------------------------------------------------------------------------------- /matlab/prb/silico_feb8_3colB_90.prb: -------------------------------------------------------------------------------- 1 | % Order of the probe sites in the recording file 2 | % silico_feb8_3colB_90.prb 3 | istart = 1; %{1,2,3,4} 4 | channels = 1:90; 5 | 6 | % Site location in micrometers (x and y) 7 | geometry = zeros(90, 2); 8 | geometry(1:3:end,2) = (0:29) * 20 + (istart-1)*4; 9 | geometry(2:3:end,2) = geometry(1:3:end,2); 10 | geometry(3:3:end,2) = geometry(1:3:end,2); 11 | 12 | geometry(1:3:end,1) = 0; geometry(2:3:end,1) = 16; geometry(3:3:end,1) = 32; 13 | geometry(:,1) = geometry(:,1) + 16; %do it if Type B 14 | 15 | % Recording contact pad size in micrometers. Height x width 16 | pad = [12 12]; 17 | -------------------------------------------------------------------------------- /matlab/prb/silico_feb8_4col.prb: -------------------------------------------------------------------------------- 1 | % Order of the probe sites in the recording file 2 | % silico_feb8_4col.prb % 120 chan 3 | channels = 1:120; 4 | 5 | % Site location in micrometers (x and y) 6 | geometry = zeros(120, 2); 7 | geometry(1:4:end,2) = (0:29) * 20; 8 | geometry(2:4:end,2) = geometry(1:4:end,2); 9 | geometry(3:4:end,2) = geometry(1:4:end,2); 10 | geometry(4:4:end,2) = geometry(1:4:end,2); 11 | geometry(1:4:end,1) = 0; 12 | geometry(2:4:end,1) = 16; 13 | geometry(3:4:end,1) = 32; 14 | geometry(4:4:end,1) = 48; 15 | 16 | % Recording contact pad size in micrometers. Height x width 17 | pad = [12 12]; 18 | -------------------------------------------------------------------------------- /matlab/prb/silico_feb8_4colA_1.prb: -------------------------------------------------------------------------------- 1 | % Order of the probe sites in the recording file 2 | istart = 1; %{1,2,3,4} 3 | channels = istart:5:600; 4 | 5 | channels = channels([1:2:30; 61:2:90; 32:2:60; 92:2:120]); %Type A 6 | %channels = channels([31:2:60; 91:2:120; 2:2:30; 62:2:90]); %Type B 7 | channels = channels(:)'; 8 | 9 | % Site location in micrometers (x and y) 10 | geometry = zeros(60, 2); 11 | viHalf = 0:29; 12 | geometry(1:2:end,2) = viHalf * 20 + (istart-1)*5; 13 | geometry(2:2:end,2) = geometry(1:2:end,2); 14 | geometry(1:4:end,1) = 0; 15 | geometry(2:4:end,1) = 32; 16 | geometry(3:4:end,1) = 16; 17 | geometry(4:4:end,1) = 48; 18 | 19 | % Recording contact pad size in micrometers. Height x width 20 | pad = [12 12]; 21 | -------------------------------------------------------------------------------- /matlab/prb/silico_feb8_4colA_2.prb: -------------------------------------------------------------------------------- 1 | % Order of the probe sites in the recording file 2 | istart = 2; %{1,2,3,4} 3 | channels = istart:5:600; 4 | 5 | channels = channels([1:2:30; 61:2:90; 32:2:60; 92:2:120]); %Type A 6 | %channels = channels([31:2:60; 91:2:120; 2:2:30; 62:2:90]); %Type B 7 | channels = channels(:)'; 8 | 9 | % Site location in micrometers (x and y) 10 | geometry = zeros(60, 2); 11 | viHalf = 0:29; 12 | geometry(1:2:end,2) = viHalf * 20 + (istart-1)*5; 13 | geometry(2:2:end,2) = geometry(1:2:end,2); 14 | geometry(1:4:end,1) = 0; 15 | geometry(2:4:end,1) = 32; 16 | geometry(3:4:end,1) = 16; 17 | geometry(4:4:end,1) = 48; 18 | 19 | % Recording contact pad size in micrometers. Height x width 20 | pad = [12 12]; 21 | -------------------------------------------------------------------------------- /matlab/prb/silico_feb8_4colA_3.prb: -------------------------------------------------------------------------------- 1 | % Order of the probe sites in the recording file 2 | istart = 3; %{1,2,3,4} 3 | channels = istart:5:600; 4 | 5 | channels = channels([1:2:30; 61:2:90; 32:2:60; 92:2:120]); %Type A 6 | %channels = channels([31:2:60; 91:2:120; 2:2:30; 62:2:90]); %Type B 7 | channels = channels(:)'; 8 | 9 | % Site location in micrometers (x and y) 10 | geometry = zeros(60, 2); 11 | viHalf = 0:29; 12 | geometry(1:2:end,2) = viHalf * 20 + (istart-1)*5; 13 | geometry(2:2:end,2) = geometry(1:2:end,2); 14 | geometry(1:4:end,1) = 0; 15 | geometry(2:4:end,1) = 32; 16 | geometry(3:4:end,1) = 16; 17 | geometry(4:4:end,1) = 48; 18 | 19 | % Recording contact pad size in micrometers. Height x width 20 | pad = [12 12]; 21 | -------------------------------------------------------------------------------- /matlab/prb/silico_feb8_4colA_4.prb: -------------------------------------------------------------------------------- 1 | % Order of the probe sites in the recording file 2 | istart = 4; %{1,2,3,4} 3 | channels = istart:5:600; 4 | 5 | channels = channels([1:2:30; 61:2:90; 32:2:60; 92:2:120]); %Type A 6 | %channels = channels([31:2:60; 91:2:120; 2:2:30; 62:2:90]); %Type B 7 | channels = channels(:)'; 8 | 9 | % Site location in micrometers (x and y) 10 | geometry = zeros(60, 2); 11 | viHalf = 0:29; 12 | geometry(1:2:end,2) = viHalf * 20 + (istart-1)*5; 13 | geometry(2:2:end,2) = geometry(1:2:end,2); 14 | geometry(1:4:end,1) = 0; 15 | geometry(2:4:end,1) = 32; 16 | geometry(3:4:end,1) = 16; 17 | geometry(4:4:end,1) = 48; 18 | 19 | % Recording contact pad size in micrometers. Height x width 20 | pad = [12 12]; 21 | -------------------------------------------------------------------------------- /matlab/prb/silico_feb8_4colA_60.prb: -------------------------------------------------------------------------------- 1 | % Order of the probe sites in the recording file 2 | % silico_feb8_4colA_60.prb 3 | istart = 1; %{1,2,3,4} 4 | channels = 1:60; 5 | 6 | % Site location in micrometers (x and y) 7 | geometry = zeros(60, 2); 8 | viHalf = 0:29; 9 | geometry(1:2:end,2) = viHalf * 20 + (istart-1)*5; 10 | geometry(2:2:end,2) = geometry(1:2:end,2); 11 | geometry(1:4:end,1) = 0; 12 | geometry(2:4:end,1) = 32; 13 | geometry(3:4:end,1) = 16; 14 | geometry(4:4:end,1) = 48; 15 | 16 | % Recording contact pad size in micrometers. Height x width 17 | pad = [12 12]; 18 | -------------------------------------------------------------------------------- /matlab/prb/silico_feb8_4colB.prb: -------------------------------------------------------------------------------- 1 | % Order of the probe sites in the recording file 2 | istart = 1; %{1,2,3,4} 3 | channels = istart:5:600; 4 | 5 | %channels = channels([1:2:30; 61:2:90; 32:2:60; 92:2:120]); %Type A 6 | channels = channels([31:2:60; 91:2:120; 2:2:30; 62:2:90]); %Type B 7 | channels = channels(:)'; 8 | 9 | % Site location in micrometers (x and y) 10 | geometry = zeros(60, 2); 11 | viHalf = 0:29; 12 | geometry(1:2:end,2) = viHalf * 20 + (istart-1)*5; 13 | geometry(2:2:end,2) = geometry(1:2:end,2); 14 | geometry(3:4:end,1) = 0; 15 | geometry(4:4:end,1) = 32; 16 | geometry(1:4:end,1) = 16; 17 | geometry(2:4:end,1) = 48; 18 | 19 | % Recording contact pad size in micrometers. Height x width 20 | pad = [12 12]; 21 | -------------------------------------------------------------------------------- /matlab/prb/silico_feb8_4colB_1.prb: -------------------------------------------------------------------------------- 1 | % Order of the probe sites in the recording file 2 | istart = 1; %{1,2,3,4} 3 | channels = istart:5:600; 4 | 5 | %channels = channels([1:2:30; 61:2:90; 32:2:60; 92:2:120]); %Type A 6 | channels = channels([31:2:60; 91:2:120; 2:2:30; 62:2:90]); %Type B 7 | channels = channels(:)'; 8 | 9 | % Site location in micrometers (x and y) 10 | geometry = zeros(60, 2); 11 | viHalf = 0:29; 12 | geometry(1:2:end,2) = viHalf * 20 + (istart-1)*5; 13 | geometry(2:2:end,2) = geometry(1:2:end,2); 14 | geometry(3:4:end,1) = 0; 15 | geometry(4:4:end,1) = 32; 16 | geometry(1:4:end,1) = 16; 17 | geometry(2:4:end,1) = 48; 18 | 19 | % Recording contact pad size in micrometers. Height x width 20 | pad = [12 12]; 21 | -------------------------------------------------------------------------------- /matlab/prb/silico_feb8_4colB_2.prb: -------------------------------------------------------------------------------- 1 | % Order of the probe sites in the recording file 2 | istart = 2; %{1,2,3,4} 3 | channels = istart:5:600; 4 | 5 | %channels = channels([1:2:30; 61:2:90; 32:2:60; 92:2:120]); %Type A 6 | channels = channels([31:2:60; 91:2:120; 2:2:30; 62:2:90]); %Type B 7 | channels = channels(:)'; 8 | 9 | % Site location in micrometers (x and y) 10 | geometry = zeros(60, 2); 11 | viHalf = 0:29; 12 | geometry(1:2:end,2) = viHalf * 20 + (istart-1)*5; 13 | geometry(2:2:end,2) = geometry(1:2:end,2); 14 | geometry(3:4:end,1) = 0; 15 | geometry(4:4:end,1) = 32; 16 | geometry(1:4:end,1) = 16; 17 | geometry(2:4:end,1) = 48; 18 | 19 | % Recording contact pad size in micrometers. Height x width 20 | pad = [12 12]; 21 | -------------------------------------------------------------------------------- /matlab/prb/silico_feb8_4colB_3.prb: -------------------------------------------------------------------------------- 1 | % Order of the probe sites in the recording file 2 | istart = 3; %{1,2,3,4} 3 | channels = istart:5:600; 4 | 5 | %channels = channels([1:2:30; 61:2:90; 32:2:60; 92:2:120]); %Type A 6 | channels = channels([31:2:60; 91:2:120; 2:2:30; 62:2:90]); %Type B 7 | channels = channels(:)'; 8 | 9 | % Site location in micrometers (x and y) 10 | geometry = zeros(60, 2); 11 | viHalf = 0:29; 12 | geometry(1:2:end,2) = viHalf * 20 + (istart-1)*5; 13 | geometry(2:2:end,2) = geometry(1:2:end,2); 14 | geometry(3:4:end,1) = 0; 15 | geometry(4:4:end,1) = 32; 16 | geometry(1:4:end,1) = 16; 17 | geometry(2:4:end,1) = 48; 18 | 19 | % Recording contact pad size in micrometers. Height x width 20 | pad = [12 12]; 21 | -------------------------------------------------------------------------------- /matlab/prb/silico_feb8_4colB_4.prb: -------------------------------------------------------------------------------- 1 | % Order of the probe sites in the recording file 2 | istart = 4; %{1,2,3,4} 3 | channels = istart:5:600; 4 | 5 | %channels = channels([1:2:30; 61:2:90; 32:2:60; 92:2:120]); %Type A 6 | channels = channels([31:2:60; 91:2:120; 2:2:30; 62:2:90]); %Type B 7 | channels = channels(:)'; 8 | 9 | % Site location in micrometers (x and y) 10 | geometry = zeros(60, 2); 11 | viHalf = 0:29; 12 | geometry(1:2:end,2) = viHalf * 20 + (istart-1)*5; 13 | geometry(2:2:end,2) = geometry(1:2:end,2); 14 | geometry(3:4:end,1) = 0; 15 | geometry(4:4:end,1) = 32; 16 | geometry(1:4:end,1) = 16; 17 | geometry(2:4:end,1) = 48; 18 | 19 | % Recording contact pad size in micrometers. Height x width 20 | pad = [12 12]; 21 | -------------------------------------------------------------------------------- /matlab/prb/silico_feb8_4colB_60.prb: -------------------------------------------------------------------------------- 1 | % Order of the probe sites in the recording file 2 | % silico_feb8_4colB_60.prb 3 | istart = 1; %{1,2,3,4} 4 | channels = 1:60; 5 | 6 | % Site location in micrometers (x and y) 7 | geometry = zeros(60, 2); 8 | viHalf = 0:29; 9 | geometry(1:2:end,2) = viHalf * 20 + (istart-1)*5; 10 | geometry(2:2:end,2) = geometry(1:2:end,2); 11 | geometry(3:4:end,1) = 0; 12 | geometry(4:4:end,1) = 32; 13 | geometry(1:4:end,1) = 16; 14 | geometry(2:4:end,1) = 48; 15 | 16 | % Recording contact pad size in micrometers. Height x width 17 | pad = [12 12]; 18 | -------------------------------------------------------------------------------- /matlab/prb/silico_feb8_4col_120.prb: -------------------------------------------------------------------------------- 1 | % Order of the probe sites in the recording file 2 | % silico_feb8_4col_120.prb 3 | istart = 1; 4 | channels = 1:120; 5 | 6 | % Site location in micrometers (x and y) 7 | geometry = zeros(120, 2); 8 | geometry(1:4:end,2) = (0:29) * 20 + (istart-1)*4; 9 | geometry(2:4:end,2) = geometry(1:4:end,2); 10 | geometry(3:4:end,2) = geometry(1:4:end,2); 11 | geometry(4:4:end,2) = geometry(1:4:end,2); 12 | 13 | geometry(1:4:end,1) = 0; geometry(2:4:end,1) = 16; 14 | geometry(3:4:end,1) = 32; geometry(4:4:end,1) = 48; 15 | 16 | % Recording contact pad size in micrometers. Height x width 17 | pad = [12 12]; 18 | -------------------------------------------------------------------------------- /matlab/prb/silico_jul_2colA.prb: -------------------------------------------------------------------------------- 1 | % Order of the probe sites in the recording file, 32 gap 2 | channels = zeros(1,60); 3 | channels(1:2:end) = 1:4:120; channels(2:2:end) = 3:4:120; %Type A 4 | %channels(1:2:end) = 2:4:120; channels(2:2:end) = 4:4:120; %Type B 5 | 6 | % Site location in micrometers (x and y) 7 | geometry = zeros(60, 2); viHalf = 0:29; 8 | geometry(1:2:end,2) = viHalf * 20; geometry(2:2:end,2) = viHalf * 20; 9 | geometry(1:2:end,1) = 0; geometry(2:2:end,1) = 32; %Type A 10 | %geometry(1:2:end,1) = 16; geometry(2:2:end,1) = 48; %Type B 11 | 12 | % Recording contact pad size in micrometers. Height x width 13 | pad = [12 12]; -------------------------------------------------------------------------------- /matlab/prb/silico_jul_2colA16.prb: -------------------------------------------------------------------------------- 1 | % Order of the probe sites in the recording file, 32 gap 2 | channels = zeros(1,60); 3 | channels(1:2:end) = 1:4:120; channels(2:2:end) = 2:4:120; %Type A 4 | %channels(1:2:end) = 2:4:120; channels(2:2:end) = 3:4:120; %Type B 5 | %channels(1:2:end) = 3:4:120; channels(2:2:end) = 4:4:120; %Type C 6 | 7 | % Site location in micrometers (x and y) 8 | geometry = zeros(60, 2); viHalf = 0:29; 9 | geometry(1:2:end,2) = viHalf * 20; geometry(2:2:end,2) = viHalf * 20; 10 | geometry(1:2:end,1) = 0; geometry(2:2:end,1) = 16; %Type A 11 | %geometry(1:2:end,1) = 16; geometry(2:2:end,1) = 32; %Type B 12 | %geometry(1:2:end,1) = 32; geometry(2:2:end,1) = 48; %Type C 13 | 14 | % Recording contact pad size in micrometers. Height x width 15 | pad = [12 12]; -------------------------------------------------------------------------------- /matlab/prb/silico_jul_2colB.prb: -------------------------------------------------------------------------------- 1 | % Order of the probe sites in the recording file, 32 gap 2 | channels = zeros(1,60); 3 | %channels(1:2:end) = 1:4:120; channels(2:2:end) = 3:4:120; %Type A 4 | channels(1:2:end) = 2:4:120; channels(2:2:end) = 4:4:120; %Type B 5 | 6 | % Site location in micrometers (x and y) 7 | geometry = zeros(60, 2); viHalf = 0:29; 8 | geometry(1:2:end,2) = viHalf * 20; geometry(2:2:end,2) = viHalf * 20; 9 | %geometry(1:2:end,1) = 0; geometry(2:2:end,1) = 32; %Type A 10 | geometry(1:2:end,1) = 16; geometry(2:2:end,1) = 48; %Type B 11 | 12 | % Recording contact pad size in micrometers. Height x width 13 | pad = [12 12]; -------------------------------------------------------------------------------- /matlab/prb/silico_jul_2colB16.prb: -------------------------------------------------------------------------------- 1 | % Order of the probe sites in the recording file, 32 gap 2 | channels = zeros(1,60); 3 | %channels(1:2:end) = 1:4:120; channels(2:2:end) = 2:4:120; %Type A 4 | channels(1:2:end) = 2:4:120; channels(2:2:end) = 3:4:120; %Type B 5 | %channels(1:2:end) = 3:4:120; channels(2:2:end) = 4:4:120; %Type C 6 | 7 | % Site location in micrometers (x and y) 8 | geometry = zeros(60, 2); viHalf = 0:29; 9 | geometry(1:2:end,2) = viHalf * 20; geometry(2:2:end,2) = viHalf * 20; 10 | %geometry(1:2:end,1) = 0; geometry(2:2:end,1) = 16; %Type A 11 | geometry(1:2:end,1) = 16; geometry(2:2:end,1) = 32; %Type B 12 | %geometry(1:2:end,1) = 32; geometry(2:2:end,1) = 48; %Type C 13 | 14 | % Recording contact pad size in micrometers. Height x width 15 | pad = [12 12]; -------------------------------------------------------------------------------- /matlab/prb/silico_jul_2colC16.prb: -------------------------------------------------------------------------------- 1 | % Order of the probe sites in the recording file, 32 gap 2 | channels = zeros(1,60); 3 | %channels(1:2:end) = 1:4:120; channels(2:2:end) = 2:4:120; %Type A 4 | %channels(1:2:end) = 2:4:120; channels(2:2:end) = 3:4:120; %Type B 5 | channels(1:2:end) = 3:4:120; channels(2:2:end) = 4:4:120; %Type C 6 | 7 | % Site location in micrometers (x and y) 8 | geometry = zeros(60, 2); viHalf = 0:29; 9 | geometry(1:2:end,2) = viHalf * 20; geometry(2:2:end,2) = viHalf * 20; 10 | %geometry(1:2:end,1) = 0; geometry(2:2:end,1) = 16; %Type A 11 | %geometry(1:2:end,1) = 16; geometry(2:2:end,1) = 32; %Type B 12 | geometry(1:2:end,1) = 32; geometry(2:2:end,1) = 48; %Type C 13 | 14 | % Recording contact pad size in micrometers. Height x width 15 | pad = [12 12]; -------------------------------------------------------------------------------- /matlab/prb/silico_oct18_2colA.prb: -------------------------------------------------------------------------------- 1 | % Order of the probe sites in the recording file 2 | channels = 1:120; 3 | channels = channels([1:30; 61:90]); %Type A 4 | %channels = channels([31:60; 91:120]); %Type B 5 | channels = channels(:)'; 6 | 7 | % Site location in micrometers (x and y) 8 | geometry = zeros(60, 2); 9 | viHalf = 0:29; 10 | geometry(1:2:end,2) = viHalf * 20; 11 | geometry(2:2:end,2) = geometry(1:2:end,2); 12 | geometry(1:2:end,1) = 0; geometry(2:2:end,1) = 32; %Type A 13 | %geometry(1:2:end,1) = 16; geometry(2:2:end,1) = 48; %Type B 14 | 15 | % Recording contact pad size in micrometers. Height x width 16 | pad = [12 12]; 17 | %shank = ones(4,15); shank([2,4],:) = 2; shank=shank(:); -------------------------------------------------------------------------------- /matlab/prb/silico_oct18_2colA16.prb: -------------------------------------------------------------------------------- 1 | % Order of the probe sites in the recording file 2 | channels = 1:120; 3 | channels = channels([1:30; 31:60]); %Type A 4 | %channels = channels([31:60; 61:90]); %Type B 5 | %channels = channels([61:90; 91:120]); %Type C 6 | channels = channels(:)'; 7 | 8 | % Site location in micrometers (x and y) 9 | geometry = zeros(60, 2); 10 | viHalf = 0:29; 11 | geometry(1:2:end,2) = viHalf * 20; 12 | geometry(2:2:end,2) = geometry(1:2:end,2); 13 | geometry(1:2:end,1) = 0; geometry(2:2:end,1) = 16; %Type A 14 | %geometry(1:2:end,1) = 16; geometry(2:2:end,1) = 32; %Type B 15 | %geometry(1:2:end,1) = 32; geometry(2:2:end,1) = 48; %Type C 16 | 17 | % Recording contact pad size in micrometers. Height x width 18 | pad = [12 12]; 19 | %shank = ones(4,15); shank([2,4],:) = 2; shank=shank(:); -------------------------------------------------------------------------------- /matlab/prb/silico_oct18_2colB.prb: -------------------------------------------------------------------------------- 1 | % Order of the probe sites in the recording file 2 | channels = 1:120; 3 | %channels = channels([1:30; 61:90]); %Type A 4 | channels = channels([31:60; 91:120]); %Type B 5 | channels = channels(:)'; 6 | 7 | % Site location in micrometers (x and y) 8 | geometry = zeros(60, 2); 9 | viHalf = 0:29; 10 | geometry(1:2:end,2) = viHalf * 20; 11 | geometry(2:2:end,2) = geometry(1:2:end,2); 12 | %geometry(1:2:end,1) = 0; geometry(2:2:end,1) = 32; %Type A 13 | geometry(1:2:end,1) = 16; geometry(2:2:end,1) = 48; %Type B 14 | 15 | % Recording contact pad size in micrometers. Height x width 16 | pad = [12 12]; 17 | %shank = ones(4,15); shank([2,4],:) = 2; shank=shank(:); -------------------------------------------------------------------------------- /matlab/prb/silico_oct18_2colB16.prb: -------------------------------------------------------------------------------- 1 | % Order of the probe sites in the recording file 2 | channels = 1:120; 3 | %channels = channels([1:30; 31:60]); %Type A 4 | channels = channels([31:60; 61:90]); %Type B 5 | %channels = channels([61:90; 91:120]); %Type C 6 | channels = channels(:)'; 7 | 8 | % Site location in micrometers (x and y) 9 | geometry = zeros(60, 2); 10 | viHalf = 0:29; 11 | geometry(1:2:end,2) = viHalf * 20; 12 | geometry(2:2:end,2) = geometry(1:2:end,2); 13 | %geometry(1:2:end,1) = 0; geometry(2:2:end,1) = 16; %Type A 14 | geometry(1:2:end,1) = 16; geometry(2:2:end,1) = 32; %Type B 15 | %geometry(1:2:end,1) = 32; geometry(2:2:end,1) = 48; %Type C 16 | 17 | % Recording contact pad size in micrometers. Height x width 18 | pad = [12 12]; 19 | %shank = ones(4,15); shank([2,4],:) = 2; shank=shank(:); -------------------------------------------------------------------------------- /matlab/prb/silico_oct18_2colC16.prb: -------------------------------------------------------------------------------- 1 | % Order of the probe sites in the recording file 2 | channels = 1:120; 3 | %channels = channels([1:30; 31:60]); %Type A 4 | %channels = channels([31:60; 61:90]); %Type B 5 | channels = channels([61:90; 91:120]); %Type C 6 | channels = channels(:)'; 7 | 8 | % Site location in micrometers (x and y) 9 | geometry = zeros(60, 2); 10 | viHalf = 0:29; 11 | geometry(1:2:end,2) = viHalf * 20; 12 | geometry(2:2:end,2) = geometry(1:2:end,2); 13 | %geometry(1:2:end,1) = 0; geometry(2:2:end,1) = 16; %Type A 14 | %geometry(1:2:end,1) = 16; geometry(2:2:end,1) = 32; %Type B 15 | geometry(1:2:end,1) = 32; geometry(2:2:end,1) = 48; %Type C 16 | 17 | % Recording contact pad size in micrometers. Height x width 18 | pad = [12 12]; 19 | %shank = ones(4,15); shank([2,4],:) = 2; shank=shank(:); -------------------------------------------------------------------------------- /matlab/prb/silico_oct18_4colA.prb: -------------------------------------------------------------------------------- 1 | % Order of the probe sites in the recording file 2 | channels = [1:2:30; 61:2:90; 32:2:60; 92:2:120]; %Type A 3 | %channels = [31:2:60; 91:2:120; 2:2:30; 62:2:90]; %Type B 4 | channels = channels(:)'; 5 | 6 | % Site location in micrometers (x and y) 7 | geometry = zeros(60, 2); 8 | viHalf = 0:29; 9 | geometry(1:2:end,2) = viHalf * 20; 10 | geometry(2:2:end,2) = geometry(1:2:end,2); 11 | geometry(1:4:end,1) = 0; 12 | geometry(2:4:end,1) = 32; 13 | geometry(3:4:end,1) = 16; 14 | geometry(4:4:end,1) = 48; 15 | 16 | % Recording contact pad size in micrometers. Height x width 17 | pad = [12 12]; 18 | %shank = ones(4,15); shank([2,4],:) = 2; shank=shank(:); -------------------------------------------------------------------------------- /matlab/prb/silico_oct18_4colB.prb: -------------------------------------------------------------------------------- 1 | % Order of the probe sites in the recording file 2 | %channels = [1:2:30; 61:2:90; 32:2:60; 92:2:120]; %Type A 3 | channels = [31:2:60; 91:2:120; 2:2:30; 62:2:90]; %Type B 4 | channels = channels(:)'; 5 | 6 | % Site location in micrometers (x and y) 7 | geometry = zeros(60, 2); 8 | viHalf = 0:29; 9 | geometry(1:2:end,2) = viHalf * 20; 10 | geometry(2:2:end,2) = geometry(1:2:end,2); 11 | geometry(3:4:end,1) = 0; 12 | geometry(4:4:end,1) = 32; 13 | geometry(1:4:end,1) = 16; 14 | geometry(2:4:end,1) = 48; 15 | 16 | % Recording contact pad size in micrometers. Height x width 17 | pad = [12 12]; 18 | %shank = ones(4,15); shank([2,4],:) = 2; shank=shank(:); -------------------------------------------------------------------------------- /matlab/prb/tetrode.prb: -------------------------------------------------------------------------------- 1 | % Order of the probe sites in the recording file 2 | channels = 1:4; 3 | 4 | % Site location in micrometers (x and y) 5 | geometry = [0 20 20 0; 0 0 20 20]'; 6 | 7 | % Reference sites are being excluded 8 | pad = [12 12]; 9 | 10 | % Default prm 11 | maxSite = 1.5; 12 | um_per_pix = 20; -------------------------------------------------------------------------------- /matlab/prb/tetrodes.prb: -------------------------------------------------------------------------------- 1 | nTetrodes = 4; % Number of tetrodes 2 | 3 | channels = 1:(nTetrodes*4); 4 | 5 | geometry = zeros(numel(channels), 2); % create a geometry of electrodes (assuming 25 um site separation) 6 | geometry(1:2:end,1) = 0; 7 | geometry(2:2:end,1) = 25; 8 | geometry(1:4:end,2) = 100*(1:nTetrodes); 9 | geometry(3:4:end,2) = geometry(1:4:end,2) + 25; 10 | geometry(2:2:end,2) = geometry(1:2:end,2); 11 | 12 | % Shanks 13 | shank = repmat([1:nTetrodes], 4,1); 14 | shank = shank(:)'; 15 | 16 | % Micrometers per center-to-center vertical site spacing 17 | um_per_pix = 25; 18 | 19 | % Recording contact pad size in micrometers. Height x width 20 | pad = [12 12]; -------------------------------------------------------------------------------- /matlab/prb/tritrode.prb: -------------------------------------------------------------------------------- 1 | % Order of the probe sites in the recording file 2 | channels = 1:3; 3 | 4 | % Site location in micrometers (x and y) 5 | geometry = [0 20; 20 0; 10 10]; 6 | 7 | % Reference sites are being excluded 8 | pad = [12 12]; 9 | 10 | % Default prm 11 | maxSite = 1.5; 12 | um_per_pix = 20; -------------------------------------------------------------------------------- /matlab/prb/unitrode.prb: -------------------------------------------------------------------------------- 1 | % Order of the probe sites in the recording file 2 | channels = 5; 3 | 4 | % Site location in micrometers (x and y) 5 | geometry = [0 20]; 6 | 7 | % Reference sites are being excluded 8 | pad = [12 12]; 9 | 10 | % Default prm 11 | maxSite = 1.5; 12 | um_per_pix = 20; -------------------------------------------------------------------------------- /matlab/prb/yingxue.prb: -------------------------------------------------------------------------------- 1 | % Four shank SI probe from APIG 2 | % Acute Neuronexus four shank zigzag six shank. 3 | 4 | channels = 1+[30 58 24 50 6 56 0 48 2 54]; 5 | geometry = zeros(numel(channels), 2); 6 | geometry(:,2)=[9 8 7 6 5 4 3 2 1 0] * 20; 7 | geometry(:,1)=[-8 8 -7 7 -6 6 -5 5 -4 0] * 2; %assume linear vertical array 8 | pad = [16 12]; %in micrometers, height x width 9 | 10 | % rearrange in bottom-top order 11 | [~, viSiteSrt] = sort(geometry(:,2)); 12 | channels = channels(viSiteSrt); 13 | geometry = geometry(viSiteSrt,:); -------------------------------------------------------------------------------- /matlab/prb/yuri64.prb: -------------------------------------------------------------------------------- 1 | nSites = 64; 2 | 3 | channels = 1 + [48 49 50 51 53 52 55 54 57 56 59 58 61 60 63 62 15 14 13 12 10 11 8 9 6 7 4 5 2 3 0 1 30 31 28 29 26 27 24 25 22 23 20 21 19 18 17 16 33 32 35 34 37 36 39 38 41 40 43 42 44 45 46 47]; 4 | channels = fliplr(channels); 5 | 6 | 7 | geometry = zeros(nSites, 2); 8 | geometry(:,1) = 0; 9 | geometry(:,2) = 20*(0:nSites-1); 10 | 11 | pad = [12 12]; %in micrometers, height x width -------------------------------------------------------------------------------- /matlab/ranksort.m: -------------------------------------------------------------------------------- 1 | function mrC2 = ranksort(mrC, fKillDiag) 2 | if nargin<2, fKillDiag=0; end 3 | [~,mrC1]=sort(mrC); [~,mrC2]=sort(mrC1); 4 | if fKillDiag 5 | dimm = size(mrC); 6 | mrC2(sub2ind(dimm, 1:dimm(1), 1:dimm(2)))=nan; 7 | end 8 | end -------------------------------------------------------------------------------- /matlab/rhs_template.prm: -------------------------------------------------------------------------------- 1 | probe_file = 'rhs32.prb'; 2 | blank_thresh = 10; 3 | vcFilter = 'bandpass'; 4 | freqLim = [300 3000]; 5 | fft_thresh = 10; 6 | maxDist_site_um = 60; 7 | maxDist_site_spk_um = 80; -------------------------------------------------------------------------------- /matlab/sample_list.txt: -------------------------------------------------------------------------------- 1 | sample.bin 2 | sample.bin -------------------------------------------------------------------------------- /matlab/scripts/S190529_params.m: -------------------------------------------------------------------------------- 1 | 2 | 3 | csDir = irc('call', 'dir_', {'/mnt/home/jjun/ceph/groundtruth/paired_recordings/boyden32c/*/params.json'}); 4 | 5 | for iDir = 1:numel(csDir) 6 | vcDir1 = csDir{iDir}; 7 | vcDir2 = strrep(vcDir1, 'boyden32c', 'boyden'); 8 | S_json2 = loadjson(vcDir2); 9 | S_json2.scale_factor = .195; 10 | savejson(vcDir1, S_json2); 11 | end 12 | 13 | %% all json files 14 | 15 | cs_json = irc('call', 'dir', {'/mnt/ceph/users/jjun/groundtruth/**/params.json'}); 16 | 17 | vl_scale = false(size(cs_json)); 18 | for i=1:numel(cs_json) 19 | S1 = loadjson(cs_json{i}); 20 | 21 | vl_scale(i) = isfield(S1, 'scale_factor'); 22 | end %for 23 | 24 | 25 | 26 | 27 | %% save kampff dataset as integer 28 | 29 | 30 | 31 | 32 | -------------------------------------------------------------------------------- /matlab/scripts/test_parfor_fwrite.m: -------------------------------------------------------------------------------- 1 | vcFile = 'test_parfor.bin'; 2 | fid_w = fopen(vcFile, 'w'); 3 | n_repeat = 1000; 4 | tic 5 | for i=1:10 6 | fseek(fid_w, (i-1)*8*n_repeat, 'bof'); 7 | fwrite(fid_w, repmat(i, [n_repeat, 1]), 'double'); 8 | end 9 | toc 10 | fclose(fid_w); 11 | 12 | %% 13 | fid_r = fopen(vcFile, 'r'); 14 | a=fread(fid_r, inf, '*double'); 15 | fclose(fid_r); -------------------------------------------------------------------------------- /matlab/settings.scoreboard: -------------------------------------------------------------------------------- 1 | % #Pre-processing 2 | maxDist_site_um = {50}; 3 | maxDist_site_spk_um = {75}; 4 | vcFilter = {'bandpass'}; 5 | freqLim = {[300, 6000]}; 6 | vcCommonRef = {'mean'}; 7 | 8 | % #Spike detection 9 | qqFactor = {4.5}; 10 | spkLim_ms = {[-.25, .75]}; 11 | 12 | % #Feature extraction 13 | %feature_type = {'gpca'}; 14 | pc_per_chan = {2}; 15 | 16 | % #Clustering 17 | fSpatialMask_clu = {1}; 18 | 19 | % #Auto-merging 20 | maxWavCor = {1}; 21 | fGpu={0}; 22 | fGpu_sort={1}; 23 | 24 | % #Drift 25 | batch_sec_drift = {300}; 26 | step_sec_drift = {20}; 27 | 28 | % #Noise 29 | fft_thresh = {8}; 30 | delta_cut = {1}; 31 | 32 | % #Sort mode 33 | sort_mode = {1}; 34 | post_merge_mode = {1}; 35 | post_merge_mode2 = {19}; 36 | post_merge_mode0 = {[12,15,17]}; -------------------------------------------------------------------------------- /matlab/settings2.scoreboard: -------------------------------------------------------------------------------- 1 | % #Detection 2 | qqFactor = {4}; 3 | spkRefrac_ms = {1/4}; 4 | spkLim_ms = {[-.25, .75]}; 5 | freqLim = {[300,8000]}; 6 | 7 | % #Auto-merging 8 | maxWavCor = {.99}; 9 | fGpu={1}; 10 | fParfor={0}; 11 | 12 | % #Drift 13 | batch_sec_drift = {300}; 14 | step_sec_drift = {20}; 15 | 16 | % #Noise 17 | fft_thresh = {8}; 18 | delta_cut = {1}; 19 | 20 | % #Sort mode 21 | nPcPerChan = {0}; 22 | nPc_spk = {9}; 23 | vcCommonRef = {'mean', 'none', 'trimmean'}; -------------------------------------------------------------------------------- /matlab/spykingcircus.prmset: -------------------------------------------------------------------------------- 1 | detect_threshold = {4.5, 5, 5.5, 6}; 2 | auto_merge = {.4, .5, .6}; 3 | template_width_ms = {2, 2.5, 3}; -------------------------------------------------------------------------------- /matlab/test_irc.m: -------------------------------------------------------------------------------- 1 | % srun matlab -nosplash -nodisplay -r "addpath('/mnt/home/magland/src/ironclust/'); 2 | run_irc '~/ceph/groundtruth/magland_synth/datasets_noise10_K10_C4/001_synth' '~/irc_out' 'static_template.prm' -------------------------------------------------------------------------------- /matlab/testfun.m: -------------------------------------------------------------------------------- 1 | function a=testfun() 2 | 3 | a=test_() 4 | 5 | end 6 | 7 | 8 | function a=test_() 9 | % a=dbstack(1); %, '-completenames'); 10 | a=dbstack(1); a=a.name; 11 | end -------------------------------------------------------------------------------- /matlab/tetrode_template.prm: -------------------------------------------------------------------------------- 1 | vcFilter = 'bandpass'; % Use bandpass filter instead of differentiator filter 2 | freqLim = [300 6000]; % Bandpass frequency range 3 | nTime_clu = 1; % number of time periods to perform separate clustering (later to be merged after clustering) 4 | fPlot_gt = 0; % Plot groundtruth 5 | fGpu = 1; 6 | fRemove_duplicate = 0; 7 | knn = 30; 8 | nTime_clu = 1; 9 | nTime_drift = 64; -------------------------------------------------------------------------------- /matlab/version.txt: -------------------------------------------------------------------------------- 1 | version = '5.9.8' 2 | date = '03/03/2020' -------------------------------------------------------------------------------- /ml_ironclust.mp: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | cd `dirname "$0"` 4 | 5 | octave -q --eval "matlab/ml_ironclust_spec" 6 | #matlab -nodisplay -nosplash -r "matlab/ml_ironclust_spec; quit();" -------------------------------------------------------------------------------- /ml_slopefilter.mp: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | cd `dirname "$0"` 4 | octave -q --eval "matlab/ml_slopefilter_spec" 5 | #matlab -nodisplay -nosplash -r "matlab/ml_slopefilter_spec; quit();" 6 | -------------------------------------------------------------------------------- /python/.vscode/settings.json: -------------------------------------------------------------------------------- 1 | { 2 | "python.pythonPath": "/home/jamesjun/anaconda3/bin/python" 3 | } -------------------------------------------------------------------------------- /python/main.py: -------------------------------------------------------------------------------- 1 | import sys 2 | 3 | def helloworld(n1=1): 4 | print("hello world: %d"%(n1)) 5 | 6 | 7 | def main(): 8 | print("hello world!") 9 | helloworld(3) 10 | 11 | if __name__ == '__main__': 12 | main() --------------------------------------------------------------------------------