Skip to content

Fast Cyclic Voltammetry

This page documents the Fast Cyclic Voltammetry (FCV) method.

pypalmsens.FastCyclicVoltammetry

Create fast cyclic voltammetry method parameters.

In Cyclic Voltammetry a cyclic potential scan is performed between two vertex potentials vertex1_potential and vertex2_potential. The scan can start (begin_potential) at one of these vertex potentials or anywhere in between.

A CV becomes a Fast CV if the scan rate in combination with step_potential results in a rate of over 2500 points / second (scan_rate / step_potential > 2500).

Methods:

  • to_dict

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

  • from_dict

    Structure technique instance from dict.

  • from_method_id

    Create new instance of appropriate technique from method ID.

Attributes:

general class-attribute instance-attribute

general: General = Field(default_factory=General)

Sets general/other settings.

data_processing class-attribute instance-attribute

data_processing: DataProcessing = Field(default_factory=DataProcessing)

Set the data processing settings.

ir_drop_compensation class-attribute instance-attribute

ir_drop_compensation: IrDropCompensation = Field(default_factory=IrDropCompensation)

Set the iR drop compensation settings.

post_measurement class-attribute instance-attribute

post_measurement: PostMeasurement = Field(default_factory=PostMeasurement)

Set the post measurement settings.

versus_ocp class-attribute instance-attribute

versus_ocp: VersusOCP = Field(default_factory=VersusOCP)

Set the versus OCP settings.

pretreatment class-attribute instance-attribute

pretreatment: Pretreatment = Field(default_factory=Pretreatment)

Set the pretreatment settings.

id class-attribute instance-attribute

id: Literal['fcv'] = 'fcv'

Unique method identifier.

current_range class-attribute instance-attribute

current_range: AllowedCurrentRanges = '1uA'

Fixed current range.

See pypalmsens.settings.AllowedCurrentRanges for options.

equilibration_time class-attribute instance-attribute

equilibration_time: float = 0.0

Equilibration time in s.

begin_potential class-attribute instance-attribute

begin_potential: float = -0.5

Potential where the scan starts and stops at in V.

vertex1_potential class-attribute instance-attribute

vertex1_potential: float = 0.5

First potential where direction reverses in V.

vertex2_potential class-attribute instance-attribute

vertex2_potential: float = -0.5

Second potential where direction reverses. V.

step_potential class-attribute instance-attribute

step_potential: float = 0.1

Potential step size in V.

scanrate class-attribute instance-attribute

scanrate: float = 1.0

Scan rate in V/s.

The applicable range depends on the value of step_potential.

n_scans class-attribute instance-attribute

n_scans: int = 1

Number of repetitions for this scan.

n_avg_scans class-attribute instance-attribute

n_avg_scans: int = 1

The number of scan repetitions for averaging.

In case n_scans is set to a value > 1, each scan in the measurement is the result of an average of multiple scans, where the number of scans averaged is specified with this value.

n_equil_scans class-attribute instance-attribute

n_equil_scans: int = 1

Number of equilibration scans.

During these scans, no data is recorded.

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
30
31
32
def to_dict(self) -> dict[str, Any]:
    """Return the technique instance as a new key/value dictionary mapping."""
    return self.model_dump()

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
34
35
36
37
38
39
@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
41
42
43
44
45
@classmethod
def from_method_id(cls, id: str) -> BaseTechnique:
    """Create new instance of appropriate technique from method ID."""
    new = cls._registry[id]
    return new()