ข้ามไปที่เนื้อหา

อนุพันธ์เชิงพื้นที่ของฟังก์ชันรูปร่าง

ฟังก์ชันรูปร่าง \(N_\alpha^e(\boldsymbol{r})\) ที่แนะนำใน ฟังก์ชันรูปร่างและการประมาณด้วยไฟไนต์เอลิเมนต์ กำหนดเป็นฟังก์ชันของพิกัดธรรมชาติ \(\boldsymbol{r}\) ซึ่งเป็นพิกัดเฉพาะที่ของเอลิเมนต์ ในทางกลับกัน จากความสัมพันธ์ระหว่างความเครียดกับการกระจัด อินทิกรนด์ในรูปแบบอ่อนจะมีอนุพันธ์ย่อยตามพิกัดกายภาพ (คอนฟิกูเรชันอ้างอิง \(\boldsymbol{X}\) หรือคอนฟิกูเรชันปัจจุบัน \(\boldsymbol{x}\)) กล่าวคือ \(\partial N_\alpha^e/\partial \boldsymbol{X}\) หรือ \(\partial N_\alpha^e/\partial \boldsymbol{x}\) ส่วนนี้จัดระบบขั้นตอนสำหรับคำนวณ อนุพันธ์เชิงพื้นที่ของฟังก์ชันรูปร่าง เหล่านี้จากพิกัดโหนดของเอลิเมนต์และอนุพันธ์ตามพิกัดธรรมชาติ

การแสดงอนุพันธ์เชิงพื้นที่ด้วยกฎลูกโซ่

เมื่อนำกฎลูกโซ่มาใช้กับสูตรการประมาณค่า \(\boldsymbol{X} = \sum_\alpha N_\alpha^e(\boldsymbol{r})\,\boldsymbol{X}^e_\alpha\) (ส่วนก่อนหน้า) และใช้ เมทริกซ์จาโคเบียน \(J_{ij} = \partial X_i/\partial r_j\) ของการแปลงจากพิกัดธรรมชาติไปยังพิกัดกายภาพ จะได้

\[ \frac{\partial \boldsymbol{N}^e}{\partial \boldsymbol{X}} = \frac{\partial \boldsymbol{N}^e}{\partial \boldsymbol{r}}\,\left(\frac{\partial \boldsymbol{X}}{\partial \boldsymbol{r}}\right)^{-1} \]

ในที่นี้ \(\partial \boldsymbol{N}^e/\partial \boldsymbol{X}\) และ \(\partial \boldsymbol{N}^e/\partial \boldsymbol{r}\) เป็นเมทริกซ์ที่แถว \(\alpha\) แทนเวกเตอร์อนุพันธ์ย่อยสำหรับโหนด \(\alpha\) โดยแต่ละเมทริกซ์มีขนาด \(n_e \times 3\)

การสร้างเมทริกซ์จาโคเบียน

เมื่อหาอนุพันธ์ของสูตรการประมาณค่าตาม \(\boldsymbol{r}\) จะได้

\[ \frac{\partial \boldsymbol{X}}{\partial \boldsymbol{r}} = \left[\boldsymbol{X}^e_1, \ldots, \boldsymbol{X}^e_{n_e}\right]\frac{\partial \boldsymbol{N}^e}{\partial \boldsymbol{r}} \]

ดังนั้น เมทริกซ์จาโคเบียนสามารถสร้างได้โดยตรงจากพิกัดโหนดของเอลิเมนต์ \(\boldsymbol{X}^e_\alpha\) และอนุพันธ์ตามพิกัดธรรมชาติ \(\partial \boldsymbol{N}^e/\partial \boldsymbol{r}\) อนุพันธ์ตามพิกัดธรรมชาติถูกกำหนดโดยรูปฟังก์ชันของฟังก์ชันรูปร่างและมีการเตรียมการใช้งานไว้ล่วงหน้าสำหรับเอลิเมนต์แต่ละชนิด

ดีเทอร์มิแนนต์ของเมทริกซ์จาโคเบียน \(\det(\partial \boldsymbol{X}/\partial \boldsymbol{r})\) ใช้ใน การอินทิเกรตเชิงตัวเลข เพื่อแปลงเอลิเมนต์ปริมาตรเป็น \(dV = \det(\partial \boldsymbol{X}/\partial \boldsymbol{r})\,d\boldsymbol{r}\) หากดีเทอร์มิแนนต์เป็น \(0\) เอลิเมนต์จะเสื่อมสภาพและการคำนวณจะล้มเหลว

ลำดับการคำนวณ

จากการหาอนุพันธ์ข้างต้น การคำนวณอนุพันธ์เชิงพื้นที่ \(\partial \boldsymbol{N}^e/\partial \boldsymbol{X}\) สามารถแบ่งออกเป็นสี่ขั้นตอนดังต่อไปนี้

  1. คำนวณอนุพันธ์ตามพิกัดธรรมชาติ: ใช้ชนิดเอลิเมนต์และพิกัดธรรมชาติ \(\boldsymbol{r}\) ของจุดประเมินเป็นข้อมูลเข้า แล้วคำนวณเมทริกซ์อนุพันธ์ตามพิกัดธรรมชาติ \(\partial \boldsymbol{N}^e/\partial \boldsymbol{r}\) เนื่องจากรูปฟังก์ชันของฟังก์ชันรูปร่างแตกต่างกันตามชนิดเอลิเมนต์ การประมวลผลจึงแยกตามชนิดเอลิเมนต์
  2. คำนวณเมทริกซ์จาโคเบียน: จากพิกัดโหนดของเอลิเมนต์ \(\boldsymbol{X}^e\) และ \(\partial \boldsymbol{N}^e/\partial \boldsymbol{r}\) ให้ประกอบเมทริกซ์จาโคเบียน \(\partial \boldsymbol{X}/\partial \boldsymbol{r}\) โดยใช้สมการในส่วนก่อนหน้า
  3. คำนวณเมทริกซ์ผกผันและดีเทอร์มิแนนต์: คำนวณเมทริกซ์ผกผัน \((\partial \boldsymbol{X}/\partial \boldsymbol{r})^{-1}\) และดีเทอร์มิแนนต์ของเมทริกซ์จาโคเบียน โดยดีเทอร์มิแนนต์ใช้เป็นค่าน้ำหนักในการอินทิเกรตเชิงตัวเลข
  4. คำนวณอนุพันธ์เชิงพื้นที่: จาก \(\partial \boldsymbol{N}^e/\partial \boldsymbol{r}\) และ \((\partial \boldsymbol{X}/\partial \boldsymbol{r})^{-1}\) ให้หาอนุพันธ์เชิงพื้นที่ \(\partial \boldsymbol{N}^e/\partial \boldsymbol{X}\) จากผลคูณของทั้งสอง

ทั้งสี่ขั้นตอนนี้อาจแยกตามชนิดเอลิเมนต์และมิติเชิงพื้นที่ (สองหรือสามมิติ) แต่ลำดับโดยรวมเหมือนกัน

การประมวลผลร่วมกันสำหรับคอนฟิกูเรชันอ้างอิงและคอนฟิกูเรชันปัจจุบัน

ขั้นตอนข้างต้นสามารถใช้กับคอนฟิกูเรชันปัจจุบันได้โดยเพียงแทน \(\boldsymbol{X}^e\) ด้วยพิกัดโหนดปัจจุบัน \(\boldsymbol{x}^e_\alpha = \boldsymbol{X}^e_\alpha + \boldsymbol{u}^e_\alpha\) เพื่อหาอนุพันธ์เชิงพื้นที่ \(\partial \boldsymbol{N}^e/\partial \boldsymbol{x}\) ดังนั้น วิธี Total Lagrangian และ Updated Lagrangian จึงสามารถใช้ขั้นตอนเดียวกันร่วมกันได้ โดยเปลี่ยนเฉพาะพิกัดโหนดที่ป้อนเข้า

หัวข้อที่เกี่ยวข้อง

AI-assisted translation May contain errors Official docs Status