optical.effective.
EffectiveFrequencyCyl
(name="")¶Calculate optical modes and optical field distribution using the effective frequency method in twodimensional cylindrical space.
clear_modes () 
Clear all computed modes. 
find_mode (lam[, m]) 
Compute the mode near the specified wavelength. 
find_modes ([start, end, m, resteps, …]) 
Find the modes within the specified range using global method. 
get_delta_neff (pos) 
Return effective index part for lateral propagation at specified radial position. 
get_determinant (lam[, m]) 
Get modal determinant. 
get_gain_integral ([num]) 
Get total energy generated in the gain region to a mode in unit time. 
get_nng (pos) 
Return average index at specified radial position. 
get_total_absorption ([num]) 
Get total energy absorbed from a mode in unit time. 
get_vert_determinant (vlam) 
Get vertical modal determinant for debugging purposes. 
initialize () 
Initialize solver. 
invalidate () 
Set the solver back to uninitialized state. 
set_mode (…) 
Set the current mode the specified wavelength. 
set_simple_mesh () 
Set simple mesh based on the geometry objects bounding boxes. 
inCarriersConcentration 
Receiver of the carriers concentration required for computations [1/cm³]. 
inGain 
Receiver of the material gain required for computations [1/cm]. 
inTemperature 
Receiver of the temperature required for computations [K]. 
outElectricField 
Alias for outLightE . 
outHeat 
Provider of the computed heat sources density [W/m³]. 
outLightE 
Provider of the computed electric field [V/m]. 
outLightMagnitude 
Provider of the computed optical field magnitude [W/m²]. 
outLoss 
Provider of the computed modal extinction [1/cm]. 
outRefractiveIndex 
Provider of the computed refractive index []. 
outWavelength 
Provider of the computed wavelength [nm]. 
determinant_mode 
Radial determinant mode. 
emission 
Emission direction. 
geometry 
Geometry provided to the solver 
id 
Id of the solver object. 
initialized 
True if the solver has been initialized. 
k0 
Reference normalized frequency. 
lam0 
Reference wavelength. 
mesh 
Mesh provided to the solver. 
modes 
List of the computed modes. 
root 
Configuration of the root searching algorithm for horizontal component of the mode. 
stripe_root 
Configuration of the root searching algorithm for vertical component of the mode in a single stripe. 
vat 
Radial position of at which the vertical part of the field is calculated. 
vlam 
‘Vertical wavelength’ used as a helper for searching vertical modes. 
EffectiveFrequencyCyl.
clear_modes
()¶Clear all computed modes.
EffectiveFrequencyCyl.
find_mode
(lam, m=0)¶Compute the mode near the specified wavelength.
Parameters: 


Returns:  Index in the 
Return type:  integer 
EffectiveFrequencyCyl.
find_modes
(start=0.0, end=0.0, m=0, resteps=256, imsteps=64, eps=(1e06+1e09j))¶Find the modes within the specified range using global method.
Parameters: 


Returns:  List of the indices in the 
Return type:  list of integers 
EffectiveFrequencyCyl.
get_delta_neff
(pos)¶Return effective index part for lateral propagation at specified radial position.
Parameters:  pos (float or array of floats) – Radial position to get the effective index. 

EffectiveFrequencyCyl.
get_determinant
(lam, m=0)¶Get modal determinant.
Parameters: 


EffectiveFrequencyCyl.
get_gain_integral
(num=0)¶Get total energy generated in the gain region to a mode in unit time.
Parameters:  num (int) – number of the mode. 

Returns:  Total generated energy [mW]. 
EffectiveFrequencyCyl.
get_nng
(pos)¶Return average index at specified radial position.
Parameters:  pos (float or array of floats) – Radial position to get the effective index. 

EffectiveFrequencyCyl.
get_total_absorption
(num=0)¶Get total energy absorbed from a mode in unit time.
Parameters:  num (int) – number of the mode. 

Returns:  Total absorbed energy [mW]. 
EffectiveFrequencyCyl.
get_vert_determinant
(vlam)¶Get vertical modal determinant for debugging purposes.
Parameters: 


Returns:  Determinant at the vertical wavelength vlam or an array matching its size. 
Return type:  complex or list of complex 
EffectiveFrequencyCyl.
initialize
()¶Initialize solver.
This method manually initialized the solver and sets initialized
to
True. Normally calling it is not necessary, as each solver automatically
initializes itself when needed.
Returns:  solver initialized state prior to this method call. 

Return type:  bool 
EffectiveFrequencyCyl.
invalidate
()¶Set the solver back to uninitialized state.
This method frees the memory allocated by the solver and sets
initialized
to False.
EffectiveFrequencyCyl.
set_mode
(lam, loss, m=0)¶EffectiveFrequencyCyl.
set_mode
(lam, m=0)Set the current mode the specified wavelength.
Parameters: 


EffectiveFrequencyCyl.
set_simple_mesh
()¶Set simple mesh based on the geometry objects bounding boxes.
EffectiveFrequencyCyl.
inCarriersConcentration
¶Receiver of the carriers concentration required for computations [1/cm³].
You will find usage details in the documentation of the receiver class
CarriersConcentrationReceiverCyl
.
Example
Connect the reveiver to a provider from some other solver:
>>> solver.inCarriersConcentration = other_solver.outCarriersConcentration
See also
Receciver class: plask.flow.CarriersConcentrationReceiverCyl
Provider class: plask.flow.CarriersConcentrationProviderCyl
Data filter: plask.filter.CarriersConcentrationFilterCyl
EffectiveFrequencyCyl.
inGain
¶Receiver of the material gain required for computations [1/cm].
You will find usage details in the documentation of the receiver class
GainReceiverCyl
.
Example
Connect the reveiver to a provider from some other solver:
>>> solver.inGain = other_solver.outGain
See also
Receciver class: plask.flow.GainReceiverCyl
Provider class: plask.flow.GainProviderCyl
Data filter: plask.filter.GainFilterCyl
EffectiveFrequencyCyl.
inTemperature
¶Receiver of the temperature required for computations [K].
You will find usage details in the documentation of the receiver class
TemperatureReceiverCyl
.
Example
Connect the reveiver to a provider from some other solver:
>>> solver.inTemperature = other_solver.outTemperature
See also
Receciver class: plask.flow.TemperatureReceiverCyl
Provider class: plask.flow.TemperatureProviderCyl
Data filter: plask.filter.TemperatureFilterCyl
EffectiveFrequencyCyl.
outHeat
(mesh, interpolation='default')¶Provider of the computed heat sources density [W/m³].
Parameters: 


Returns:  Data with the heat sources density on the specified mesh [W/m³]. 
Example
Connect the provider to a receiver in some other solver:
>>> other_solver.inHeat = solver.outHeat
Obtain the provided field:
>>> solver.outHeat(mesh)
<plask.Data at 0x1234567>
EffectiveFrequencyCyl.
outLightE
(n=0, mesh, interpolation='default')¶Provider of the computed electric field [V/m].
Parameters: 


Returns:  Data with the electric field on the specified mesh [V/m]. 
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.inModeLightE = solver.outLightE
Obtain the provided field:
>>> solver.outLightE(0, mesh)
<plask.Data at 0x1234567>
Test the number of provided values:
>>> len(solver.outLightE)
3
See also
Provider class: plask.flow.ModeLightEProviderCyl
Receciver class: plask.flow.ModeLightEReceiverCyl
EffectiveFrequencyCyl.
outLightMagnitude
(n=0, mesh, interpolation='default')¶Provider of the computed optical field magnitude [W/m²].
Parameters: 


Returns:  Data with the optical field magnitude on the specified mesh [W/m²]. 
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.inModeLightMagnitude = solver.outLightMagnitude
Obtain the provided field:
>>> solver.outLightMagnitude(0, mesh)
<plask.Data at 0x1234567>
Test the number of provided values:
>>> len(solver.outLightMagnitude)
3
See also
Provider class: plask.flow.ModeLightMagnitudeProviderCyl
Receciver class: plask.flow.ModeLightMagnitudeReceiverCyl
EffectiveFrequencyCyl.
outLoss
(n=0)¶Provider of the computed modal extinction [1/cm].
Parameters:  n (int) – Value number. 

Returns:  Value of the modal extinction [1/cm]. 
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.inModeLoss = solver.outLoss
Obtain the provided value:
>>> solver.outLoss(n=0)
1000
Test the number of provided values:
>>> len(solver.outLoss)
3
EffectiveFrequencyCyl.
outRefractiveIndex
(mesh, interpolation='default')¶Provider of the computed refractive index [].
Parameters: 


Returns:  Data with the refractive index on the specified mesh []. 
Example
Connect the provider to a receiver in some other solver:
>>> other_solver.inRefractiveIndex = solver.outRefractiveIndex
Obtain the provided field:
>>> solver.outRefractiveIndex(mesh)
<plask.Data at 0x1234567>
See also
Provider class: plask.flow.RefractiveIndexProviderCyl
Receciver class: plask.flow.RefractiveIndexReceiverCyl
EffectiveFrequencyCyl.
outWavelength
(n=0)¶Provider of the computed wavelength [nm].
Parameters:  n (int) – Value number. 

Returns:  Value of the wavelength [nm]. 
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.inModeWavelength = solver.outWavelength
Obtain the provided value:
>>> solver.outWavelength(n=0)
1000
Test the number of provided values:
>>> len(solver.outWavelength)
3
See also
Provider class: plask.flow.ModeWavelengthProvider
Receciver class: plask.flow.ModeWavelengthReceiver
EffectiveFrequencyCyl.
determinant_mode
¶Radial determinant mode.
This parameter determines the method used to compute radial determinant. If it is set to ‘transfer’, 2x2 transfer matrix is used to ensure field continuity at the interfaces. For the ‘full’ value, one single matrix is constructed for all the interfaces and its determinant is returned.
EffectiveFrequencyCyl.
emission
¶Emission direction.
EffectiveFrequencyCyl.
geometry
¶Geometry provided to the solver
EffectiveFrequencyCyl.
id
¶Id of the solver object. (read only)
Example
>>> mysolver.id
mysolver:category.type
EffectiveFrequencyCyl.
initialized
¶True if the solver has been initialized. (read only)
Solvers usually get initialized at the beginning of the computations.
You can clean the initialization state and free the memory by calling
the invalidate()
method.
EffectiveFrequencyCyl.
k0
¶Reference normalized frequency.
EffectiveFrequencyCyl.
lam0
¶Reference wavelength.
EffectiveFrequencyCyl.
mesh
¶Mesh provided to the solver.
EffectiveFrequencyCyl.
modes
¶List of the computed modes.
Item Attributes
m 
LP_mn mode parameter describing angular dependence. 
lam 
Alias for wavelength . 
wavelength 
Mode wavelength [nm]. 
power 
Total power emitted into the mode. 
total_absorption 
Cumulated absorption for the mode [mW]. 
gain_integral 
Total gain for the mode [mW]. 
Return type:  optical.effective.EffectiveFrquencyCyl.Mode 

EffectiveFrequencyCyl.
root
¶Configuration of the root searching algorithm for horizontal component of the mode.
Attributes:
alpha 
Parameter ensuring sufficient decrease of determinant in each step (Broyden method only). 
lambd 
Minimum decrease ratio of one step (Broyden method only). 
initial_range 
Initial range size (Muller and Brent methods only). 
maxiter 
Maximum number of iterations. 
maxstep 
Maximum step in one iteration (Broyden method only). 
method 
Root finding method (‘muller’, ‘broyden’, or ‘brent’) 
tolf_max 
Required tolerance on the function value. 
tolf_min 
Sufficient tolerance on the function value. 
tolx 
Absolute tolerance on the argument. 
stairs 
Number of staircase iterations (Brent method only). 
Return type:  RootParams 

EffectiveFrequencyCyl.
stripe_root
¶Configuration of the root searching algorithm for vertical component of the mode in a single stripe.
Attributes:
alpha 
Parameter ensuring sufficient decrease of determinant in each step (Broyden method only). 
lambd 
Minimum decrease ratio of one step (Broyden method only). 
initial_range 
Initial range size (Muller and Brent methods only). 
maxiter 
Maximum number of iterations. 
maxstep 
Maximum step in one iteration (Broyden method only). 
method 
Root finding method (‘muller’, ‘broyden’, or ‘brent’) 
tolf_max 
Required tolerance on the function value. 
tolf_min 
Sufficient tolerance on the function value. 
tolx 
Absolute tolerance on the argument. 
stairs 
Number of staircase iterations (Brent method only). 
Return type:  RootParams 

EffectiveFrequencyCyl.
vat
¶Radial position of at which the vertical part of the field is calculated.
Should be a float number or None
to compute effective frequencies for all
the stripes.
EffectiveFrequencyCyl.
vlam
¶‘Vertical wavelength’ used as a helper for searching vertical modes.