EpsilonProvider2D Class¶
- class plask.flow.EpsilonProvider2D(data)¶
Provider of the permittivity tensor in Cartesian2D geometry (-).
This class is used for permittivity tensor 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).
To obtain the value from the provider simply call it. The call signature is as follows:
- solver.outEpsilon(mesh, lam=DEFAULT, interpolation='default')¶
- Parameters:
mesh (mesh) – Target mesh to get the field at.
interpolation (str) – Requested interpolation method.
lam (float) – Complex wavelength at which the epsilon tensor is computed (nm).
- Returns:
Data with the permittivity tensor on the specified mesh (-).
Example
Connect the provider to a receiver in some other solver:
>>> other_solver.inEpsilon = solver.outEpsilon
Obtain the provided field:
>>> solver.outEpsilon(mesh, lam=DEFAULT) <plask.Data at 0x1234567>
See also
Receiver of permittivity tensor:
plask.flow.EpsilonReceiver2D
Data filter for permittivity tensor:plask.flow.EpsilonFilter2D
Methods¶
|
Get value from the provider. |
Inform all connected receivers that the provided value has changed. |
Descriptions¶
Method Details¶
- EpsilonProvider2D.__call__(mesh, lam, interpolation='DEFAULT')¶
- EpsilonProvider2D.__call__(mesh, interpolation='DEFAULT')
Get value from the provider.
- Parameters:
mesh (mesh) – Target mesh to get the field at.
interpolation (str) – Requested interpolation method.
lam (float) – Complex wavelength at which the epsilon tensor is computed (nm).
- EpsilonProvider2D.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.