aind_data_schema.ephys package#
Submodules#
aind_data_schema.ephys.ephys_rig module#
ephys rig schemas
- class aind_data_schema.ephys.ephys_rig.EphysAssembly(*, ephys_assembly_name: str, manipulator: aind_data_schema.ephys.ephys_rig.Manipulator, probes: List[aind_data_schema.ephys.ephys_rig.EphysProbe])#
Bases:
aind_data_schema.base.AindModel
Module for electrophysiological recording
- ephys_assembly_name: str#
- manipulator: aind_data_schema.ephys.ephys_rig.Manipulator#
- probes: List[aind_data_schema.ephys.ephys_rig.EphysProbe]#
- class aind_data_schema.ephys.ephys_rig.EphysProbe(*, name: Optional[str] = None, serial_number: Optional[str] = None, manufacturer: Optional[aind_data_schema.device.Manufacturer] = None, model: Optional[str] = None, notes: Optional[str] = None, probe_model: aind_data_schema.ephys.ephys_rig.ProbeModel, lasers: Optional[List[aind_data_schema.device.Laser]] = None, headstage: Optional[aind_data_schema.ephys.ephys_rig.Headstage] = None)#
Bases:
aind_data_schema.device.Device
Named probe used in an ephys experiment
- headstage: Optional[aind_data_schema.ephys.ephys_rig.Headstage]#
- lasers: Optional[List[aind_data_schema.device.Laser]]#
- probe_model: aind_data_schema.ephys.ephys_rig.ProbeModel#
- class aind_data_schema.ephys.ephys_rig.EphysRig(*, describedBy: str = 'https://raw.githubusercontent.com/AllenNeuralDynamics/aind-data-schema/main/src/aind_data_schema/ephys/ephys_rig.py', schema_version: str = '0.6.3', rig_id: str, ephys_assemblies: Optional[types.ConstrainedListValue[aind_data_schema.ephys.ephys_rig.EphysAssembly]] = None, stick_microscopes: Optional[List[aind_data_schema.ephys.ephys_rig.StickMicroscopeAssembly]] = None, laser_assemblies: Optional[types.ConstrainedListValue[aind_data_schema.ephys.ephys_rig.LaserAssembly]] = None, cameras: Optional[types.ConstrainedListValue[aind_data_schema.device.CameraAssembly]] = None, visual_monitors: Optional[types.ConstrainedListValue[aind_data_schema.device.Monitor]] = None, mouse_platform: Optional[Union[aind_data_schema.device.Tube, aind_data_schema.device.Treadmill, aind_data_schema.device.Disc]] = None, daqs: Optional[List[Union[aind_data_schema.device.HarpDevice, aind_data_schema.ephys.ephys_rig.NeuropixelsBasestation, aind_data_schema.ephys.ephys_rig.OpenEphysAcquisitionBoard, aind_data_schema.device.DAQDevice]]] = None, additional_devices: Optional[types.ConstrainedListValue[aind_data_schema.device.Device]] = None, notes: Optional[str] = None)#
Bases:
aind_data_schema.base.AindCoreModel
Description of an ephys rig
- additional_devices: Optional[List[aind_data_schema.device.Device]]#
- cameras: Optional[List[aind_data_schema.device.CameraAssembly]]#
- daqs: Optional[List[Union[aind_data_schema.device.HarpDevice, aind_data_schema.ephys.ephys_rig.NeuropixelsBasestation, aind_data_schema.ephys.ephys_rig.OpenEphysAcquisitionBoard, aind_data_schema.device.DAQDevice]]]#
- describedBy: str#
- ephys_assemblies: Optional[List[aind_data_schema.ephys.ephys_rig.EphysAssembly]]#
- laser_assemblies: Optional[List[aind_data_schema.ephys.ephys_rig.LaserAssembly]]#
- mouse_platform: Optional[Union[aind_data_schema.device.Tube, aind_data_schema.device.Treadmill, aind_data_schema.device.Disc]]#
- notes: Optional[str]#
- rig_id: str#
- schema_version: str#
- stick_microscopes: Optional[List[aind_data_schema.ephys.ephys_rig.StickMicroscopeAssembly]]#
- classmethod validate_device_names(values)#
validate that all DAQ channels are connected to devices that actually exist
- classmethod validate_probe_names(values)#
validate that all DAQ probe ports are connected to probes that actually exist
- visual_monitors: Optional[List[aind_data_schema.device.Monitor]]#
- class aind_data_schema.ephys.ephys_rig.Headstage(*, name: Optional[str] = None, serial_number: Optional[str] = None, manufacturer: Optional[aind_data_schema.device.Manufacturer] = None, model: Optional[str] = None, notes: Optional[str] = None, headstage_model: Optional[aind_data_schema.ephys.ephys_rig.HeadstageModel] = None)#
Bases:
aind_data_schema.device.Device
Headstage used with an ephys probe
- headstage_model: Optional[aind_data_schema.ephys.ephys_rig.HeadstageModel]#
- class aind_data_schema.ephys.ephys_rig.HeadstageModel(value)#
Bases:
enum.Enum
Headstage model name
- RHD_16_CH = 'Intan RHD 16-channel'#
- RHD_32_CH = 'Intan RHD 32-channel'#
- RHD_64_CH = 'Intan RHD 64-channel'#
- class aind_data_schema.ephys.ephys_rig.LaserAssembly(*, laser_assembly_name: str, manipulator: aind_data_schema.ephys.ephys_rig.Manipulator, lasers: List[aind_data_schema.device.Laser])#
Bases:
aind_data_schema.base.AindModel
Assembly for optogenetic stimulation
- laser_assembly_name: str#
- lasers: List[aind_data_schema.device.Laser]#
- manipulator: aind_data_schema.ephys.ephys_rig.Manipulator#
- class aind_data_schema.ephys.ephys_rig.Manipulator(*, name: Optional[str] = None, serial_number: Optional[str] = None, manufacturer: typing_extensions.Literal[New Scale Technologies], model: Optional[str] = None, notes: Optional[str] = None)#
Bases:
aind_data_schema.device.Device
Manipulator used on a dome module
- manufacturer: typing_extensions.Literal[New Scale Technologies]#
- class aind_data_schema.ephys.ephys_rig.NeuropixelsBasestation(*, name: Optional[str] = None, serial_number: Optional[str] = None, manufacturer: aind_data_schema.device.Manufacturer = Manufacturer.IMEC, model: Optional[str] = None, notes: Optional[str] = None, data_interface: aind_data_schema.device.DataInterface = 'PXI', computer_name: str, channels: Optional[List[aind_data_schema.device.DAQChannel]] = None, basestation_firmware_version: str, bsc_firmware_version: str, slot: int, ports: List[aind_data_schema.ephys.ephys_rig.ProbePort])#
Bases:
aind_data_schema.device.DAQDevice
PXI-based Neuropixels DAQ
- basestation_firmware_version: str#
- bsc_firmware_version: str#
- data_interface: DataInterface#
- manufacturer: Manufacturer#
- slot: int#
- class aind_data_schema.ephys.ephys_rig.OpenEphysAcquisitionBoard(*, name: Optional[str] = None, serial_number: Optional[str] = None, manufacturer: aind_data_schema.device.Manufacturer = Manufacturer.OEPS, model: Optional[str] = None, notes: Optional[str] = None, data_interface: aind_data_schema.device.DataInterface = 'USB', computer_name: str, channels: Optional[List[aind_data_schema.device.DAQChannel]] = None, ports: List[aind_data_schema.ephys.ephys_rig.ProbePort])#
Bases:
aind_data_schema.device.DAQDevice
Multichannel electrophysiology DAQ
- data_interface: DataInterface#
- manufacturer: Manufacturer#
- class aind_data_schema.ephys.ephys_rig.ProbeModel(value)#
Bases:
enum.Enum
Probe model name
- MI_ULED_PROBE = 'Michigan uLED Probe (Version 1)'#
- MP_PHOTONIC_V1 = 'MPI Photonic Probe (Version 1)'#
- NP1 = 'Neuropixels 1.0'#
- NP2_MULTI_SHANK = 'Neuropixels 2.0 (Multi Shank)'#
- NP2_QUAD_BASE = 'Neuropixels 2.0 (Quad Base)'#
- NP2_SINGLE_SHANK = 'Neuropixels 2.0 (Single Shank)'#
- NP_OPTO_DEMONSTRATOR = 'Neuropixels Opto (Demonstrator)'#
- NP_UHD_FIXED = 'Neuropixels UHD (Fixed)'#
- NP_UHD_SWITCHABLE = 'Neuropixels UHD (Switchable)'#
- class aind_data_schema.ephys.ephys_rig.ProbePort(*, index: int, probes: List[str])#
Bases:
aind_data_schema.base.AindModel
Port for a probe connection
- index: int#
- probes: List[str]#
- class aind_data_schema.ephys.ephys_rig.StickMicroscopeAssembly(*, scope_assembly_name: str, camera: aind_data_schema.device.Camera, lens: aind_data_schema.device.Lens)#
Bases:
aind_data_schema.base.AindModel
Stick microscope used to monitor probes during insertion
- camera: aind_data_schema.device.Camera#
- scope_assembly_name: str#
aind_data_schema.ephys.ephys_session module#
ephys session description and related objects
- class aind_data_schema.ephys.ephys_session.Camera(*, name: str)#
Bases:
aind_data_schema.base.AindModel
Camera recorded in a Stream
- name: str#
- class aind_data_schema.ephys.ephys_session.CcfCoords(*, ml: float, ap: float, dv: float, unit: aind_data_schema.device.SizeUnit = SizeUnit.UM, ccf_version: aind_data_schema.ephys.ephys_session.CcfVersion = CcfVersion.CCFv3)#
Bases:
aind_data_schema.base.AindModel
Coordinates in CCF template space
- ap: float#
- ccf_version: aind_data_schema.ephys.ephys_session.CcfVersion#
- dv: float#
- ml: float#
- class aind_data_schema.ephys.ephys_session.CcfVersion(value)#
Bases:
enum.Enum
CCF version
- CCFv3 = 'CCFv3'#
- class aind_data_schema.ephys.ephys_session.DAQDevice(*, name: str)#
Bases:
aind_data_schema.base.AindModel
Data acquisition device recorded in a Stream
- name: str#
- class aind_data_schema.ephys.ephys_session.DomeModule(*, assembly_name: str, arc_angle: float, module_angle: float, angle_unit: aind_data_schema.device.AngleUnit = AngleUnit.DEG, rotation_angle: Optional[float] = 0.0, coordinate_transform: Optional[str] = None, calibration_date: Optional[datetime.datetime] = None, notes: Optional[str] = None)#
Bases:
aind_data_schema.base.AindModel
Movable module that is mounted on the ephys dome insertion system
- angle_unit: aind_data_schema.device.AngleUnit#
- arc_angle: float#
- assembly_name: str#
- calibration_date: Optional[datetime.datetime]#
- coordinate_transform: Optional[str]#
- module_angle: float#
- notes: Optional[str]#
- rotation_angle: Optional[float]#
- class aind_data_schema.ephys.ephys_session.EphysModule(*, assembly_name: str, arc_angle: float, module_angle: float, angle_unit: aind_data_schema.device.AngleUnit = AngleUnit.DEG, rotation_angle: Optional[float] = 0.0, coordinate_transform: Optional[str] = None, calibration_date: Optional[datetime.datetime] = None, notes: Optional[str] = None, primary_targeted_structure: str, targeted_ccf_coordinates: Optional[List[aind_data_schema.ephys.ephys_session.CcfCoords]] = None, manipulator_coordinates: aind_data_schema.device.Coordinates3d, ephys_probes: List[aind_data_schema.ephys.ephys_session.EphysProbe])#
Bases:
aind_data_schema.ephys.ephys_session.ManipulatorModule
Probe recorded in a Stream
- ephys_probes: List[aind_data_schema.ephys.ephys_session.EphysProbe]#
- class aind_data_schema.ephys.ephys_session.EphysProbe(*, name: str, other_targeted_structures: Optional[List[str]] = None)#
Bases:
aind_data_schema.base.AindModel
Probes in a EphysProbeModule
- name: str#
- other_targeted_structures: Optional[List[str]]#
- class aind_data_schema.ephys.ephys_session.EphysSession(*, describedBy: str = 'https://raw.githubusercontent.com/AllenNeuralDynamics/aind-data-schema/main/src/aind_data_schema/ephys/ephys_session.py', schema_version: str = '0.4.5', experimenter_full_name: List[str], session_start_time: datetime.datetime, session_end_time: datetime.datetime, subject_id: str, session_type: aind_data_schema.ephys.ephys_session.SessionType, session_description: Optional[str] = None, iacuc_protocol: Optional[str] = None, rig_id: str, stick_microscopes: Optional[List[aind_data_schema.ephys.ephys_session.DomeModule]], data_streams: types.ConstrainedListValue[aind_data_schema.ephys.ephys_session.Stream], ccf_coordinate_transform: Optional[str] = None, notes: Optional[str] = None)#
Bases:
aind_data_schema.base.AindCoreModel
Description of an ephys recording session
- ccf_coordinate_transform: Optional[str]#
- data_streams: List[aind_data_schema.ephys.ephys_session.Stream]#
- describedBy: str#
- experimenter_full_name: List[str]#
- iacuc_protocol: Optional[str]#
- notes: Optional[str]#
- rig_id: str#
- schema_version: str#
- session_description: Optional[str]#
- session_end_time: datetime.datetime#
- session_start_time: datetime.datetime#
- session_type: aind_data_schema.ephys.ephys_session.SessionType#
- stick_microscopes: Optional[List[aind_data_schema.ephys.ephys_session.DomeModule]]#
- subject_id: str#
- class aind_data_schema.ephys.ephys_session.Laser(*, name: str, power_level: float, power_unit: aind_data_schema.device.PowerUnit = PowerUnit.MW)#
Bases:
aind_data_schema.base.AindModel
Laser used in a LaserModule
- name: str#
- power_level: float#
- power_unit: aind_data_schema.device.PowerUnit#
- class aind_data_schema.ephys.ephys_session.LaserModule(*, assembly_name: str, arc_angle: float, module_angle: float, angle_unit: aind_data_schema.device.AngleUnit = AngleUnit.DEG, rotation_angle: Optional[float] = 0.0, coordinate_transform: Optional[str] = None, calibration_date: Optional[datetime.datetime] = None, notes: Optional[str] = None, primary_targeted_structure: str, targeted_ccf_coordinates: Optional[List[aind_data_schema.ephys.ephys_session.CcfCoords]] = None, manipulator_coordinates: aind_data_schema.device.Coordinates3d, lasers: List[aind_data_schema.ephys.ephys_session.Laser])#
Bases:
aind_data_schema.ephys.ephys_session.ManipulatorModule
Laser Module used in a Stream
- lasers: List[aind_data_schema.ephys.ephys_session.Laser]#
- class aind_data_schema.ephys.ephys_session.ManipulatorModule(*, assembly_name: str, arc_angle: float, module_angle: float, angle_unit: aind_data_schema.device.AngleUnit = AngleUnit.DEG, rotation_angle: Optional[float] = 0.0, coordinate_transform: Optional[str] = None, calibration_date: Optional[datetime.datetime] = None, notes: Optional[str] = None, primary_targeted_structure: str, targeted_ccf_coordinates: Optional[List[aind_data_schema.ephys.ephys_session.CcfCoords]] = None, manipulator_coordinates: aind_data_schema.device.Coordinates3d)#
Bases:
aind_data_schema.ephys.ephys_session.DomeModule
A module connected to a 3-axis manipulator
- manipulator_coordinates: aind_data_schema.device.Coordinates3d#
- primary_targeted_structure: str#
- targeted_ccf_coordinates: Optional[List[aind_data_schema.ephys.ephys_session.CcfCoords]]#
- class aind_data_schema.ephys.ephys_session.SessionType(value)#
Bases:
enum.Enum
Session type name
- OPTO = 'Optotagging'#
- RF_MAPPING = 'Receptive field mapping'#
- TEST = 'Test'#
- class aind_data_schema.ephys.ephys_session.Stream(*, stream_start_time: datetime.datetime, stream_end_time: datetime.datetime, ephys_modules: Optional[types.ConstrainedListValue[aind_data_schema.ephys.ephys_session.EphysModule]] = None, laser_modules: Optional[types.ConstrainedListValue[aind_data_schema.ephys.ephys_session.LaserModule]] = None, daqs: Optional[types.ConstrainedListValue[aind_data_schema.ephys.ephys_session.DAQDevice]] = None, cameras: Optional[types.ConstrainedListValue[aind_data_schema.ephys.ephys_session.Camera]] = None, stimulus_presentations: Optional[List[aind_data_schema.stimulus.StimulusPresentation]] = None, notes: Optional[str] = None)#
Bases:
aind_data_schema.base.AindModel
Stream of data with a start and stop time
- cameras: Optional[List[aind_data_schema.ephys.ephys_session.Camera]]#
- daqs: Optional[List[aind_data_schema.ephys.ephys_session.DAQDevice]]#
- ephys_modules: Optional[List[aind_data_schema.ephys.ephys_session.EphysModule]]#
- laser_modules: Optional[List[aind_data_schema.ephys.ephys_session.LaserModule]]#
- notes: Optional[str]#
- stimulus_presentations: Optional[List[aind_data_schema.stimulus.StimulusPresentation]]#
- stream_end_time: datetime.datetime#
- stream_start_time: datetime.datetime#
Module contents#
ephys schemas