คู่มือนี้จะสอนเราถึงวิธีการคำนวณคำตอบของระบบสมการไม่เชิงเส้นใน MATLAB โดยใช้ fsolve() การทำงาน.
จะแก้ระบบสมการไม่เชิงเส้นใน MATLAB ได้อย่างไร?
เดอะ fsolve() เป็นฟังก์ชันในตัวใน MATLAB ที่ใช้สำหรับแก้ปัญหา ระบบสมการไม่เชิงเส้น ด้วยตัวแปรหลายตัว ถ้าจำนวนของสมการเท่ากับจำนวนที่ไม่รู้จัก คำตอบของระบบ สมการไม่เชิงเส้น จะเป็นตัวเลข; มิฉะนั้นคำตอบจะเป็นสัญลักษณ์ในรูปของตัวแปรที่ต้องการ ตัวแปรแต่ละตัวใน ระบบสมการไม่เชิงเส้น สามารถมีหนึ่งหรือหลายโซลูชั่นตามลำดับของมัน
ไวยากรณ์
เดอะ fsolve() ฟังก์ชันเป็นไปตามไวยากรณ์อย่างง่ายเพื่อแก้ปัญหา ระบบสมการไม่เชิงเส้น ใน MATLAB
x = fsolve ( สนุก x0 )
x = fsolve ( สนุก x0 ตัวเลือก )
ที่นี่:
ฟังก์ชั่น x = fsolves (สนุก, x0) แก้ระบบสมการไม่เชิงเส้นโดยเริ่มจากจุด x0 .
ฟังก์ชั่น x = fsolves (ความสนุก, x0, ตัวเลือก) แก้ระบบสมการแบบไม่เชิงเส้นโดยใช้วิธีการเพิ่มประสิทธิภาพที่ระบุไว้ในตัวเลือก
บันทึก: ตัวเลือกตามค่าเริ่มต้นจะใช้ นิวตัน แรพสัน วิธีการคำนวณคำตอบของระบบสมการไม่เชิงเส้น คุณสามารถระบุเมธอดอื่นๆ เช่น ภูมิภาคที่เชื่อถือ Levenberg-Marquardt , และคนอื่น ๆ.
ตัวอย่าง
ทำตามตัวอย่างที่กำหนดเพื่อเรียนรู้วิธีแก้ระบบสมการไม่เชิงเส้นโดยใช้ fsolve() ฟังก์ชั่นใน MATLAB
ตัวอย่างที่ 1: การแก้สมการไม่เชิงเส้น 2 สมการใน MATLAB
ตัวอย่างแรกสร้างฟังก์ชัน MATLAB ที่ผู้ใช้กำหนดชื่อ nonlinear_system ที่มีระบบสมการไม่เชิงเส้นสองสมการ
การทำงาน F = nonlinear_system ( x )ฉ ( 1 ) = ประสบการณ์ ( ตร.ว ( ( x ( 1 ) + x ( 2 ) ) ) ) - x ( 2 ) * ( 1 + ตร.ว ( x ( 1 ) ) ) ;
ฉ ( 2 ) = x ( 1 ) * ปราศจาก ( x ( 2 ) ) + x ( 2 ) * เพราะ ( x ( 1 ) ) - 0.1 ;
ตอนนี้เราเรียกใช้ฟังก์ชันในไฟล์สคริปต์อื่นเพื่อแก้ระบบสมการไม่เชิงเส้นที่กำหนดไว้โดยใช้ fsolve(สนุก x0) ฟังก์ชันเริ่มต้นจากจุด x0 = (0, 0)
สนุก = @nonlinear_system;x0 = [ 0 , 0 ] ;
x = fsolve ( สนุก x0 )
ตัวอย่างที่ 2: การแก้สมการไม่เชิงเส้นโดยเริ่มจากจุด [-5,5]
ตอนนี้ให้พิจารณาระบบสมการที่กำหนดในไฟล์ฟังก์ชันที่ผู้ใช้กำหนด nonlinear_system.m และเรียกใช้ฟังก์ชันเพื่อแก้ระบบสมการไม่เชิงเส้นนั้นโดยเริ่มจากจุด x0 = [-5, 5] ใช้ fsolve() การทำงาน.
สนุก = @nonlinear_system;x0 = [ - 5 , 5 ] ;
x = fsolve ( สนุก x0 )
สำหรับรายละเอียดเพิ่มเติม โปรดอ่านสิ่งนี้ แนะนำ .
บทสรุป
การแก้ระบบสมการไม่เชิงเส้นเป็นปัญหาที่พบบ่อยที่สุดในวิชาคณิตศาสตร์และวิศวกรรมศาสตร์ MATLAB ให้เราในตัว fsolve() ฟังก์ชันที่ช่วยให้เราสามารถแก้ระบบสมการไม่เชิงเส้นได้ คู่มือนี้ครอบคลุมพื้นฐานของการแก้ระบบสมการไม่เชิงเส้นซึ่งจะช่วยให้ผู้เริ่มต้นเข้าใจการทำงานของ fsolve() ฟังก์ชั่นใน MATLAB