คำถามติดแท็ก domain-decomposition

5
ข้อได้เปรียบของ multigrid เหนือสิ่งที่จำเป็นสำหรับการย่อยสลายโดเมนและในทางกลับกันคืออะไร?
นี่เป็นจุดประสงค์หลักสำหรับ PDEs รูปไข่ผ่านโดเมนนูนเพื่อให้ฉันได้ภาพรวมที่ดีของทั้งสองวิธี

3
แอปพลิเคชันกรณีใดบ้างที่มีเงื่อนไขการเสริมล่วงหน้าที่ดีกว่าตัวคูณ
ทั้งในการสลายตัวของโดเมน (DD) และ multigrid (MG) วิธีหนึ่งอาจเขียนแอพลิเคชันของการปรับปรุงบล็อกหรือแก้ไขหยาบเป็นทั้งสารเติมแต่งหรือคูณ สำหรับนักแก้จุดบกพร่องนี่คือความแตกต่างระหว่างการทำซ้ำ Jacobi และ Gauss-Seidel เรียบคูณสำหรับx = Bทำหน้าที่เป็นS ( x o L d , B ) = x n E Wจะถูกใช้เป็นAx=bAx=bAx = bS(xold,b)=xnewS(xold,b)=xnewS(x^{old}, b) = x^{new} xi+1=Sn(Sn−1(...,S1(xi,b)...,b),b)xi+1=Sn(Sn−1(...,S1(xi,b)...,b),b) x_{i+1} = S_n(S_{n-1}( ..., S_1(x_i, b) ..., b), b) และสารเติมแต่งเรียบเนียนถูกนำไปใช้เป็น xi+1=xi+∑ℓ=0nλℓ(Sℓ(xi,b)−xi)xi+1=xi+∑ℓ=0nλℓ(Sℓ(xi,b)−xi) x_{i+1} = x_{i} + \displaystyle\sum_{\ell = 0}^{n}\lambda_\ell(S_\ell(x_i, …

3
วิธีการที่ดีที่สุดสำหรับการจัดการตาข่ายในการคำนวณองค์ประกอบ จำกัด แบบขนาน?
ขณะนี้ฉันกำลังพัฒนาวิธีการแยกส่วนโดเมนสำหรับการแก้ปัญหาการกระเจิง โดยทั่วไปฉันกำลังแก้ไขระบบของ Helmholtz BVP ซ้ำ ๆ ฉันยกเลิกสมการโดยใช้วิธีไฟไนต์เอลิเมนต์เหนือตาข่ายสามเหลี่ยมหรือเตตราฮีด ฉันกำลังพัฒนารหัสเพื่อวิทยานิพนธ์ของฉัน ฉันรู้ว่ามีไลต์อิลิเมนต์ไลบรารี่บางตัวที่มีอยู่เช่น deal.ii หรือ DUNE และถึงแม้ว่าฉันคิดว่ามันยอดเยี่ยมด้วยการออกแบบที่สร้างแรงบันดาลใจและ API เพื่อการเรียนรู้ฉันต้องการพัฒนาแอปพลิเคชันเล็ก ๆ ฉันอยู่ในจุดที่ฉันมีรุ่นอนุกรมของฉันทำงานและตอนนี้ฉันต้องการขนานพวกเขา ท้ายที่สุดแล้วมันเป็นหนึ่งในจุดแข็งของกรอบการสลายตัวของโดเมนเพื่อกำหนดอัลกอริทึมที่ง่ายต่อการขนานอย่างน้อยก็ในหลักการ อย่างไรก็ตามในทางปฏิบัติมีรายละเอียดมากมายที่เราต้องพิจารณา การจัดการตาข่ายเป็นหนึ่งในนั้น หากแอพพลิเคชั่นนั้นต้องการความละเอียดสูงในขณะที่ปรับขนาดให้กับซีพียูจำนวนมากการจำลองแบบของ mesh ทั้งหมดใน CPU ทุกตัวนั้นไม่มีประสิทธิภาพ ฉันต้องการถามนักพัฒนาเหล่านั้นที่ทำงานในแอปพลิเคชันที่คล้ายกันในสภาพแวดล้อมการคำนวณประสิทธิภาพสูงว่าพวกเขาจัดการกับปัญหานี้อย่างไร มีไลบรารี p4est สำหรับการจัดการเครือข่ายแบบกระจาย ฉันไม่ต้องการ AMR ​​ดังนั้นอาจเป็น overkill เพราะฉันสนใจที่จะใช้ตาข่ายแบบเดียวและฉันไม่แน่ใจว่ามันสามารถปรับแต่งตาข่ายแบบสามเหลี่ยมได้หรือไม่ ฉันสามารถสร้างตาข่ายแบบเดียวจากนั้นป้อนเข้าไปในหนึ่งในตัวแบ่งพาร์ติชันและทำการประมวลผลบางส่วนของผลลัพธ์ วิธีที่ง่ายที่สุดดูเหมือนว่าจะสร้างไฟล์แยกต่างหากสำหรับแต่ละพาร์ติชันที่มีข้อมูลตาข่ายที่เกี่ยวข้องกับพาร์ติชันนั้นเท่านั้น ไฟล์นี้จะถูกอ่านโดยซีพียูตัวเดียวซึ่งจะต้องรับผิดชอบในการประกอบระบบแยกในส่วนของตาข่ายนั้น แน่นอนว่าข้อมูลการเชื่อมต่อ / พื้นที่ใกล้เคียงพาร์ติชันทั่วโลกบางอย่างอาจจำเป็นต้องเก็บไว้ในไฟล์ที่ซีพียูทั้งหมดอ่านเพื่อการสื่อสารระหว่างกระบวนการ มีวิธีอื่นใดอีกบ้าง? หากคุณบางคนสามารถแบ่งปันวิธีการที่ใช้กันทั่วไปในอุตสาหกรรมหรือสถาบันวิจัยของรัฐบาลที่เกี่ยวข้องกับการจัดการปัญหานี้คืออะไร ฉันค่อนข้างใหม่ในการเขียนโปรแกรมตัวแก้องค์ประกอบ จำกัด แบบขนานและฉันต้องการที่จะรู้สึกว่าฉันกำลังคิดเกี่ยวกับปัญหานี้อย่างถูกต้องหรือไม่และคนอื่นกำลังเข้าใกล้มันอย่างไร คำแนะนำหรือคำแนะนำเกี่ยวกับบทความวิจัยที่เกี่ยวข้องจะได้รับการชื่นชมอย่างมาก! ขอบคุณล่วงหน้า!
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.