""" Package encompassing optical modeling and calculations

    The ``rayoptics.optical`` subpackage provides core classes and functions
    for optical modeling and basic analyses. These include:

        - Sequential optical model, :mod:`~.sequential`
        - Element based model, :mod:`~.elements`
        - Optical specifications, :mod:`~.opticalspec`
        - Paraxial and third order calculations, :mod:`~.firstorder`,
          :mod:`~.thirdorder`
        - Primitive and higher level ray tracing, :mod:`~.raytrace`,
          :mod:`~.trace`

    The overall optical model is managed by the :class:`~.OpticalModel` class
"""
