แสดงบทความที่มีป้ายกำกับ curve fitting แสดงบทความทั้งหมด
แสดงบทความที่มีป้ายกำกับ curve fitting แสดงบทความทั้งหมด

วันจันทร์ที่ 16 กุมภาพันธ์ พ.ศ. 2558

เก็บตกจากการประชุมวิชาการ ๒๕๕๗ ตอนที่ ๑ MO Memoir : Monday 16 February 2558

เนื้อหาใน Memoir ฉบับนี้นำลง blog เพียงบางส่วน

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

. การทำ peak fitting ของ CO2-TPD

การทำ CO2-TPD (CO2 Temperature Programmed Desorption) เริ่มจากการให้ตัวอย่างที่เป็นของแข็ง (ปรกติก็เป็นผง) ดูดซับแก๊สคาร์บอนไดออกไซด์ (CO2) เอาไว้จนอิ่มตัวที่อุณหภูมิหนึ่ง (มักจะเป็นอุณหภูมิห้อง) จากนั้นก็ค่อย ๆ เพิ่มอุณหภูมิตัวอย่างด้วยอัตราที่กำหนด แล้วทำการตรวจวัดปริมาณ CO2 ที่ตัวอย่างคายซับออกมาที่อุณหภูมิต่าง ๆ กัน เทคนิคนี้มีการนำไปใช้ในการวัดความแรงของตำแหน่งที่เป็นเบสบนพื้นผิวของแข็ง และความสามารถในการจับ CO2 ในกรณีที่ปฏิกิริยาที่ศึกษานั้นมี CO2 เป็นสารตั้งต้น
  
วิธีการทำ CO2-TPD ก็ใช้อุปกรณ์เดียวกันกับที่ใช้ทำ NH3-TPD เพียงแต่เปลี่ยนชนิดของแก๊สที่ใช้ในการดูดซับ การวัดปริมาณ CO2 ที่ตัวอย่างคายซับออกมานั้นจะใช้ตัวตรวจวัดชนิด Thermal Conductivity Detector (TCD) 
  
ตัวอย่างที่นำมาแสดงในรูปที่ ๑ มีคำอธิบายว่า “แสดงโปรไฟล์การคายซับของก๊าซคาร์บอนไดออกไซด์ (CO2-TPD) บนตัวเร่งปฏิกิริยาคอปเปอร์เซอร์โคเนียที่มีเฟสแตกต่างกัน โดยโปรไฟล์ CO2-TPD ของตัวเร่งปฏิกิริยาดังกล่าวสามารถจำแนกออกเป็นพีคย่อยๆ ได้ 3 พีค คือ alpha beta และ gamma ซึ่งเป็นตัวแทนของ weak medium และ strong basic site จากรูปจะสังเกตเห็นว่า แม้โปรไฟล์ CO2-TPD ของตัวเร่งปฏิกิริยาทั้งสามมีลักษณะที่เหมือนกัน แต่อุณหภูมิในการคายซับของก๊าซคาร์บอนไดออกไซด์ในแต่ละ basic site ของทั้ง 3 ตัวเร่งปฏิกิริยามีการเลื่อนตำแหน่งที่ไม่ตรงกัน ซึ่งชี้ให้เห็นว่าเฟสของเซอร์โคเนียมีผลต่อความแรงของแต่ละ basic site บนตัวเร่งปฏิกิริยาคอปเปอร์เซอร์โคเนีย นั่นหมายความความแข็งแรงในการยึดเหนี่ยวของก๊าซคาร์บอนไดออกไซด์ที่ดูดซับบนตัวเร่งปฏิกิริยาก็จะแตกต่างกันออกไป โดยพบว่าตัวเร่งปฏิกิริยา Cu/m-ZrO2 มีอุณหภูมิในการคายซับก๊าซคาร์บอนไดออกไซด์ในแต่ละ basic site สูงที่สุด ซึ่งแสดงให้ว่าก๊าซคาร์บอนไดออกไซด์ที่ดูดซับบนพื้นผิวตัวเร่งปฏิกิริยา Cu/m-ZrO2 มีการยึดเหนี่ยวกันที่แข็งแรงมาก ในขณะที่ก๊าซคาร์บอนไดออกไซด์ที่ดูดซับบนพื้นผิวตัวเร่งปฏิกิริยา Cu/t-ZrO2 มีการยึดเหนี่ยวกันที่ไม่แข็งแรงมากนัก ซึ่งจะเห็นจากอุณหภูมิในการคายซับของก๊าซคาร์บอนไดออกไซด์เกิดขึ้นที่อุณหภูมิต่ำ
  
ผลตรงนี้ในส่วนของผมเองมีประเด็นที่ตั้งข้อสังเกตหลายประเด็น อย่างแรกก็คือเป็นเรื่องปรกติที่พีคการคายซับ (desorption peak) จะเป็นพีคที่ไม่สมมาตร อันเป็นผลเนื่องจากการแพร่ออกมาจากรูพรุนของตัวอย่าง (ดู Memoir ปีที่ ๖ ฉบับที่ ๗๔๔ วันศุกร์ที่ ๗ กุมภาพันธ์ ๒๕๕๗ เรื่อง “ทำไมพีคจึงลากหาง”) ดังนั้นการทำ peak fitting จึงควรใช้ฟังก์ชันพีค Gaussian ที่ไม่สมมาตร (ดู Memoir ปีที่ ๓ ฉบับที่ ๓๑๔ วันศุกร์ที่ ๑๐ มิถุนายน ๒๕๕๔ เรื่อง “GC- peak fitting ตอนที่๑ การหาพื้นที่พีคที่เหลื่อมทับ”)
  
ในรูปที่ ๑ นั้นคณะผู้วิจัยพยายามแปลผลด้วยการใช้ฟังก์ชัน Gaussian ที่สมมาตรในการแยกหาตำแหน่งพีค จะเห็นว่าการทำ peak fitting ดังกล่าวไม่สามารถปรับเข้ากับผลการทดลองได้ดี โดยเฉพาะตรงบริเวณที่ลูกศรสีส้มชี้ที่เห็นได้ชัดว่าผลรวมของพีคย่อย (เส้นประนั้น) แตกต่างไปจากผลการทดลอง (เส้นทึบ) อย่างเห็นได้ชัด นอกจากนี้ตรงส่วนหน้าของพีคแรก (ที่ประมาณ 70ºC) ตรงลูกศรสีเขียวชี้ การทำ curve fitting ก็ยังทำได้ไม่ดี จะเห็นว่ารูปร่างความโค้งของเส้นข้อมูลผลการทดลองและความโค้งของพีค Gaussian นั้นแตกต่างกันอยู่ ทั้งนี้อาจเป็นผลการการกำหนดแนว base line ของข้อมูล
  
รูปที่ ๑ CO2-TPD profiles 
  
. อุณหภูมิและการดูดซับ

การดูดซับโมเลกุลบนพื้นผิวของแข็งนั้นเป็นปฏิกิริยาคายความร้อน (ดู Memoir ปีที่ ๔ ฉบับที่ ๓๗๕ วันพุธที่ ๑๔ ธันวาคม ๒๕๕๔ เรื่อง “อุณหภูมิและการดูดซับ”) ดังนั้นเมื่ออุณหภูมิสูงขึ้น การดูดซับจะเกิดขึ้นน้อยลง ตัวอย่างที่เห็นได้ชัดได้แก่สารดูดความชื้นต่าง ๆ เมื่อสารเหล่านี้ดูดความชื้นจนอิ่มตัว เราก็สามารถไล่ความชื้นที่มันดูดซับเอาไว้ได้ด้วยการให้ความร้อนแก่สารดูดซับเหล่านั้นที่อุณหภูมิที่สูงพอ ความชื้นที่สารดูดซับจับเอาไว้ก็จะหลุดออกไป
  
รูปที่ ๒ เป็นผลการทดลองการดูดซับสีย้อมชนิดหนึ่งในน้ำที่อุณหภูมิต่าง ๆ กัน ซึ่งมีคำอธิบายว่า “พบว่าในช่วง 2 นาทีแรก ความสามารถในการดูดซับเกิดอย่างรวดเร็ว มีค่า 66,700, 66,111 และ 66,407 ppm ของคองโกเรดต่อกรัมของตัวดูดซับ ตามลําดับ หลังจากนั้นความสามารถในการดูดซับสารละลายคองโกเรดเริ่มลดลงและเข้าสู่สมดุล ซึ่งเกิดขึ้นในเวลาประมาณ 60 นาที มีความสามารถในการดูดซับสารละลายคองโกเรดเท่ากับ 68,658 , 68,976 และ 69,529 ppm ของคองโกเรดต่อกรัมของตัวดูดซับ ตามลําดับ ความสามารถในการดูดซับสารละลายคองโกเรดเกิดขึ้นได้มากที่อุณหภูมิสูง เนื่องจากพลังงานจลน์ของสารละลายคองโกเรดมีปริมาณมาก ในขณะที่มีการเพิ่มอุณหภูมิจะทําให้เกิดการเคลื่อนที่ของสารละลายคองโกเรดได้มากขึ้น พลังงานจลน์ของสารละลายคองโกเรดมีค่ามากกว่าพลังงานศักย์ จึงเกิดแรงดึงดูดระหว่างตัวดูดซับกับสารละลายคองโกเรด” ซึ่งผลตรงนี้ขัดกับสิ่งที่ทฤษฏีทำนายไว้ ที่กล่าวไว้ในย่อหน้าข้างบน
  
รูปที่ ๒ ผลของอุณหภูมิต่อความสามารถในการดูดซับสีคองโกเรด (congo red) ความเข้มข้น 700 ppm ที่เวลาต่าง ๆ กัน ใช้ตัวดูดซับคาร์บอนกัมมันต์ที่เตรียมจากแบคทีเรียลเซลลูโลสที่ไม่ผ่านการแช่ด้วยกรด ปริมาณ 0.2 กรัม เปลี่ยนแปลงอุณหภูมิของสารละลายคองโกเรดเป็น 30, 45 และ 60 ºC 

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

. การทำ Linear regression

การทำ regression เป็นการหาความสัมพันธ์ระหว่างตัวแปรอิสระ (x ซึ่งอาจมีมากกว่า ๑ ตัวแปร) กับตัวแปรตาม (y ซึ่งมีเพียงตัวเดียว) การทำ regression แตกต่างจากการทำ curve fitting ตรงที่ในการทำ curve fitting นั้นเราหาฟังก์ชันที่ “ต้องผ่าน” จุดข้อมูลที่มีอยู่ทุกจุด (ปรกติที่ x ค่าหนึ่งจะมี y เพียงค่าเดียว) ในขณะที่การทำ regression นั้นเป็นการหาฟังก์ชันที่เมื่อลากผ่านกลุ่มจุดข้อมูลที่มีอยู่ (ไม่จำเป็นต้องผ่านจุดใดจุดหนึ่งเลยก็ได้) แล้วให้รูปเส้นกราฟกับการกระจายตัวของจุดข้อมูลนั้นออกมา “ดูดี” ที่สุด คำว่า “ดูดี” ในที่นี้มักหมายถึง “ความคลาดเคลื่อน” หรือ “error” นั้นน้อยที่สุด
 
ในการทำ regression นั้นเราจำเป็นต้องกำหนดฟังก์ชันสำหรับการลากเส้นขึ้นมาก่อน จากนั้นจึงค่อยหาว่าค่าพารามิเตอร์ต่าง ๆ ของฟังก์ชันนั้นควรมีค่าเป็นเท่าใดจึงจะให้เส้นกราฟที่ได้นั้นสอดคล้องกับรูปแบบการเปลี่ยนแปลงข้อมูล ตัวอย่างเช่นในกรณีของการเลือกใช้สมการเส้นตรง พารามิเตอร์ที่ต้องหาคือค่าความชันและจุดตัดแกน x
 
“ความคลาดเคลื่อน” คือระยะห่างระหว่างจุดข้อมูลกับเส้นกราฟที่ได้ ส่วนจะวัดในรูปแบบไหนก็ขึ้นอยู่กับว่าเรามั่นใจในจุดข้อมูล x และ y มากน้อยเพียงใด (ดูรูปที่ ๓ ประกอบ)  ถ้าเรามั่นใจว่าค่า x ของเราถูกต้อง ส่วนค่า y นั้นอาจมีความคลาดเคลื่อนได้ ระยะห่างก็จะวัดในแนวแกน y (ในกรณีนี้ข้อมูลมีการกระจายตัวเฉพาะในทิศทางแกนy กล่าวคือที่ x ค่าหนึ่งมี y ได้หลายค่า) ในทางกลับกันถ้าเรามั่นใจว่าค่า y ของเราถูกต้อง ส่วนค่า x นั้นอาจมีความคลาดเคลื่อนได้ ระยะห่างก็จะวัดในแนวแกน x (ในกรณีนี้ข้อมูลมีการกระจายตัวในทิศทางแกน x กล่าวคือที่ y ค่าหนึ่งมี x ได้หลายค่า) และถ้าเราสงสัยว่าข้อมูลทั้ง x และ y มีความคลาดเคลื่อนทั้งคู่ ระยะห่างก็จะวัดในแนวที่เส้นที่ลากจากจุดนั้นไปตั้งฉากกับเส้นกราฟที่ได้ (ข้อมูลมีการกระจายตัวทั้งในทิศทางการแ x และแกน y) เมื่อกำหนดแนวที่จะทำการวัดความคลาดเคลื่อนได้แล้ว ต่อไปก็จะเป็นขั้นตอนการหาวิธีการที่จะให้เส้นกราฟออกมา “ดูดี” ที่สุด ซึ่งวิธีทั่วไปที่ใช้กันก็คือแนวเส้นที่ทำให้ค่าผลรวมของระยะห่างของแต่ละจุดข้อมูลกับเส้นกราฟนั้นมีค่าน้อยที่สุด

รูปที่ ๓  การวัดระยะความคลาดเคลื่อน (ซ้าย) ถ้าความคลาดเคลื่อนมีเฉพาะในทิศทางแกน y  (กลาง) ถ้าความคลาดเคลื่อนมีเฉพาะในทิศทางแกน x และ (ขวา) ถ้าความคลาดเคลื่อนมีทั้งในทิศทางแกน x และแกน y
 
การทำ regression ที่พบมากที่สุดเห็นจะได้แก่การทำ linear regression ที่ใช้ความสำคัญกับจุดข้อมูลทุกจุดเท่ากันหมด แต่การทำ linear regression จะเหมาะสมก็ต่อเมื่อรูปแบบการกระจายตัวของข้อมูลนั้นดูแล้วมีแนวโน้มว่าจะมีการเปลี่ยนแปลงในแนวเส้นตรง กล่าวคือควรมีจำนวนจุดข้อมูลที่ค่า x มากกว่าสองตำแหน่ง และการกระจายตัวของข้อมูลที่แต่ละตำแหน่ง x นั้นไม่ควรมากเกินไป (ถ้ามากเกินไปแสดงว่าวิธีการวัดมีปัญหา และอาจต้องพิจารณาตัดจุดข้อมูลที่กระจายตัวหลุดออกจากกลุ่มใหญ่ออกไป) ควรให้ความสำคัญกับข้อมูลการกระจายตัวที่เกาะกลุ่มกันมากกว่าที่หลุดกลุ่มออกไป



รูปที่ ๔ การทำ linear regression ด้วยการทดลองใช้แบบจำลองแตกต่างกัน 3 รูปแบบ (บทความเดียวกับรูปที่ ๒) กับจุดข้อมูล 5 ที่สองตำแหน่งตัวแปร x
 
กราฟในรูปที่ ๔ มาจากความพยายามที่จะทำ linear regression กับข้อมูล 5 จุด โดยใช้แบบจำลอง 3 รูปแบบ โดยข้อมูล 4 จุดนั้นเป็นของตำแหน่ง x ตำแหน่งหนึ่ง และอีก 1 จุดนั้นเป็นของตำแหน่ง x อีกตำแหน่งหนึ่ง ประเด็นที่อยากจะให้ลองพิจารณาตรงนี้คือจำนวนข้อมูลที่มีนั้นเหมาะสมที่จะทำ linear regression หรือยัง และถ้าตัดเข้าข้อมูลออกไป 1 จุด (ที่วงกลมสีแดงเอาไว้ในแต่ละรูป ซึ่งเป็นข้อมูลตัวเดียวกัน เพียงแต่นำไปใส่ในฟังก์ชันแตกต่างกันเท่านั้นเอง) ผลการทำ linear regression จะออกมาเป็นอย่างไร (ลองพิจารณาเฉพาะแค่ความชันของเส้นที่จะได้ก่อนก็ได้)

ตอนที่ ๑ ของเรื่องนี้คงต้องขอจบแค่นี้ก่อน ไม่งั้นเนื้อหาจะยาวเกินไป ส่วนตอนที่ ๒ จะออกมาภายในเดือนนี้ แต่ต้องขอใช้เวลาย่อยสักนิด

วันอังคารที่ 20 สิงหาคม พ.ศ. 2556

MO ตอบคำถาม การแยกพีค GC ด้วยโปรแกรม fityk MO Memoir : Tuesday 20 August 2556

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

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

ก่อนหน้านี้ผมได้ตอบเขาไปว่าไนโตรเจนและออกซิเจนเป็นคู่หนึ่งที่แยกยาก เพราะขนาดโมเลกุลใกล้กันและจุดเดือดก็ใกล้กัน คอลัมน์บางชนิดแยก "อากาศ" ออกจากแก๊สตัวอื่น เช่น CO CO2 และ Ar ได้ แต่ไม่แยก N2 และ O2 ที่เคยเห็นในแคตตาล็อกขายคอลัมน์ GC บางคอลัมน์ที่เขาบอกว่าแยกได้นั้นจะกระทำที่อุณหภูมิไม่สูง เช่นประมาณ 20 หรือ 25ºC ซึ่งในบ้านเราแล้วอุณหภูมินี้มันต่ำกว่าอุณหภูมิห้องอีก ถ้าจะนำเอาคอลัมน์แบบนี้มาใช้ก็ต้องเพิ่มความยาวให้มากกว่าที่เขาระบุไว้ในแคตตาล็อก หรือไม่ก็หาทางทำให้เครื่อง GC นั้นทำให้คอลัมน์มีอุณหภูมิต่ำกว่าอุณหภูมิห้องให้ได้ คอลัมน์ที่เขาใช้คือ micropacked 13X Molecular sieve 80/100 2m 1.00 I.D. วิเคราะห์ที่ 28ºC ซึ่งตรงนี้เขาบอกว่าเขาทำแลปในห้องแอร์ที่แอร์เย็น เครื่อง GC ก็เลยทำงานที่อุณหภูมินี้ได้

อีกอันหนึ่งที่แนะนำเขาไปคือให้ลองปรับ carrier gas flow rate ให้ต่ำลง แต่ถ้าทำแบบนี้กับ TCD ก็ต้องไปทำ calibration curve ใหม่ด้วย

หลังจากพบกันแล้วเขาก็ไปทดลองปรับอัตราการไหลของ carrier gas ให้ลดลง ซึ่งก็ทำให้เวลาที่พีคออกมานั้นออกมาที่เวลาเดิมก่อนมีปัญหา แต่ก็ยังมีการเหลื่อมซ้อนกันอยู่ดี จนกระทั่งวันศุกร์ที่แล้วก็ได้ส่งรูปพีคและไฟล์ .txt และ .csv มาให้ ผมเห็นรูปพีคของเขาแล้ว (ดูรูปที่ ๑) ก็เห็นว่าไม่น่าจะมีปัญหาอะไรมากในการใช้โปรแกรม fityk ในการแยกพีค (ถ้าใช้โปรแกรมเป็นแล้วนะ) พีคทั้งสองนั้นวางตัวอยู่บน base line ที่ค่อนข้างจะวางตัวราบ (แทบไม่มีการเฉียงขึ้นหรือลง) ไม่มีการปรากฏของพีคอื่นข้างเคียง ก็เลยเอาข้อมูลของเขามาทำการแยกพีคด้วยโปรแกรม fityk เล่นดู

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

จากข้อมูลที่เขาให้ผมมาในรูปที่ ๑ นั้น ผมลองทำการเติมพีคและทำ peak fitting โดยตรงโดยไม่ต้องไปยุ่งอะไรกับข้อมูลเดิมก็พบว่ามันทำได้ แต่ที่จะเอามาเล่าให้ฟังในบันทึกนี้ผมจะใช้วิธีแยกทำ peak fitting ทีละพีค เนื่องจากผมไม่ต้องการย่อรูปให้เล็กลง ดังนั้นคำบรรยายรูปจะแยกออกจากรูปแต่ละรูป
  
รูปที่ ๑ เป็นไฟล์ข้อมูลที่ผมได้รับมาในรูปไฟล์ .csv และนำมาเปิดด้วยโปรแกรม fityk ลักษณะเป็นพีคเล็กนำหน้าพีคใหญ่ โดยส่วนหางของพีคเล็กนั้นซ้อนทับอยู่กับส่วนหน้าของพีคใหญ่

รูปที่ ๑ โครมาโทแกรมที่ได้รับมา เมื่อเปิดด้วยโปรแกรม fityk

รูปที่ ๒ เป็นภาพขยายบริเวณส่วนฐานของพีค จะเห็นว่าในความเป็นจริงเส้น base line มีการเคลื่อนตัวไต่ขึ้นอย่างช้า ๆ โดยข้อมูลส่วนหน้านั้นติดลบเล็กน้อย ส่วนข้อมูลส่วนหลังนั้นมีค่าเป็นบวก
  
เนื่องจากฟังก์ชันที่เราใช้ในการทำ peak fitting นั้นเป็นฟังก์ชันที่มีค่าเป็นบวกเสมอ (เรามักใช้ฟังก์ชันที่โปรแกรม fityk เรียกว่า "SplitGaussian" ซึ่งเป็นฟังก์ชัน Gaussian ที่ไม่สมมาตรนั่นเอง) ถ้าหากข้อมูลที่นำมาทำ peak fitting นั้นมีค่าติดลบ จะทำให้โปรแกรมทำการเติมพีคที่ "กลับหัว" เข้าไป วิธีการป้องกันคือทำการ "ยก" ข้อมูลในมีค่าเป็นบวกทั้งหมดก่อน แต่ในขณะเดียวกันนั้นฟังก์ชันที่เราใช้นั้นจะลู่เข้าหาศูนย์ แต่ไม่ตัดกัน x ดังนั้นการตัด base line จึงควรให้บริเวณที่ใกล้กับฐานของพีคนั้นมากกว่าศูนย์เล็กน้อย แต่อย่ามากเกินไป เพราะจะทำให้โปรแกรมทำการเติมพีคที่มีความสูงน้อย แต่ความกว้างมากเข้ามา พีคนี้จะเป็นพีคตัวแทนของเส้น base line

ในรูปที่ ๒ ผมจึงตัดโดยตามแนวเส้นสีแดงที่แสดงในรูป (ใช้ปุ่มวางเส้น base line ในการวางแนวเส้น base line)

รูปที่ ๒ ภาพขยายโครมาโทแกรมในรูปที่ ๑ บริเวณเส้น base line และแนวการตัดเส้น base line (เส้นสีแดง)

รูปที่ ๓ เป็นรูปหลังจากตัดเส้น base line แล้ว รูปนี้เป็นการเลือกจุดข้อมูลที่คาดว่าเป็นเฉพาะของพีคแรกเท่านั้น โดยการกดปุ่มที่ลูกศร (1) ชี้ จากนั้นใช้เมาส์กำหนดจุด การทำให้จุดข้อมูลที่ไม่ต้องการเป็นจุด inactive ทำโดยการกดปุ่มด้านขวาของเมาส์ค้างไว้แล้วลากเมาส์ไปตามจุดข้อมูลเหล่านั้น จุดข้อมูลที่เป็น inactive จะกลายเป็นจุดสีเทา ในที่นี้ผมทำให้จุดข้อมูลช่วงเวลาประมาณก่อน 2.00 นาทีและหลัง 2.75 นาทีเป็นจุดที่ inactive จุดก่อนเวลา 2.00 นาทีเป็นช่วงที่ยังไม่มีพีคปรากฏ ส่วนช่วงเวลาถัดจ่าก 2.75 นาทีนั้นเป็นจุดข้อมูลที่เป็นผลรวมระหว่างส่วนท้ายของพีคเล็กและส่วนหน้าของพีคใหญ่ ในขณะที่จุดข้อมูลในช่วงเวลา 2.00 - 2.75 นาทีนั้นประมาณว่าเป็นของพีคเล็กเท่านั้น


รูปที่ ๓ การเลือกจุดข้อมูลที่คาดว่าเป็นของเฉพาะพีคแรก (ในกรอบสีแดง) เพื่อทำการสร้างพีคแรกขึ้นมาก่อน

รูปที่ ๔ เป็นการทำ peak fitting ของพีคแรก โดยเลือกฟังก์ชันที่นำมาใช้ในการทำ peak fitting จากช่องตรงลูกศร 1 ชี้ การเลือกฟังก์ชันนั้นต้องเหมาะสมกับชนิดของพีค ในกรณีของโครมโทแกรมนั้นเนื่องจากพีคมักจะไม่สมมาตร จึงเลือกใช้ฟังก์ชันที่โปรแกรม fityk เรียกว่า SplitGaussian ซึ่งอันทีจริงก็คือฟังก์ชัน Gaussian นั่นเอง แต่เป็นฟังก์ชันที่มีความกว้างด้านซ้ายและด้านขวาแตกต่างกัน (ถ้าเท่ากันมันก็จะเป็นฟังก์ชัน Gaussian)

จากนั้นก็ให้โปรแกรมวางตำแหน่งพีคให้ด้วยการกดที่ icon ที่ลูกศร 2 ชี้ ถ้าพบว่าตำแหน่งและ/หรือรูปร่างพีคที่โปรแกรมวางให้นั้นไม่ถูกใจเรา เรายังสามารถปรับแต่งรูปร่างของพีคที่โปรแกรมวางให้ด้วยการใช้เมาส์ไปปรับที่ตัวพีคโดยตรงได้ การวางพีคนี้ต้องดูรูปร่างพีคเป็นหลัก บางครั้งวางพีคเดียวก็พอ แต่บางครั้งก็ต้องวางหลาย ๆ พีคหน่อย ตรงนี้ต้องทดลองทำเอาเอง อย่างเช่นในทีนี้พบว่าวางเพียงพีคเดียวก็พอแล้ว ก็ไปกด icon ที่ลูกศร 3 ชี้เพื่อให้โปรแกรมทำ peak fitting การกด icon นี้สามารถกดได้หลายครั้งจนกว่าจะพบว่ามันเข้าที่ ในที่นี้จะได้พีคที่เป็นเส้นสีน้ำเงิน และมีรายละเอียดตำแหน่งพีคปรากฏในแทป function ตรงลูกศร 4 ชี้ ส่วนรายละเอียดของพีคเช่นข้อมูลพารามิเตอร์ พื้นที่ ความสูง จะอยู่ข้างล่างตรงกรอบสีแดงที่ลูกศร 5 ชี้

เมื่อได้รูปร่างพีคแรกแล้วก็ทำการตรึงพีคนี้ไว้ เพื่อไม่ให้เกิดการเปลี่ยนแปลงใด ๆ ในการทำ peak fitting ให้กับพีคที่สอง การตรึงพีคนั้นทำได้โดยการไปกดเลือกพีคที่ต้องการตรึง (ในกรอบที่ลูกศร 4 ชี้) จากนั้นไปกดที่ icon ที่เป็นรูปแม่กุญแจข้างล่าง (ตรงกรอบสีน้ำเงินที่ลูกศร 6 ชี้) ทุกตัว มันจะเปลี่ยนจากเปิดอ้างอยู่เป็นล็อค การทำเช่นนี้จะทำให้พีคที่ทำการล็อกเอาไว้แล้วถูกตรึงเอาไว้ ไม่เกิดการเปลี่ยนแปลงใด ๆ ในการทำ peak fitting ในขั้นตอนถัดไป
 
รูปที่ ๔ การทำ peak fitting ของพีคแรก

รูปที่ ๕ เป็นการทำ peak fitting ให้กับพีคที่สอง เนื่องจากพีคนี้ค่อนข้างใหญ่ทำให้บ่อยครั้งการใช้ peak เพียงพีคเดียวไม่สามารถที่จะปรับเข้ากับข้อมูลดิบได้หมด จึงมักต้องทำการเติมเข้าไปหลายพีค การเติมเข้าไปหลายพีคนั้นทำได้หลายแบบ เช่นอาจเพิ่มพีคเข้าไปจำนวนหนึ่งก่อนจนเห็นว่ามันใกล้เคียงข้อมูลดิบ จากนั้นจึงค่อยกดไอคอนให้โปรแกรมเริ่มกระบวนการ peak fitting หรืออาจทำการเติมพีคเข้าไปก่อนหนึ่งพีค กดไอคอนให้โปรแกรมทำ peak fitting แล้วจึงค่อยเพิ่มพีคที่สอง กดไอคอนให้โปรแกรมทำ peak fitting ถ้าเห็นว่าผลที่ออกมายังไม่ดีก็เพิ่มพีคที่สามและทำเช่นนี้ต่อไปเรื่อย ๆ ตรงจุดนี้ต้องลองดูกับข้อมูลของตัวเอง แม้แต่ข้อมูลเดียวกันถ้าตัดเส้น base line ต่างกันก็อาจทำให้กระบวนการ peak fitting เพื่อให้พีครวมออกมาดูดีนั้นแตกต่างกันไปได้ แต่ถ้าคำนวณพื้นที่รวมของทุกพีคแล้วมักจะเห็นว่าพอ ๆ กัน
 
ในกรณีของพีคที่สองในรูปที่ ๕ นั้น ผมใช้การเติมเข้าไปทีละพีคและทำ peak fitting จากนั้นจึงค่อยเติมพีคที่สองและทำ peak fitting จากนั้นจึงเติมพีคที่สามและทำ peak fitting ก็พบว่าพีครวมที่ได้ปรับเข้ากับข้อมูลดิบได้ดี ดังนั้นพื้นที่พีคของพีคหลังจะคำนวณได้จากผลรวมของพื้นที่พีคที่เวลา 3.08811 นาที 3.15324 นาที และ 3.21724 นาที พึงสังเกตว่าแม้ว่าจะมีต้องใช้พีคถึงสามพีค แต่ตำแหน่งยอดพีคของทั้งสามพีคนั้นอยู่ประมาณเวลาเดียวกัน อันนี้เป็นไปได้ว่าแต่ละพีคนั้นเป็นตัวแทนของการคายออกมาจากอนุภาค (packing material ที่อยู่ในคอลัมน์) ที่มีขนาดต่าง ๆ กัน

รูปที่ ๕ การทำ peak fitting พีคที่สอง

เมื่อได้พีคที่สองแล้วก็ควรทำการตรวจสอบด้วยว่าการทำ peak fitting นั้นยอมรับได้หรือไม่ สิ่งที่ผมทำเป็นปรกติก็คือทำการลบพีคแรกทิ้งแล้วดูว่าผลรวมของฟังก์ชันที่ใช้ในการประมาณค่าพีคที่สองนั้นเข้ากับข้อมูลดิบหรือไม่ รูปที่ ๖ เป็นรูปที่ได้ลบฟังก์ชันของพีคแรกทิ้งไป เส้นสีน้ำเงินคือเส้นผลรวมของพีค 3 พีคที่ใช้ในการประมาณค่าพีคที่สอง ซึ่งก็พบว่าปรับเข้ากับข้อมูลดิบได้ดี
 
รูปที่ ๖ รูปร่างของพีคที่สองเมื่อทำการลบพื้นที่หนึ่งทิ้งไป
 
เนื่องจากขนาด packing material ใน packed column นั้นไม่ได้มีขนาดเท่ากันทุกอนุภาค แต่มีการกระจายตัวของขนาดอนุภาคอยู่ สารที่ถูกดูดซับเอาไว้ในรูพรุนของอนุภาคขนาดเล็กจะหลุดออกมาได้ง่ายกว่าสารที่ถูกดูดซับเอาไว้ในรูพรุนของอนุภาคขนาดใหญ่ เพราะรูพรุนของอนุภาคขนาดเล็กนั้นมีเส้นทางที่สั้นกว่าทำให้ใช้เวลาน้อยกว่าในการแพร่จากข้างในรูพรุนออกมายัง carrier gas ส่วนที่ทำให้พีคเกิดการลากหางจึงเป็นส่วนของสารที่หลุดออกมาจากรูพรุนของอนุภาคขนาดใหญ่ ด้วยเหตุนี้พีคที่ได้นั้นจึงมีลักษณะที่ไม่สมมาตร การใช้ฟังก์ชันที่สมมาตรเช่น Gaussian จะใช้ทำให้ต้องใช้พีคประมาณค่าจำนวนมากจึงจะปรับพีครวมให้เข้ากับข้อมูลดิบได้ การใช้ฟังก์ชัน Gaussian เช่นฟังก์ชันที่เรียกว่า SplitGaussian ของโปรแกรม fityk จะทำให้ใช้พีคประมาณค่าจำนวนน้อยกว่า และปรับเข้ากับข้อมูลดิบได้ดีกว่า

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

วันพุธที่ 29 กุมภาพันธ์ พ.ศ. 2555

GC-2014 ECD & PDD ตอนที่ ๑๙ การคำนวณพื้นที่พีค NH3 (แก้ไข ๑) MO Memoir : Wednesday 29 February 2555


เนื้อหาในเอกสารฉบับนี้เป็นการบันทึกการประชุมย่อยเมื่อช่วงเช้าวันนี้ เรื่องปัญหาการหาพื้นที่พีค NH3 จากเครื่อง GC-2014 ECD & PDD

. การปรับความปริมาณ NH3 ที่ฉีดเข้าคอลัมน์ในการสร้าง calibration curve

๑.๑ "ปริมาณ" ในที่นี้คือผลคูณระหว่าง "ความเข้มข้น" กับ "ปริมาตร"

๑.๒ ในการสร้าง calibration curve นั้นเราต้องฉีดสารที่ทราบ "ปริมาณ" ที่แน่นอน ที่ "ปริมาณ" ต่าง ๆ กัน เพื่อหาความสัมพันธ์ระหว่างสัญญาณ (พื้นที่พีค) กับ "ปริมาณ" สารที่ฉีด

๑.๓ ในกรณีของเครื่อง GC-2014 ECD & PDD ที่เราใช้นั้น การปรับความปริมาณ NH3 ที่ฉีดเข้าคอลัมน์ในการสร้าง calibration curve เราใช้วิธีการเปลี่ยน "ความเข้มข้น" ของ NH3 ในแก๊ส และเปลี่ยน "ปริมาตร" ของ sampling loop

๑.๔ เรามี sampling loop อยู่สองขนาดคือ 0.1 ml และ 0.5 ml ที่ใช้ในการสร้าง calibration curve แต่ในการวิเคราะห์ตัวอย่างนั้นเราจะใช้ขนาด 0.5 ml เท่านั้น

๑.๕ เราสร้างจุดแรกของ calibration curve ได้โดยใช้แก๊ส NH3 เข้มข้น 120 ppm และ sampling loop ขนาด 0.5 ml

๑.๖ จากนั้นเราสร้างจุดที่สองของ calibration curve ได้โดยยังคงใช้แก๊ส NH3 เข้มข้น 120 ppm แต่เปลี่ยนขนาด sampling loop เป็นขนาด 0.1 ml ซึ่งการฉีดแก๊สเข้มข้น 120 ppm ปริมาตร 0.1 ml จะเทียบเท่ากับการฉีดแก๊สเข้มข้น 24 ppm ปริมาตร 0.5 ml

๑.๗ ในการสร้างจุดที่สามและจุดที่สี่นั้น เดิมผมแนะนำให้ทำซ้ำแบบข้อ ๑.๕ และ ๑.๖ แต่ให้ปรับความเข้มข้นของ NH3 เป็น 80 ppm ซึ่งก็จะทำให้ได้จุดเทียบเท่ากับการฉีดแก๊สเข้มข้น 80 ppm ปริมาตร 0.5 ml และการฉีดแก๊สเข้มข้น 16 ppm ปริมาตร 0.5 ml

๑.๘ จากการตรวจสอบข้อมูลที่ได้จากการฉีดตามแบบข้อ ๑.๗ นั้น ผมสงสัยว่าข้อมูลอาจจะมีปัญหา และอาจต้องทำการตรวจสอบใหม่

๑.๙ ปัญหาที่ผมสงสัยคือในการปรับความเข้มข้น NH3 เป็น 80 ppm นั้น เราจำเป็นต้องลดอัตราการไหลของ NH3 ให้ต่ำลงไปอีก แต่การทำงานของ mass flow controller นั้นอาจจะควบคุมการไหลได้ไม่ดีในช่วงที่ใกล้ปิดเต็มที่หรือใกล้เปิดเต็มที่

๑.๑๐ mass flow controller ที่เราใช้กับ NH3 นั้นควบคุมการไหลในช่วง 0-10 และเราได้เคยสร้าง calibration curve เอาไว้ในช่วง 1-5 ในการทดลองตามปรกติที่ความเข้มข้น NH3 120 นั้น เราตั้ง mass flow controller ไว้ที่ไม่ถึง 1.1 ซึ่งเรียกว่าอยู่ติดขอบเขตล่างสุดของ calibration curve ที่เราสร้าง และอาจอยู่ที่ขอบเขตล่างสุดที่ mass flow controller ยังคงทำงานได้ดี

๑.๑๑ ดังนั้นเมื่อเราลดอัตราการไหลของ NH3 ลงเพื่อให้ได้ความเข้มข้น NH3 80 ppm เราต้องตั้งค่าที่ mass flow controller ให้ต่ำกว่า 1.0 ซึ่งทำให้ผมสงสัยว่าอาจจะมีปัญหาในการควบคุมอัตราการไหลได้

๑.๑๒ ดังนั้นเพื่อเป็นการทดสอบหรือหลีกเลี่ยงปัญหาดังกล่าว ผมจึงเสนอให้ใช้วิธีการปรับความเข้มข้นของ NH3 ที่ฉีดแทน แต่ให้ใช้ sampling loop ขนาด 0.1 ml ในการฉีด

๑.๑๓ เช่นอาจปรับความเข้มข้นของ NH3 ในแก๊สเป็น 240 ppm และฉีดด้วย sampling loop ขนาด 0.1 ml ซึ่งจะเทียบเท่ากับการฉีดแก๊ส NH3 เข้มข้น 48 ppm ด้วย sampling loop ขนาด 0.5 ml

๑.๑๔ ในทำนองเดียวกันถ้าเราทำตามแบบข้อ ๑.๑๓ แต่เปลี่ยนความเข้มข้น NH3 เป็น 360 ppm และฉีดด้วย sampling loop ขนาด 0.1 ml ซึ่งจะเทียบเท่ากับการฉีดแก๊ส NH3 เข้มข้น 72 ppm ด้วย sampling loop ขนาด 0.5 ml ดังนั้นเราก็จะได้จุดข้อมูลเทียบเท่ากับการฉีด NH3 ปริมาตร 0.5 ml ที่ความเข้มข้น NH3 4 จุดด้วยกันคือ 24 48 72 และ 120 ppm

๑.๑๕ เมื่อนำข้อมูลที่ได้จากข้อ ๑.๗ ไปเปรียบเทียบกับข้อมูลที่ได้ในข้อ ๑.๑๔ ก็น่าจะทำให้เราบอกได้ว่าจุดข้อมูล 16 และ 80 ppm นั้นมีปัญหาหรือไม่

. การคำนวณพื้นที่พีค NH3 จากโครมาโทแกรม

บันทึกนี้เป็นการปรับเปลี่ยนวิธีการลากเส้น base line และการทำ peak fitting ทดแทนวิธีการที่ได้กล่าวไว้ใน Memoir ปีที่ ๔ ฉบับที่ ๔๐๗ วันพฤหัสบดีที่ ๒๓ กุมภาพันธ์ ๒๕๕๕ เรื่อง "GC-2014 ECD & PDD ตอนที่ ๑๘ การคำนวณพื้นที่พีค NH3" โดยขอให้ทดลองใช้วิธีการที่จะกล่าวต่อไปนี้แทน

๒ก ตำแหน่งการลาก base line

๒.๑ ในช่วงสัปดาห์ที่ผ่านมา ด้วยการลากเส้น base line ตามวิธีการที่กล่าวในบันทึกฉบับที่ ๔๐๗ และทำ peak fitting พีค NH3 นั้นพบว่าพีค NH3 ที่ได้จากการทำ peak fitting จะสิ้นสุดที่เวลาประมาณ 2.45 นาที

๒.๒ ในกรณีที่ความเข้มข้น NH3 ต่ำนั้น พบว่าการลากเส้น base line และการทำ peak fitting ตามวิธีการกล่าวในบันทึกฉบับที่ ๔๐๗ จะให้พื้นที่พีคของ NH3 ค่อนข้างสูง

รูปที่ ๑ แนวลากเส้น base line ของพีค NH3 โดยเปลี่ยนตำแหน่งเวลาขอบเขตด้านขวาจากเดิมที่ 3.5 นาทีเป็น 2.45 นาทีตรงตำแหน่งลูกศรสีน้ำเงิน (โปรแกรมที่ใช้คือ fityk 0.9.8) ส่วนขอบเขตซ้ายยังคงอยู่ที่ตำแหน่งสัญญาณเริ่มวกกลับตรงลูกศรสีเขียว

๒.๓ ดังนั้นจึงขอปรับเปลี่ยนตำแหน่งจุดลากเส้น base line โดยที่ขอบเขตด้านขวาของพีค NH3 ยังคงเป็นตำแหน่งที่สัญญาณเริ่มมีการวกกลับเหมือนเดิม แต่ขอบเขตด้านขวาให้เปลี่ยนเป็นตำแหน่งที่เวลา 2.45 นาที (รูปที่ ๑)

๒.๔ หลังจากที่ตัด base line เรียบร้อยแล้ว ให้เติมพีคที่ 1 เข้าไปก่อนด้วยคำสั่ง auto-add โดยใช้ฟังก์ชัน SplitGaussian จากนั้นกดปุ่ม Starting fitting 1 ครั้ง (รูปที่ ๒)

รูปที่ ๒ หลังการเติมพีคที่ 1 และกดปุ่ม Starting fitting 1 ครั้ง เส้นสีเหลืองคือสัญญาณรวม จุดสีเขียวคือข้อมูลดิบ พีคที่ใส่เข้าไปเป็นเส้นสีแดง แต่ในขณะนี้โดยเส้นสัญญาณรวม (เส้นสีเหลือง) ทับอยู่

๒.๕ เติมพีคที่ 2 ด้วยคำสั่ง auto-add โดยใช้ฟังก์ชัน SplitGaussian และกดปุ่ม Starting fitting 1 ครั้ง (รูปที่ ๓)

รูปที่ ๓ หลังการเติมพีคที่ 2 และกดปุ่ม Starting fitting 1 ครั้ง เส้นสีเหลืองคือสัญญาณรวม จุดสีเขียวคือข้อมูลดิบ เส้นสีแดงคือพีคแต่ละพีคที่เติมเข้าไป

๒.๖ เติมพีคที่ 3 ด้วยคำสั่ง auto-add โดยใช้ฟังก์ชัน SplitGaussian และกดปุ่ม Starting fitting 1 ครั้ง (รูปที่ ๔)

รูปที่ ๔ หลังการเติมพีคที่ 3 และกดปุ่ม Starting fitting 1 ครั้ง จะเห็นว่าบริเวณในกรอบสีส้มนั้นยังมีความแตกต่างจากข้อมูลดิบอยู่มาก

๒.๗ เติมพีคที่ 4 ด้วยคำสั่ง auto-add โดยใช้ฟังก์ชัน SplitGaussian และกดปุ่ม Starting fitting 1 ครั้ง (รูปที่ ๕)

รูปที่ ๕ หลังการเติมพีคที่ 4 และกดปุ่ม Starting fitting 1 ครั้ง ที่นี้จะเห็นว่าสัญญาณรวมในบริเวณกรอบสีส้มจะเข้าได้ดีกับข้อมูลดิบแล้ว

๒.๘ พีคที่ ๔ ที่เติมเข้าไปนี้ผมคิดว่าเป็นสัญญาณส่วนต้นของพีคที่อยู่ถัดจากพีค NH3 โดยสังเกตจากการลดลงของช่วงหางพีค NH3 ซึ่งมีลักษณะคล้ายกับจะโป่งนูนขึ้นเล็กน้อย ทำให้สงสัยว่าสัญญาณช่วงท้ายของโครมาโทแกรมช่วงที่เราตัดมานั้นเป็นสัญญาณช่วงท้ายของพีค NH3 ที่ซ้อนทับอยู่กับสัญญาณช่วงต้นของพีคที่อยู่ถัดไป ดังนั้นในการทำ peak fitting จึงควรต้องทำการ fit peak เข้ากับสัญญาณรวมก่อน จากนั้นจึงตัดสัญญาณที่คิดว่าเป็นสัญญาณส่วนต้นของพีคที่อยู่ถัดไป (พีคที่ 4 ที่เติมเข้าไป) ออก
 
๒.๙ หลังจากที่ทำตามขั้นตอนในข้อ ๒.๗ แล้ว ให้ทำการลบพีคที่ 4 ออก จะได้ผลรวมสัญญาณของ 3 พีคแรก (เส้นกราฟสีเหลืองในรูปที่ ๖) ซึ่งผมเห็นว่าการลาดลงในช่วงเวลาตั้งแต่ 2.3 นาทีเป็นต้นไปของเส้นสีเหลือง (พีคที่ได้จากการทำ peak fitting) มีลักษณะที่เป็นธรรมชาติใกล้เคียงกับพีคปรกติที่ไม่ซ้อนทับกับพีคอื่น (ตามแนวเส้นประสีน้ำเงิน) มากกว่าพีคข้อมูลดิบ (จุดสีเขียวที่ลดลงตามแนวเส้นประสีเขียว)

๒.๑๐ พื้นที่พีค NH3 คำนวณโดยเอาพื้นที่พีคย่อยทั้ง 3 มารวมกัน ซึ่งในตัวอย่างนี้คือ (132869 + 7927.33 + 12689.1 = 153485.43)


รูปที่ ๖ หลังการตัดพีคที่ 4 ออก

. การสร้าง calibration curve

๓.๑ เมื่อตอนเช้าผมได้กล่าวถึงข้อสงสัยของผมเอาไว้ว่า ที่ปริมาณ NH3 เป็นศูนย์นั้น พื้นที่พีค NH3 ที่ได้จาก GC นั้นจะเป็นศูนย์ด้วยหรือไม่

๓.๒ การที่ปริมาณ NH3 เป็นศูนย์นั้นเกิดได้สองกรณี กรณีแรกเกิดจากการที่เราไม่ป้อน NH3 เข้าระบบ ซึ่งในกรณีนี้ผมคิดว่าพื้นที่พีค NH3 ที่ได้จาก GC ควรมีค่าเป็นศูนย์

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

๓.๔ แต่เท่าที่สังเกตจากการทำ peak fitting ที่ความเข้มข้นต่างกันนั้น ผมคิดว่าที่ปริมาณ NH3 เป็นศูนย์นั้น พื้นที่พีค NH3 ที่ได้จาก GC ควรจะเป็นศูนย์ด้วย

๓.๕ ในการทำ curve fitting ของกราฟระหว่างพื้นที่พีคกับความเข้มข้น NH3 นั้น ไม่จำเป็นต้องเป็นกราฟเส้นตรง แต่ถ้าพิจารณาแล้วคิดว่าการใช้กราฟเส้นตรงที่ยังคับให้ผ่านจุดศูนย์ดูแล้วไม่เข้ากับข้อมูล ก็ให้ทดลองใช้ฟังก์ชัน polynomial อันดับ 2 ดูก็ได้ (โดยบังคับให้ผ่านจุดศูนย์)

เรื่องงานในฉบับนี้คงพอแค่นี้ก่อน แล้วค่อยว่ากันใหม่อีกที

วันพฤหัสบดีที่ 23 กุมภาพันธ์ พ.ศ. 2555

GC-2014 ECD & PDD ตอนที่ ๑๘ การคำนวณพื้นที่พีค NH3 MO Memoir : Thursday 23 February 2555


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

รูปที่ ๑ โครมาโทแกรมของ PDD ที่ได้จากการวัดปฏิกิริยา NH3 oxidation ที่ 300ºC

รูปที่ ๑ เป็นโครมาโทแกรมของ PDD ที่ได้จากการวัดปฏิกิริยา NH3 oxidation ที่ 300ºC ในภาวะที่มีน้ำและ SO2 (ผลการทดลองของสาวน้อยหน้าบาน) ที่นำมาจากโปรแกรม GC Solution จะเห็นว่าเมื่อสิ้นสุดการวิเคราะห์ (30 นาที) สัญญาณของ PDD จะกลับมาที่ระดับเดียวกันกับตอนเริ่มต้น (ตามแนวเส้นประสีน้ำเงิน) นั่นแสดงว่าไม่มีสารใดยังคงหลุดออกมาจากคอลัมน์ (ซึ่งอาจแปลได้ว่าสารที่ฉีดเข้าไปนั้นออกมาจากคอลัมน์หมด หรือมีบางสารตกค้างอยู่ในคอลัมน์โดยไม่หลุดออกมา ณ อุณหภูมิที่ใช้ในการวิเคราะห์) 
 
พีคของ N2O และ NH3 อยู่ในบริเวณกรอบสีแดงที่แสดงในรูปที่ ๑ โดยพีคของ N2O จะออกมาที่เวลาก่อน 2 นาทีเล็กน้อยโดยอยู่บนส่วนหางของพีคที่เกิดจากการขยับวาล์ว 3 จากตำแหน่งเก็บตัวอย่างไปยังตำแหน่งฉีดสารตัวอย่าง ส่วนพีค NH3 จะออกมาหลังเวลา 2 นาทีเล็กน้อย โดยอยู่บนส่วนท้ายของพีคที่เกิดจากการขยับตำแหน่งวาล์ว 3 (ดูรูปที่ ๒ ในหน้าถัดไปประกอบ)
ในกรณีของเรานั้นโชคดีที่พีค N2O ไม่ซ้อนทับกับพีค NH3 และการใช้อุณหภูมิคอลัมน์ที่ 150ºC ทำให้เราลดปัญหาการมีพีคน้ำซ้อนอยู่บริเวณใต้พีค NH3 ไปได้

 รูปที่ ๒ ส่วนขยายบริเวณกรอบสี่เหลี่ยมสีแดงในรูปที่ ๑ ถ้านำโครมาโทแกรมนี้ไปเปรียบเทียบกับโครมาโทแกรมที่ไม่มี N2O จะเห็นว่าบริเวณที่ตีเส้นสีน้ำเงินนั้นมีการโป่งนูนขึ้นเล็กน้อย แสดงว่ามีการเกิด N2O ขึ้นเล็กน้อย

ในการนำโครมาโทแกรมมาคำนวณพื้นที่พีคด้วยโปรแกรม fityk นั้น ขอให้ทำตามขั้นตอนดังต่อไปนี้
๑. ใช้โครมาโทแกรมช่วงเวลา 1.5-4.0 นาที

๒. ขอบเขตทางด้านซ้าย (จุดเริ่มต้น) ของพีค NH3 ให้ใช้ตำแหน่งที่โครมาโทแกรมมีการวกกลับ (ตรงตำแหน่งลูกศรสีแดงในรูปที่ ๒)

๓. ทำให้จุดข้อมูลที่อยู่ทางด้านซ้ายของจุดเริ่มต้นพีค NH3 กลายเป็น inactive

๔. ของเขตทางด้านขวาให้ใช้ตำแหน่งที่เวลา 3.5 นาที

๕. จุดที่จะให้ลากเส้น base line ให้อยู่ต่ำกว่ากราฟโครมาโทแกรมเพียงเล็กน้อย อย่าให้เส้น base line ตัดหรืออยู่บนโครมาโทแกรม (ดูรูปที่ ๓ ประกอบ) เพราะฟังก์ชันที่เราจะใช้ fit curve (splitGaussina) นั้นมีค่าเป็นศูนย์หรือติดลบไม่ได้ มันมีค่าเข้าใกล้ศูนย์ได้แต่จะไม่เป็นศูนย์

๖. หลังจากได้แนวเส้น base line แล้วให้ใช้คำสั่ง strip background ในโปรแกรม fityk ก็จะเป็นการตัด base line ออก โครมาโทแกรมหลังการตัด base line จะเป็นดังรูปที่ ๔

๗. ในการทำ peak fitting ของพีค NH3 นั้น ให้ใช้ข้อมูลเริ่มจากตำแหน่งที่สัญญาณมีการวกกลับ (จากข้อ ๒) ไปจนถึงตำแหน่งเวลาที่ประมาณ 2.3 นาที (ดูรูปที่ ๔) สัญญาณช่วงนี้เมื่อตัด base line ออกไปแล้วผมคิดว่าเป็นเฉพาะสัญญาณของ NH3 เท่านั้น ถ้าเลือกสัญญาณออกไปทางด้านขวามากเกินไปจะทำให้พีคที่ได้นั้นมีการนำพื้นที่ส่วนต้นพีคของพีคอื่นที่อยู่ทางด้านขวาของพีค NH3 เข้ามาคำนวณด้วย แต่ถ้าเลือกสัญญาณเข้าทางซ้ายมากเกินไปจะทำให้การทำ peak fitting นั้นออกมาไม่ดี

๘. เมื่อเลือกตำแหน่งขอบเขตทางด้านขวาได้แล้ว ให้ทำการเติมพีคโดยใช้คำสั่ง auto-add โดยเลือกเติมพีคชนิด splitGaussian (ฟังก์ชันพีค Gaussian ที่ไม่สมมาตร) จากนั้นให้ใช้คำสั่ง Start fitting โปรแกรมก็จะทำการปรับพีคที่เติมเข้าไปนั้นให้เข้ากับพีค NH3 ที่เลือกเอาไว้

๙. ถ้าเลือกขอบเขตด้านขวาได้เหมาะสม พีคที่ได้จากการทำ peak fitting (พีคสีน้ำเงินในรูปที่ ๕) จะมีจุดยอดพีคใกล้เคียงกับจุดยอดพีค NH3 ของโครมาโทแกรม (ดูรูปที่ ๕) แต่ถ้าเลือกขอบเขตทางด้านขวาของพีคไม่เหมาะสม พีคที่ได้จากการทำ peak fitting จะมีจุดยอดขยับไปทางด้านซ้ายและแตกต่างไปจากจุดยอดพีค NH3 ของโครมาโทแกรมจนเห็นได้ชัดเจน (ดูรูปที่ ๖)


รูปที่ ๓ แนวทางการลากเส้น base line โดยใช้โปรแกรม fityk ตำแหน่งจุดทางด้านซ้ายให้ใช้จุดที่โครมาโทแกรมมีการวกกลับ ส่วนตำแหน่งจุดทางด้านขวาให้ใช้ตำแหน่งเวลาที่ 3.5 นาที

รูปที่ ๔ โครมาโทแกรมของรูปที่ ๓ หลังการตัด base line แล้ว

 รูปที่ ๕ พีคสีน้ำเงินคือพีค NH3 ที่ได้จากการทำ peak fitting ด้วยโปรแกรม fityk ค่าความสูง พื้นที่พีค และพารามิเตอร์ต่าง ๆ ของพีคอ่านได้จากตารางต่าง ๆ ที่อยู่ทางด้านขวาของโปรแกรม


รูปที่ ๖ ถ้าเลือกขอบเขตด้านขวาออกมาทางด้านขวามากเกินไป จะเห็นว่าพีคที่ได้จากการทำ peak fitting (เส้นสีน้ำเงิน) นับจากช่วงยอดพีคออกมาทางด้านขวาจะแตกต่างจากโครมาโทแกรมอยู่มาก และตำแหน่งยอดของพีคจะลดต่ำลงและขยับไปทางด้านซ้าย

ผมอยากให้สาวน้อยหน้าบานและสาวน้อยจากเมืองชายทะเลทดลองคำนวณพื้นที่พีค NH3 ตามวิธีการที่ได้กล่าวมานี้ก่อน เพื่อที่จะได้ดูว่ามันใช้การได้ดีหรือไม่ ถ้าเป็นไปได้อยากให้ทดลองกับโครมาโทแกรมที่ได้จากการทำ calibration curve ของ NH3 ก่อน