StepIndexFiber

class hcipy.optics.StepIndexFiber(core_radius, NA, fiber_length, position=None)

Bases: AgnosticOpticalElement

A step-index fiber.

The modal behaviour of the step-index fiber depends on the input parameters.

Parameters:
core_radiusscalar

The radius of the high-index core.

NAscalar or function of wavelength

The numerical aperture of the fiber.

fiber_lengthscalar

The length of the optical fiber.

positionarray_like

The 2D position of the fiber in the optical plane.

Attributes Summary

NA

The numerical aperture of this fiber.

core_radius

The core radius of this fiber.

numerical_aperture

The numerical aperture of this fiber.

position

The 2D position of the fiber.

Methods Summary

V(wavelength)

The normalized frequency parameter for step-index fibers.

backward(wavefront, *args, **kwargs)

Propagate a wavefront backward through the optical element.

forward(wavefront, *args, **kwargs)

Propagate a wavefront forward through the optical element.

get_input_grid(output_grid, wavelength)

Calculate a best guess for the input grid given an output grid and wavelength.

get_output_grid(input_grid, wavelength)

Calculate a best guess for the output grid given an input grid and wavelength.

make_instance(instance_data, input_grid, ...)

Make an instance for this specific input_grid, output_grid, wavelength.

modal_decomposition(wavefront, *args, **kwargs)

mode_field_radius(wavelength)

The mode field radius of the fiber.

num_modes(wavelength)

The approximate number of modes of the fiber.

Attributes Documentation

NA

The numerical aperture of this fiber.

core_radius

The core radius of this fiber.

numerical_aperture

The numerical aperture of this fiber.

position

The 2D position of the fiber.

Methods Documentation

V(wavelength)

The normalized frequency parameter for step-index fibers.

backward(wavefront, *args, **kwargs)

Propagate a wavefront backward through the optical element.

A backward propagation is a literal backward propagation through the element. It is not (in general) the inverse of the forward propagation, except in cases where energy is conserved.

This function will be implemented by the derived class.

Parameters:
wavefrontWavefront

The wavefront to propagate.

Returns:
Wavefront

The propagated wavefront.

forward(wavefront, *args, **kwargs)

Propagate a wavefront forward through the optical element.

This will be implemented by the derived class.

Parameters:
wavefrontWavefront

The wavefront to propagate.

Returns:
Wavefront

The propagated wavefront.

get_input_grid(output_grid, wavelength)

Calculate a best guess for the input grid given an output grid and wavelength.

This function is intended to be implemented by a derived class.

Parameters:
output_gridGrid

The output grid.

wavelengthscalar

The wavelength.

Returns:
Grid

The best-guess input grid based on the given output grid and wavelength.

get_output_grid(input_grid, wavelength)

Calculate a best guess for the output grid given an input grid and wavelength.

This function is intended to be implemented by a derived class.

Parameters:
input_gridGrid

The input grid.

wavelengthscalar

The wavelength.

Returns:
Grid

The best-guess output grid based on the given input grid and wavelength.

make_instance(instance_data, input_grid, output_grid, wavelength)

Make an instance for this specific input_grid, output_grid, wavelength.

This function is intended to be implemented by a derived class. Any properties evaluated for the instance can be stored into the instance_data object which is stored in the internal cache.

Parameters:
instance_dataInstanceData

An object storing all data for this instance. This object can be modified this function.

input_gridGrid or None

The input grid.

output_gridGrid or None

The output grid.

wavelengthscalar or None

The wavelength.

modal_decomposition(wavefront, *args, **kwargs)
mode_field_radius(wavelength)

The mode field radius of the fiber.

The mode field radius is the radius of the gaussian beam best matched to the fundamental mode [Marcuse1977].

[Marcuse1977]
  1. Marcuse 1977, “Loss analysis of single-mode fiber splices,” The Bell System Technical Journal 56, 703-718 (2014)

num_modes(wavelength)

The approximate number of modes of the fiber.