區域構造插值研究

2021-08-15 13:03:09 字數 1604 閱讀 4106

初步了解three的基本功能後,開始了本專案的研究,專案需要檢索分析出符合地質規律的井點座標及其縱向的屬性分布值,取得資料後開始建立三角剖分網格,然後對網格內資料插值,最後展示,需求很明確,於是開始了第一步:

1、資料獲取

這一步涉及太多業務演算法,略過說明,總之是最終得到乙個json格式的資料字串檔案,大概如下:

2、網格建立

利用井點座標尋找井點最大凸邊界,這一步有用演算法導論內的獲取最大凸邊界的演算法,理論依據是從原點出發,尋找與目標點夾角最大的點,網上理論很多,這裡不過多涉及,部分**如下:

3、有了井點邊界後,在此基礎上建立矩形邊界,矩形邊界的頂點採用尋找到的凸邊界井點座標,然後建立三角網,並對建立的三角網進行克里金插值處理。插值前必須把井點原始座標取值縮放至空間座標系內,不然繪製的資料會有很大差異,**如下:

4、插值完成後,進行空間上的儲層平面屬性圖繪製,這一步也略過,效果大概如下:

這是採用某油田某研究區塊400多口井的相屬性插值後的結果,其中插值後的深度採用區域內井點儲層頂介面深度獲取,顏色代表屬性取值。

5、這裡有個問題了,繪製的圖因為缺少儲層厚度取值,所以怎麼看都是乙個平面,這樣就失去空間展示的意義了,於是研究了下繪製厚度的方法,因為時間有限,我採取了最笨的版本,獲取平面上的最大邊界點,然後通過最大邊界點向下延伸繪製指定厚度的三角面,獲取最大邊界點的演算法是更改了凸集演算法相關取值,這裡有個bug,網格步長設定不合理會引起凸集取值錯誤,凹進去的邊界點會被忽略,待有時間改進,獲取的邊界點如下(黑色的小球即時最大邊界點):

6、通過獲取的邊界點繪製邊界厚度面,關鍵**如下:

7、最後可以獲取到繪製的模型體,效果如下,其中模型體的厚度可以根據每個井點取不一樣的厚度值,後期再加關鍵引數的設定,模型體的顏色可以設定統一也可以根據井點插值後的結果設定。

三維地質體的展示模組大致完成,剩餘就是乙個封裝問題,感興趣的小夥伴可以一起研究研究,另外,three的展示效果還是不錯的,並且在頁面出於不啟用狀態下,是很省記憶體的。

agd插值演算法 常見插值演算法研究

最近在做心電相關的專案,由於微控制器的處理能力有限,在接收心電訊號之後需要對資料進行壓縮 其實是取一些特徵點 然後後期再進行顯示。但是在手持arm上進行顯示的時候,通過這些殘缺的資料繪出心電圖形是很困難的,這就要進行插值處理,所以進行了一些插值演算法相關的研究,常用的插值演算法是拉格郎日插值和牛頓插...

插值查詢 插值搜尋

這是一種和二分比較相似的查詢的演算法,不過不同的是,對於分布比較均勻的較大的陣列,插值查詢有時能夠一次就搜尋到位.為什麼能夠這麼快呢 看網上沒有什麼關於這種演算法的描述,我就來描述一下吧.首先要知道一點,這種搜尋方式只能夠針對順序表進行,再乙個要理解順序表中的乙個特點,在順序表中查詢是否存在乙個值,...

hermite插值 分段插值 Hermite插值

1.分段二次多項式插值 試用分段 4段 二次多項式插值來近似 0,1 區間上的 runge 函式 1 取區間的 8 等分點,計算插值節點處的函式值 2 每次取 3 個相鄰的等分點為一組,呼叫 polyinterp 函式,計算繪圖求值點 3 繪圖.2.hermite插值 編寫程式,繪製繪製多項式 p ...