LightInteraction#

class LightInteraction(name, side, sign, readout=False, angle=0.0, parent=None, children=None)[source]#

Bases: NodeMixin

Represents (dipole) interaction between the system and a light beam.

Parameters:
  • name (str) – Identifier for the light beam.

  • side (rotsim2d.pathways.Side) – Ket or bra excitation.

  • sign (rotsim2d.pathways.KSign) – Wavevector sign of created polarization contribution.

  • readout (bool) – Readout or actual light interaction.

  • angle (float | Tuple[float, float]) – Single float for linear polarization and pair of numbers for elliptical.

Attributes

fullname

tier

Number of interactions preceding this one in the tree.

name

Identifier for the light beam.

side

Ket or bra excitation.

sign

Wavevector sign of created polarization contribution.

angle

Single float for linear polarization and pair of numbers for elliptical.

readout

Readout or actual light interaction.

Methods

__init__(name, side, sign[, readout, angle, ...])

conj()

Return detached conjugate of this LightInteraction.

evolve(**kwargs)

Return copy with some attributes replaced.

is_absorption()

True if absorption within dipole approximation.