0
所以我一直在學習GNUplot,並且一直在困擾着我的是樣本和等速率(尤其是在計算阿克曼函數時)。我知道isosample率應該控制等值線的數量,而另一個對每個等值線採樣也是一樣的。GNUplot阿克曼函數的樣本和等樣本
此代碼繪製了ackermann函數(來源:gnuplot sourceforge)。爲什麼只有樣本和樣本的某些特定值會生成該圖? (4,2)和(2,4)的唯一的其他值。對於其餘的值,我得到了堆棧溢出或遞歸深度限制超出。
ack(m,n) = (m == 0) ? n + 1 : (n == 0) ? ack(m-1,1) : ack(m-1,ack(m,n-1))
set xrange [0:3]
set yrange [0:3]
set isosamples 4
set samples 4
set title "Plot of the ackermann function"
splot ack(x, y)
有人能解釋爲什麼只有(4,4),(4,2),(2,4)工作?
它與我爲x和y設置的範圍有關嗎? – Akshit
因爲該函數僅爲其參數的整數值定義? – user8153
如果您的範圍是[[0:3]]比2或4個採樣點位於整數值(但您可能希望強制顯式轉換爲函數定義中的整數,因爲我非常確定gnuplot將使用浮點(x,y)的點值來評估函數)。 – user8153