StepIndexFiber

class hcipy.optics.StepIndexFiber(core_radius, NA, fiber_length)

Bases: hcipy.optics.optical_element.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.

Attributes Summary

NA

The numerical aperture of this fiber.

core_radius

The core radius of this fiber.

Methods Summary

V(self, wavelength)

The normalized frequency parameter for step-index fibers.

backward(self, wavefront, \*args, \*\*kwargs)

forward(self, wavefront, \*args, \*\*kwargs)

get_input_grid(self, output_grid, wavelength)

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

get_output_grid(self, input_grid, wavelength)

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

make_instance(self, instance_data, …)

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

modal_decomposition(self, wavefront, \*args, …)

mode_field_radius(self, wavelength)

The mode field radius of the fiber.

num_modes(self, wavelength)

The approximate amount of modes of the fiber.

Attributes Documentation

NA

The numerical aperture of this fiber.

core_radius

The core radius of this fiber.

Methods Documentation

V(self, wavelength)

The normalized frequency parameter for step-index fibers.

backward(self, wavefront, *args, **kwargs)
forward(self, wavefront, *args, **kwargs)
get_input_grid(self, 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(self, 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(self, 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(self, wavefront, *args, **kwargs)
mode_field_radius(self, 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(self, wavelength)

The approximate amount of modes of the fiber.