plask.flow.
EnergyLevelsProvider2D
(data)¶Provider of the energy levels for electrons and holes in Cartesian2D geometry [eV].
This class is used for energy levels for electrons and holes provider in binary solvers. You can also create a custom provider for your Python solver.
Parameters: | data – Data object to interpolate or callable returning it for given mesh.
The callable must accept the same arguments as the provider
__call__ method (see below). It must also be able to give its
length (i.e. have the __len__ method defined) that gives the
number of different provided values. |
---|
To obtain the value from the provider simply call it. The call signature is as follows:
solver.
outEnergyLevels
(n=0, mesh, interpolation='default')¶Parameters: |
|
---|---|
Returns: | Data with the energy levels for electrons and holes on the specified mesh [eV]. |
You may obtain the number of different values this provider can return by testing its length.
Example
Connect the provider to a receiver in some other solver:
>>> other_solver.inEnergyLevels = solver.outEnergyLevels
Obtain the provided field:
>>> solver.outEnergyLevels(0, mesh)
<plask.Data at 0x1234567>
Test the number of provided values:
>>> len(solver.outEnergyLevels)
3
See also
Receiver of energy levels for electrons and holes: plask.flow.EnergyLevelsReceiver2D
Data filter for energy levels for electrons and holes: plask.flow.EnergyLevelsFilter2D
__call__ (…) |
Get value from the provider. |
set_changed () |
Inform all connected receivers that the provided value has changed. |
EnergyLevelsProvider2D.
__call__
(mesh, interpolation='DEFAULT')¶EnergyLevelsProvider2D.
__call__
(n, mesh, interpolation='DEFAULT')Get value from the provider.
Parameters: |
|
---|
EnergyLevelsProvider2D.
set_changed
()¶Inform all connected receivers that the provided value has changed.
The receivers will have its changed attribute set to True and solvers will call the provider again if they need its value (otherwise they might take it from the cache.