เป็นไปได้ไหมที่จะแก้ปัญหา PDE ที่ไม่ใช่เชิงเส้นโดยไม่ต้องใช้การวนซ้ำของ Newton-Raphson?


15

ฉันพยายามที่จะเข้าใจผลลัพธ์บางอย่างและจะขอบคุณความคิดเห็นทั่วไปเกี่ยวกับการแก้ปัญหาที่ไม่ใช่เชิงเส้น

สมการของฟิชเชอร์ (PDE แบบไม่เชิงเส้นการกระจาย)

ยูเสื้อ=dยูxx+βยู(1-ยู)=F(ยู)

ในรูปแบบ discretised

ยูJ'=Lยู+βยูJ(1-ยูJ)=F(ยู)

โดยที่Lเป็นตัวดำเนินการส่วนต่างและยู=(ยูJ-1,ยูJ,ยูJ+1)คือลายฉลุแบบแยกส่วน

วิธี

ฉันต้องการใช้รูปแบบโดยนัยเพราะฉันต้องการความเสถียรและขั้นตอนเวลาที่ไม่ จำกัด เพื่อจุดประสงค์นี้ฉันใช้θ -method (โปรดทราบว่าθ=1ให้รูปแบบที่ชัดเจนและθ=0.5ให้รูปแบบสี่เหลี่ยมคางหมูหรือ "Crank-Nicolson")

ยูJ'=θF(ยูn+1)+(1-θ)F(ยูn)

อย่างไรก็ตามสำหรับปัญหาที่ไม่เชิงเส้นสิ่งนี้ไม่สามารถทำได้เพราะไม่สามารถเขียนสมการในรูปแบบเชิงเส้น

เพื่อแก้ไขปัญหานี้ฉันได้สำรวจวิธีการคำนวณสองวิธี

  1. วิธีการ IMEX

    uj'=θLยูn+1+(1-θ)Lยูnθ-วิธีการแพร่ระยะ+βยูJn(1-ยูJn)คำตอบที่ชัดเจนอย่างเต็มที่

    เส้นทางที่ชัดเจนที่สุดคือการไม่สนใจส่วนที่ไม่ใช่เชิงเส้นของเทอมการตอบสนองและเพิ่งอัพเดตเทอมการตอบโต้ด้วยค่าที่ดีที่สุดที่เป็นไปได้นั่นคือจากขั้นตอนเวลาก่อนหน้า ซึ่งส่งผลให้วิธีการ IMEX

  2. ตัวแก้นิวตัน

νk+1=νk(IθτAn)1(νkun(1θ)τF(wn)θτF(wn+1))

สมการวิธีการแบบเต็มสามารถแก้ไขได้โดยใช้การวนซ้ำของ Newton-Raphson เพื่อค้นหาตัวแปรโซลูชันในอนาคต ที่ไหนเป็นดัชนีซ้ำ ( ) และเป็นเมทริกซ์จาโคเบียนของn) นี่ผมใช้สัญลักษณ์สำหรับย้ำตัวแปรดังกล่าวว่าพวกเขาจะประสบความสำเร็จจากการแก้ปัญหาของสมการที่จุดเวลาจริง n นี่คือตัวแก้ไขนิวตันที่แก้ไขแล้วเพราะยาโคเบียนไม่ได้รับการอัพเดททุกครั้งk k 0 A n F ( w n ) ν k u nθkk0AnF(Wn)νkยูn

ผล

การเปรียบเทียบสมการฟิชเชอร์ของวิธีการเชิงตัวเลข

ผลลัพธ์ข้างต้นถูกคำนวณสำหรับขั้นตอนเวลาที่มีขนาดใหญ่พอสมควรและพวกเขาแสดงความแตกต่างระหว่างวิธีการก้าวเวลาและตัวแก้การวนซ้ำแบบเต็มของนิวตัน

สิ่งที่ฉันไม่เข้าใจ:

  1. ฉันประหลาดใจที่วิธีการเลื่อนเวลาทำ "ตกลง" แต่ในที่สุดก็ล่าช้าหลังโซลูชันการวิเคราะห์เมื่อเวลาผ่านไป ( NBถ้าฉันเลือกขั้นตอนเวลาที่เล็กลงวิธีการจับเวลาตามเวลาจะให้ผลลัพธ์ใกล้เคียงกับโมเดลการวิเคราะห์) เหตุใดแนวทางการเลื่อนเวลาจึงให้ผลลัพธ์ที่สมเหตุสมผลกับสมการไม่เชิงเส้น

  2. รุ่นนิวตันทำได้ดีกว่ามาก แต่เริ่มนำรูปแบบการวิเคราะห์เมื่อเวลาผ่านไป ทำไมความแม่นยำของวิธีการของนิวตันจึงลดลงเมื่อเวลาผ่านไป สามารถปรับปรุงความแม่นยำได้หรือไม่

  3. เหตุใดจึงมีคุณสมบัติทั่วไปที่หลังจากทำซ้ำหลายครั้งแล้วแบบจำลองเชิงตัวเลขและตัวแบบการวิเคราะห์เริ่มแตกต่างกันไป นี่เป็นเพียงเพราะขั้นตอนเวลามีขนาดใหญ่เกินไปหรือสิ่งนี้จะเกิดขึ้นเสมอหรือไม่


ฉันขอแนะนำให้อ่านการวิเคราะห์ข้อผิดพลาดพื้นฐานของนักแก้ปัญหา ODE เช่นใน Hairer / Nørsett / Wanner รวมถึงการวิเคราะห์เสถียรภาพบางอย่าง คำถามส่วนใหญ่ของคุณจะได้รับคำตอบแล้ว
Guido Kanschat

1
@ boyfarrell เพื่อหลีกเลี่ยงความสับสนของผู้อ่านเพื่อนคุณควรใส่คำศัพท์ที่อธิบายวิธีการของคุณ: 1 IMEX - ชัดเจนในการไม่เชิงเส้นและนัยในส่วนเชิงเส้น 2. นี่คือมาตรฐาน -scheme ซึ่งโดยทั่วไปจะต้องใช้วิธีของนิวตันในการแก้ปัญหาสำหรับการอัปเดตθ
Jan

1
สวัสดี @Jan ฉันคิดว่าฉันได้ทุกอย่างแล้ว ขอบคุณอีกครั้งสำหรับความช่วยเหลือของคุณ
boyfarrell

คำตอบ:


9

ฉันคิดว่าคุณได้ทำการพื้นที่เพื่อที่คุณจะได้แก้ (เวกเตอร์ - ค่า) ODE ผ่านรูปแบบตัวเลขที่เลื่อนการประมาณที่อินสแตนซ์เวลาปัจจุบันไปยังค่าถัดไปที่เอกภาพΦu n h t=tnu n + 1 h t=tn+1:=tn+τ

ยู˙ชั่วโมง(เสื้อ)=Fชั่วโมง(เสื้อ,ยูชั่วโมง(เสื้อ)), ใน [0, T] ,ยูชั่วโมง(0)=α.
Φยูชั่วโมงnเสื้อ=เสื้อnยูชั่วโมงn+1เสื้อ=เสื้อn+1=เสื้อn+τ

จากนั้นคำถามของคุณอ้างถึงคุณสมบัติที่ชัดเจนโดยที่การอัปเดตเขียนเป็น

ยูชั่วโมงn+1=ยูชั่วโมงn+Φอี(เสื้อn,τ,ยูชั่วโมงn),

โดยนัยเขียนเหมือน

ยูชั่วโมงn+1=ยูชั่วโมงn+Φผม(เสื้อn,τ,ยูชั่วโมงn+1,ยูชั่วโมงn),(* * * *)

หรือการรวมกันของทั้งสอง (' IMEX ' ดูที่คำตอบของ @Jed Brown) การเลื่อนเวลาในขั้นตอนเดียว

ในการตั้งค่านี้นิวตันวิธีการก็คือวิธีการที่จะแก้ปัญหาอาจจะไม่เชิงเส้นในระบบที่เกิดจาก(*) ( )ยูชั่วโมงn+1(* * * *)

และคำตอบของฉันขึ้นอยู่กับผลลัพธ์จากการวิเคราะห์เชิงตัวเลขของวิธีการขั้นตอนเดียว

  1. หากคุณใช้ชุดรูปแบบบรรจบกันในแง่ของลำดับการบรรจบกันไม่มีประโยชน์โดยทั่วไปของการใช้ชุดรูปแบบโดยนัย (ดู. 2) อย่างไรก็ตามสำหรับระบบแบบแข็งเช่นระบบของคุณที่มี Laplacian มีรูปแบบโดยนัยที่มีความเสถียรโดยไม่มีข้อ จำกัด ขั้นตอน อย่างไรก็ตามในทางทฤษฎีสำหรับรูปแบบที่ชัดเจนคุณจะได้ผลลัพธ์ที่ดีขึ้นด้วยเวลาที่น้อยลงตราบใดที่สมการของคุณยังคงเสถียร (เช่นอ้างถึงทฤษฎีบท Picard-Lindelof ถ้าเป็น Lipshitz ในอาร์กิวเมนต์ที่สอง) และเวลาของคุณ - ขั้นตอนไม่เล็กเกินไปFชั่วโมง
  2. คุณสามารถค้นหาตัวอย่างโดยที่รูปแบบที่ชัดเจนมีประสิทธิภาพดีกว่า (ตามหลักทฤษฏีคุณสามารถย้อนเวลาในตัวอย่างของคุณเริ่มต้นจากค่าเทอร์มินัลและค้นหาการเปลี่ยนแปลงโดยปริยายและชัดเจน) หากคุณทำให้ข้อผิดพลาดของนิวตันมีขนาดเล็กเพียงพอคุณยังสามารถปรับปรุงความแม่นยำได้โดยลดเวลา - แผนการหยุดลำดับที่สูงขึ้น
  3. ค่าคงที่ในการประมาณข้อผิดพลาดสำหรับข้อผิดพลาดส่วนกลางเพิ่มขึ้นแบบทวีคูณด้วยความยาวของช่วงเวลา ดูเช่นที่นี่สำหรับโครงการออยเลอร์ที่ชัดเจน นี่เป็นจริงสำหรับทุกขั้นตอนวิธีเดียว เนื่องจากค่าประมาณนั้นเป็นประเภท ,ซึ่งเป็นขั้นตอนที่เล็กลงจะเลื่อนเอฟเฟกต์นี้เพียงเล็กน้อยอีRRτพีพี>0τ

หมายเหตุเพิ่มเติมและคำตอบสุดท้าย:

  • รูปแบบ IMEX สามารถใช้ในการรักษาเฉพาะส่วนเชิงเส้นโดยนัยสิ่งที่หลีกเลี่ยงการแก้ไม่เชิงเส้น ดูคำตอบของ Jed Brown
  • Crank-Nicolson เป็นวิธีการขั้นตอนเดียว วิธีการ 'หลาย' ในหลายขั้นตอนหมายถึงการใช้จำนวนการประทับเวลาก่อนหน้าเพื่อกำหนดการอัปเดตปัจจุบัน เช่น like สิ่งนี้แตกต่างอย่างมากจากขั้นตอนเดียวและแยกขั้นตอนหรือวิธี IMEX โดยที่การอัพเดตนั้นไม่ได้เกิดขึ้นกับค่าก่อนหน้า
    ยูชั่วโมงn+1=Φม.(เสื้อn,τ,ยูชั่วโมงn+1,ยูชั่วโมงn,ยูชั่วโมงn-1).

ดังนั้นคำตอบของฉันคือ: ใช่คุณสามารถแก้ปัญหา PDE ที่ไม่ใช่เชิงเส้นได้โดยไม่ต้องใช้วิธีของนิวตัน คุณสามารถใช้แบบแผนที่ชัดเจน, 'IMEX' แบบแผน, หรือsocalled วิธีการเชิงเส้นโดยนัย (เช่นวิธีการ Rosenbrock) นอกจากนี้คุณสามารถใช้วิธีการอื่นเพื่อแก้ไขระบบจากเช่นการวนซ้ำแบบจุดคงที่หรือในบางกรณีนักแก้พีชคณิต(* * * *)


ใช่ฉันใช้ลายฉลุกลางแตกต่างมาตรฐานกับคำแพร่ ฉันไม่สามารถใช้รูปแบบที่ชัดเจน (สำหรับปัญหาจริงที่ฉันต้องการแก้ไข) เพราะขั้นตอนเวลาที่มั่นคงมีขนาดเล็กโดยไม่สมจริง นี่คือเหตุผลที่ฉันสำรวจ IMEX หรือตัวเลือกโดยนัย เกี่ยวกับประเด็นที่สามของคุณเพื่อหลีกเลี่ยงการสะสมข้อผิดพลาดฉันต้องใช้วิธีการหลายขั้นตอน แบบแผน Crank-Nicolson ที่ฉันใช้ข้างต้น (ด้วยตัวแก้นิวตัน) จัดว่าเป็นวิธีการหลายขั้นตอน (มีสองจุดในเวลา)? ฉันประหลาดใจที่ข้อผิดพลาดเพิ่มขึ้นตามเวลาเมื่อใช้วิธีแก้นิวตัน
boyfarrell

Crank-Nicolson เป็นวิธีการขั้นตอนเดียวตามที่เขียนเป็น . นอกจากนี้ฉันไม่เห็นว่าทำไมรูปแบบหลายขั้นตอนควรหลีกเลี่ยงการสะสมข้อผิดพลาด ยูชั่วโมงn+1=ยูชั่วโมงn+Φ(เสื้อn,τn,ยูชั่วโมงn,ยูชั่วโมงn+1)
ม.ค.

1
ตกลงขอบคุณที่อธิบายเกี่ยวกับวิธีการ CN ใช่เป็นที่น่าสนใจว่าทำไมวิธีการหลายขั้นตอนดูเหมือนว่าจะมีการสะสมข้อผิดพลาดต่ำกว่า เหตุผลที่นักแก้ปัญหานิวตันมีข้อผิดพลาดเกิดขึ้นเพราะเป็นวิธีการขั้นตอนเดียวฉันเข้าใจแล้ว อย่างไรก็ตามฉันรู้ว่าคุณชอบ Python ฉันทำตามข้างต้นทั้งหมดโดยใช้ scipy, numpy และ matplotlib, gist.github.com/danieljfarrell/6353776
boyfarrell

ฉันได้ลบลิงก์ไปยังกระดาษโดย Trefethen et อัล เกี่ยวกับการรวม IMEX ลำดับสูงจากคำตอบของฉันเนื่องจากมีการอ้างอิงที่ดีกว่าเพื่อเรียนรู้เกี่ยวกับแผนการ IMEX
Jan

12

คำตอบสั้น ๆ

หากคุณต้องการความแม่นยำอันดับสองและไม่มีการประเมินข้อผิดพลาดแบบฝังโอกาสที่คุณจะมีความสุขกับการแยก Strang: ครึ่งขั้นตอนของปฏิกิริยาขั้นตอนเต็มรูปแบบของการกระจายขั้นครึ่งปฏิกิริยา

คำตอบที่ยาว

Reaction-diffusion ถึงแม้จะมีปฏิกิริยาเชิงเส้นก็มีชื่อเสียงในการแสดงข้อผิดพลาดการแยก อันที่จริงมันอาจแย่กว่านั้นมากรวมถึง "การบรรจบกัน" ไปยังสถานะคงที่ที่ไม่ถูกต้องผิดพลาดกับสถานะคงที่สำหรับรอบขีด จำกัด สร้างความสับสนให้กับการกำหนดค่าที่มั่นคงและไม่เสถียรและอื่น ๆ ดู Ropp, Shadid และ Ober (2004) และ Knoll, Chacon, Margolin และ Mousseau (2003) สำหรับมุมมองของนักฟิสิกส์เกี่ยวกับการคำนวณ สำหรับการวิเคราะห์ของนักคณิตศาสตร์ในแง่ของเงื่อนไขการสั่งซื้อให้ดูหนังสือของ Hairer และ Wanner เกี่ยวกับ ODE แข็ง (วิธี Rosenbrock-W เป็นวิธี IMEX เชิงเส้นตรง - โดยนัย), Kennedy and Carpenter (2003) สำหรับ IMEX แบบ "ไม่เติมเชิงเส้น" และหน้าของ Emil Constantinescuสำหรับวิธีการ IMEX ล่าสุด

โดยทั่วไปวิธีการของ IMEX นั้นมีเงื่อนไขการสั่งซื้อมากกว่าวิธีการทางนัยและชัดเจน คู่ของวิธีการ IMEX สามารถออกแบบให้มีเสถียรภาพเชิงเส้นและไม่เชิงเส้นที่ต้องการและพวกเขาตอบสนองเงื่อนไขการสั่งซื้อทั้งหมดถึงลำดับการออกแบบของวิธีการ การตอบสนองเงื่อนไขการสั่งซื้อทั้งหมดจะทำให้เกิดข้อผิดพลาดในการแยก asymptotic ในระดับเดียวกันกับข้อผิดพลาดในแต่ละแบบแยกกัน มันบอกว่าไม่มีอะไรเกี่ยวกับระบอบการปกครองล่วงหน้า (ขั้นตอนเวลามาก / ความต้องการความแม่นยำต่ำ) แต่ไม่ค่อยเข้มงวดกว่าความละเอียดของแต่ละส่วนแยกกัน ในกรณีใด ๆ ข้อผิดพลาดในการแยกจะปรากฏในตัวประมาณข้อผิดพลาดในตัว (เมื่อใช้การควบคุมข้อผิดพลาดแบบปรับได้)

PETSc มีวิธี IMEX มากมายของตระกูล Rosenbrock-WและตระกูลRunge-Kutta แบบเสริมและจะมีการคาดการณ์และ IMEX เชิงเส้นแบบหลายขั้นตอนในรุ่นถัดไปของเรา

ข้อจำกัดความรับผิดชอบ: ฉันเขียนการสนับสนุนการรวมเวลาของ PETSc จำนวนมากและทำงานร่วมกับ Emil (ลิงก์ด้านบน)


ฉันกำลังเข้าใกล้สิ่งนี้จากมุมมองทางฟิสิกส์ดังนั้นรายละเอียดทางเทคนิคทั้งหมดใช้เวลาพอสมควรในการติดตามเพราะฉันไม่คุ้นเคยกับคำศัพท์หลายคำ ฉันเป็นนักทดลองจริง! คุณช่วยอธิบายเพิ่มเติมเกี่ยวกับเงื่อนไขการสั่งซื้อได้ไหม IMEX เป็นวิธีการหลายขั้นตอนที่กล่าวถึงโดย Jan?
boyfarrell

เงื่อนไขการสั่งซื้อคือความสัมพันธ์ระหว่างค่าสัมประสิทธิ์ของวิธีการแบบ ODE (เช่นรายการใน Table เขียงสำหรับวิธี Runge-Kutta) ที่จะต้องมีความพึงพอใจเพื่อให้ได้คำสั่งที่ถูกต้อง เงื่อนไขการสั่งซื้อจะถูกกล่าวถึงในหนังสือหรือกระดาษใด ๆ ที่ออกแบบวิธีการรวม ODE แต่โดยทั่วไปจะมีปริมาณการใช้อนุพันธ์และเงื่อนไขการจับคู่ซ้ำ ๆ ในการขยายเทย์เลอร์ จำนวนเงื่อนไขการสั่งซื้อเติบโตอย่างรวดเร็วสำหรับวิธีการสั่งซื้อขั้นสูงซึ่งเป็นเหตุผลว่าทำไมจึงเป็นการยากที่จะออกแบบวิธีการสั่งซื้อขั้นสูง ปัญหาและอุปสรรคที่จัดตั้งขึ้นโดยการแสดงให้เห็นว่าเงื่อนไขการสั่งซื้อจะไม่เข้ากันร่วมกัน
Jed Brown
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.