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

การวิเคราะห์ค่าลักษณะเฉพาะ

ปัญหาค่าลักษณะเฉพาะทั่วไป

เมื่อวิเคราะห์การสั่นอิสระของตัวกลางต่อเนื่อง จะทำการดิสครีไทซ์เชิงพื้นที่และสร้างแบบจำลองเป็นระบบหลายองศาอิสระที่มีมวลรวมศูนย์ดังแสดงในรูป 2.3.1 สำหรับปัญหาการสั่นอิสระที่ไม่มีการหน่วง สมการกำกับ (สมการการเคลื่อนที่) เป็นดังนี้

\[\begin{equation} M u + K \ddot{u} = 0 \label{eq:2.3.1} \end{equation}\]

โดยที่ \(u\) คือเวกเตอร์การกระจัดทั่วไป \(M\) คือเมทริกซ์มวล และ \(K\) คือเมทริกซ์ความแข็ง ให้ความถี่เชิงมุมลักษณะเฉพาะเป็น \(\omega\), ให้ \(a\), \(b\), \(c\) เป็นค่าคงที่ใด ๆ และให้ \(x\) เป็นเวกเตอร์ แล้วกำหนดฟังก์ชัน

\[\begin{equation} u(t) = (a \sin \omega t + b \cos \omega t ) x \label{eq:2.3.2} \end{equation}\]

ดังกล่าว เมื่อพิจารณาสมการนี้และอนุพันธ์อันดับสองของมัน กล่าวคือ

\[\begin{equation} \ddot{u}(t) = -\omega^2 (a \sin \omega t + b \cos \omega t) x \label{eq:2.3.3} \end{equation}\]

แล้วแทนลงในสมการ \(\eqref{eq:2.3.1}\) จะได้

\[\begin{equation} M u + K \ddot{u} = (a \sin \omega t + b \cos \omega t) (- \omega^2 M + K x ) = ( -\lambda M + K x) = 0 \label{eq:2.3.4} \end{equation}\]

ดังนั้น กล่าวคือ

\[\begin{equation} K x = \lambda M x \label{eq:2.3.5} \end{equation}\]

จะได้

ดังนั้น หากสามารถหาสัมประสิทธิ์ \(\lambda = \omega^2\) ที่เป็นไปตามสมการ \(\eqref{eq:2.3.5}\) และเวกเตอร์ \(x\) ได้ ฟังก์ชัน \(u(t)\) จะเป็นคำตอบของสมการ \(\eqref{eq:2.3.1}\)

สัมประสิทธิ์ \(\lambda\) เรียกว่าค่าลักษณะเฉพาะ และเวกเตอร์ \(x\) เรียกว่าเวกเตอร์ลักษณะเฉพาะ ปัญหาการหาค่าเหล่านี้จากสมการ \(\eqref{eq:2.3.1}\) เรียกว่าปัญหาค่าลักษณะเฉพาะทั่วไป

ตัวอย่างระบบหลายองศาอิสระของการสั่นอิสระที่ไม่มีการหน่วง

รูป 2.3.1 ตัวอย่างระบบหลายองศาอิสระของการสั่นอิสระที่ไม่มีการหน่วง

คุณสมบัติและสมมติฐานของเมทริกซ์

สำหรับปัญหาค่าลักษณะเฉพาะทั่วไป \(K x = \lambda M x\) ที่ได้ในหัวข้อก่อน คู่มือนี้สมมติคุณสมบัติของเมทริกซ์ดังต่อไปนี้ สมมติฐานเหล่านี้เป็นเงื่อนไขตั้งต้นของการลู่เข้าและขอบเขตการใช้งานของวิธีวนซ้ำผกผันแบบมีชิฟต์และวิธี Lanczos ในหัวข้อต่อไป กล่าวคือ สำหรับเมทริกซ์เชิงซ้อน เมทริกซ์ทรานสโพสเป็นคอนจูเกตเชิงซ้อน และสำหรับเมทริกซ์จริงจะเป็นเมทริกซ์สมมาตร หากให้องค์ประกอบ \(ij\) ของเมทริกซ์ \(K\) เป็น \(k_{ij}\) และให้คอนจูเกตเชิงซ้อนของ \(k\) เป็น \(\bar{k}\) จะมีความสัมพันธ์

\[\begin{equation} k_{ij} = \bar{k}_{ji} \label{eq:2.3.6} \end{equation}\]

ดังกล่าว

ในคู่มือนี้สมมติว่าเมทริกซ์สมมาตรและเป็นบวกแน่นอน ความเป็นบวกแน่นอนหมายถึงค่าลักษณะเฉพาะทั้งหมดเป็นบวก หรือกล่าวอีกอย่างคือเมทริกซ์ที่เป็นไปตามสมการ \(\eqref{eq:2.3.7}\) ด้านล่างเสมอ

\[\begin{equation} x^{t} A x > 0 \label{eq:2.3.7} \end{equation}\]

วิธีวนซ้ำผกผันแบบมีชิฟต์

ในการวิเคราะห์โครงสร้างด้วยวิธีไฟไนต์เอลิเมนต์ ในทางปฏิบัติมักไม่จำเป็นต้องใช้ค่าลักษณะเฉพาะทั้งหมด และค่าลักษณะเฉพาะลำดับต่ำเพียงไม่กี่ค่าก็มักเพียงพอ HEC-MW ถูกออกแบบให้รองรับปัญหาขนาดใหญ่ ดังนั้นเมทริกซ์จึงมีขนาดใหญ่และเบาบางมาก (มีองค์ประกอบศูนย์จำนวนมาก) ดังนั้นจึงสำคัญที่จะต้องหาค่าลักษณะเฉพาะของโหมดลำดับต่ำอย่างมีประสิทธิภาพโดยคำนึงถึงคุณสมบัตินี้

เมื่อให้ขอบล่างของค่าลักษณะเฉพาะเป็น \(\sigma\) สมการ \(\eqref{eq:2.3.5}\) สามารถแปลงเป็นสมการต่อไปนี้ (เทียบเท่ากันทางคณิตศาสตร์)

\[\begin{equation} (K - \sigma M)^{-1} M x = \frac{1}{(\lambda-\sigma)} x \label{eq:2.3.8} \end{equation}\]

ในกรณีนี้มีคุณสมบัติที่เป็นประโยชน์ต่อการคำนวณดังต่อไปนี้

  1. ลำดับของโหมดถูกกลับด้าน
  2. ค่าลักษณะเฉพาะบริเวณ \(\rho\) ถูกทำให้มีค่าสูงสุด

ในการคำนวณจริง มักได้ค่าลักษณะเฉพาะสูงสุดก่อน ดังนั้นจึงใช้การคำนวณลู่เข้าหลักกับสมการ \(\eqref{eq:2.3.8}\) แทนสมการ \(\eqref{eq:2.3.5}\) เพื่อมุ่งหาค่าลักษณะเฉพาะบริเวณ \(\rho\) ก่อน วิธีนี้เรียกว่าวิธีวนซ้ำผกผันแบบมีชิฟต์

วิธี Lanczos

เหตุผลที่เลือกใช้ (เปรียบเทียบกับวิธี Jacobi)

ในบรรดาวิธีแบบดั้งเดิม วิธี Jacobi เป็นที่รู้จักกันดี

วิธีนี้มีประสิทธิภาพเมื่อเมทริกซ์มีขนาดเล็กและเป็นเมทริกซ์หนาแน่น อย่างไรก็ตาม เนื่องจากเมทริกซ์ที่ HEC-MW จัดการมีขนาดใหญ่และเบาบาง จึงไม่ใช้วิธีนี้ แต่ใช้วิธีวนซ้ำ Lanczos

อัลกอริทึมและคุณลักษณะ

วิธีนี้เสนอโดย C. Lanczos ในทศวรรษ 1950 เป็นอัลกอริทึมสำหรับทำเมทริกซ์ให้เป็นสามแนวทแยง และมีคุณลักษณะดังต่อไปนี้

  • เป็นวิธีแก้แบบวนซ้ำ และสามารถดำเนินการคำนวณโดยคงเมทริกซ์ให้เบาบาง
  • อัลกอริทึมเน้นการคูณเมทริกซ์กับเวกเตอร์ จึงเหมาะกับการทำงานแบบขนาน
  • เหมาะกับวิธีแบ่งโดเมนเชิงเรขาคณิตที่ใช้กับเมชไฟไนต์เอลิเมนต์
  • สามารถจำกัดจำนวนค่าลักษณะเฉพาะและช่วงโหมดที่ต้องการเพื่อคำนวณอย่างมีประสิทธิภาพ

วิธี Lanczos เริ่มจากเวกเตอร์เริ่มต้น แล้วสร้างเวกเตอร์ที่ตั้งฉากกันตามลำดับเพื่อหาฐานของปริภูมิย่อย กล่าวกันว่าวิธีนี้เร็วกว่าวิธีซับสเปซซึ่งเป็นวิธีวนซ้ำอีกแบบหนึ่ง และถูกใช้อย่างแพร่หลายในโปรแกรมไฟไนต์เอลิเมนต์ อย่างไรก็ตาม วิธีนี้ไวต่อความคลาดเคลื่อนจากการคำนวณ ความตั้งฉากของเวกเตอร์อาจสูญเสียไปและอัลกอริทึมอาจล้มเหลวระหว่างทาง ดังนั้นจึงจำเป็นต้องมีมาตรการรับมือความคลาดเคลื่อน

ความหมายเชิงเรขาคณิต (ปริภูมิย่อย Krylov)

เมื่อแปลงตัวแปรในสมการ \(\eqref{eq:2.3.8}\) ดังต่อไปนี้

\[ A = (K - \sigma M)^{-1} M \]
\[\begin{equation} \frac{1}{\lambda-\sigma}= \zeta \label{eq:2.3.9} \end{equation}\]

เมื่อเขียนปัญหาใหม่ จะได้

\[\begin{equation} A x = \zeta x \label{eq:2.3.10} \end{equation}\]

จะได้

ทำการแปลงเชิงเส้นด้วยเมทริกซ์ \(A\) กับเวกเตอร์ที่เหมาะสม \(q_0\) (ดูรูป 2.3.2)

การแปลงเชิงเส้นของ \(q_0\) ด้วยเมทริกซ์ \(A\)

รูป 2.3.2 การแปลงเชิงเส้นของ \(q_0\) ด้วยเมทริกซ์ \(A\)

เวกเตอร์ที่แปลงแล้วจะถูกทำให้ตั้งฉากภายในปริภูมิที่สร้างร่วมกับเวกเตอร์เดิม กล่าวคือ ทำการตั้งฉากแบบ Gram-Schmidt ดังในรูป 2.3.2 ให้เวกเตอร์ที่ได้เป็น \(r_1\) แล้วทำให้เป็นเวกเตอร์หนึ่งหน่วย (ความยาว 1) เพื่อได้ \(q_1\) (รูป 2.3.3) ด้วยอัลกอริทึมเดียวกัน จะได้ \(q_2\) จาก \(q_1\) ในขณะนี้ \(q_2\) ตั้งฉากกับทั้ง \(q_1\) และ \(q_0\) (รูป 2.3.4) หากทำการคำนวณแบบเดียวกันต่อไป จะได้เวกเตอร์ที่ตั้งฉากซึ่งกันและกันได้มากที่สุดเท่ากับอันดับของเมทริกซ์

เวกเตอร์ \(q_1\) ที่ตั้งฉากกับ \(q_0\)

รูป 2.3.3  เวกเตอร์ \(q_1\) ที่ตั้งฉากกับ \(q_0\)

เวกเตอร์ \(q_2\) ที่ตั้งฉากกับ \(q_1\) และ \(q_0\)

รูป 2.3.4  เวกเตอร์ \(q_2\) ที่ตั้งฉากกับ \(q_1\) และ \(q_0\)

โดยเฉพาะ อัลกอริทึมของวิธี Lanczos คือการตั้งฉากแบบ Gram-Schmidt สำหรับลำดับเวกเตอร์ \(A q_0\), \(A q_1\), \(A q_2\)

หรือกล่าวอีกอย่างคือ \(A q_0\), \(A^2 q_0\), \(A^3 q_0\), ,\(A^n q_0\)

โดยใช้การตั้งฉากแบบ Gram-Schmidt ลำดับเวกเตอร์นี้เรียกว่าลำดับ Krylov และปริภูมิที่ลำดับนี้สร้างขึ้นเรียกว่าปริภูมิย่อย Krylov เมื่อทำการตั้งฉากแบบ Gram-Schmidt ในปริภูมินี้ สามารถหาเวกเตอร์ใหม่ได้โดยใช้เวกเตอร์สองตัวล่าสุด สิ่งนี้เรียกว่าหลักการ Lanczos

การทำให้เป็นสามแนวทแยง

ในการวนซ้ำข้างต้น การคำนวณลำดับที่ i+1 เขียนได้เป็น

\[\begin{equation} \beta_{i+1} q_{i+1} + \alpha_{i+1} q_{i} + \gamma_{i+1} q_{i-1} = Aq_{i} \label{eq:2.3.11} \end{equation}\]

โดยที่

\[ \beta_{i+1} = \frac{1}{||r_{i+1}||} \]
\[ \alpha_{i+1} = \frac{(q_i, Aq_i)}{(q_i, q_i)} \]
\[\begin{equation} \gamma_{i+1} = \frac{(q_{i-1}, Aq_i)}{(q_{i-1}, q_{i-1})} \label{eq:2.3.12} \end{equation}\]

เมื่อเขียนในรูปเมทริกซ์จะได้

\[\begin{equation} AQ_m = Q_m T_m \label{eq:2.3.13} \end{equation}\]

โดยที่

\[ Q_m = [q_{1}, q_{2}, q_{3}, \ldots ,q_{m}] \]
\[\begin{equation} T= \begin{pmatrix} \alpha_{1} & \gamma_{1} & & &\\ \beta_{2} & \alpha_{2} & \gamma_{2} & & \\ & \cdots & & &\\ & & & \beta_{m} & \alpha_{m} \end{pmatrix} \label{2.3.14} \end{equation}\]

ดังนั้น สามารถหาค่าลักษณะเฉพาะได้โดยทำการคำนวณค่าลักษณะเฉพาะกับเมทริกซ์สามแนวทแยงที่ได้จากสมการ \(\eqref{eq:2.3.13}\)

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

AI-assisted translation May contain errors Official docs Status