Gnuplot生成菲涅耳方程的奇异图
我试图为菲涅耳系数生成图形,但图形是错误的Gnuplot生成菲涅耳方程的奇异图,gnuplot,physics,Gnuplot,Physics,我试图为菲涅耳系数生成图形,但图形是错误的 #! /usr/bin/gnuplot -p #Gnuplot script Fresnel equation set term postscript eps enhanced color lw 2 "Arial" 20 set title "Fresnel do ar para vidro" #set name for file set output "fresnel.eps" #Define refractive index middle 1 n
#! /usr/bin/gnuplot -p
#Gnuplot script Fresnel equation
set term postscript eps enhanced color lw 2 "Arial" 20
set title "Fresnel do ar para vidro"
#set name for file
set output "fresnel.eps"
#Define refractive index middle 1
ni = 1
#Define refractive index middle 2
nt = 3/2
#Define constant
k = ni/nt
#Define conversion
TRAD = pi/180.0
#define cos, sin conversion
sind(x) = sin(x*TRAD)
cosd(x) = cos(x*TRAD)
#Define sqrt
sq(x) = sqrt( 1 - k**2 * sind(x)*sind(x) )
sqd(x) = sq(x*TRAD)
#R perpendicular
ri(x) = (ni*cosd(x) - nt*sqd(x)) / (ni*cosd(x) + nt * sqd(x))
#R paralelo
rii(x) = - (nt*cosd(x) - ni*sqd(x)) / (ni*sqd(x) + nt*cosd(x))
#Function
p(x) = (ri(x) - rii(x)) / (ri(x) + rii(x))
set ylabel "ress"
set xlabel "Angulo de incidencia"
set yrange [-1:2.5]
set autoscale x
#ploting graph
plot p(x), ri(x) with line, rii(x) w line
我需要一个像链接这样的图表:
这不是一个完整的解决方案,但有几点需要注意:
使用整数除法并产生nt=3/2
。您想要的是nt=1
或nt=3.0/2.0
nt=1.5
- 角度参数乘以
。这是从度到弧度的转换。因此,应将xrange设置为类似于TRAD
set xrange[0:90]
- 你有
,sqd(x)=…sq(x*TRAD).
,和sq(x)=…sind(x).
。此链将初始参数乘以sind(x)=sin(x*TRAD)
。很可能您希望将TRAD*TRAD
更改为sq(x)=…sind(x).
李>sq(x)=…sin(x).