File:Snells law wavefronts.gif
Wikimedia Commons, 자유로운 미디어 저장소
둘러보기로 이동
검색으로 이동
Snells_law_wavefronts.gif (225 × 227 픽셀, 파일 크기: 65 KB, MIME 종류: image/gif, 반복됨, 10 프레임, 0.1 s)
파일 정보
구조화된 데이터
캡션
Titel
파일 설명[편집]
Source code[편집]
% Illustration of Snell's law
function main()
% indexes of refraction
n1=1.0;
n2=1.5;
sign = -1;% is the source up or down?
O=[0, -1*sign];
k=500;
% KSmrq's colors
red = [0.867 0.06 0.14];
blue = [0, 129, 205]/256;
green = [0, 200, 70]/256;
yellow = [254, 194, 0]/256;
white = 0.99*[1, 1, 1];
black = [0, 0, 0];
gray = 0.5*white;
color1=red;
color2=blue;
color3=gray;
lw = 3;
plot_line=0;
Theta=linspace(0, 2*pi, k);
V=0*Theta; W=0*Theta;
S0=7;
spacing=0.45;
p=floor(S0/spacing);
S=linspace(0, S0, p+1);
spacing=S(2)-S(1);
num_frames = 10;
for frame_iter=1:num_frames
figure(1); clf; hold on; axis equal; axis off;
% plot the interface between diellectrics
L=1.2*S0;
plot([-L, L], [0, 0], 'color', color3, 'linewidth', lw);
% plot a ray
plot_line=1;
s=L;
theta=pi/3; wfr(s, theta, n1, n2, O, sign, plot_line, color1, lw);
% plot the wafefronts
plot_line=0;
for i=1:p
s=S(i)+spacing*(frame_iter-1)/num_frames;
for j=1:k
theta=Theta(j);
[V(j), W(j)]=wfr(s, theta, n1, n2, O, sign, plot_line, color1, lw);
end
plot(V, W, 'color', color2, 'linewidth', lw);
end
% dummy points to enlarge the bounding box
plot(0, S0+2.5*spacing, '*', 'color', white);
plot(0, -(S0+2.5*spacing)/n2, '*', 'color', white);
% to know where to crop later
Lx=3.2; Ly=Lx; shift = 1;
plot([-Lx, Lx, Lx, -Lx -Lx], ...
[-Ly, -Ly, Ly, Ly, -Ly]+shift);
file = sprintf('Frame%d.eps', 1000+frame_iter);
disp(file);
saveas(gcf, file, 'psc2')
end
end
% Converted to gif with the UNIX command
% convert -density 100 -antialias Frame10* Snell_animation.gif
% then cropped in Gimp
function [a, b]=wfr(s, theta, n1, n2, O, sign, plot_line, color1, lw);
X=O+s*[sin(theta), sign*cos(theta)];
if( sign*X(2) > 0 )
t=-sign*O(2)/cos(theta);
X0=O+t*[sin(theta), sign*cos(theta)];
if (plot_line == 1)
plot([O(1), X0(1)], [O(2), X0(2)], 'color', color1, 'linewidth', lw, 'linestyle', '--');
end
d = norm(O-X0);
r = (s-d)*(n2/n1)^(sign);
theta2=asin(n1*sin(theta)/n2);
XE=X0+r*[sin(theta2), sign*cos(theta2)];
else
XE = X;
end
a = XE(1);
b = XE(2);
if (plot_line==1)
plot([X0(1), XE(1)], [X0(2), XE(2)], 'color', color1, 'linewidth', lw, 'linestyle', '--');
end
end
파일 역사
날짜/시간 링크를 클릭하면 해당 시간의 파일을 볼 수 있습니다.
날짜/시간 | 섬네일 | 크기 | 사용자 | 설명 | |
---|---|---|---|---|---|
현재 | 2009년 7월 5일 (일) 09:59 | 225 × 227 (65 KB) | Capmo (토론 | 기여) | reduced to 16 colors with no quality loss | |
2008년 1월 2일 (수) 06:31 | 225 × 227 (148 KB) | Oleg Alexandrov (토론 | 기여) | {{Information |Description=Illustration of wavefronts in the context of Snell's law. |Source=self-made with MATLAB |Date=05:36, 1 January 2008 (UTC) |Author= Oleg Alexandrov |Permission= |oth |
이 파일을 덮어쓸 수 없습니다.
이 파일을 사용하는 문서
이 파일을 사용하는 문서가 없습니다.
이 파일을 사용하고 있는 모든 위키의 문서 목록
다음 위키에서 이 파일을 사용하고 있습니다:
- ast.wikipedia.org에서 이 파일을 사용하고 있는 문서 목록
- bg.wikipedia.org에서 이 파일을 사용하고 있는 문서 목록
- cs.wikiversity.org에서 이 파일을 사용하고 있는 문서 목록
- cy.wikipedia.org에서 이 파일을 사용하고 있는 문서 목록
- de.wikipedia.org에서 이 파일을 사용하고 있는 문서 목록
- de.wikibooks.org에서 이 파일을 사용하고 있는 문서 목록
- el.wikipedia.org에서 이 파일을 사용하고 있는 문서 목록
- en.wikipedia.org에서 이 파일을 사용하고 있는 문서 목록
- Snell's law
- User talk:Clarknova
- User:Oleg Alexandrov/Pictures
- User:Devinma
- Wikipedia:Featured pictures/Diagrams, drawings, and maps/Diagrams
- User talk:Oleg Alexandrov/Archive13
- Wikipedia:Featured pictures thumbs/15
- Wikipedia:Featured picture candidates/January-2009
- Wikipedia:Featured picture candidates/Snells law wavefronts
- Wikipedia:Wikipedia Signpost/2009-01-10/Features and admins
- Wikipedia:Picture of the day/September 2009
- Template:POTD/2009-09-23
- Wikipedia:Wikipedia Signpost/2009-01-10/SPV
- User:VGrigas (WMF)/Quality Media
- Wikipedia:Wikipedia Signpost/Single/2009-01-10
- en.wikibooks.org에서 이 파일을 사용하고 있는 문서 목록
- en.wikiversity.org에서 이 파일을 사용하고 있는 문서 목록
- eo.wikipedia.org에서 이 파일을 사용하고 있는 문서 목록
- es.wikipedia.org에서 이 파일을 사용하고 있는 문서 목록
- et.wikipedia.org에서 이 파일을 사용하고 있는 문서 목록
- fa.wikipedia.org에서 이 파일을 사용하고 있는 문서 목록
- frr.wikipedia.org에서 이 파일을 사용하고 있는 문서 목록
- fr.wikipedia.org에서 이 파일을 사용하고 있는 문서 목록
- fr.wikibooks.org에서 이 파일을 사용하고 있는 문서 목록
- he.wikipedia.org에서 이 파일을 사용하고 있는 문서 목록
- hi.wikipedia.org에서 이 파일을 사용하고 있는 문서 목록
- hr.wikipedia.org에서 이 파일을 사용하고 있는 문서 목록
- it.wikipedia.org에서 이 파일을 사용하고 있는 문서 목록
- ka.wikipedia.org에서 이 파일을 사용하고 있는 문서 목록
- ko.wikipedia.org에서 이 파일을 사용하고 있는 문서 목록
- lmo.wikipedia.org에서 이 파일을 사용하고 있는 문서 목록
- mk.wikipedia.org에서 이 파일을 사용하고 있는 문서 목록
이 파일의 더 많은 사용 내역을 봅니다.