คำถามติดแท็ก hyperbolic-pde

ไฮเพอร์โบลิกสมการเชิงอนุพันธ์ย่อยอธิบายพฤติกรรมของคลื่น

17
มีตัวแก้ปัญหาการเขียนโปรแกรมแบบไม่เชิงเส้นคุณภาพสูงสำหรับ Python หรือไม่?
ฉันมีปัญหาการเพิ่มประสิทธิภาพทั่วโลกที่ไม่ท้าทายเพื่อแก้ปัญหา ปัจจุบันผมใช้กล่องเครื่องมือเพิ่มประสิทธิภาพของ MATLAB (โดยเฉพาะfmincon()กับอัลกอริทึม = 'sqp') ซึ่งมีประสิทธิภาพมาก อย่างไรก็ตามรหัสของฉันส่วนใหญ่อยู่ใน Python และฉันก็ชอบที่จะเพิ่มประสิทธิภาพใน Python ด้วยเช่นกัน มีตัวแก้ NLP ที่มีการผูก Python ที่สามารถแข่งขันได้fmincon()หรือไม่ มันจะต้อง สามารถรับมือกับความไม่เสมอภาคและความไม่เท่าเทียมกันได้ ไม่ต้องการให้ผู้ใช้จัดหายาโคบ ไม่เป็นไรหากไม่รับประกันว่าจะมีประสิทธิภาพระดับโลก ( fmincon()ไม่) fmincon()ฉันกำลังมองหาบางสิ่งบางอย่างที่ทนทานลู่ไปยังท้องถิ่นที่เหมาะสมแม้สำหรับความท้าทายปัญหาและแม้ว่ามันจะช้ากว่าเล็กน้อย ฉันได้พยายามแก้หลายที่ให้บริการผ่าน OpenOpt และพบว่าพวกเขาจะด้อยกว่าของ fmincon/sqpMATLAB เพียงเพื่อเน้นฉันมีสูตรเวิ้งว้างและแก้ปัญหาที่ดี เป้าหมายของฉันคือการเปลี่ยนภาษาเพื่อให้เวิร์กโฟลว์มีความคล่องตัวมากขึ้น เจฟฟ์ชี้ให้เห็นว่าคุณลักษณะบางอย่างของปัญหาอาจเกี่ยวข้องกัน พวกเขาคือ: 10-400 ตัวแปรการตัดสินใจ 4-100 ข้อ จำกัด ความเท่าเทียมกันของพหุนาม (ดีกรีพหุนามมีช่วงตั้งแต่ 1 ถึงประมาณ 8) จำนวนข้อ จำกัด ของความไม่เท่าเทียมกันที่มีเหตุผลเท่ากับจำนวนตัวแปรการตัดสินใจประมาณสองเท่า ฟังก์ชั่นวัตถุประสงค์เป็นหนึ่งในตัวแปรการตัดสินใจ ชาวจาโคเบียนแห่งข้อ จำกัด ความเท่าเทียมมีความหนาแน่นสูงเช่นเดียวกับชาวจาโคเบียนแห่งข้อ จำกัด …

4
เหตุใดการอนุรักษ์ในพื้นที่จึงมีความสำคัญเมื่อแก้ไข PDE
วิศวกรมักยืนยันในการใช้วิธีการอนุรักษ์ในพื้นที่เช่นปริมาณ จำกัด ความแตกต่าง จำกัด แบบอนุรักษ์นิยมหรือวิธีการ Galerkin ที่ไม่ต่อเนื่องสำหรับการแก้ไข PDE มีอะไรผิดพลาดเมื่อใช้วิธีการที่ไม่อนุรักษ์ท้องถิ่น? โอเคดังนั้นการอนุรักษ์ในท้องถิ่นจึงมีความสำคัญสำหรับ PDE แบบไฮเพอร์โบลิกแล้ว PDEs รูปไข่ล่ะ

3
คำแนะนำสำหรับระเบียบวิธีผลต่างอันตะใน Scientific Python
สำหรับโครงการที่ฉันกำลังทำงาน (เป็นไฮเพอร์โบลิก PDE) ฉันต้องการรับการจัดการคร่าวๆเกี่ยวกับพฤติกรรมโดยดูจากตัวเลข อย่างไรก็ตามฉันไม่ใช่โปรแกรมเมอร์ที่ดีมาก คุณสามารถแนะนำทรัพยากรบางอย่างสำหรับการเรียนรู้วิธีการรหัสชุดรูปแบบความแตกต่างแน่นอนใน Scientific Python ได้อย่างมีประสิทธิภาพ(ยินดีต้อนรับภาษาอื่นที่มีกราฟการเรียนรู้ขนาดเล็ก) เพื่อให้แนวคิดแก่ผู้ชม (ฉัน) สำหรับคำแนะนำนี้: ฉันเป็นนักคณิตศาสตร์ที่บริสุทธิ์โดยการฝึกอบรมและค่อนข้างคุ้นเคยกับแง่มุมทางทฤษฎีของรูปแบบที่แตกต่างกันแน่นอน สิ่งที่ฉันต้องการความช่วยเหลือคือวิธีทำให้คอมพิวเตอร์คำนวณสิ่งที่ฉันต้องการให้คอมพิวเตอร์คำนวณโดยเฉพาะอย่างยิ่งในวิธีที่ฉันไม่ได้ทำซ้ำความพยายามมากเกินไปที่ผู้อื่นใส่ไว้แล้ว (เพื่อไม่ให้ประดิษฐ์ล้อใหม่เมื่อ มีแพ็คเกจให้ใช้งานแล้ว) (อีกสิ่งหนึ่งที่ฉันต้องการหลีกเลี่ยงคือการเขียนโค้ดด้วยมืออย่างงี่เง่าเมื่อมีการสร้างโครงสร้างข้อมูลที่เหมาะสมกับวัตถุประสงค์) ฉันมีประสบการณ์การเขียนโค้ดบ้าง แต่ฉันไม่มี Python (ดังนั้นฉันไม่รังเกียจหากมีแหล่งข้อมูลที่ดีสำหรับการเรียนรู้ภาษาอื่น [พูดเช่น Octave]) หนังสือเอกสารทั้งสองจะมีประโยชน์เช่นเดียวกับคอลเลกชันของรหัสตัวอย่าง

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

2
ฉันจะเลือกตัวแก้ Riemann ที่ดีได้อย่างไรเมื่อแก้ปัญหาระบบไฮเพอร์โบลิก PDE เป็นตัวเลขได้อย่างไร
วิธีการเชิงตัวเลขจำนวนมากสำหรับ PDE แบบไฮเปอร์โบลิกนั้นขึ้นอยู่กับการใช้ตัวแก้ Riemann เครื่องมือแก้ปัญหาดังกล่าวมีความจำเป็นสำหรับการจับคลื่นกระแทกอย่างแม่นยำ มีตัวแก้ปัญหาดังกล่าวมากมายสำหรับระบบที่ได้รับการศึกษามากที่สุด (เช่นตัวแก้ปัญหาที่แน่นอนตัวแก้รอย Roe ตัวแก้ HLL) ฉันจะตัดสินใจได้อย่างไรว่าจะใช้

1
เมื่อใดควรใช้วิธีการโดยนัยในการบูรณาการของไฮเพอร์โบลิก PDE
วิธีการเชิงตัวเลขสำหรับการแก้ PDE (หรือ ODEs) แบ่งออกเป็นสองประเภทกว้าง ๆ : วิธีการที่ชัดเจนและโดยนัย วิธีการโดยนัยช่วยให้การประทับเวลามีเสถียรภาพมากขึ้น แต่ต้องการงานมากขึ้นต่อขั้นตอน สำหรับไฮเพอร์โบลิก PDEs ภูมิปัญญาทั่วไปคือวิธีการโดยนัยมักจะไม่จ่ายเพราะการใช้การประทับเวลาที่มีขนาดใหญ่กว่าที่ได้รับอนุญาตจากเงื่อนไข CFL นำไปสู่ผลลัพธ์ที่ไม่ถูกต้องมาก อย่างไรก็ตามมีการใช้วิธีการโดยนัยในบางกรณี สำหรับแอปพลิเคชันที่ระบุควรเลือกใช้วิธีการที่ชัดเจนหรือโดยนัยอย่างไร

2
เราควรใช้วิธีการรวมเวลาแบบใดสำหรับ PDE แบบไฮเปอร์โบลิค
ถ้าเราใช้วิธีการแบบแยกส่วน (แยกเวลาและพื้นที่แยกส่วน) ของ PDE แบบไฮเปอร์โบลิกที่เราได้รับหลังจากการแยกเชิงพื้นที่ด้วยวิธีเชิงตัวเลขที่เราชื่นชอบ (fx. วิธีไฟไนต์ปริมาณ) ไม่สำคัญในทางปฏิบัติ (TVD / เอสเอส / ฯลฯ )? เพิ่มข้อมูลเพิ่มเติมบางอย่าง: ปัญหาความแม่นยำอาจเป็นปัญหาสำหรับปัญหาที่ไม่ราบรื่น เป็นที่ทราบกันดีอยู่แล้วว่า PDEs แบบไม่เชิงเส้นไม่เชิงเส้นสามารถพัฒนาแรงกระแทกในเวลาที่ จำกัด แม้จะมีวิธีแก้ปัญหาเริ่มแรกที่ราบรื่นซึ่งความแม่นยำของกรณีสามารถลดอันดับแรกสำหรับวิธีการเรียงลำดับสูง โดยทั่วไปแล้วการวิเคราะห์เสถียรภาพ ODE จะทำตามการทำให้เป็นเชิงเส้นเพื่อให้ได้ระบบกึ่งเชิงเส้นแบบไม่ต่อเนื่องของ ODE ของรูปแบบ q_t = J q (ด้วยเวกเตอร์การรบกวนของเวกเตอร์ QA) ซึ่งค่าลักษณะเฉพาะของ J จะถูกปรับขนาดภายใน วิธีการก้าว กลยุทธ์ทางเลือกคือการใช้ pseudospectra หรืออาจเป็นวิธีพลังงานสำหรับการวิเคราะห์ความมั่นคง ฉันเข้าใจว่าแรงจูงใจสำหรับวิธีการ TVD / SSP คือการหลีกเลี่ยงการแกว่งไปมาที่เกิดจากวิธีการเลื่อนเวลาซึ่งอาจส่งผลให้เกิดพฤติกรรมที่ไม่เป็นกายภาพ คำถามคือถ้าประสบการณ์แสดงให้เห็นว่าวิธีการก้าวข้ามเวลาแบบนี้จะดีกว่าเมื่อเปรียบเทียบกับเช่นม้างานคลาสสิกเป็นวิธี Runge-Kutta ที่ชัดเจนหรืออื่น ๆ เห็นได้ชัดว่าพวกเขาควรมีคุณสมบัติที่ดีกว่าสำหรับชั้นเรียนของปัญหาที่การแก้ปัญหาอาจแสดงแรงกระแทก เราอาจโต้แย้งว่าเราควรใช้วิธีการเหล่านี้เพื่อการรวมเวลาเท่านั้น

1
วิธีสร้างปริมาณ จำกัด ที่สมดุลและวิธี Galerkin ที่ไม่ต่อเนื่องสำหรับ PDE แบบไฮเปอร์โบลิกที่มีเงื่อนไขแหล่งที่มา?
คำศัพท์ต้นฉบับเช่นคำว่า Bathymetry ในสมการน้ำตื้นจำเป็นต้องบูรณาการในลักษณะพิเศษเพื่อรักษาสถานะคงตัวทางกายภาพ มีวิธีการทั่วไปในการสร้างวิธีการที่สมดุลหรือไม่หรือต้องใช้เทคนิคพิเศษสำหรับแต่ละสมการ?

1
มีวิธีใดบ้างในการแก้สมการออยเลอร์แบบกดได้
ฉันต้องการเขียนตัวแก้สมการออยเลอร์แบบกดได้และที่สำคัญที่สุดคือฉันต้องการให้มันทำงานได้อย่างมีประสิทธิภาพในทุกสถานการณ์ ฉันต้องการให้เป็นแบบ FE (DG ใช้ได้) วิธีการที่เป็นไปได้คืออะไร? ฉันตระหนักถึงการทำลำดับที่ 0 DG (ปริมาณ จำกัด ) และควรทำงานอย่างมีประสิทธิภาพ ฉันใช้ตัวแก้ไข FVM พื้นฐานและใช้งานได้ดี แต่การบรรจบกันค่อนข้างช้า อย่างไรก็ตามนี่เป็นทางเลือกหนึ่งอย่างแน่นอน ฉันใช้ตัวแก้ไข FE (ใช้ได้กับทุก ๆ ตาข่ายและคำสั่งพหุนามในองค์ประกอบใด ๆ ) สำหรับสมการเชิงเส้นออยเลอร์ แต่ฉันได้รับการแกว่งลวงตา ฉันได้อ่านในวรรณคดีว่าต้องมีเสถียรภาพ หากฉันใช้การทำให้มีเสถียรภาพบางอย่างนั่นจะทำงานได้ดีสำหรับปัญหาทั้งหมด (= เงื่อนไขขอบเขตและรูปทรงเรขาคณิต) หรือไม่ อัตราการลู่เข้าจะเป็นอย่างไร? นอกเหนือจากนั้นมีวิธีการที่แข็งแกร่งอื่น ๆ สำหรับสมการออยเลอร์ (เช่นลำดับ DG ที่สูงขึ้นด้วยการทำให้มีเสถียรภาพ) ฉันรู้ว่าหลายคนลองใช้สิ่งต่าง ๆ มากมายในรหัสการวิจัยของพวกเขา แต่ฉันสนใจวิธีการที่แข็งแกร่งซึ่งใช้ได้กับรูปทรงเรขาคณิตและเงื่อนไขขอบเขตทั้งหมด (แก้ไข: ในรูปแบบ 2D และ 3D)

2
รูปแบบที่แตกต่างกันแน่นอนสำหรับ "สมการคลื่น" วิธีการของลักษณะ
พิจารณาปัญหาต่อไปนี้ โดยที่เงื่อนไขการบังคับสามารถขึ้นอยู่กับ (ดูแก้ไข 1ด้านล่างสำหรับสูตร) ​​และและอนุพันธ์อันดับแรก นี่คือสมการคลื่น 1 + 1 มิติ เรามีข้อมูลเบื้องต้นกำหนดไว้ที่\}u , v W { u + v = 0 }Wคุณโวลต์= FWuv=F W_{uv} = F U , Vu,vu,vWWW{ u + v = 0 }{u+v=0}\{u+v = 0\} ฉันสนใจวิธีการแก้ปัญหาภายในโดเมนของการพึ่งพาช่วงเวลา และกำลังพิจารณารูปแบบความแตกต่างแน่นอนดังต่อไปนี้{ u + v = 0 , คุณ∈ [ - คุณM, UM] }{ยู+โวลต์=0,ยู∈[-ยูM,ยูM]}\{ …

2
เชื่อมต่อวิธีการ FEM DG ไปยังนักแก้ปัญหา Riemann
มีเอกสารและรหัสที่ดีหรือไม่ที่คู่ galerkin finite element solver กับ Riemann solver หรือไม่? ฉันจำเป็นต้องสำรวจปัญหาเกี่ยวกับรูปไข่และการผ่อนชำระซึ่งกันและกัน แต่วิธีการแยกส่วนใหญ่เป็นแบบเฉพาะกิจที่ดีที่สุด เนื่องจากฉันมีรหัส FEniCS จำนวนมากฉันจึงขอเพียงผู้แก้ปัญหา Riemann มาจับคู่กับมัน ในขณะที่นักแก้ปัญหาไข่ปลาเรียบง่ายจะเป็นจุดเริ่มต้นฉันกำลังมองหาแนวทางในการใช้วิธีการที่ซับซ้อนมากขึ้น
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.