Skip to content

Multi-step Potentiometry

pypalmsens.MultiStepPotentiometry


              flowchart TD
              pypalmsens.MultiStepPotentiometry[MultiStepPotentiometry]
              pypalmsens._methods.base.BaseTechnique[BaseTechnique]
              pypalmsens._methods.mixins.CurrentRangeMixin[CurrentRangeMixin]
              pypalmsens._methods.mixins.PotentialRangeMixin[PotentialRangeMixin]
              pypalmsens._methods.mixins.PretreatmentMixin[PretreatmentMixin]
              pypalmsens._methods.mixins.PostMeasurementMixin[PostMeasurementMixin]
              pypalmsens._methods.mixins.PotentialLimitsMixin[PotentialLimitsMixin]
              pypalmsens._methods.mixins.DataProcessingMixin[DataProcessingMixin]
              pypalmsens._methods.mixins.MultiplexerMixin[MultiplexerMixin]
              pypalmsens._methods.mixins.GeneralMixin[GeneralMixin]
              pypalmsens._methods.base_model.BaseModel[BaseModel]

                              pypalmsens._methods.base.BaseTechnique --> pypalmsens.MultiStepPotentiometry
                                pypalmsens._methods.base_model.BaseModel --> pypalmsens._methods.base.BaseTechnique
                

                pypalmsens._methods.mixins.CurrentRangeMixin --> pypalmsens.MultiStepPotentiometry
                                pypalmsens._methods.base_model.BaseModel --> pypalmsens._methods.mixins.CurrentRangeMixin
                

                pypalmsens._methods.mixins.PotentialRangeMixin --> pypalmsens.MultiStepPotentiometry
                                pypalmsens._methods.base_model.BaseModel --> pypalmsens._methods.mixins.PotentialRangeMixin
                

                pypalmsens._methods.mixins.PretreatmentMixin --> pypalmsens.MultiStepPotentiometry
                                pypalmsens._methods.base_model.BaseModel --> pypalmsens._methods.mixins.PretreatmentMixin
                

                pypalmsens._methods.mixins.PostMeasurementMixin --> pypalmsens.MultiStepPotentiometry
                                pypalmsens._methods.base_model.BaseModel --> pypalmsens._methods.mixins.PostMeasurementMixin
                

                pypalmsens._methods.mixins.PotentialLimitsMixin --> pypalmsens.MultiStepPotentiometry
                                pypalmsens._methods.base_model.BaseModel --> pypalmsens._methods.mixins.PotentialLimitsMixin
                

                pypalmsens._methods.mixins.DataProcessingMixin --> pypalmsens.MultiStepPotentiometry
                                pypalmsens._methods.base_model.BaseModel --> pypalmsens._methods.mixins.DataProcessingMixin
                

                pypalmsens._methods.mixins.MultiplexerMixin --> pypalmsens.MultiStepPotentiometry
                                pypalmsens._methods.base_model.BaseModel --> pypalmsens._methods.mixins.MultiplexerMixin
                

                pypalmsens._methods.mixins.GeneralMixin --> pypalmsens.MultiStepPotentiometry
                                pypalmsens._methods.base_model.BaseModel --> pypalmsens._methods.mixins.GeneralMixin
                



              click pypalmsens.MultiStepPotentiometry href "" "pypalmsens.MultiStepPotentiometry"
              click pypalmsens._methods.base.BaseTechnique href "" "pypalmsens._methods.base.BaseTechnique"
              click pypalmsens._methods.mixins.CurrentRangeMixin href "" "pypalmsens._methods.mixins.CurrentRangeMixin"
              click pypalmsens._methods.mixins.PotentialRangeMixin href "" "pypalmsens._methods.mixins.PotentialRangeMixin"
              click pypalmsens._methods.mixins.PretreatmentMixin href "" "pypalmsens._methods.mixins.PretreatmentMixin"
              click pypalmsens._methods.mixins.PostMeasurementMixin href "" "pypalmsens._methods.mixins.PostMeasurementMixin"
              click pypalmsens._methods.mixins.PotentialLimitsMixin href "" "pypalmsens._methods.mixins.PotentialLimitsMixin"
              click pypalmsens._methods.mixins.DataProcessingMixin href "" "pypalmsens._methods.mixins.DataProcessingMixin"
              click pypalmsens._methods.mixins.MultiplexerMixin href "" "pypalmsens._methods.mixins.MultiplexerMixin"
              click pypalmsens._methods.mixins.GeneralMixin href "" "pypalmsens._methods.mixins.GeneralMixin"
              click pypalmsens._methods.base_model.BaseModel href "" "pypalmsens._methods.base_model.BaseModel"
            

Create multi-step potentiometry method parameters.

MultiStep Potentiometry you can specify the number of current steps to apply and how long each step should last. The current is continuously sampled with the specified interval.

A whole cycle of steps can be repeated several times.

Levels can be specified using pypalmsens.settings.ILevel().

Methods:

  • from_dict

    Structure technique instance from dict.

  • from_method_id

    Create new instance of appropriate technique from method ID.

  • to_dict

    Return the technique instance as a new key/value dictionary mapping.

Attributes:

applied_current_range class-attribute instance-attribute

applied_current_range: AllowedCurrentRanges = '1uA'

Applied current range.

See pypalmsens.settings.AllowedCurrentRanges for options.

current_range class-attribute instance-attribute

current_range: CurrentRange = Field(default_factory=CurrentRange)

Set the autoranging current.

data_processing class-attribute instance-attribute

data_processing: DataProcessing = Field(default_factory=DataProcessing)

Set the data processing settings.

general class-attribute instance-attribute

general: General = Field(default_factory=General)

Sets general/other settings.

interval_time class-attribute instance-attribute

interval_time: float = 0.1

The time between two samples in s.

levels class-attribute instance-attribute

levels: list[ILevel] = Field(default_factory=lambda: [ILevel()])

The currents to apply within a cycle.

Use ILevel() to create levels.

multiplexer class-attribute instance-attribute

multiplexer: Multiplexer = Field(default_factory=Multiplexer)

Set the multiplexer settings.

n_cycles class-attribute instance-attribute

n_cycles: int = 1

Number of repetitions.

post_measurement class-attribute instance-attribute

post_measurement: PostMeasurement = Field(default_factory=PostMeasurement)

Set the post measurement settings.

potential_limits class-attribute instance-attribute

potential_limits: PotentialLimits = Field(default_factory=PotentialLimits)

Set the potential limit settings.

potential_range class-attribute instance-attribute

potential_range: PotentialRange = Field(default_factory=PotentialRange)

Set the autoranging potential.

pretreatment class-attribute instance-attribute

pretreatment: Pretreatment = Field(default_factory=Pretreatment)

Set the pretreatment settings.

record_auxiliary_input class-attribute instance-attribute

record_auxiliary_input: bool = False

Record auxiliary input.

record_we_current class-attribute instance-attribute

record_we_current: bool = False

Record applied working electrode potential.

Reference electrode vs ground.

from_dict classmethod

from_dict(obj: dict[str, Any]) -> BaseTechnique

Structure technique instance from dict.

Opposite of .to_dict()

Source code in src/pypalmsens/_methods/base.py
35
36
37
38
39
40
@classmethod
def from_dict(cls, obj: dict[str, Any]) -> BaseTechnique:
    """Structure technique instance from dict.

    Opposite of `.to_dict()`"""
    return cls.model_validate(obj)

from_method_id classmethod

from_method_id(id: str) -> BaseTechnique

Create new instance of appropriate technique from method ID.

Source code in src/pypalmsens/_methods/base.py
42
43
44
45
46
@classmethod
def from_method_id(cls, id: str) -> BaseTechnique:
    """Create new instance of appropriate technique from method ID."""
    new = cls._registry[id]
    return new()

to_dict

to_dict() -> dict[str, Any]

Return the technique instance as a new key/value dictionary mapping.

Source code in src/pypalmsens/_methods/base.py
31
32
33
def to_dict(self) -> dict[str, Any]:
    """Return the technique instance as a new key/value dictionary mapping."""
    return self.model_dump()