วิธีการเขียนซีรี่ส์ Taylor ด้วย Python

ผู้เขียน: Marcus Baldwin
วันที่สร้าง: 19 มิถุนายน 2021
วันที่อัปเดต: 1 ธันวาคม 2024
Anonim
Python Programming Practice: LeetCode #509 - Fibonacci Number
วิดีโอ: Python Programming Practice: LeetCode #509 - Fibonacci Number

เนื้อหา

ซีรี่ส์ Taylor เป็นตัวแทนของฟังก์ชั่นโดยใช้ผลรวมอนันต์ คอมพิวเตอร์โดยทั่วไปจะประมาณค่าของฟังก์ชันตรีโกณมิติเลขชี้กำลังหรือฟังก์ชันยอดเยี่ยมอื่น ๆ โดยใช้จำนวนคำศัพท์ที่ จำกัด ในซีรี่ส์อนุกรมที่เกี่ยวข้องและคุณสามารถสร้างกระบวนการนั้นใน Python เงื่อนไขของผลรวมนั้นขึ้นอยู่กับอนุพันธ์ของฟังก์ชันอย่างต่อเนื่องดังนั้นคุณต้องระบุรูปแบบในค่าของพวกเขาเพื่อเขียนสูตรสำหรับแต่ละคำในชุด จากนั้นคุณจะใช้การวนซ้ำเพื่อสะสมผลรวมควบคุมความแม่นยำของการประมาณของคุณด้วยจำนวนการวนซ้ำ


คำสั่ง

เข้าใกล้ซีรี่ส์ของ Taylor ใน Python (Hemera Technologies / AbleStock.com รูปภาพ / Getty)
  1. อ้างอิงถึงคำจำกัดความของซีรี่ส์ Taylor เพื่อทำความเข้าใจว่าแต่ละคำสามารถคำนวณได้อย่างไร แต่ละดัชนีถูกจัดทำมักจะมี "n" และค่าของมันเกี่ยวข้องกับอนุพันธ์ของคำสั่ง "n" ของฟังก์ชั่นที่จะแสดง เพื่อความง่ายให้ใช้ 0 สำหรับค่า "a" ในการลองครั้งแรกของคุณ ซีรีย์ Taylor รุ่นพิเศษนี้เรียกว่า "MacLaurin series" ใช้ฟังก์ชั่น "ไซน์" เนื่องจากอนุพันธ์ที่ต่อเนื่องนั้นง่ายต่อการตรวจสอบ

  2. เขียนค่าหลายค่าของอนุพันธ์ "n" ของฟังก์ชันไซน์ที่ประเมินเป็น 0 หาก "n" เท่ากับ 0 ค่าจะเป็น 0 สำหรับ n = 1 ค่าจะเป็น 1 ในกรณีที่ n = 2 ค่าจะเป็น 0 เมื่อ n = 3 ค่าจะเป็น -1 รูปแบบซ้ำจากที่นี่ดังนั้นคุณสามารถกำจัดคำที่มีเลขคู่ทั้งหมดในซีรีส์เทย์เลอร์เนื่องจากมันจะถูกคูณด้วย 0 สูตรสำหรับแต่ละคำในซีรีส์ผลลัพธ์จะเป็น:


    (1n) 2n + (2n +1)

    หากใช้ "2n + 1" แทน "n" เพื่อทำดัชนีชุดข้อมูลใหม่อีกครั้งให้กำจัดคำที่เป็นดัชนีได้อย่างมีประสิทธิภาพโดยไม่ต้องเปลี่ยนดัชนีเอง ปัจจัย "(-1) ^ n" อนุญาตให้เปลี่ยนเครื่องหมายของคำที่ต่อเนื่องกันได้ บทเรียนคณิตศาสตร์นี้อาจดูแปลก แต่รหัส Python จะง่ายกว่ามากในการเขียนและนำไปใช้ในซีรีย์อื่นถ้าดัชนีเริ่มต้นที่ 0 เสมอและจะเพิ่มขึ้น 1

  3. เปิดตัวแปล Python เริ่มต้นด้วยการป้อนคำสั่งต่อไปนี้เพื่อกำหนดตัวแปร:

    รวม = 0x = .5236

    ตัวแปรผลรวมจะถูกใช้เพื่อสะสมผลรวมของชุด Taylor ด้วยการคำนวณซ้ำแต่ละครั้งของคำศัพท์ ตัวแปร "x" คือมุม (เป็นเรเดียน) ซึ่งคุณต้องการประมาณฟังก์ชันไซน์ ตั้งค่าอื่นถ้าคุณต้องการ

  4. นำเข้าโมดูล "คณิตศาสตร์" โดยใช้คำสั่งด้านล่างเพื่อเข้าถึงฟังก์ชัน "pow" (power) และ "factorial" (factorial):

    คณิตศาสตร์นำเข้า

  5. เปิดลูป "สำหรับ" เพื่อกำหนดจำนวนของการโต้ตอบกับฟังก์ชัน "ช่วง":

    สำหรับ n อยู่ในช่วง (4):


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

  6. ป้อนคำสั่งต่อไปนี้เพื่อสะสมค่าของแต่ละคำที่ต่อเนื่องกับตัวแปร "รวม":

    รวม + = math.pow (-1, n) /math.factorial (2)n + 1)math.pow (x, 2 * n + 1)

    คำสั่งจะต้องมีช่องว่างก่อนที่มันจะบ่งบอกถึง Python ว่ามันเป็นส่วนหนึ่งของวง "สำหรับ" โปรดทราบว่าใช้ฟังก์ชัน "pow" และ "factorial" แทนเครื่องหมาย "^" และ "!" สูตรทางด้านขวาของโอเปอเรเตอร์การมอบหมาย "+ =" จะเหมือนกับสูตรของขั้นตอนที่ 2 แต่เขียนด้วยไวยากรณ์ Python

  7. กด "Enter" เพื่อเพิ่มบรรทัดว่าง Python จะตีความว่านี่เป็นจุดสิ้นสุดของลูป "for" และทำการคำนวณ ป้อนคำสั่ง "ผลรวม" เพื่อเปิดเผยผลลัพธ์ สำหรับค่าของ "x" ที่กำหนดในขั้นตอนที่ 3 ผลลัพธ์จะใกล้เคียงกับ. 5 มากที่สุดค่า sine ของ pi / 6 ลองอีกครั้งด้วยค่าต่าง ๆ สำหรับ "x" และสำหรับจำนวนการวนซ้ำของลูปที่แตกต่างกันและเปรียบเทียบผลลัพธ์กับฟังก์ชัน "math.sin (x)" คุณเพิ่งนำไปใช้ใน Python กระบวนการเดียวกันกับที่คอมพิวเตอร์หลายเครื่องใช้ในการคำนวณค่าสำหรับไซน์และฟังก์ชันยอดเยี่ยมอื่น ๆ

เคล็ดลับ

  • เว้นช่องว่างและป้อนคำสั่ง "รวม" ในบรรทัดที่สองของการวนรอบ "สำหรับ" เพื่อให้ผลลัพธ์การเรียกใช้รหัสปรากฏขึ้น สิ่งนี้จะแสดงให้เห็นว่าแต่ละคำที่ต่อเนื่องกันในอนุกรมใกล้เคียงกับการบวกและลบของมูลค่าจริงของฟังก์ชัน