แสดงบทความที่มีป้ายกำกับ fixed-bed แสดงบทความทั้งหมด
แสดงบทความที่มีป้ายกำกับ fixed-bed แสดงบทความทั้งหมด

วันพุธที่ 28 เมษายน พ.ศ. 2564

อัตราส่วน Length-to-Diameter ที่เหมาะสมของ Fixed-bed reactor MO Memoir : Wednesday 24 April 2564

เมื่อสัปดาห์ที่แล้วได้รับอีเมล์ฉบับหนึ่งจากสถาบันการศึกษาใกล้แม่น้ำเจ้าพระยา เห็นว่าคำถามของเขาน่าสนใจดีก็ สิ่งที่ผมตอบเขาไปตอนนั้นก็คือ "มันไม่มีกฎเกณฑ์ตายตัว" เพราะขึ้นกับปัจจัยหลาย ๆ อย่าง ส่วนจะมีปัจัยใดบ้างนั้นก็จะขอนำมารวบรวมไว้ในบทความนี้ (เฉพาะเท่าที่คิดออกตอนเขียนบนความนี้)

สำหรับผู้ที่เรียนวิศวกรรมเคมีแล้ว ในเรื่องของการหาขนาดของเครื่องปฏิกรณ์ (chemical reactor หรือที่มักจะเรียกกันสั้น ๆ ว่า reactor) จะมีพารามิเตอร์ตัวหนึ่งโผล่เข้ามาคือ "space velocity" ซึ่งถ้าเป็นกรณีของปฏิกิริยาเอกพันธุ์ (homogeneous reaction) ค่านี้จะเท่ากับอัตราการไหลของของไหลหารด้วยปริมาตรของเครื่องปฏิกรณ์ (ดังนั้นหน่วยของมันจะเป็น "ต่อเวลา") ถ้าของไหลนั้นเป็นแก๊สและหน่วยเวลาเป็นชั่วโมง ก็จะเรียกว่า Gas Hourly Space Velocity (GHSV) และถ้าของไหลนั้นเป็นของเหลวก็จะเรียกว่า Liquid Hourly Space Velocity (LHSV) ความหมายในทางปฏิบัติก็คือถ้าเครื่องปฏิกรณ์สองตัวมีขนาดที่แตกต่างกัน แต่ถ้าค่า GHSV (หรือ LHSV) เท่ากัน ก็ควรจะได้ค่า conversion (สัดส่วนสารตั้งต้นที่ทำปฏิกิริยาไป) เท่ากัน

แต่ในกรณีของปฏิกิริยาวิวิธพันธุ์ (heterogeneous reaction) ที่มีการใช้ตัวเร่งปฏิกิริยาที่เป็นของแข็งบรรจุอยู่ในเบดนิ่ง (fixed bed หรือ packed bed) นั้น ปฏิกิริยาจะเกิดได้มากหรือน้อยนั้นขึ้นอยู่กับปริมาณตัวเร่งปฏิกิริยาที่มีอยู่ ไม่ได้ขึ้นกับปริมาตรเครื่องปฏิกรณ์ เพราะถ้าไม่มีตัวเร่งปฏิกิริยา ปฏิกิริยานั้นก็จะไม่เกิด ค่า space velocity ตรงนี้ก็จะเปลี่ยนเป็นคิดเทียบต่อหน่วยน้ำหนักตัวเร่งปฏิกิริยาแทนปริมาตรเครื่องปฏิกรณ์ กล่าวคือจะเท่ากับอัตราการไหล (ของของไหล) ต่อหน่วยน้ำหนักตัวเร่งปฏิกิริยา ในกรณีนี้ก็จะเรียกว่าเป็น Weight Hourly Space Velocity (WHSV)

ลองมาดูกรณีของ fixed-bed นิดนึง สมมุติว่าเครื่องปฏิกรณ์เครื่องหนึ่งบรรจุตัวเร่งปฏิกิริยาอย่างเดียว 100 kg โดยเบดมีปริมาตร V1 ส่วนเครื่องที่สองนำตัวเร่งปฏิกิริยา 100 kg เท่ากัน แต่มาผสมกับ inert material จนเบดมีปริมาตร V2 ที่มีค่าเป็น 2 เท่าของ V1 (หรือ V2 = 2V1) ถ้าเราถือว่าปริมาตรของเบดคือปริมาตรของเครื่องปฏิกรณ์ เครื่องที่ 2 ก็จะมี GHSV เพียงครึ่งเดียวของเครื่องที่หนึ่ง ดังนั้นค่า conversion ที่ได้น่าจะแตกต่างกัน แต่ถ้าคิดในรูปของ WHSV แล้ว ทั้งสองเครื่องนั้นมีน้ำหนักตัวเร่งปฏิกิริยาเท่ากัน แม้ว่าปริมาตรเบดจะต่างกัน มันก็จะมีค่า conversion เหมือนกัน

fixed-bed นั้นส่วนใหญ่จะวางในแนวตั้ง ตัวเบดจะมีลักษณะเป็นทรงกระบอก และการไหลผ่านเบดนั้นจะเป็นการไหลผ่านในแนวแกนตั้ง (ส่วนใหญ่จะเป็นแบบบนลงล่าง) มันมีบางแบบเหมือนกันที่เบดวางในแนวตั้ง แต่เบดเป็นรูปวงแหวนคือมีรูตรงแกนกลาง และการไหลจะเป็นในแนวรัศมี เช่นแก๊สไหลเข้าไปในช่องว่างตอนกลาง และไหลผ่านเบดในแนวรัศมีออกไปทางด้านข้าง แต่ในที่นี้จะขอจำกัดเฉพาะเบดที่วางตั้งและเป็นการไหลในแนวแกนเท่านั้น

ก่อนอื่นต้องขอแยกระหว่าง "ปริมาตรของ vessel ที่บรรจุเบด" และ "ปริมาตรของเบด"

vessel นั้นมีปริมาตรที่มากกว่าเบดอยู่แล้ว เพียงแต่ในแต่ละ vessel ไม่จำเป็นต้องมีเบดเดียวต่อเนื่อง แต่อาจประกอบด้วยชั้นเบดตื้น ๆ หลายเบดเรียงต่อกันอยู่ภายใน อย่างเช่น reactor ที่ใช้ในการออกซิไดซ์ SO2 ไปเป็น SO3 ในรูปที่ ๑ ข้างล่าง ดังนั้นถ้าคิดปริมาตรเบดเพื่อให้ได้ค่า conversion ที่ต้องการ ก็ต้องเอาปริมาตรเบดสั้น ๆ เหล่านี้มาบวกรวมกัน

รูปที่ ๑ fixed-bed ที่ใช้ในการออกซิไดซ์ SO2 ไปเป็น SO3 (จากสิทธิบัตรประเทศสหรัฐอเมริกาเลขที่ 8,758,718 B2 เรื่อง "Low temperature sulphur dioxide oxidation catalyst for sulfuric acid manufacture" ซึ่งเป็นชื่อที่แปลกตรงที่ตรง sulphur dioxide นั้นสะกดแบบ UK แต่พอมาเป็น sulfuric acid ดันมาสะกดแบบอเมริกา)

ทีนี้สมมุติว่าเราคำนวณออกมาแล้วว่าเพื่อให้ได้ค่า conversion ที่ต้องการนั้นต้องใช้ตัวเร่งปฏิกิริยาหนักเท่าใด และจาก bulk density ของตัวเร่งปฏิกิริยา เราก็จะสามารถคำนวณหาปริมาตรของเบดได้ แต่ปริมาตรของเบดทรงกระบอกคือผลคูณะหว่างพื้นที่หน้าตัด (D) และความลึกของเบด (L) คำถามที่เขาถามผมมาก็คือ มันมีเกณฑ์อะไรกำหนดไว้หรือไม่ว่าอัตราส่วนระหว่าง L ต่อ D นั้นควรมีค่าอยู่ในช่วงเท่าใด ซึ่งคำตอบที่ผมให้เขาไปก็คือ "มันไม่มีกฎเกณฑ์ตายตัว"

ทีนี้มันมีปัจจัยอะไรบ้างที่ส่งผลต่อการเลือกว่าจะให้เบดนั้นกว้างแต่ตื้น (D มาก L น้อย) หรือจะให้เบดนั้นแคบแต่ลึก (D น้อย L มาก) ตัวแรกที่จะขอยกมาก็คือ "ความดัน" ที่ใช้ในการทำปฏิกิริยา

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

ปัจจัยที่สองก็คือ "ความดันลดคร่อมเบด" หรือ pressure drop ที่ยอมรับได้ ที่อนุภาคตัวเร่งปฏิกิริยาขนาดเท่ากันและ volumetric flow rate เดียวกัน เบดที่กว้างแต่ตื้นนั้นจะมี pressure drop น้อยกว่าเบดที่แคบแต่ลึก แต่เมื่อความเร็วในการไหลลดต่ำลง ก็ต้องระวังเรื่องของ external mass and heat transfer resistance ด้วย

คือเวลาที่ fluid ไหลผ่านอนุภาคของแข็ง บริเวณรอบ ๆ ผิวของแข็งนั้นอาจมีชั้นฟิล์มของไหลหุ้มอยู่รอบอนุภาค ชั้นฟิล์นี้เป็นชั้นต้านทานการแพร่ของสารตั้งต้น/ผลิตภัณฑ์ระหว่าง bulk fluid และพื้นผิวตัวเร่งปฏิกิริยาได้ ที่อัตราเร็วในการไหลที่สูงพอถึงระดับหนึ่ง ชั้นฟิล์มนี้จะหายไป แต่ถ้าไปลดอัตราการไหลให้ต่ำลงเพื่อหวังจะลด pressure drop โดยที่ยังไม่เกิดชั้นฟิล์มมันก็จะไม่มีปัญหาอะไร แต่ถ้าลดต่ำเกินไปจนเกิดชั้นฟิล์มนี้ขึ้น อัตราการเกิดปฏิกิริยาจะลดต่ำลง (แม้ว่า WHSV จะคงเดิม) ในกรณีของปฏิกิริยาคายความร้อนนั้น อนุภาคตัวเร่งปฏิกิริยาจะรับความร้อนที่ปฏิกิริยาคายออกมา และมันต้องระบายความร้อนนี้ต่อให้กับ bulk fluid ที่ไหลผ่าน และถ้าเกิดชั้นฟิล์มนี้เมื่อใด การระบายความร้อนจะลดต่ำลง ทำให้อุณหภูมิตัวเร่งปฏิกิริยาเพิ่มสูงขึ้น และถ้ามากเกินไปก็อาจทำความเสียหาย (แบบถาวร) ให้กับตัวเร่งปฏิกิริยาได้ สำหรับการทดลองในระดับห้องปฏิบัติการหรืองานวิจัยที่ไม่ได้ใช้อัตราการไหลที่สูงมากนั้น ปัญหานี้มีโอกาสที่จะพบเจอได้ง่ายถ้าไม่ระวัง

รูปที่ ๒ ตัวอย่างหน้าตา furnace ของปฏิกิริยา steam reforming ที่จะบรรจุตัวเร่งปฏิกิริยาไว้ในท่อสีแดง แก๊สสารตั้งต้นที่ป้อนเข้ามาจะถูกกระจายให้ไหลเข้าไปในท่อเหล่านี้ที่ทำหน้าที่เหมือน fixed-bed ที่มีหน้าตัดแคบแต่ยาวมาก แล้วค่อยมารวมกันใหม่ที่ทางออก (จากเอกสาร Industrial Solutions. "Ammonia technology" ของ thyssenkrupp

ปัจจัยสุดท้ายที่ขอกล่าวถืงก็คือ "การเปลี่ยนแปลงพลังงาน" ของการเกิดปฏิกิริยา ในกรณีของ fixed-bed นั้น ถ้าปฏิกิริยานั้นมีการดูดหรือคายพลังงานต่ำมาก เราก็พอจะประมาณได้ว่า fixed-bed นั้นทำงานแบบ Isothermal หรืออุณหภูมิคงที่ และถ้าปฏิกิริยานั้นมีการดูดหรือคายพลังงานไม่มากเกินไป ก็จะให้ fixed-bed นั้นทำงานแบบ adiabatic คือถือว่าไม่มีการถ่ายเทความร้อนระหว่างตัวเบดกับสภาพแวดล้อม คือปล่อยให้อุณหภูมิในเบดลดลงไปเรื่อย ๆ (ในกรณีของปฏิกิริยาดูดความร้อน) หรือปล่อยให้มันเพิ่มสูงขึ้นเรื่อย ๆ (ในกรณีของปฏิกิริยาคายความร้อน)

การเกิดปฏิกิริยาใน fixed-bed ที่ทำงานแบบ adiabatic นั้น ถ้าเป็นปฏิกิริยาดูดความร้อนก็จะทำการให้ความร้อนแก่สารตั้งต้นก่อนไหลเข้าเบด และเมื่อปฏิกิริยาดำเนินไปข้างหน้าเรื่อย ๆ อุณหภูมิก็จะลดต่ำลง ทำให้ปฏิกิริยามีแนวโน้มที่จะหยุดการเกิด แต่ถ้าผ่านเบดแรกแล้วยังไม่ได้ค่า conversion ที่ต้องการ ก็จะมีการป้อนความร้อนเพิ่มเติมให้กับสารที่ออกมาจากเบดแรก แล้วป้อนเข้าเบดที่สองต่อ ทำเช่นนี้ต่อไปเรื่อย ๆ จนกว่าจะได้ค่า conversion ที่ต้องการ

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

แต่ในกรณีของปฏิกิริยาที่มีการดูดความร้อนสูงมากหรือคายความร้อนสูงมากนั้น การแยกเบดเป็นเบดตื้น ๆ หลายตัวต่ออนุกรมกันเพื่อให้ได้ค่า conversion ที่ต้องการนั้นจะมีปัญหา เพราะจะกลายเป็นว่าเบดต้องตื้นมาก (ปฏิกิริยา partial oxidation บางปฏิกิริยานั้น อุณหภูมิในเบดสามารถเพิ่มขึ้นได้ถึง 100ºC ภายในระยะทางแค่ 10 cm) ในกรณีเช่นนี้จะแก้ปัญหาด้วยการแยกเป็นเบดที่มีพื้นที่หน้าตัดเล็ก ๆ จำนวนมาก (เรียกว่าเอา tube มาเป็น reactor ก็ได้) ทำงานคู่ขนานกัน โดยมีการให้ความร้อนหรือระบายความร้อนแก่ตัวเบดตลอดทั้งความยาว reactor พวกนี้จะมีค่าอัตราส่วน L/D ที่สูง ก็เพราะทรงกระบอกที่เล็กลงจะมีพื้นที่ผิวต่อหน่วยปริมาตรสูงขึ้น การถ่ายเทความร้อนระหว่างผนัง tube กับแกนกลางเบดก็จะทำได้ดีขึ้น

อย่างเช่นในกรณีของปฏิกิริยา steam reforming ที่เกิดที่อุณหภูมิระดับ 1000ºC นั้น (ปฏิกิริยาระหว่าง CH4 กับไอน้ำ เพื่อผลิต H2 และ CO โดยมี CO2 แถมด้วย) ตัว reactor ก็คือ tube ที่ติดตั้งอยู่ใน furnace (รูปที่ ๒) ที่มีอยู่จำนวนมากเรียงตัวคู่ขนานกัน การให้ความร้อนก็ใช้เปลวไฟที่อยู่ภายนอกท่อ แก๊สที่ไหลเข้ามาก็จะแยกเข้าแต่ละ tube และไปบรรจบกันที่ทางออกใหม่

ถ้าเป็นปฏิกิริยาคายความร้อนเช่นพวก partial oxidation ก็ให้นึกภาพ shell and tube heat exchanger ที่วางตั้ง โดยที่แต่ละ tube จะมีตัวเร่งปฏิกิริยาบรรจุอยู่และทำหน้าที่เสมือนเป็น fixed-bed reactor เล็ก ๆ โดยเพื่อให้ได้กำลังการผลิตที่ต้องการ จะต้องมี tube มากเกินกว่า 10,000 tube ก็ไม่ใช่เรื่องผิดปรกติ ที่เคยเห็นมาตัวหนึ่งก็เป็น tube ขนาดเพียงแค่ 25 mm แต่บรรจุตัวเร่งปฏิกิริยาไว้ลึก 2.0 - 3.0 เมตร และจำนวน tube ก็มากกว่า 10,000 tube

ด้วยการที่เบดมีหน้าตัดเล็กแต่ลึก ดังนั้นเพื่อไม่ให้ค่า pressure drop นั้นสูงเกินไป ขนาดอนุภาคตัวเร่งปฏิกิริยาเทียบกับเส้นผ่านศูนย์กลางเบดก็เรียกว่าใหญ่อยู่เหมือนกัน ตัวอย่างหนึ่งที่เคยเห็นก็คือเบดขนาดเส้นผ่านศูนย์กลาง 25 mm ลึก 2.5 m ใช้ตัวเร่งปฏิกิริยาขนาด 8 mm

วันพุธที่ 6 พฤษภาคม พ.ศ. 2563

การเลือกค่า WHSV (Weight Hourly Space Velocity) สำหรับการทดลอง MO Memoir : Wednesday 6 May 2563

เนื้อหาใน Memoir ฉบับนี้ต้องขออิงยัอนหลังไปยัง Memoir ปีที่ ๒ ก่อนหน้า ๒ ฉบับคือ
ฉบับที่ ๗๓ วันศุกร์ที่ ๖ พฤศจิกายน ๒๕๕๒ เรื่อง "GHSV หรือ WHSV" และ
ฉบับที่ ๗๕ วันอาทิตย์ที่ ๘ พฤศจิกายน ๒๕๕๒ เรื่อง "การปรับ WHSV"

ในกลศาสตร์ของไหล (Fluid mechanics) นั้น มีพารามิเตอร์ไร้มิติ (dimensionless) ที่สำคัญตัวหนึ่งคือ Reynolds number (ที่ย่อว่า Re) กล่าวคือไม่ว่าของไหลนั้นจะเป็นแก๊สหรือของเหลว ไม่ว่าจะมีความหนืดหรือความหนาแน่นเท่าใดก็ตาม (พารามิเตอร์สองตัวหลังนี้เปลี่ยนแปลงตามอุณหภูมิ) ถ้าการไหลนั้นมีค่า Re เดียวกัน พฤติกรรมการไหลจะเหมือนกัน ทำให้เราสามารถใช้ความรู้ที่ได้จากการทดลองในระบบขนาดเล็ก ขยายขนาดขึ้นเป็นระบบขนาดใหญ่ได้
 
ในการออกแบบเครื่องปฏิกรณ์เคมี (Chemical reactor) ก็มีพารามิเตอร์ทำนองเดียวกันคือ Space Velocity ในกรณีของปฏิกิริยาเอกพันธ์ (Homogeneous reaction) ค่านี้มักจะนิยามเป็นอัตราการไหลโดยปริมาตรต่อชั่วโมง (ของสารตั้งต้นที่ป้อนเข้าเครื่องปฏิกรณ์) ต่อปริมาตรของเครื่องปฏิกรณ์ ถ้าสารที่ไหลเข้านั้นเป็นแก๊สก็จะเรียกว่า Gas Hourly Space Velocity (GHSV) และถ้าสารที่ไหลเข้านั้นเป็นของเหลวก็จะเรียกว่า Liquid Hourly Space Velocity (LHSV) กล่าวคือที่ค่า Space Velocity เดียวกัน ค่า conversion สารตั้งต้นก็ควรจะเท่ากัน แต่ทั้งนี้พฤติกรรมการผสมของสารในเครื่องปฏิกรณ์นั้นยังคงต้องเหมือนเดิม ปรกติก็จะอิงอยู่ที่เป็นการผสมที่สม่ำเสมอ ทั่วถึงเป็นเนื้อเดียวกัน ถ้าเป็นเครื่องปฏิกรณ์แบบถังปั่นกวน (Stirred tank) ก็หมายถึงความเข้มข้นเหมือนกันตลอดถังปริมาตรในถัง ถ้าเป็นเครื่องปฏิกรณ์แบบท่อ (Tubular reactor) ก็หมายถึงความเข้มข้นตลอดพื้นที่หน้าตัดจะเท่ากันหมด ไม่ว่าเป็นที่ตำแหน่งความยาวตำแหน่งใด ๆ ก็ตาม (แต่ความเข้มข้นเปลี่ยนแปลงได้ตามแนวความยาวของเครื่องปฏิกรณ์)
   
ในกรณีของปฏิกิริยาวิวิธพันธ์ (Heterogeneous reaction) ที่ใช้ตัวเร่งปฏิกิริยาที่เป็นของแข็งนั้นจะแตกต่างออกไปเล็กน้อย กล่าวคือแทนที่จะอิงปริมาตรเครื่องปฏิกรณ์ก็จะไปอิงน้ำหนักของตัวเร่งปฏิกิริยาที่ใช้นั้นแทน อีกเรื่องที่แตกต่างออกไปก็คือพฤติกรรมการไหลของของไหลที่ไหลผ่านพื้นผิวของแข็ง มันจะมีเรื่องของชั้นฟิล์มต้านทานการถ่ายเทมวลสารและพลังงานความร้อนเข้ามายุ่ง การมีหรือไม่มีความต้านทานนี้ขึ้นอยู่กับอัตราการไหลของของไหล กล่าวถือถ้าอัตราการไหลสูงพอก็จะไม่มีชั้นฟิล์มต้านทาน แต่ถ้าอัตราการไหลต่ำเกินไปมันก็จะเกิด และจะหนาขึ้นเรื่อย ๆ ตามค่าการอัตราการไหลที่ลดต่ำลง ดังการใช้ค่า WHSV เปรียบเทียบการทำปฏิกิริยาจึงต้องมั่นใจว่าผลที่นำมาเปรียบเทียบกันนั้นไม่ได้มีผลของความต้านทานการแพร่ผ่านชั้นฟิล์มปนอยู่
  
สำหรับวันนี้จะเป็นกรณีของการทดลองกับ Fixed-bed reactor คำถามหนึ่งสำหรับผู้ที่ทำการทดลองเปรียบเทียบความว่องไวในการทำปฏิกิริยาของตัวเร่งปฏิกิริยาต่างชนิดกันต้องตอบให้ได้ก็คือควรใช้ WHSV เท่าไรดี คำตอบของคำถามดังกล่าวอาศัยหลักการที่ว่า ค่าสัดส่วนสารตั้งต้นที่ทำปฏิกิริยาไป (ที่เรียกว่าติดปากว่าค่า conversion) ไม่ควรจะต่ำไปหรือสูงเกินไป ค่า conversion ที่ต่ำมากนั้น (ผลจากการใช้ WHSV ที่สูงเกินไป) ผลความคลาดเคลื่อนจากการวิเคราะห์ตัวอย่างจะมีส่วนสูง ยากที่จะบอกว่าตัวเร่งปฏิกิริยาตัวไหนว่องไวกว่ากัน ในขณะที่ความเข้มข้นสูงมากจนติดระดับ converion 100% นั้น (ผลจากการใช้ WHSV ที่ต่ำเกินไป) มันก็ไม่บอกอะไรเลย ดังนั้นค่า WHSV ที่เหมาะสมจึงควรเป็นค่าที่ให้ค่า conversion ที่ไม่ต่ำเกินไป และก็ไม่ควรให้สูงถึงระดับ 100%
  
แต่ถ้าเป็นการหาว่าเมื่อสารตั้งต้น A เริ่มสลายตัว จะเกิดสารอะไรเป็นผลิตภัณฑ์สารแรก อย่างเช่นเราทดลองทำปฏิกิริยาและพบ B กับ C เป็นผลิตภัณฑ์ แล้วเกิดคำถามขึ้นมาว่าการเกิด B และ C นั้นเป็นปฏิกิริยาคู่ขนานกัน (คือ A เปลี่ยนไปเป็น B และ C ได้โดยตรง) หรือเป็นปฏิกิริยาที่เกิดต่อเนื่อง (คือ A เกิดเป็น B ก่อน จากนั้น B จึงค่อยเปลี่ยนเป็น C) ในกรณีนี้จะทำการทดลองที่ค่า conversion ต่ำเข้าใกล้ศูนย์ กล่าวคือที่ค่า conversion ต่ำมากนี้ ถ้าปฏิกิริยาเกิด B และ C เป็นปฏิกิริยาคู่ขนาน เราจะเห็นทั้ง B และ C ในสายผลิตภัณฑ์ แต่ถ้าเป็นปฏิกิริยาที่เกิดต่อเนื่อง เราจะเห็นเฉพาะ B ในสายผลิตภัณฑ์โดยไม่เห็น C
  
ถ้าเป็นการทดลองเพื่อวัดค่าจลนศาสตร์การเกิดปฏิกิริยา (Kinetic parameters) ยังมีเงื่อนไขอื่นที่ต้องพิจารณาอีก ๒ เงื่อนไขด้วยกัน เงื่อนไขแรกคือค่า WHSV ที่ใช้ในการทดลองต้องไม่ทำให้เกิดชั้นฟิล์มต้านทานการถ่ายเทมวลสารและความร้อนระหว่าง bulk fluid กับพื้นผิวภายนอกของอนุภาคตัวเร่งปฏิกิริยา (External mass and heat transfer resistance) ซึ่งค่านี้อาจหาได้จากการทดลองด้วยการปรับอัตราการไหลและน้ำหนักตัวเร่งปฏิกิริยาที่ใช้โดยให้ค่า WHSV เท่ากัน ถ้าพบว่าค่าอัตราการไหลที่ต่ำที่สุดที่ทำให้อัตราการเกิดปฏิกิริยาไม่สูงขึ้น ก็แสดงว่าที่อัตราการไหลค่านั้นหรือต่ำกว่านั้นจะเกิดชั้นฟิล์มต้านทานขึ้น
  
เงื่อนไขที่สองคือขนาดของอนุภาคตัวเร่งปฏิกิริยา (และขนาดรูพรุน) ต้องไม่ทำให้เกิด Internal mass transfer resistance เพราะไม่เช่นนั้นอัตราการหายไปของสารตั้งต้นถ้าถูกควบคุมด้วยอัตราการแพร่แทนที่จะเป็นอัตราการทำปฏิกิริยา การจะมีความต้านทานตรงนี้หรือไม่นั้นขึ้นอยู่กับหลายปัจจัย ไม่ว่าจะเป็นขนาดโมเลกุลสารตั้งต้น ขนาดเส้นผ่านศูนย์กลางรูพรุนที่สารตั้งต้นต้องแพร่เข้าไป และขนาดของอนุภาคตัวเร่งปฏิกิริยา แต่โดยหลักคือถ้าอนุภาคตัวเร่งปฏิกิริยามีขนาดเล็กมาก รูพรุนมีขนาดใหญ่ และโมเลกุลสารตั้นต้นมีขนาดเล็ก ก็ถือได้ว่าในการทดลองนั้นไม่มี Internal mass transfer resistance การหาว่าการทดลองนั้นจะมีปัญหา Internal mass transfer resistance หรือไม่นั้นทำได้ด้วยการใช้ตัวเร่งปฏิกิริยาที่มีขนาดอนุภาคแตกต่างกัน ทำการทดลองที่ WHSV เดียวกัน ถ้าพบว่าการใช้ตัวเร่งปฏิกิริยาที่มีขนาดอนุภาคเล็กลงถึงระดับหนึ่งหรือเล็กกว่านั้นแล้วไม่ทำให้ค่า conversion ของสารตั้งต้นเพิ่มขึ้น ก็แสดงว่าขนาดอนุภาคตัวเร่งปฏิกิริยาที่ใหญ่ไม่เกินค่านั้นจะไม่มีปัญหาเรื่อง Internal mass transfer resistance แล้ว และเช่นเดียวกันอาจใช้วิธีการคำนวณก็ได้ แต่มันจะวุ่นวายกว่า
  
พึงสังเกตว่ากรณีของอนุภาคตัวเร่งปฏิกิริยานั้น มักจะกล่าวถึงความต้านทานการถ่ายเทมวลสารภายในรูพรุนเป็นหลัก ไม่ค่อยจะพูดถึงความต้านทานการถ่ายเทความร้อน ทั้งนี้เป็นเพราะของแข็งนั้นมีค่าการนำความร้อนที่สูง ยิ่งเป็นอนุภาคขนาดเล็กด้วยแล้วจะถือได้ว่าอุณหภูมิตลอดทั้งอนุภาคของแข็ง (ไม่ว่าจะเป็นที่แกนกลางหรือที่ผิว) จะเท่ากันหมด จะยกเว้นบ้างก็กรณีของปฏิกิริยาคายความร้อนสูงและอนุภาคตัวเร่งปฏิกิริยามีขนาดใหญ่ ที่อาจทำให้อุณหภูมิที่กึ่งกลางของอนุภาคตัวเร่งปฏิกิริยานั้นสูงกว่าที่ผิวนอก

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


วันอาทิตย์ที่ 3 พฤษภาคม พ.ศ. 2563

สมดุลความร้อนรอบ Laboratory scale fixed-bed reactor MO Memoir : Sunday 3 May 2563

ในการเรียนรู้การใช้อุปกรณ์ต่าง ๆ ที่ใช้ในการทดลองนั้น ไม่ควรจะเรียนเพียงแค่ใช้งานมันอย่างไร แต่ควรเข้าใจถึงโครงสร้างของตัวอุปกรณ์ และสิ่งต่าง ๆ ที่เกิดขึ้นในระหว่างการทำงานของอุปกรณ์นั้นด้วย เพื่อที่จะได้รู้ว่าเพื่อจะให้อุปกรณ์นั้นทำงานได้ดังต้องการนั้นต้องมีการเตรียมระบบอย่างไร และมีปัจจัยใดบ้างที่อาจส่งผลต่อการทำงานของอุปกรณ์นั้นได้ อย่างเช่นวันนี้จะขอยกตัวอย่างกรณีของ Laboratory scale fixed-bed reactor ที่เป็นอุปกรณ์หลักตัวหนึ่งในการทดสอบความว่องไวในการทำงานของตัวเร่งปฏิกิริยา ในระดับห้องปฏิบัติการนั้นอุปกรณ์ตัวนี้มีทั้งการจัดวางในแนวดิ่ง (vertical) และแนวนอน (Horizontal) แต่ที่กลุ่มของเราใช้อยู่นั้นเป็นชนิดที่วางในแนวดิ่งที่มีโครงสร้างดังแสดงในรูปที่ ๑ ข้างล่าง
  
รูปที่ ๑ แผนผังการถ่ายเทความร้อนเข้า-ออกจากระบบ Laboratory scale fixed-bed reactor

Fixed-bed reactor ตัวนี้ได้รับความร้อนจาก tubular furnace ที่วางตั้งในแนวดิ่ง มี thermocouple สอดอยู่ใน thermowell เพื่อวัดอุณหภูมิจากทางด้านล่างของเบดตัวเร่งปฏิกิริยาและยังทำหน้าที่รองรับเบดตัวเร่งปฏิกิริยาเอาไว้ ไม่ให้เคลื่อนตัวลงล่างเมื่อมีแก๊สไหลผ่าน การเปลี่ยนแปลงอุณหภูมิในแนวดิ่งจากบนลงล่างจะมีลักษณะเป็นเพิ่มสูงขึ้นจนถึงค่าสูงสุดบริเวณตอนกลาง ซึ่งจะมีช่วงบริเวณหนึ่งที่อุณหภูมิประมาณได้ว่าคงที่ (constant temperature zone) ก่อนที่จะลดต่ำลงทางด้านขาออก การจัดวางตำแหน่งของเบดตัวเร่งปฏิกิริยาจะอยู่ในบริเวณที่มีอุณหภูมิคงที่นี้ การหาตำแหน่งบริวเณอุณหภูมิคงที่นี้ทำได้ด้วยการทดลองเลื่อนเทอร์โมคับเปิลไปตามแนวความยาวของ reactor
  
ความร้อนจากขดลวดความร้อนที่ป้อนเข้ามานั้นมีการสูญเสียออกไป ๓ ทางหลักด้วยกัน เส้นทางแรกคือแก๊สเย็นที่ไหลเข้า reactor และไหลออกไป เส้นทางที่สองคือการสูญเสียความร้อนผ่านชั้นผนังที่เป็นฉนวนความร้อน และเส้นทางที่สามคืออากาศที่ไหลจากล่างขึ้นบนอันเป็นผลจาก natural convection การลดการสูญเสียจากเส้นทางที่สามนี้ทำได้ด้วยการปิดช่องว่างระหว่างตัว reactor กับผนัง furnace ทางด้านบนเพื่อลดการเกิด natural convection (นั่นคือเหตุผลที่ว่าทำไปเราจึงต้องเอาแผ่นฉนวนความร้อนมาวางปิดช่องว่างด้านบนเอาไว้เสมอ)
  
คำถามหนึ่งที่มักจะก่อให้เกิดปัญหาประจำเวลาสอบก็คือควบคุมอุณหภูมิให้คงที่ได้อย่างไร (การสอบโครงร่างเมื่อเดือนมีนาคมที่ผ่านมาก็เจอคำถามนี้อีก) สิ่งที่ผู้สอบมักลืมไปก็คือระบบที่เราใช้นั้นไม่ได้มีเฉพาะการป้อนความร้อนเข้า แต่ยังมีการระบายความร้อนออกด้วย (การคุมอุณหภูมิให้คงที่ได้นั้นจำเป็นต้องมีทั้งเส้นทางให้ความร้อนไหลเข้าและเส้นทางให้ความร้อนไหลออก) ในกรณีของปฏิกิริยาคายความร้อนนั้น ถ้าปริมาณความร้อนที่คายออกจากปฏิกิริยามีมากพอจนทำให้เห็นอุณหภูมิในเบดเพิ่มสูงขึ้น ระบบความคุมก็จะลดความร้อนที่ป้อนให้กับ furnace เพื่อรักษาอุณหภูมิให้คงเดิม ในทางกลับกันถ้าเป็นปฏิกิริยาดูดความร้อนและความร้อนที่ปฏิกิริยาดูดนั้นทำให้เบดมีอุณหภูมิลดต่ำลง ระบบควบคุมก็จะเพิ่มความร้อนที่ให้กับ furnace เพื่อรักษาอุณหภูมิให้คงเดิม 
  
แต่จะเห็นการเปลี่ยนแปลงอุณหภูมิ (ไม่ว่าเพิ่มหรือลด) ได้นั้น ขนาดของปฏิกิริยาที่เกิดต้องมากพอ ในกรณีของเราที่ทำการทดลองที่ความเข้มข้นระดับ ppm นั้น ปริมาณความร้อนที่ปฏิกิริยาคายออกนั้นถือว่าน้อยมากหรือแทบไม่มีนัยสำคัญ ดังจะเห็นได้จากเราไม่เคยจำเป็นต้องไปปรับลดกระแสไฟฟ้าที่จ่ายให้ขดลวดความร้อนเมื่อเปลี่ยนความเข้มข้นสารตั้งต้นไม่ว่าจะเพิ่มสูงขึ้นหรือลดต่ำลง
  
และด้วยการที่เบดตัวเร่งปฏิกิริยาของเรานั้นจัดได้ว่าเตี้ยและวางอยู่ในช่วงบริเวณอุณหภูมิคงที่ เราจึงสามารถสรุปได้ว่าอุณหภูมิของเบดคงมีค่าคงที่ตลอดแนวดิ่งด้วย
  
เรื่องการเปลี่ยนแปลงอุณหภูมินี้เคยอธิบายไว้เมื่อสิบกว่าปีที่แล้วในเรื่อง "ปฏิกิริยาเอกพันธ์และปฏิกิริยาวิวิธพันธ์ในเบดนิ่ง" เมื่อวันเสาร์ที่ ๒๑ พฤศจิกายน ๒๕๕๒ หรือจะไปดาวน์โหลด "รวมบทความชุดที่ ๒๐ ประสบการณ์การทดสอบตัวเร่งปฏิกิริยา" มาอ่านก็ได้ เพราะมันถูกนำไปรวมไว้ในรวมบทความชุดนั้น

วันเสาร์ที่ 15 กุมภาพันธ์ พ.ศ. 2563

การคำนวณเชิงตัวเลข (๒๘) การแก้ปัญหาสมการอนุพันธ์สามัญ ด้วย ODE solvers ของ GNU Octave ตอนที่ ๓ MO Memoir : Saturday 15 February 2563

การเกิดปฏิกิริยาใน fixed-bed catalystic reactor นั้น ถ้า heat of reaction มีค่าต่ำ ก็จะประมาณได้ว่า reactor ตัวนั้นทำงานแบบอุณหภูมิคงที่ (isothermal) และถ้า heat of reaction มีค่าไม่สูงมาก ก็จะออกแบบให้ reactor นั้นทำงานแบบ adiabatic (ไม่มีการระบายความร้อนออกหรือให้ความร้อนแก่ reactor โดยตรง) กล่าวคือปล่อยให้ปฏิกิริยาดำเนินไปข้างหน้าเรื่อย ๆ จนได้ค่า conversion ที่ต้องการ แต่ถ้าหากว่าอุณหภูมิของระบบนั้นสูง/ต่ำเกินไปก่อนจะได้ค่า conversion ที่ต้องการ ก็ต้องมีการนำเอา reactor หลายตัวมาต่ออนุกรมกัน โดยมีเครื่องแลกเปลี่ยนความร้อน (ที่ระบาย/ป้อนความร้อน) อยู่ระหว่าง reactor แต่ละตัว
  
ในกรณีของการทำงานแบบ adiabatic นั้น ปฏิกิริยาดูดความร้อน (endothermic reaction) มีแนวโน้มที่จะหยุดตัวเอง เพราะเมื่อปฏิกิริยาดำเนินไปข้างหน้าเรื่อย ๆ ความเข้มข้นของสารตั้งต้นจะลดต่ำลง และอุณหภูมิของระบบก็จะลดต่ำลง สองปรากฏการณ์นี้ส่งผลให้อัตราการเกิดปฏิกิริยาลดต่ำลง 
    
ในกรณีของปฏิกิริยาคายความร้อน (exothermic reaction) นั้นเมื่อปฏิกิริยาดำเนินไปข้างหน้า ความเข้มข้นสารตั้งต้นที่ลดต่ำลงจะดึงให้อัตราการเกิดปฏิกิริยาลดลง แต่อุณหภูมิที่สูงขึ้นจากความร้อนที่คายออกมาจะทำให้ปฏิกิริยาเกิดเร็วขึ้น สองปรากฏการณ์นี้ให้ผลที่ขัดแย้งกัน ถ้าหากการทำปฏิกิริยานั้นเกิดขึ้นในเครื่องปฏิกรณ์แบบ adiabatic (ไม่มีการระบายความร้อนออก) ผลที่เกิดขึ้นจะเกิดในทิศทางเดียวคืออุณหภูมิของระบบจะเพิ่มสูงขึ้นเรื่อย ๆ จนอาจเหนือการควบคุม (ที่เรียกว่าปฏิกิริยาเกิดการ runaway)
   
เพื่อที่จะ "ลด" โอกาสเกิดเหตุการณ์ดังกล่าว ในกรณีของปฏิกิริยาคายความร้อนสูงจึงมักดำเนินการในรูปแบบที่เรียกว่า non-isothermal non-adiabatic คือมีการระบายความร้อนออกจาก reactor โดยตรง ดังนั้นอุณหภูมิใน reactor จึงขึ้นกับอัตราการคายความร้อนจากปฏิกิริยาและอัตราการระบายความร้อนออก เนื่องจากอัตราการระบายความร้อนออกนั้นขึ้นอยู่กับผลต่างระหว่างอุณหภูมิภายใน reactor กับอุณหภูมิแหล่งรับความร้อน ดังนั้นในช่วงที่ปฏิกิริยาเพิ่งเริ่มเกิด (ด้านขาเข้าของ reactor) อุณหภูมิใน reactor (ที่เพิ่มขึ้นจากความร้อนที่ปฏิกิริยาคายออกมา) ยังไม่สูง ผลต่างอุณหภูมิจึงยังไม่สูง อัตราการระบายความร้อนออกจึงต่ำ ส่งผลให้อุณหภูมิใน reactor เพิ่มสูงขึ้นเรื่อย ๆ เมื่อปฏิกิริยาดำเนินไปข้างหน้า แต่เมื่ออุณหภูมิใน reactor สูงถึงระดับหนึ่งจนทำให้ผลต่างอุณหภูมิสูงมากพอ อุณหภูมิใน reactor จะไม่เพิ่มขึ้นและจะเริ่มลดต่ำลง (ผลจากความเข้มข้นสารตั้งต้นที่ลดต่ำลง)
  
ตัวอย่างของปฏิกิริยาประเภทนี้ได้แก่ปฏิกิริยา partial oxidation ไฮโดรคาร์บอนไปเป็นสารประกอบ oxygenate ที่ใช้อากาศเป็นสารออกซิไดซ์ เนื่องจากออกซิเจนในอากาศมีความว่องไวต่ำในการออกซิไดซ์สารตั้งต้น การเริ่มการเกิดปฏิกิริยาจึงต้องการอุณหภูมิที่สูงมากพอ (ไม่เช่นนั้นปฏิกิริยาจะไม่เกิด หรือเกิดช้ามากจนไม่ได้ conversion ที่ต้องการ) อุณหภูมิของแหล่งรับความร้อนจึงต้องสูงตามไปด้วยเพื่อทำให้สารตั้นต้นที่ป้อนเข้ามานั้นมีอุณหภูมิสูงพอที่จะเกิดปฏิกิริยาได้ แต่ในขณะเดียวกันต้องไม่สูงจนทำให้การดึงความร้อนออกจาก reactor ต่ำเกินไป แหล่งรับความร้อนจากปฏิกิริยาที่ใช้กันจึงเป็นพวก molten salt หรือเกลือหลอมเหลวที่เกิดจากสารผสมในสัดส่วนที่เหมาะสมระหว่างเกลือบางชนิด (ทำให้มีจุดหลอมเหลวต่ำเพื่อง่ายต่อการหลอมให้เป็นของเหลว) ตัวอย่างอุณหภูมิของ molten salt นี้อาจอยู่ที่ระดับประมาณ 250-450ºC ขึ้นอยู่กับปฏิกิริยา สภาวะการทำปฏิกิริยา ความว่องไวของตัวเร่งปฏิกิริยา ความเข้มข้นสารตั้งต้น ฯลฯ

ที่ใช้คำว่า "ลด" ในย่อหน้าข้างบนนั่นก็เพราะว่าแม้ว่าจะมีการดึงความร้อนออกจาก reactor โดยตรงมันก็ยังมีโอกาสที่จะเกิดการ runaway อยู่ถ้าหากว่ามีความร้อนสะสมใน reactor มากเกินไป สิ่งที่ทำให้ความร้อนสะสมใน reactor ได้มีทั้ง ความเข้มข้นสารตั้งต้นที่สูง อัตราการไหลที่ต่ำ อุณหภูมิของแหล่งรับความร้อนที่สูงเกินไป อุณหภูมิขาเข้าที่สูงเกินไป และความว่องไวของตัวเร่งปฏิกิริยาที่สูงเกินไป ดังนั้นช่วงการทำงานของ reactor เหล่านี้จึงต้องอยู่ในช่วงที่เหมาะสมที่สามารถทำให้ได้ค่า conversion ที่สูงมากพอโดยไม่เกิดการ runaway
  
การคาดการณ์การเกิด runaway ทำได้ด้วยการแก้สมการดุลมวลสารและพลังงานของระบบ และทดลองปรับเปลี่ยนค่าพารามิเตอร์ต่าง ๆ เพื่อตรวจสอบดูว่าจะเกิดอะไรขึ้น รูปแบบง่าย ๆ รูปแบบหนึ่งของสมการดุลมวลสารและพลังงานแสดงไว้ข้างล่าง (เรียกว่าแบบจำลอง 1 มิติหรือ 1-dimensional model เพราะสมมุติให้การเปลี่ยนแปลงเกิดขึ้นตามความยาวของ reactor เท่านั้น)
  

ในที่นี้พจน์ C คือความเข้มข้น, T คืออุณหภูมิของ reactor, Tc คืออุณหภูมิของแหล่งรับความร้อน, z คือระยะทางตามความยาวของ reactor, exp(a - b/T) คือ rate constant ที่เปลี่ยนตามอุณหภูมิ, H เป็นผลรวมของความร้อนที่เกิด และ U คือค่าสัมประสิทธิ์การถ่ายเทความร้อนระหว่างภายใน reactor กับแหล่งรับความร้อน สมการดุลมวลสารนั้นประกอบด้วยพจน์ของอัตราการหายไปของสารตั้งต้น ในขณะที่สมการดุลความร้อนนั้นประกอบด้วยความร้อนที่เกิดจากปฏิกิริยาและความร้อนที่มีการดึงออก ระบบสมการทั้งสองเป็นระบบสมการอนุพันธ์สามัญที่มีพจน์ที่เป็น non-linear ร่วมอยู่
   
ในที่นี้การหาคำตอบระบบ 2 สมการข้างต้นจะใช้คำสั่ง lsode, ode45 และ ode15s ของ GNU Octave เปรียบเทียบกันโดยจะหาคำตอบในช่วง z = 0.0 - 0.2 คู่มือของโปรแกรมนั้นไม่ได้ให้รายละเอียดว่าคำสั่งดังกล่าวหาคำตอบด้วยวิธีใด คำสั่ง lsode นั้นให้กำหนดช่วงที่ต้องการหาคำตอบและระบุด้วยว่าต้องการซอยช่วงดังกล่าวออกเป็นช่วงย่อยที่ละเอียดมากน้อยเท่าใด (ยิ่งละเอียดมากก็ยิ่งเข้าใกล้คำตอบที่ถูกต้องมากขึ้น) ในที่นี้ได้ทดลองเลือกแบ่งย่อยเป็น 200 ช่วง (ในโปรแกรมต้องใส่ 201 จุด) ค่าพารามิเตอร์ต่าง ๆ ที่ใช้คือ a = 20, b = 14000, H = 10000, T ขาเข้า = 350ºC, C ขาเข้า = 1.0, และ U = 500 ตัวโปรแกรมที่เขียนขึ้นแสดงไว้ในรูปที่ ๑ ส่วนผลการคำนวณที่ได้ที่ใช้ค่า Tc = 414.0, 414.7 และ 414.8ºC แสดงไว้ในรูปที่ ๒ - ๖ โดยรูปที่ ๒ และ ๓ นั้นได้มาจากคำสั่ง lsode รูปที่ ๔ และ ๕ ได้มาจากคำสั่ง ode45 และรูปที่ ๖ ได้มาจากคำสั่ง ode15s
   
ในกรณีของคำสั่ง lsode และ ode45 นั้นพบว่าสองตัวนี้ให้คำตอบที่เหมือนกันคือการทำงานของ reactor จะเป็นถ้าอุณหภูมิของแหล่งรับความร้อนนั้นไม่เกิน 417.7ºC แต่เมื่อเพิ่มอุณหภูมิของแหล่งรับความร้อนเป็น 417.8ºC พบว่าปฏิกิริยาจะเกิดการ runaway ซึ่งเห็นได้จากผลการคำนวณนั้นให้ค่าอุณหภูมิที่เพิ่มสูงขึ้นกระทันหันโดยให้ค่าอุณหภูมิสูงสุดอยู่ที่หลายพันองศาเซลเซียส การแกว่งของคำตอบที่เกิดขึ้นกับกรณีของ lsode นั้นเกิดจากการที่จำนวนจุดคำนวณนั้นต่ำเกินไป (ใช้เพียงแค่ 200 จุด) แต่ที่ไม่พบในกรณีของ ode45 นั้นเป็นเพราะว่า ode45 ใช้การปรับระยะ step size การคำนวณโดยอัตโนมัติเพื่อให้สอดรับกับอัตราการเปลี่ยนแปลงของคำตอบ แต่สิ่งที่เห็นคือระยะห่างของจุดบริเวณนั้นแคบมาก (อยู่ที่ระดับ 10-7-10-6) จำนวนจุดการคำนวณตลอดช่วงอยู่ที่เกือบ 35,000 จุด ทำให้การคำนวณใช้เวลานานมากอย่างเห็นได้ชัด
  
แต่พอเปลี่ยนมาใช้ ode15s ปรากฏว่าคำตอบที่ได้นั้นเปลี่ยนไปเป็นคนละเรื่องเลย คือคำสั่งนี้ไม่สามารถพบตำแหน่งที่ปฏิกิริยาเกิดการ runaway ได้ (ตำแหน่งที่อุณหภูมิและความเข้มข้นเปลี่ยนแปลงอย่างรวดเร็ว) คำตอบที่ได้นั้นเสมือนกับว่าปฏิกิริยาแทบจะไม่เกิดแม้ว่าจะใช้อุณหภูมิ Tc สูงกว่า 415.0ºC ก็ตาม
   
รูปที่ ๑ ชุดคำสั่งที่ใช้ในการคำนวณ ข้างบนเป็นของ lsode ส่วนข้างล่างเป็นของ ode45s

ความแตกต่างของตัวอย่างนี้กับตัวอย่างในตอนที่ ๑ และ ๒ อยู่ตรงที่ในตอนที่ ๑ และ ๒ นั้นการเปลี่ยนแปลงอย่างรวดเร็วหรืออย่างกระทันหันเกิดขึ้นจากจุดเริ่มต้นการคำนวณ แต่ในกรณีนี้เกิดขึ้นระหว่างเส้นการคำนวณไปยังจุดปลายทาง ในกรณีของวิธี multi-step ที่มีการใช้จุดข้อมูลย้อนหลังในการคำนวณ ประกอบกับการเลือกระยะ step size อัตโนมัติ จึงเป็นไปได้ว่าการเปลี่ยนแปลงอย่างช้า ๆ ที่เกิดขึ้นอย่างต่อเนื่องมาก่อนหน้า ทำให้ไม่มีการคาดการณ์ว่าจะมีการเปลี่ยนแปลงอย่างกระทันหันเกิดขึ้นต่อหน้า ทำให้การคำนวณเดินข้ามตำแหน่งดังกล่าวไป 
   
ตัวอย่างนี้น่าจะเป็นอีกตัวอย่างหนึ่งที่แสดงให้เห็นความสำคัญของการทดลองวิธีการที่จะเลือกใช้แก้ปัญหาว่า ถ้าเปลี่ยนวิธีการ จะยังทำให้คำตอบที่ได้นั้นออกมาเหมือนกันอยู่หรือไม่
   
รูปที่ ๒ กราฟการเปลี่ยนแปลองอุณหภูมิภายใน reactor ที่ได้จากคำสั่ง lsode ที่ค่า Tc = 414.0, 414.7 และ 414.8ºC โดยแบ่งช่วงการคำนวณออกเป็น 200 ช่วงย่อย
   
รูปที่ ๓ กราฟการเปลี่ยนแปลงความเข้มข้นของสารตั้งต้นภายใน reactor ที่ได้จากคำสั่ง lsode ที่ค่า Tc = 414.0, 414.7 และ 414.8ºC โดยแบ่งช่วงการคำนวณออกเป็น 200 ช่วงย่อย
   
รูปที่ ๔ กราฟการเปลี่ยนแปลองอุณหภูมิภายใน reactor ที่ได้จากคำสั่ง ode45 ที่ค่า Tc = 414.0, 414.7 และ 414.8ºC
   
รูปที่ ๕ กราฟการเปลี่ยนแปลงความเข้มข้นของสารตั้งต้นภายใน reactor ที่ได้จากคำสั่ง ode45 ที่ค่า Tc = 414.0, 414.7 และ 414.8ºC
   
รูปที่ ๖ กราฟการเปลี่ยนแปลงอุณหภูมิและความเข้มข้นของสารตั้งต้นภายใน reactor ที่ได้จากคำสั่ง ode15s ที่ค่า Tc = 415.0ºC

วันจันทร์ที่ 9 กันยายน พ.ศ. 2562

แนวทางหัวข้อการทำวิทยานิพนธ์นิสิตรหัส ๖๑ (ตอนที่ ๓) MO Memoir : Monday 9 September 2562

เอกสารฉบับนี้แจกจ่ายเป็นการภายใน ไม่นำเนื้อหาลง blog
เนื้อหาฉบับนี้เป็นตอนต่อจากฉบับเมื่อวาน

วันอาทิตย์ที่ 8 กันยายน พ.ศ. 2562

แนวทางหัวข้อการทำวิทยานิพนธ์นิสิตรหัส ๖๑ (ตอนที่ ๒) MO Memoir : Sunday 8 September 2562

เอกสารฉบับนี้แจกจ่ายเป็นการภายใน ไม่นำเนื้อหาลง blog
  
เนื้อหาฉบับนี้เป็นบันทึกความรู้พื้นฐานบางส่วนของเรื่องที่ได้ประชุมกันไปเมื่อช่วงก่อนเที่ยงวันศุกร์ที่ ๖ กันยายนที่ผ่านมา โดยเป็นการทบทวนเรื่องเกี่ยวกับที่มาที่ไปของสมการแบบจำลอง Fixed-bed catalytic reactor ใน ๑ มิติ