... | ... | @@ -108,42 +108,6 @@ pyrateoptics.listOptimizableVariables(opticalsystem, max_line_width=75) |
|
|
pyrateoptics.draw(opticalsystem, rays)
|
|
|
# This function can get a list of raypath argument to draw rays.
|
|
|
```
|
|
|
# Some Impressions
|
|
|
|
|
|

|
|
|

|
|
|

|
|
|
|
|
|
An optimized plano-plano GRIN lens with 1.6 micron RMS centroid spot radius.
|
|
|
|
|
|

|
|
|
|
|
|
An achromat.
|
|
|
|
|
|

|
|
|
|
|
|
Mirror system with pilot rays.
|
|
|
|
|
|

|
|
|
|
|
|
Circular field sampling in FreeCAD Gui.
|
|
|
|
|
|

|
|
|
|
|
|
Comparison of real raytrace (blue) with parabasal raytrace (orange).
|
|
|
|
|
|

|
|
|
|
|
|
Equal sided prism with blue and red light being dispersed.
|
|
|
|
|
|

|
|
|
|
|
|
Grin material with coordinate system tilted against global coordinate system.
|
|
|
|
|
|

|
|
|
|
|
|
Water droplet which bends the light of different wavelengths differently in order to create a rainbow.
|
|
|
The material data was obtained from https://refractiveindex.info by Mikhail N. Polyanskiy.
|
|
|
|
|
|
# Frequently Asked Questions
|
|
|
|
... | ... | @@ -165,7 +129,9 @@ https://github.com/mess42/pyrate/issues/142 |
|
|
The FreeCAD interface has more or less the status of a mockup and is broken since the last large refactoring in 2017. Until now there is no good idea about getting a not-so-tight coupling between FreeCAD classes and pyrate classes. Since the API is not quite settled it is really difficult to start with a full fledged FreeCAD interface without rewriting all the stuff when there is a slight API change appearing. All ideas here are appreciated. If you are interested in digging into the matter, please have a look in the `freecad/PyrateWorkbench` directory.
|
|
|
|
|
|
https://github.com/mess42/pyrate/issues/136
|
|
|
|
|
|
https://github.com/mess42/pyrate/issues/134
|
|
|
|
|
|
https://github.com/mess42/pyrate/issues/91
|
|
|
|
|
|
## How does the optimizer work?
|
... | ... | @@ -175,19 +141,60 @@ The optimizer decomposes in backend and frontend whereas the backend determines |
|
|
There were several discussions on that in the following issues:
|
|
|
|
|
|
https://github.com/mess42/pyrate/issues/140
|
|
|
|
|
|
https://github.com/mess42/pyrate/issues/137
|
|
|
|
|
|
## How to create a full sphere lens?
|
|
|
|
|
|
Since the `Conic` surface solves the ray intersection equation analytically and the two intersection points in a sphere correspond to the two roots of the quadratic equation, one cannot properly use two subsequent `Conic`s and expect a proper raytracing. In issue XX and our own research, we came up with a few workarounds:
|
|
|
Since the `Conic` surface solves the ray intersection equation analytically and the two intersection points in a sphere correspond to the two roots of the quadratic equation, one cannot properly use two subsequent `Conic`s and expect a proper raytracing. In one issue and our own research, we came up with a few workarounds:
|
|
|
|
|
|
* use a slightly deformed second surface (introduce radius deviation or slight conic const) -> this is no optimal solution when you need an exact sphere
|
|
|
* *use an intermediate plano surface* (this is the most reliable solution without any downsides)
|
|
|
* use the `Asphere` type surface to avoid the quadratic analytical solution problem and use a numerical solver instead
|
|
|
* use an intermediate plano surface (this is the most reliable solution without any downsides)
|
|
|
* use a slightly deformed second surface (introduce radius deviation or slight conic const) -> this is no optimal solution when you need an exact sphere
|
|
|
|
|
|
https://github.com/mess42/pyrate/issues/149
|
|
|
|
|
|
https://github.com/mess42/pyrate/issues/50
|
|
|
|
|
|
|
|
|
|
|
|
# Some Impressions
|
|
|
|
|
|

|
|
|

|
|
|

|
|
|
|
|
|
An optimized plano-plano GRIN lens with 1.6 micron RMS centroid spot radius.
|
|
|
|
|
|

|
|
|
|
|
|
An achromat.
|
|
|
|
|
|

|
|
|
|
|
|
Mirror system with pilot rays.
|
|
|
|
|
|

|
|
|
|
|
|
Circular field sampling in FreeCAD Gui.
|
|
|
|
|
|

|
|
|
|
|
|
Comparison of real raytrace (blue) with parabasal raytrace (orange).
|
|
|
|
|
|

|
|
|
|
|
|
Equal sided prism with blue and red light being dispersed.
|
|
|
|
|
|

|
|
|
|
|
|
Grin material with coordinate system tilted against global coordinate system.
|
|
|
|
|
|

|
|
|
|
|
|
Water droplet which bends the light of different wavelengths differently in order to create a rainbow.
|
|
|
The material data was obtained from https://refractiveindex.info by Mikhail N. Polyanskiy.
|
|
|
|
|
|
# Formulas
|
|
|
|
|
|
If you want to use formulas in issues or wikis, then the following example would be useful:
|
... | ... | |