Data
Gnuplot 與 Gauss 擬合會產生不同的曲面,為什麼?
我有一個與使用 gnuplot 生成表面有關的問題,或者說與擬合程序有關。我有不同的曲線,它們不遵循數學公式,但我需要在我的 CFD 程式碼中使用這些數據。然而,為了達到這個目標,我使用高斯擬合算法將離散曲率數據點 (x, y, z) 映射到 2D 表面。我正在使用以下映射語法:
# Surface with 800 x 800 discrete points dx = 4, dy = 6500 for # for adjusting the Gaussian profile to the x, y axis set dgrid3d 800 800 gauss 4,6500 set table "Look-Up-Table.txt" splot "globalFile.txt" using 2:5:($3/1000000) title "Look-Up-Table"
我希望為擬合過程獲得一個表面,但我意識到輸出文件包含更多表面。為什麼會這樣?該文件可能如下所示:
# Surface 0 of 13 surfaces # Curve title: "Look up table" # IsoCurve 0, 800 points # x y z type ... # # Survace 1 of 13 surfaces # IsoCurve 0, 800 points # x y z type ....
歡迎任何建議。我想上傳一些測試案例,但我不能分享數據,但我希望你明白這一點。只是一個額外的資訊。我想要映射的數據點在某個表面上,但在一個區域內我有很多波動。這可能是額外表面的原因嗎?
在此先感謝,托比
我的問題實際上是 globalFile.txt。有很多數據點不止一次包含,還有一些不屬於數據的數據(@Dani_l 也提到過)。然而,改變我的 c++ 程式碼來操作和生成數據文件是必須要做的一切。現在,擬合程序再次按預期工作。