14 ก.ย. 2020 เวลา 09:52 • การศึกษา
Eigen Vectors VS Ritz Vectors
Eigen Vectors กับ Ritz Vectors แตกต่างกันยังไง ? คิดว่าหลายๆ คนคงจะงง ในการวิเคราะห์ทางพลศาสตร์เพื่อหาคาบธรรมชาติของโครงสร้างนั้นเราเรียกว่า Eigen Value Analysis ซึ่งเป็นรูปแบบหนึ่งของปัญหาทางคณิตศาสตร์ ไม่จำเป็นต้องใช้สำหรับหาคาบธรรมชาติเพียงอย่างเดียว เช่น ปัญหาของการโกร่งเดาะของเสา (Buckling Analysis) ก็เป็นรูปแบบปัญหาคณิตศาสตร์แบบ Eigen Value Form เหมือนกัน
สมการทางคณิตศาสตร์แบบตรงตัวของปัญหา Eigen Value จะอยู่ในรูปแบบสมการ Polynomial ยิ่งจำนวนโหมดมากเท่าไร จำนวนดีกรีของสมการ Polynomial ยิ่งสูงขึ้น
ผลลัพธ์ที่ได้ออกมาคือ Eigen Value ซึ่งคือ ความถี่หรือคาบธรรมชาติ และ Eigen Vectors หรือคือรูปแบบหรือโหมดการเคลื่อนตัวของโครงสร้าง
ถ้าสิ่งที่เราต้องการคือ Eigen Vectors แล้วทำไมถึงมี Ritz Vectors ด้วย ?
เนื่องจากจำนวนโหมดที่เป็นไปได้ของโครงสร้างนั้นขึ้นกับจำนวน Degrees of Freedom (DOFs)ในโครงสร้าง ดังนั้นยิ่งโครงสร้างขนาดใหญ่ ยิ่งมีจุดต่อและ DOFs สูงตาม ทำให้ปัญหา Eigen Value มีขนาดใหญ่มาก ไม่สามารถที่จะแก้สมการ Polynomial ที่มีดีกรีหลักหลายร้อยหรือหลายพันได้ จึงมีเทคนิคมากมายในการแก้ปัญหา เรียกรวมๆ ว่า Matrix Iteration ซึ่ง Subspace Iteration และ Lanczos Iteration ก็เป็นหนึ่งในวิธีที่พยายามจะแก้ปัญหาเพื่อหาค่า Eigen Value และ Eigen Vectors ออกมา
ยิ่งปัญหาใหญ่มากยิ่งสูญเสียทรัพยากรและเวลามาก คำถามจึงกลับมาว่า เราจะประหยัดได้อย่างไร ? จึงกลับมาที่ปัญหาหลักคือ เราต้องการ Eigen Values และ Eigen Vectors ทั้งหมดจริงหรือไม่ ?
คำตอบ คือ ไม่ การวิเคราะห์ปัญหา Free Vibration เพื่อให้ได้ Eigen Values และ Eigen Vectors นั้นจะได้ทุกคาบและโหมดเชพที่เป็นไปได้ออกมา แต่มันมีบางคาบและโหมดเชพที่เราไม่ต้องการ หรือ ไม่รู้ก็ไม่ได้ทำให้คำตอบของปัญหาผิดพลาดไปแต่อย่างใด
เช่น แรงพลศาสตร์กระทำในแนวแกน X สิ่งที่เราต้องการ คือ คาบหรือความถี่ธรรมชาติที่สั่นในแนวทาง X เนื่องจากมันสามารถที่จะถูก Amplified หรือ De-amplified แรงที่กระทำได้ ในขณะที่คาบหรือความถี่ธรรมชาติที่สั่นในแนวทาง Y ที่ตั้งฉากกับแรงพลศาสตร์ที่กระทำนั้น ไม่ได้มีผลอะไรกับปัญหานี้ ดังนั้น จึงรู้ก็ได้ ไม่รู้ก็ได้ จึงนำมาซึ่งคอนเซปของ Ritz Vectors
เนื่องจากการแก้ปัญหา Eigen Values ปกตินั้น ไม่สนใจว่ามีแรงกระทำทางไหน แต่หาทุกความเป็นไปได้ของการสั่นออกมาทั้งหมด มันจึงติดบางโหมดที่ไม่จำเป็นออกมาด้วยทำให้เสียพื้นที่และเวลาในการจัดเก็บข้อมูล
 
คอนเซปของ Ritz Vectors จึงมีแนวทางว่า ถ้าเรารู้ว่าแรงมันจะมาแนวนี้ เราก็เลือกเฉพาะโหมดที่มันจะมีผลต่อผลลัพธ์ เช่น โหมดที่อยู่ในทิศทางเดียวกับแรงที่กระทำ ด้วยการให้แรงมันเข้าไปก่อน แล้วคำนวณแบบสถิต หาการเคลื่อนตัวออกมา แล้วใช้เป็นโหมดเชพเริ่มต้น แล้วทำการ Iteration จนอยู่ในค่าคลาดเคลื่อนที่ต้องการ
ซึ่งจริงๆ แล้วถ้าหาเพียงโหมดเดียว มันก็กลับไปสู่วิธีการของ Rayleigh ดังนั้นวิธีนี้บางครั้งเค้าจึงเรียกว่า Modified Rayleigh หรือ Rayleigh-Ritz หรือ Load-Dependent Ritz Vectors
ในรูปข้างล่าง ผมตัดออกมาจากโปรแกรม Midas ซึ่งจะเห็นว่าเมื่อเลือก Eigen Vectors จะให้เลือก วิธีในการคำนวณ (Subspace หรือ Lanczos ซึ่งจะอธิบายในคร่าวต่อไป) จากนั้นไปเลือกเลยว่าจะต้องการกี่โหมด ไม่มีอะไรที่เกี่ยวกับแรงกระทำ
 
ส่วนเมื่อเลือก Ritz Vectors เราจะต้องกำหนด Load Case หรือแรงที่กระทำเพื่อนำไปคำนวณหาโหมดเชพโดยประมาณเริ่มต้น ซึ่งเราต้องเลือกหรือให้แรงที่สมเหตุสมผลกับโปรแกรมที่จะให้รูปร่างโหมดเชพตรงกับปัญหาที่ต้องการ ถ้าให้ไม่ดี มันก็อาจจะลู่เข้าสู่โหมดที่เราอาจจะไม่ได้ต้องการก็ได้ ดังนั้นคนที่จะให้วิธีนี้ต้องมี Engineering Sense ในทาง Dynamic พอสมควร
ดังนั้นโดยสรุป ปัญหาเล็กๆ เลือกใช้ Eigen Vectors ไปเลย เนื่องจากจำนวน DOFs อาจจะไม่ได้มาก ถึงได้โหมดที่ไม่ต้องการออกมาก็ไม่เป็นไร ปัญหาขนาดใหญ่ๆ ถ้ารันแล้วพบว่าใช้เวลามากหรือ Mass Participation ขึ้นช้ามากจนต้องใช้จำนวนโหมดสูงมาก อาจจะลองใช้ Ritz Vectors ดูเพื่อกำจัดโหมดที่ไม่จำเป็นออกไป เหลือไว้เพียงโหมดที่เราคิดว่าสำคัญจริงๆ จะทำให้ประหยัดเวลาลงได้มาก
และต้องระวังคือ ลำดับของโหมดที่ได้จาก Eigen Vectors และ Ritz Vectors ไม่จำเป็นต้องเหมือนกันแล้ว เนื่องจาก Ritz Vectors เราไปกำจัดบางโหมดออกไป จำนวนโหมดมันจึงน้อยกว่า เช่น โหมด 5 จาก Eigen Vectors อาจจะกลายเป็น โหมด 3 จาก Ritz Vectors ก็ได้ แต่โดยทั่วไป โหมดแรกๆ มักจะตรงกัน และค่อยๆ เพี้ยนไปเรื่อยๆ ในโหมดหลังๆ
สุดท้ายนี้ คาบและโหมดเชพที่ได้จาก Ritz Vectors มันเป็นค่าโดยประมาณ ไม่จำเป็นต้องเท่ากับค่าที่ได้จาก Eigen Vectors พอดี แต่แม่นยำเพียงพอสำหรับปัญหาทางวิศวกรรมแล้ว
โฆษณา