iblrig.base_choice_world.BiasedChoiceWorldTrialData

Inheritance diagram of BiasedChoiceWorldTrialData

class iblrig.base_choice_world.BiasedChoiceWorldTrialData[source]

Pydantic Model for Trial Data, extended from ChoiceWorldTrialData.

block_num: Annotated[int, Ge(ge=0)]
block_trial_num: Annotated[int, 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]] = {'block_num': FieldInfo(annotation=int, required=False, default=0, metadata=[Ge(ge=0)]), 'block_trial_num': FieldInfo(annotation=int, required=False, default=0, metadata=[Ge(ge=0)]), 'contrast': FieldInfo(annotation=float, required=True, metadata=[Interval(gt=None, ge=0.0, lt=None, le=1.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=True, metadata=[Interval(gt=None, ge=-1, lt=None, le=1)]), 'response_time': FieldInfo(annotation=float, required=True, metadata=[Ge(ge=0)]), '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=True), '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.