Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Save brianjp93/5260677f5004a2c3e7b0 to your computer and use it in GitHub Desktop.
Save brianjp93/5260677f5004a2c3e7b0 to your computer and use it in GitHub Desktop.
GRIN (Gradient Index Optics)
Display the source blob
Display the rendered blob
Raw
{
"metadata": {
"name": "GRIN--Messing With Some Functions"
},
"nbformat": 3,
"nbformat_minor": 0,
"worksheets": [
{
"cells": [
{
"cell_type": "heading",
"level": 1,
"metadata": {},
"source": "GRIN (Gradient Index) Lenses\n<p style=\"font-size:10px;\">Images from <a href=\"http://spie.org/x34515.xml\">spie.org/x34515.xml</a></p>\n<p style=\"font-size:12px\">Brian Perrett</p>"
},
{
"cell_type": "markdown",
"metadata": {},
"source": "<h3>1/4th pitch lens</h3>\n<img src=\"http://spie.org/Images/Graphics/Publications/TT48_Fig5.16.jpg\"/>"
},
{
"cell_type": "markdown",
"metadata": {},
"source": "<p style=\"font-size:20px;\">$f=\\frac{1}{N_0 \\sqrt{k}}$</p></br>\n$N_0$ is the index at the center of the lens"
},
{
"cell_type": "heading",
"level": 3,
"metadata": {},
"source": "Grin Rod Lens, Wood Lens"
},
{
"cell_type": "markdown",
"metadata": {},
"source": "<img src=\"http://spie.org/Images/Graphics/Publications/TT48_Fig5.17.jpg\"/>"
},
{
"cell_type": "markdown",
"metadata": {},
"source": "<p style=\"font-size:20px\">$f = \\frac{1}{N_0 \\sqrt{k} sin(t \\sqrt{k})}$</p></br>\n$bfl = f\\cos(t \\sqrt{k})$"
},
{
"cell_type": "code",
"collapsed": false,
"input": "t = linspace(.00001,4.81,1000)\nk = .1067\nN_o = 1.5834\nf = (1/(N_o*sqrt(k)*sin(t*sqrt(k))))\nbfl = f*cos(t*sqrt(k))",
"language": "python",
"metadata": {},
"outputs": [],
"prompt_number": 160
},
{
"cell_type": "code",
"collapsed": false,
"input": "for r in linspace(.001,1,5):\n theta = arctan(f/r)\n phi = (pi/2) - theta\n h = bfl*tan(phi)\n plot(t,h)\n plot(t,-h)",
"language": "python",
"metadata": {},
"outputs": [
{
"metadata": {},
"output_type": "display_data",
"png": "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\nRU5ErkJggg==\n",
"text": "<matplotlib.figure.Figure at 0xa3a8780>"
}
],
"prompt_number": 161
},
{
"cell_type": "markdown",
"metadata": {},
"source": "With knowledge of\n<ul>\n<li>\n focal length\n</li>\n<li>\n back focal length\n</li>\n<li>\n N at the center of the rod\n</li>\n<li>\n k (gradient constant)\n</li>\n</ul>\nAnd assuming that we are working with a \"Wood Lens\", we can simulate light traveling through the glass"
},
{
"cell_type": "code",
"collapsed": false,
"input": "",
"language": "python",
"metadata": {},
"outputs": []
}
],
"metadata": {}
}
]
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment