Image:Prism compressor curve.svg
From Wikipedia, the free encyclopedia
Prism_compressor_curve.svg (SVG file, nominally 600 × 480 pixels, file size: 12 KB)
[edit] Summary
Created by Han-Kwang Nienhuys.
[edit] Licensing
|
[edit] Gnuplot script
Created with the following Gnuplot script (also by Han-Kwang and also GDFL/CC-By licensed)
# Calculate path lengths at different refractive indices in a prism compressor with a given geometry. # Copyright Han-Kwang Nienhuys, 2006 # Licensed for distribution and modification according to the GFDL or CC-by licenses # (which means basically: with proper attribution to the author) pi=4*atan(1) d2r=pi/180 sind(x)=sin(x*d2r) cosd(x)=cos(x*d2r) tand(x)=tan(x*d2r) asind(x)=asin(x)/d2r beta(n,alpha,theta)=asind(sind(alpha+theta)/n) gam(n,alpha,theta)=theta-beta(n,alpha,theta) delta(n,alpha,theta)=asind(n*sind(gam(n,alpha,theta))) l1(n,alpha,theta,A)=A/cosd(delta(n,alpha,theta)) # pathlength through air C(n,alpha,theta,A,B)=B-A*tand(delta(n,alpha,theta)) Bmin(n,alpha,theta,A,B1)=B1+A*tand(delta(n,alpha,theta)) # pathlength through 2nd prism. Undefined if the ray misses the prism. l2(n,alpha,theta,A,B)=C(n,alpha,theta,A,B) < 0 ? 1/0 : C(n,alpha,theta,A,B)*sind(alpha+theta)/cosd(beta(n,alpha,theta)) D(n,alpha,theta,A,B)=l2(n,alpha,theta,A,B)*cosd(gam(n,alpha,theta))/sind(theta) l3(n,alpha,theta,A,B)=D(n,alpha,theta,A,B)*sind(alpha+theta) # A=distance between prism surfaces # B=distance between prism tops (measured parallel to surface) # theta=prism top angle # alpha=indicent angle # n=refractive index pathlen(n,alpha,theta,A,B)=2*(l1(n,alpha,theta,A,B)+n*l2(n,alpha,theta,A,B) - l3(n,alpha,theta,A,B)) # difference with reference index n0. Specify B1 as distance from top where the n0 # ray hits prism 2. n0=1.5 pathlenD(n,alpha,theta,A,B1)=pathlen(n,alpha,theta,A,Bmin(n0,alpha,theta,A,B1)) - \ pathlen(n0,alpha,theta,A,Bmin(n0,alpha,theta,A,B1)) set nogrid set xlabel 'Refractive index' set ylabel 'Path length difference (mm)' set key bottom right set samples 200 set xra [1.5:1.7] set xtics 0.05 set ytics 1 A=100 n0=1.6 alpha=10 theta=55 set term svg fsize 24 set outp 'prism_compressor_curve.svg' plot pathlenD(x,alpha,theta,A,0) ti 'B = 67.6 mm', \ pathlenD(x,alpha,theta,A,9) ti 'B = 76.6 mm', \ pathlenD(x,alpha,theta,A,18) ti 'B = 85.6 mm'
File history
Click on a date/time to view the file as it appeared at that time.
Date/Time | Dimensions | User | Comment | |
---|---|---|---|---|
current | 13:18, 9 July 2006 | 600×480 (12 KB) | Hankwang (Talk | contribs) | (Created by ~~~ Nienhuys.) |
13:17, 9 July 2006 | 600×480 (10 KB) | Hankwang (Talk | contribs) | (Created by ~~~ Nienhuys.) |
- Search for duplicate files
- Edit this file using an external application
See the setup instructions for more information.
File links
The following pages on the English Wikipedia link to this file (pages on other projects are not listed):