Skip to content

Commit

Permalink
help docs corrections
Browse files Browse the repository at this point in the history
  • Loading branch information
Chunosov committed Jun 8, 2019
1 parent e273432 commit 7a0eb5b
Show file tree
Hide file tree
Showing 17 changed files with 35 additions and 35 deletions.
8 changes: 4 additions & 4 deletions help/calc_formula.rst
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ Formula Calculator

:menuselection:`Tools --> Formula Calculator`

Formula Calculator is the tool allowing computation of custom formulas given as text expression. Enter your formula in the text field :guipart:`1` and hit :kbd:`Ctrl+Enter` or press :guilabel:`Calculate` button on the toolbar. Results of calculation are displayed in the field :guipart:`2`.
Formula Calculator is the tool allowing computation of custom formulas given as text expression. Enter your formula in the text field :guipart:`1` and hit :kbd:`Ctrl+Enter` or press :guilabel:`Calculate` button on the toolbar. Results of calculation are displayed in field :guipart:`2`.

|rezonator| uses `Lua <http://www.lua.org>`_ internally to calculate custom formulas. See :doc:`lua_primer` to discover supported operations and functions.

Expand All @@ -15,19 +15,19 @@ In case of simple formula you can type it as it is, e.g.::

sin(deg2rad(30))

For more complex formulas it is possible to define additional variables to make the expression clearer and easily understandable, e.g.::
For more complex formulas, it is possible to define additional variables to make the expression clearer and easily understandable, e.g.::

L = 2.5
n = 1.33
alpha = deg2rad(30)
ans = L / sqrt(n^2 - sin(alpha)^2)

In this case, you have to specify explicitly what value should be treated as the final result. Store the result value in the predefined variable ``ans`` (stand for 'answer'). All variables including ``ans`` listed in the table :guipart:`3` and can be reused in subsequent calculations.
In this case, you have to specify explicitly what value should be treated as the final result. Store the result value in the predefined variable ``ans`` (stand for 'answer'). All variables, including ``ans``, listed in the table :guipart:`3` and can be reused in subsequent calculations.


.. note::

You can not just define a variable and not provide an answer, so the expression like ``a = 2`` will be invalid. If you only want to assign a variable, use the variable as the answer: ``a = 2; ans = a``.
You can not just define a variable and not provide an answer, so the expression like ``a = 2`` is invalid. If you only want to assign a variable, use the variable as the answer: ``a = 2; ans = a``.

.. seealso::

Expand Down
4 changes: 2 additions & 2 deletions help/elem_matrs.rst
Original file line number Diff line number Diff line change
Expand Up @@ -12,11 +12,11 @@ Elements Matrices

At least, there are two ray matrices for each element - one for tangential and another for sagittal :ref:`working planes <working_planes>`. These are so-called *T-matrix* and *S-matrix*, and they denoted as |Mt| and |Ms| respectively.

Several elements have more matrices using in some specific calculations. For example, elements that have the length parameter also have two additional matrix set. The first one describes beam propagation from outside of the left edge of the element to some position inside the element. The second one describes propagation from that position to outside of the right edge of the element. These matrices are used for computation of beam traveling through the interior of an optical element. They are denoted as |M_lf| and |M_rt| respectively.
Several elements have more matrices using in some specific calculations. For example, elements that have the length parameter also have two additional matrix set. The first one describes beam propagation from outside of the left edge of the element to some position inside the element. The second one describes propagation from that position to outside of the right edge of the element. reZonator uses these matrices for computation of beam traveling through the interior of an optical element. They are denoted as |M_lf| and |M_rt| respectively.

.. _interface_elems:

Interface elements have no their own index of refraction. Instead, they take indexes of adjacent elements to calculate their matrices. So there is some obvious suggestion about the placement of an interface element in the schema - the left and the right adjacent elements of the interface should be either :doc:`matrix/ElemEmptyRange` or :doc:`matrix/ElemMediaRange`. |rezonator| doesn't complain if it is not, but then one can't count on correct results.
Interface elements have no index of refraction. Instead, they take indexes of adjacent elements to calculate their matrices. So there is some obvious suggestion about the placement of an interface element in the schema - the left and the right adjacent elements of the interface should be either :doc:`matrix/ElemEmptyRange` or :doc:`matrix/ElemMediaRange`. |rezonator| doesn't complain if it is not, but then one can't count on correct results.


**Common Elements**
Expand Down
2 changes: 1 addition & 1 deletion help/elements.rst
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ The element can describe a general optical component such as a :doc:`mirror <mat

The application utilizes conventional ABCD-matrix approach (by Kogelnik and Li) to compute the propagation of paraxial Gaussian beams through an element. In calculations, each element represented by its :doc:`ray matrix <elem_matrs>`.

You don't have to assign matrices for elements manually. Instead, you can provide values for some typical element parameters - a focal length of a lens, thickness and refractive index for a crystal, and so on. The software will automatically compute element matrices based on these parameter values.
You don't have to assign matrices for elements manually. Instead, you can provide values for some typical element parameters - a focal length of a lens, thickness and refractive index for a crystal, and others. The software automatically computes element matrices based on these parameter values.

.. toctree::
:maxdepth: 1
Expand Down
8 changes: 4 additions & 4 deletions help/glossary.rst
Original file line number Diff line number Diff line change
Expand Up @@ -7,11 +7,11 @@ Glossary
Propagation Direction
---------------------

|rezonator| supposes a beam propagating from left to right in the schema. For :ref:`single-pass <schema_kind_sp>` schema, it is as if a light source would be located just before the leftmost element of the schema and is directed to the right side.
|rezonator| supposes a beam is propagating from left to right in the schema. For :ref:`single-pass <schema_kind_sp>` schema, it is as if a light source would be located just before the leftmost element of the schema and is directed to the right side.

.. image:: img/propagation_sp.png

For :ref:`resonators <schema_kind_rr>`, it is just the chosen primary direction. In :ref:`standing-wave resonator <schema_kind_sw>`, the beam reflects from the rightmost element and does round-trip returning back to the leftmost one.
For :ref:`resonators <schema_kind_rr>`, it is just the chosen primary direction. In :ref:`standing-wave resonator <schema_kind_sw>`, the beam reflects from the rightmost element and does round-trip returning to the leftmost one.

.. image:: img/propagation_res.png

Expand All @@ -30,10 +30,10 @@ Working Planes

**Tangential Plane, T-plane**

Tangential plane is the plane containing all the resonator's elements (the plane of an optical stand). Beams are refracted or reflected in this plane.
The tangential plane is the plane containing all the resonator's elements (the plane of an optical stand). Beams are refracted or reflected in this plane.

**Sagittal Plane, S-plane**

Sagittal plane is the plane containing element's optical axis and perpendicular to the tangential plane.
The sagittal plane is the plane containing the element's optical axis and perpendicular to the tangential plane.

.. image:: img/planes_ts.png
18 changes: 9 additions & 9 deletions help/hyper_gauss.rst
Original file line number Diff line number Diff line change
Expand Up @@ -5,15 +5,15 @@ Calculation of Hyper-Gaussian Beams
.. |z0| replace:: `z`\ :sub:`0`
.. |w0| replace:: `w`\ :sub:`0`

Algorithm for calculation of hyper-Gaussian beams is applied to analyze single-pass systems (SP) when divergence parameter (|MI|) of the input beam set to a value greater than one.
Algorithm for calculation of hyper-Gaussian beams is applied to analyze single-pass systems (SP) when divergence parameter (|MI|) of the input beam set to a value larger than one.

.. index:: single: hyper-gaussian beam
.. index:: single: pseudo-gaussian beam

Hyper-Gaussian beam
-------------------

Hyper-Gaussian beam in |rezonator| is defined as a beam whose divergence is |MI| times greater than divergence of a Gaussian beam having the same waist radius. Therefore its :ref:`Rayleigh distance<gauss_confocal>` is |MI| times less.
Hyper-Gaussian beam in |rezonator| is defined as a beam whose divergence is |MI| times greater than the divergence of a Gaussian beam having the same waist radius. Therefore its :ref:`Rayleigh distance<gauss_confocal>` is |MI| times less.

.. image:: img/hypergauss_formula_1.png

Expand All @@ -22,7 +22,7 @@ Hyper-Gaussian beam in |rezonator| is defined as a beam whose divergence is |MI|
Equivalent Gaussian beam
------------------------

To describe the propagation of hyper-Gaussian beam in free space, it is enough to replace the Rayleigh distance |z0| with |z0|/|MI| in formulas for `w(z)` and `R(z)`:
For describing the propagation of hyper-Gaussian beam in free space, it is enough to replace the Rayleigh distance |z0| with |z0|/|MI| in formulas for `w(z)` and `R(z)`:

.. image:: img/hypergauss_formula_2.png

Expand All @@ -34,30 +34,30 @@ A beam having such a reduced waist size is called *Equivalent Gaussian Beam*:

.. image:: img/hypergauss_formula_4.png

Then we can express waist radius of hyper-Gaussian beam in terms of equivalent Gaussian beam:
Then we can express the waist radius of the hyper-Gaussian beam in terms of the equivalent Gaussian beam:

.. image:: img/hypergauss_formula_5.png

And substitute it into formulas for `w(z)` and `R(z)`:

.. image:: img/hypergauss_formula_6.png

Since equivalent Gaussian beam has the same Rayleigh distance as hyper-Gaussian beam, its radius is `M` times less than radius of original beam not only at the waist but anywhere.
Since equivalent Gaussian beam has the same Rayleigh distance as the hyper-Gaussian beam, its radius is `M` times less than the radius of the original beam not only at the waist but anywhere.

.. image:: img/hypergauss_formula_7.png

Because equivalent Gaussian beam is a normal Gaussian beam, its complex parameter can be transformed by ray matrices as usual.
Because equivalent Gaussian beam is a standard Gaussian beam, its complex parameter can be transformed by ray matrices as usual.

Algorithm of computing
----------------------

The program uses next algorithm for calculation of propagation of hyper-Gaussian beams:
The program uses the next algorithm for calculation of propagation of hyper-Gaussian beams:

#. Equivalent size of the input beam is calculated. It is `M` times less than specified in the dialog of input beam parameters.

#. Propagation of equivalent Gaussian beam is calculated.
#. Propagation of an equivalent Gaussian beam is calculated.

#. Characteristics of the resulting hyper-Gaussian beam are calculated. Its radius is `M` times greater than the radius of equivalent beam and radius of wavefront curvature is equal to that.
#. Characteristics of the resulting hyper-Gaussian beam are calculated. Its radius is `M` times greater than the radius of the equivalent beam and radius of wavefront curvature is equal to that.

.. image:: ./img/hypergauss_algorithm.png

Expand Down
2 changes: 1 addition & 1 deletion help/lua_primer.rst
Original file line number Diff line number Diff line change
Expand Up @@ -74,7 +74,7 @@ A comment starts with a double hyphen (``--``) and runs until the end of the lin
Mathematical Functions
----------------------

Lua provides a set of `mathematical functions <https://www.lua.org/manual/5.3/manual.html#6.7>`_ in the ``math`` library. One has to call them using the library name, e.g. ``math.sin(math.pi / 4)``. For convenience, |rezonator| supports its own set of common mathematical functions that can be used without any additional prefix, e.g. ``sin(pi()/4)``.
Lua provides a set of `mathematical functions <https://www.lua.org/manual/5.3/manual.html#6.7>`_ in the ``math`` library. One has to call them using the library name, e.g., ``math.sin(math.pi / 4)``. For convenience, |rezonator| supports its own set of standard mathematical functions that can be used without any additional prefix, e.g., ``sin(pi()/4)``.

``sin`` --- returns the sine of the angle in radians.

Expand Down
2 changes: 1 addition & 1 deletion help/matrix/ElemBrewsterCrystal.rst
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
Brewster Plane-parallel Crystal
===============================

Brewster crystal is characterized by its length `L` and index of refraction `n`. A beam falls at the face of crystal at Brewster's angle. Element's length is measured along the beam path.
Brewster crystal is characterized by its length `L` and index of refraction `n`. A beam falls at the face of the crystal at Brewster's angle. Element's length is measured along the beam path.

One can consider this element as a rod whose opposite ends are cut at Brewster's angle. It is a widely used form of laser gain medium.

Expand Down
4 changes: 2 additions & 2 deletions help/matrix/ElemBrewsterPlate.rst
Original file line number Diff line number Diff line change
Expand Up @@ -3,9 +3,9 @@
Brewster Plane-parallel Plate
=============================

Brewster plate is characterized by its thickness `L` and index of refraction `n`. A beam falls at the face of plate at Brewster's angle.
Brewster plate is characterized by its thickness `L` and index of refraction `n`. A beam falls at the face of the plate at Brewster's angle.

Like :doc:`ElemBrewsterCrystal`, it is also a widely used form of laser gain medium. But when the laser rod becomes too short, it is convenient to consider it as a plane-parallel plate which is tilted at Brewster's angle toward the beam propagation. In this case the geometric path of the beam `L`\ :sub:`eff` is slightly bigger than the thickness of the element.
Like :doc:`ElemBrewsterCrystal`, it is also a widely used form of laser gain medium. However, when the laser rod becomes too short, it is convenient to consider it as a plane-parallel plate which is tilted at Brewster's angle toward the beam propagation. In this case, the geometric path of the beam `L`\ :sub:`eff` is slightly bigger than the thickness of the element.

Full element

Expand Down
2 changes: 1 addition & 1 deletion help/matrix/ElemCurveMirror.rst
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ The spherical mirror has the same radii of curvature `R` for both tangential and

A spherical mirror can be concave or convex depending on the sign of radius of curvature. The sign of ROC is not related to the beam :ref:`propagation direction <propagation_dir>` but only governs how the mirror transforms the beam’s wavefront.

The spherical mirror acts exactly like a :doc:`thin lens <ElemThinLens>`, except that you have to specify the radius of curvature instead of the focal range. Even on the :doc:`layout <schema_layout>`, it is displayed as a lens when it does not locate at ends of the optical system.
The spherical mirror acts in the same way as a :doc:`thin lens <ElemThinLens>`, except that you have to specify the radius of curvature instead of the focal range. Even on the :doc:`layout <schema_layout>`, it is displayed as a lens when it does not locate at ends of the optical system.

.. image:: ElemCurveMirror.png

Expand Down
4 changes: 2 additions & 2 deletions help/matrix/ElemFlatMirror.rst
Original file line number Diff line number Diff line change
Expand Up @@ -4,11 +4,11 @@
Flat Mirror
===========

The flat mirror has a unity matrix and does not affect the propagating beam. It still is an important element for :doc:`round-trip matrix calculation <../round_trip_matrix>` when placed at the end of the resonator.
The flat mirror has a unity matrix and does not affect the propagating beam. It still is an essential element for :doc:`round-trip matrix calculation <../round_trip_matrix>` when placed at the end of the resonator.

.. image:: ElemFlatMirror.png

The flat mirror changes its representation on the :doc:`layout <layout>` when it does not locate at the end of the resonator. Similar to :doc:`ElemPoint` it can be used as a helper element, e.g. as a separator between two adjacent range elements having different semantics.
The flat mirror changes its representation on the :doc:`layout <layout>` when it does not locate at the end of the resonator. Similar to :doc:`ElemPoint`, you can use it as a helper element, e.g., as a separator between two adjacent range elements having different semantics.

.. image:: ElemFlatMirror_example.png

Expand Down
2 changes: 1 addition & 1 deletion help/matrix/ElemMatrix.rst
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
Custom Element-Matrix
=====================

An element whose matrices are set by the user directly. See more about :doc:`using of custom elements <custom_elems>`.
The matrix element is an element whose matrices are set by the user directly. See more about :doc:`using custom elements <custom_elems>`.

.. image:: ../../img/elem/ElemMatrix.svg

Expand Down
2 changes: 1 addition & 1 deletion help/matrix/ElemPoint.rst
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
Point Element
=============

It is a helper element having a unity matrix. It does not affect propagating beam anyhow. The element differs from :doc:`ElemFlatMirror` only in visual representation but exactly the same in calculations.
The point element is a helper element having a unity matrix. It does not affect propagating beam anyhow. The element differs from :doc:`ElemFlatMirror` only in visual representation but the same in calculations.

.. image:: ../../img/elem/ElemPoint.svg

Expand Down
2 changes: 1 addition & 1 deletion help/matrix/ElemThinLens.rst
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ The lens can be collecting or diverging (positive or negative) depending on the

The lens has the same focal ranges `F` for both tangential and sagittal planes. Matrices for both planes are also equal when the beam falls on the lens at the normal angle. When incident beam inclined at angle `α`, then matrices for T and S planes differ.

The thin lens acts exactly like a :doc:`spherical mirror <ElemCurveMirror>`, except that you have to specify the focal range instead of the radius of curvature.
The thin lens acts in the same way as a :doc:`spherical mirror <ElemCurveMirror>`, except that you have to specify the focal range instead of the radius of curvature.

.. image:: ElemThinLens.png

Expand Down
2 changes: 1 addition & 1 deletion help/matrix/ElemTiltedCrystal.rst
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
Tilted Plane-parallel Crystal
=============================

Tilted plane-parallel crystal characterizes by its length `L`, index of refraction `n`, and beam falling angle `α`. The element is similar to :doc:`ElemBrewsterCrystal`, but the falling angle not fixed and can be set via the element parameter.
The tilted plane-parallel crystal is characterized by its length `L`, index of refraction `n`, and beam falling angle `α`. The element is similar to :doc:`ElemBrewsterCrystal`, but the falling angle is not fixed and can be set via the element parameter.

Full element

Expand Down
2 changes: 1 addition & 1 deletion help/matrix/ElemTiltedInterface.rst
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ The element represents the flat boundary between two media having indexes of ref

.. image:: ElemTiltedInterface_1.png

It is sometimes convenient to set the angle inside the |n2| media as if one would want to set `β` angle instead of `α`. But there is no additional `β` parameter in the element, as it leads to ambiguity what angle should be considered. Instead, one can just give the negative sign to the angle, and it forces |rezonator| to treat this angle as being inside of the |n2| media and calculate the first angle accordingly.
It is sometimes convenient to set the angle inside the |n2| media as if one would want to set `β` angle instead of `α`. However, there is no additional `β` parameter in the element, as it leads to ambiguity what angle should be considered. Instead, one can give the negative sign to the angle, and it forces |rezonator| to treat this angle as being inside of the |n2| media and calculate the first angle accordingly.

.. image:: ElemTiltedInterface_2.png

Expand Down
2 changes: 1 addition & 1 deletion help/matrix/ElemTiltedPlate.rst
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
Tilted Plane-parallel Plate
===========================

Tilted plane-parallel plate is characterized by its thick `L`, index of refraction `n`, and beam falling angle `α`. The element is similar to :doc:`ElemBrewsterPlate` but the falling angle is not fixed and can be set via the element parameter.
The tilted plane-parallel plate is characterized by its thick `L`, index of refraction `n`, and beam falling angle `α`. The element is similar to :doc:`ElemBrewsterPlate`, but the falling angle is not fixed and can be set via the element parameter.

Full element

Expand Down
Loading

0 comments on commit 7a0eb5b

Please sign in to comment.