错误的绘图输出

时间:2019-03-29 19:32:27

标签: windows plot

我正在尝试在Windows的gnuplot中绘制以下内容,

    reset

# png
set terminal wxt size 650,550 enhanced font 'Verdana,10'
set output 'example_plot.png'

set border linewidth 1

#unset key

set xtics auto
set ytics auto

set title 'example plot of 3-resonance K-matrix'
set xlabel 'E(GeV)'
set ylabel 'sigma(1/GeV)'
set xrange [3:6]
set yrange [0:0.15]

gee1 = 1
gDD1 = 1
m1 = 3.9
me = 0.000511
mf = 1.86965

p(x) = sqrt(1-(4*mf*mf/(x*x)))
q(x) = sqrt(1-(4*me*me/(x*x)))

rho(x) = (1/(16*3.14159))*sqrt(1-((4*mf*mf)/(x*x)))

P(x) = ((gee1*gDD1)/(x*x-m1*m1))
K(x) = rho(x)*((gDD1*gDD1)/(x*x-m1*m1)

Fsq(x) = (P(x)*P(x))/(1+(K(x)*K(x)))

f(x) = (3/(64*3.14*x*x))*(p(x)/q(x))*Fsq(x)
plot Fsq(x) title "T^2" with lines linestyle 1
#plot f(x) title "g(s)" with lines linestyle 1

但是我弄错了情节。峰值应该在31300左右,而我的峰值应该在200左右。

我真的看不到我的代码有什么问题。有人可以帮忙吗?

谢谢, 基督徒enter image description here

1 个答案:

答案 0 :(得分:0)

函数中的尖峰非常尖锐,除非您直接在对应于最大值的x坐标处对其进行评估,否则绘图将无法捕获真正的最大值。您对绘制函数的采样越精细(例如set sample 5000),其中一个采样接近真实最大值的可能性就越大,但是您不能保证准确地达到它。 enter image description here