PLaSK User Manual

FermiLevelsReceiver3D Class

class plask.flow.FermiLevelsReceiver3D

Receiver of the quasi-Fermi levels for electrons and holes in Cartesian3D geometry [eV].

You may connect a provider to this receiver usign either the connect method or an assignement operator. Then, you can read the provided value by calling this receiver with arguments identical as the ones of the corresponding provider FermiLevelsProvider3D.

Example

Connect the reveiver to a provider from some other solver:

>>> solver.inFermiLevels = other_solver.outFermiLevels

See also

Provider of quasi-Fermi levels for electrons and holes: plask.flow.FermiLevelsProvider3D

Data filter for quasi-Fermi levels for electrons and holes: plask.flow.FermiLevelsFilter3D

Methods

__call__(…) Get value from the connected provider
add_watch(callable) Connect callable to watch receiver changes.
attach(source) Attach some provider or constant value to the receiver.
reset() Disconnect any provider of value from the receiver.

Descriptions

Method Details

FermiLevelsReceiver3D.__call__(n, mesh, interpolation='DEFAULT')
FermiLevelsReceiver3D.__call__(mesh, interpolation='DEFAULT')

Get value from the connected provider

Get value from the connected provider

FermiLevelsReceiver3D.add_watch(callable)

Connect callable to watch receiver changes.

The callable will be called each time the value received by this receiver changes.

The callable should accept two arguments: the first one will be the receiver and the second one gives information what is changed.

FermiLevelsReceiver3D.attach(source)

Attach some provider or constant value to the receiver.

Parameters:source – source provider or value.

Example

>>> solver.inFermiLevels.attach(300.)
>>> solver.inFermiLevels(any_mesh)[0]
300.
>>> solver.inFermiLevels(any_mesh)[-1]
300.
>>> solver.inFermiLevels.attach(other_solver.outFermiLevels)

Note

You may achieve the same effect by using the asignmnent operator if you put an exisiting provider at the right side of this operator:

>>> solver.inFermiLevels = other_solver.outFermiLevels
FermiLevelsReceiver3D.reset()

Disconnect any provider of value from the receiver.