iblrig.base_choice_world.HabituationChoiceWorldTrialData

Inheritance diagram of HabituationChoiceWorldTrialData

class iblrig.base_choice_world.HabituationChoiceWorldTrialData[source]

Pydantic Model for Trial Data, extended from ChoiceWorldTrialData.

delay_to_stim_center: Annotated[float, Ge(ge=0)]
model_computed_fields: ClassVar[Dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config: ClassVar[ConfigDict] = {'extra': 'allow'}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields: ClassVar[Dict[str, FieldInfo]] = {'contrast': FieldInfo(annotation=float, required=True, metadata=[Interval(gt=None, ge=0.0, lt=None, le=1.0)]), 'delay_to_stim_center': FieldInfo(annotation=float, required=True, metadata=[Ge(ge=0)]), 'pause_duration': FieldInfo(annotation=float, required=False, default=0.0, metadata=[Ge(ge=0)]), 'position': FieldInfo(annotation=float, required=True), 'quiescent_period': FieldInfo(annotation=float, required=True, metadata=[Ge(ge=0)]), 'response_side': FieldInfo(annotation=int, required=False, default=0, metadata=[Interval(gt=None, ge=0, lt=None, le=0)]), 'response_time': FieldInfo(annotation=float, required=False, default=nan, metadata=[Predicate(math.isnan)]), 'reward_amount': FieldInfo(annotation=float, required=True, metadata=[Ge(ge=0)]), 'reward_valve_time': FieldInfo(annotation=float, required=True, metadata=[Ge(ge=0)]), 'stim_angle': FieldInfo(annotation=float, required=True, metadata=[Interval(gt=None, ge=-180.0, lt=None, le=180.0)]), 'stim_freq': FieldInfo(annotation=float, required=True, metadata=[Ge(ge=0)]), 'stim_gain': FieldInfo(annotation=float, required=True), 'stim_phase': FieldInfo(annotation=float, required=True, metadata=[Interval(gt=None, ge=0.0, lt=None, le=6.283185307179586)]), 'stim_probability_left': FieldInfo(annotation=float, required=True, metadata=[Interval(gt=None, ge=0.0, lt=None, le=1.0)]), 'stim_reverse': FieldInfo(annotation=bool, required=True), 'stim_sigma': FieldInfo(annotation=float, required=True), 'trial_correct': FieldInfo(annotation=bool, required=False, default=False, metadata=[Interval(gt=None, ge=0, lt=None, le=0)]), 'trial_num': FieldInfo(annotation=int, required=True, metadata=[Ge(ge=0)])}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo] objects.

This replaces Model.__fields__ from Pydantic V1.