3.2.3.4. lekkersim.FPRGaussian

class lekkersim.FPRGaussian(n: int, m: int, R: float, d1: float, d2: float, w1: float, w2: float, n_slab: float, Ri: float = None)

Simplified model of FPR circle mount based on Gaussian beams.

__init__(n: int, m: int, R: float, d1: float, d2: float, w1: float, w2: float, n_slab: float, Ri: float = None) None

Initialize the model

Parameters:
  • n (int) – Number of inputs arms.

  • m (int) – Number of output arms.

  • R (float) – Radius the output part of FPR (input and output are on the same radius).

  • d1 (float) – Center-to-center distance of inputs on the input plane.

  • d2 (float) – Center-to-center distance of output on the output plane in.

  • n_slab (float | callable) – Effective index of the slab mode.

  • R_i (float) – Input radius. If it is not specified it is set equal to the output one. Default is None.

Returns:

Model of the FPR region

Return type:

Model

Methods

S2PD([func])

Function for returning the Scattering Matrix as a PD Dataframe

__init__(n, m, R, d1, d2, w1, w2, n_slab[, Ri])

Initialize the model

create_S()

Creates the scattering matrix

expand_mode(mode_list)

This function expands the model by adding additional modes.

get_A(pin1, pin2)

Function for returning complex amplitude of the transmission between two ports

get_PH(pin1, pin2)

Function for returning the phase of the transmission between two ports

get_T(pin1, pin2)

Function for returning the energy transmission between two ports

get_output(input_dic[, power])

Returns the outputs from all ports of the model given the inputs amplitudes

get_pin_basenames()

Returns a list of the basenames of the pins

get_pin_modes(basename)

Parse the pins for locating the pins with the same base name

inspect()

Function that print self.

is_empty()

Checks if model is empy

pin_mapping(pin_mapping)

Function for changing the names of the pins of a model

print_S([func])

Function for nice printing of scattering matrix in agreement with pins

prune()

Check if the model is empty

put([source_pin, target_pin, param_mapping])

Function for putting a model in a Solver object, and eventually specify connections

show([ax])

Shows the input and output ports of the FPR.

show_free_pins()

Function for printing pins of model

solve(**kargs)

Function for returning the solved model

update_params(update_dic)

Update the parameters of model, setting defaults when value is not provides

update_pins()