วันพฤหัสบดีที่ 13 ธันวาคม พ.ศ. 2555

การใช้ excel ประมาณค่าในช่วงข้อมูลแบบเชิงเส้น (Linear Interpolation) -1

การใช้ excel ในบทความนี้จะนำเสนอการใช้ excel ช่วยประมาณค่าในช่วงข้อมูล โดยวิธีการประมาณค่าในช่วงแบบเชิงเส้น (Linear Interpolation) เป็นวิธีที่ได้รับความนิยมสูง  ตัวอย่างการประยุกต์ใช้เช่น การทดลองหาสมบัติทางเทอร์โมไดนามิกส์มักให้ผลลัพธ์ในลักษณะของสมบัติที่ขึ้นอยู่กับอุณหภูมิและความดันของของไหลนั้น สมบัติทางเทอร์โมไดนามิกส์ซึ่งได้จากการทดลองเหล่านี้เป็นสมบัติของของไหลเพียงบางอุณหภูมิหรือบางความดันเท่านั้น มีบ่อยครั้งทีเดียวที่วิศวกรต้องการทราบสมบัติเหล่านี้ที่ตำแหน่งอุณหภูมิหรือความดันอื่นๆ ซึ่งต่างไปจากอุณหภูมิหรือความดันที่ทำการทดลองมา วิธีการประมาณค่าในช่วง(Interpolation) จึงได้ถูกนำไปใช้ในการคำนวณเพื่อหาสมบัติทางเทอร์โมไดนามิกส์ตามอุณหภูมิหรือความดันที่อยู่นอกเหนือจากที่วัดได้จากการทดลอง โดยแนวคิดของการประมาณค่าในช่วงแบบเชิงเส้น มีดังนี้
พิจารณาฟังก์ชัน f(x) สำหรับใช้ประมาณค่าในช่วงแบบเชิงเส้นสามารถสร้างขึ้นได้จากข้อมูล ข้อมูล ที่ตำแหน่ง x0 และ x1 สมมุติว่าต้องการหาค่า vg ที่ตำแหน่ง อุณหภูมิ ใดๆ ในช่วงระหว่าง 2 ตำแหน่งนี้ โดยทราบค่าของ vg ที่ 2 ตำแหน่งนี้ เช่น ที่ x0 = 30 องศา และที่ x1 = 35 องศา ค่าของ vg ที่สองตำแหน่งนี้เท่ากับ vg(30) = 32.89 mm^3/kg และ vg(35) = 25.22 mm^3/kg วิธีการที่ง่ายที่สุดคือการลากเส้นตรงเชื่อมต่อจุดทั้งสองนี้เข้าด้วยกัน และจากสมการเส้นตรงนี้เองทำให้สามารถประมาณค่า vg ที่ อุณหภูมิ ใดๆในช่วงนี้ได้ ดังแสดงในภาพที่ 1 


ภาพที่ 1 แนวคิดการประมาณค่าในช่วงแบบเชิงเส้น

จากแนวคิดการประมาณค่าในช่วงแบบเชิงเส้น เราสามารถประยุกต์ใช้กับ excel ได้ โดยจะแบ่งการใช้สูตรใน excel ออกเป็น 2 ส่วน ดังนี้
การหาค่าภายในช่วง
เราจะใช้สูตรใน excel : TREND ซึ่งได้นำเสนอวิธีการใช้งานไปแล้วในเรือง การใช้ excel สร้างกราฟเส้นตรง  โดยสูตร excel : TREND นั้นจะคืนค่า Y กลับ เมื่อเรากำหนดข้อมูล x , และ y ที่ทราบ และกำหนดค่า x ในตำแหน่งที่ต้องการทราบ โดยข้อมูล  x , และ y ที่ทราบต้องมีไม่ต่ำกว่า 2 จุด ในการประยุกต์กับการ ประมาณค่าในช่วงแบบเชิงเส้น (Linear Interpolation) จะใช้ข้อมูล x และ y เพียง 2 จุด ซึ่งอยู่ระหว่าง ค่า x ที่ต้องการทราบค่า y  (ค่า x0,y0 และ x1,y1 ตามภาพที่ 1) เท่านั้น ขอให้ท่านนึกถึงความเป็นจริง หากเรามีชุดข้อมูล x และ y เป็นจำนวนมากเรียงกันเป็นตาราง เมื่อผู้ใช้กำหนดค่า x ที่ต้องการหาค่า y ขึ้นมาคำถามคือแล้ว ค่า  x0,y0 และ x1,y1 ที่เป็นขอบเขตบนและล่าง จะคำนวณหาได้อย่างไร คำตอบอยู่ในส่วนที่ 2 ครับ
เราจะใช้สูตรใน excel : INDEX และ MATCH ช่วยในการหาค่า  x0,y0 และ x1,y1 เมื่อผู้ใช้กำหนดค่า x ขึ้นมา 
ผมขอยกตัวอย่างตารางข้อมูลเพื่อให้เข้าใจได้ง่ายขึ้นครับ ตามภาพที่ 2


ภาพที่ 2 ตารางข้อมูล (ค่าแกน x ต้องเรียงจากน้อยไปหามาก)

สมมุติเราต้องการทราบค่า Sat. Pressure ที่อุณหภูมิ 33 องศา (ซึ่งเราทราบได้ทันทีจากตารางว่าต้องใช้ x0 = 30 และ  x1 = 35 ) เราจะมาใช้สูตรใน excel เพื่อช่วยหาค่า x0 และ x1 
โดยเราจะใช้สูตร excel : MATCH ในการหาตำแหน่ง  x0 และ x1 และใช้สูตร excel : INDEX แสดงค่า x0,y0 และ x1,y1 

สมมุติให้กำหนดค่า x ที่ต้องการทราบค่า y ใน A17 ค่า x0,y0 แสดงใน A14,B14 และ ค่า  x1,y1 แสดงใน A15,B15 ตามลำดับเราจะเขียนสูตร excel ได้ดังนี้
สูตร excel ใน A14 =INDEX($A$4:$A$10,MATCH($A$17,$A$4:$A$10,1))
สูตร excel ใน B14 =INDEX($B$4:$B$10,MATCH($A$17,$A$4:$A$10,1))
สูตร excel ใน A15 =INDEX($A$4:$A$10,MATCH($A$17,$A$4:$A$10,1)+1)
สูตร excel ใน B15 =INDEX($B$4:$B$10,MATCH($A$17,$A$4:$A$10,1)+1)

สุดท้ายใช้สูตร excel : TREND คำนวณหาค่า y ตามค่า x ที่กำหนดไว้ สมมุติให้แสดงค่า y ที่ B17
สูตร excel ใน B17 =TREND($B$14:$B$15,$A$14:$A$15,A12) 
ในกรณีที่ต้องการประมาณค่า vf vg เพิ่มเติมก็สามารถทำได้โดยง่าย โดยเพิ่มสูตร excel ในหลัก C และ D ดังนี้
สูตร excel ใน C14 =INDEX($C$4:$C$10,MATCH($A$17,$A$4:$A$10,1))

สูตร excel ใน D14 =INDEX($D$4:$D$10,MATCH($A$17,$A$4:$A$10,1))
สูตร excel ใน C15 =INDEX($C$4:$C$10,MATCH($A$17,$A$4:$A$10,1)+1)

สูตร excel ใน D15 =INDEX($D$4:$D$10,MATCH($A$17,$A$4:$A$10,1)+1)


และใช้สูตรใน excel : TREND คำนวณหาค่า y ตามค่า x ที่กำหนดไว้
สูตร excel ใน C17 =TREND($C$14:$C$15,$A$14:$A$15,A17) 
สูตร excel ใน D17 =TREND($D$14:$D$15,$A$14:$A$15,A17) 

ผลการประมาณค่าภายในช่วงแบบเชิงเส้น แสดงได้ดังภาพที่ 3


ภาพที่ 3 ผลการใช้สูตร excel ประมาณค่าในช่วงแบบเชิงเส้น

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










1 ความคิดเห็น:

Unknown กล่าวว่า...

มีที่ใช้คำสั่งนอกจากนี้ไหมครับ ขอบคุณครับ

แสดงความคิดเห็น

Yahoo bot last visit powered by  Ybotvisit.com