System¶
- class kgpy.optics.System(name=<factory>, plot_kwargs=<factory>, transform=<factory>, object_surface=<factory>, surfaces=<factory>, grid_rays=<factory>, field_margin=<Quantity 1. nrad>, pupil_margin=<Quantity 1. nm>, pointing=<factory>, roll=<Quantity 0. deg>, baffles_blank=<factory>, baffles_hull_axes=None, breadboard=None, tolerance_axes=<factory>, focus_axes=<factory>, distortion_polynomial_degree=2, vignetting_polynomial_degree=1)¶
Bases:
WritableMixin,Transformable,Plottable,Broadcastable,Named- Parameters
name (Name) –
transform (TransformList) –
object_surface (Surface) –
surfaces (SurfaceList) –
grid_rays (RayGrid) –
field_margin (Quantity) –
pupil_margin (Quantity) –
pointing (Vector2D) –
roll (Quantity) –
baffles_blank (BaffleList) –
breadboard (Optional[Breadboard]) –
distortion_polynomial_degree (int) –
vignetting_polynomial_degree (int) –
- __init__(name=<factory>, plot_kwargs=<factory>, transform=<factory>, object_surface=<factory>, surfaces=<factory>, grid_rays=<factory>, field_margin=<Quantity 1. nrad>, pupil_margin=<Quantity 1. nm>, pointing=<factory>, roll=<Quantity 0. deg>, baffles_blank=<factory>, baffles_hull_axes=None, breadboard=None, tolerance_axes=<factory>, focus_axes=<factory>, distortion_polynomial_degree=2, vignetting_polynomial_degree=1)¶
- Parameters
name (Name) –
transform (TransformList) –
object_surface (Surface) –
surfaces (SurfaceList) –
grid_rays (RayGrid) –
field_margin (Quantity) –
pupil_margin (Quantity) –
pointing (Vector2D) –
roll (Quantity) –
baffles_blank (BaffleList) –
breadboard (Optional[Breadboard]) –
distortion_polynomial_degree (int) –
vignetting_polynomial_degree (int) –
- Return type
None
Attributes
Margin between edge of field and nearest ray
Margin between edge of pupil and nearest ray
Surface representing the light source
Methods
__init__([name, plot_kwargs, transform, ...])calc_baffles(baffles_blank[, transform_extra])copy()- rtype
typing.TypeVar(CopyableT, bound= Copyable)
- rtype
typing.TypeVar(CopyableT, bound= Copyable)
generic_fit(observed_images, target_images, ...)- rtype
plot(ax[, components, component_z, ...])plot_footprint([ax, surf, color_axis, ...])- rtype
plot_projections([surface_first, ...])- rtype
- rtype
psf([bins, limit_min, limit_max, ...])update()- rtype
write_to_dxf(file_writer, unit[, ...])- rtype
Inheritance Diagram
- class Breadboard(color='gray', transform=<factory>, length=<Quantity 0. mm>, width=<Quantity 0. mm>, thickness=<Quantity 0. mm>)¶
Bases:
Transformable,Colorable- Parameters
color (str) –
transform (TransformList) –
length (Quantity) –
width (Quantity) –
thickness (Quantity) –
- copy()¶
- Return type
typing.TypeVar(CopyableT, bound= Copyable)- Parameters
self (CopyableT) –
- copy_shallow()¶
- Return type
typing.TypeVar(CopyableT, bound= Copyable)- Parameters
self (CopyableT) –
- plot(ax=None, components=('x', 'y'), color='black', transform_extra=None, to_global=False)¶
- Return type
- Parameters
-
length:
astropy.units.Quantity= <Quantity 0. mm>¶
-
thickness:
astropy.units.Quantity= <Quantity 0. mm>¶
- property tol_iter: Iterator[Transformable]¶
- transform: TransformList¶
-
width:
astropy.units.Quantity= <Quantity 0. mm>¶
- calc_baffles(baffles_blank, transform_extra=None)¶
- Return type
- Parameters
baffles_blank (BaffleList) –
transform_extra (Optional[TransformList]) –
- copy()¶
- Return type
typing.TypeVar(CopyableT, bound= Copyable)- Parameters
self (CopyableT) –
- copy_shallow()¶
- Return type
typing.TypeVar(CopyableT, bound= Copyable)- Parameters
self (CopyableT) –
- generic_fit(observed_images, target_images, target_images_min, target_images_max, factory, params_guess=None, params_min=None, params_max=None, use_correlate=False, x_axis=-3, y_axis=-2, w_axis=-1)¶
- plot(ax, components=('x', 'y'), component_z=None, plot_kwargs=None, transform_extra=None, surface_first=None, surface_last=None, plot_rays=True, color_axis=-2, plot_vignetted=False, plot_colorbar=True, plot_baffles=True, plot_breadboard=True, plot_annotations=True, annotation_text_y=1.05)¶
- Return type
typing.Tuple[typing.List[matplotlib.lines.Line2D],typing.Optional[matplotlib.colorbar.Colorbar]]- Parameters
- plot_footprint(ax=None, surf=None, color_axis=-2, plot_apertures=True, plot_vignetted=False)¶
- plot_projections(surface_first=None, surface_last=None, color_axis=0, plot_vignetted=False, plot_rays=True)¶
- print_surfaces()¶
- Return type
- psf(bins=10, limit_min=None, limit_max=None, use_vignetted=False, relative_to_centroid=(False, False))¶
- Return type
- Parameters
- update()¶
- Return type
- write_to_dxf(file_writer, unit, transform_extra=None)¶
- property baffles: BaffleList¶
-
baffles_blank:
kgpy.optics.baffle.BaffleList¶
-
baffles_hull_axes:
typing.Optional[typing.Tuple[int,...]] = None¶
-
breadboard:
typing.Optional[kgpy.optics.breadboard.Breadboard] = None¶
- property broadcasted¶
- error_no_stop = ValueError('no stop defined')¶
-
field_margin:
astropy.units.Quantity= <Quantity 1. nrad>¶ Margin between edge of field and nearest ray
-
focus_axes:
typing.Dict[str,int]¶
-
grid_rays:
kgpy.optics.rays.RayGrid¶
- name: Name¶
-
object_surface:
kgpy.optics.surface.Surface¶ Surface representing the light source
- plot_kwargs: typ.Dict[str, typ.Any]¶
-
pointing:
kgpy.vector.Vector2D¶
- property psf_diffraction: DiscretePSF¶
-
pupil_margin:
astropy.units.Quantity= <Quantity 1. nm>¶ Margin between edge of pupil and nearest ray
-
roll:
astropy.units.Quantity= <Quantity 0. deg>¶
- property shape¶
- property surface_stop¶
-
surfaces:
kgpy.optics.surface.SurfaceList¶
- property surfaces_all: SurfaceList¶
-
tolerance_axes:
typing.Dict[str,int]¶
- transform: TransformList¶
- property transform_all: TransformList¶
- property transform_pointing: TransformList¶
- property transform_roll: TransformList¶