ไลบรารี Python ชื่อ Gaspype ได้รับความสนใจสำหรับการคำนวณทางเทอร์โมไดนามิกส์ พร้อมแผนรองรับ GPU ในอนาคต

ทีมชุมชน BigGo
ไลบรารี Python ชื่อ Gaspype ได้รับความสนใจสำหรับการคำนวณทางเทอร์โมไดนามิกส์ พร้อมแผนรองรับ GPU ในอนาคต

ไลบรารี Python ใหม่ชื่อ Gaspype กำลังได้รับความสนใจจากชุมชนการคำนวณทางวิทยาศาสตร์สำหรับแนวทางการคำนวณทางเทอร์โมไดนามิกส์ ไลบรารีนี้มุ่งเน้นไปที่ปฏิกิริยาสมดุลสำหรับสายพันธุ์แก๊สและส่วนผสมของพวกมัน โดยมีการออกแบบที่ให้ความสำคัญกับความเข้ากันได้ในอนาคตกับเฟรมเวิร์ก GPU เช่น JAX และ PyTorch

คุณสมบัติหลัก:

  • การใช้งาน Python แบบบริสุทธิ์พร้อมการเวกเตอร์ไรเซชันของ NumPy
  • ประเภทข้อมูลที่ไม่เปลี่ยนแปลงได้และคำแนะนำประเภทข้อมูลที่ครอบคลุม
  • API แบบ Pythonic ที่ใช้งานง่ายสำหรับการสร้างต้นแบบอย่างรวดเร็ว
  • พร้อมใช้งานสำหรับ Jupyter Notebook และการใช้งานด้านการศึกษา
  • ออกแบบเพื่อรองรับ GPU ในอนาคต ( JAX , PyTorch )
  • มาพร้อมกับฐานข้อมูลสปีชีส์ที่ครอบคลุมบนพื้นฐาน NASA9

ชุมชนหารือเกี่ยวกับมาตรฐาน Array API สำหรับการรองรับข้ามแพลตฟอร์ม

ชุมชนนักพัฒนาได้เน้นย้ำถึงความสำคัญของการปฏิบัติตาม Python Array API Standard เพื่อให้เกิดความเข้ากันได้ที่กว้างขึ้นระหว่างไลบรารีอาร์เรย์ต่างๆ มาตรฐานนี้เป็นเส้นทางสำหรับไลบรารีในการทำงานร่วมกับ NumPy, JAX, PyTorch และเฟรมเวิร์กอาร์เรย์อื่นๆ ได้อย่างราบรื่นโดยไม่ต้องมีการใช้งานแยกต่างหากสำหรับแต่ละแพลตฟอร์ม ข้อเสนอแนะนี้เกิดขึ้นในขณะที่นักพัฒนากำลังมองหาวิธีที่มีประสิทธิภาพมากขึ้นในการเขียนโค้ดที่สามารถใช้ประโยชน์จากแบ็กเอนด์การคำนวณที่แตกต่างกัน

การประยุกต์ใช้งานจริงเป็นทางเลือกแทนซอฟต์แวร์เชิงพาณิชย์ราคาแพง

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

ฉันใช้ Aspen-Hysys ซึ่งมีราคาแพงมากสำหรับผู้ใช้ที่ไม่ใช่เชิงพาณิชย์ และอยากจะมีทางเลือกแบบ Pythonic

ข้อจำกัดปัจจุบันของไลบรารีที่จำกัดอยู่เพียงพฤติกรรมแก๊สในอุดมคติทำให้การประยุกต์ใช้จำกัดอยู่ที่ความดันปานกลางและอุณหภูมิสูง แม้ว่านักพัฒนาจะระบุแผนการขยายไปสู่พฤติกรรมแก๊สจริงสำหรับกระบวนการความดันสูง

วิธีการติดตั้ง:

  • pip: pip install gaspype
  • conda: conda install conda-forge gaspype

ตัวเลือกการออกแบบทางเทคนิคกระตุ้นการอภิปราย

หลักการตั้งชื่อของไลบรารีได้สร้างการสนทนาภายในชุมชน การเลือกใช้ fluid เป็นจุดเข้าใช้งานหลัก แม้ว่าปัจจุบันจะคำนวณเฉพาะคุณสมบัติแก๊สในอุดมคติเท่านั้น สะท้อนถึงแนวทางที่มองไปข้างหน้าของนักพัฒนาในการรวมพฤติกรรมแก๊สจริงและการสร้างแบบจำลองของไหลเหนือจุดวิกฤตในที่สุด

สถาปัตยกรรมของไลบรารีเน้นประเภทที่ไม่เปลี่ยนแปลง การใส่คำแนะนำประเภทที่ครอบคลุม และการทำเวกเตอร์ของ NumPy เพื่อประสิทธิภาพ มันมาพร้อมกับฐานข้อมูลสายพันธุ์ที่ใช้ NASA9 และรองรับการคำนวณหลายมิติผ่าน NumPy broadcasting ทำให้เหมาะสำหรับทั้งการใช้งานด้านการศึกษาและสถานการณ์การสร้างแบบจำลองที่ซับซ้อน

คลาสหลัก:

  • fluid: อธิบายส่วนผสมของสปีชีส์โมเลกุลและปริมาณโมลาร์ของพวกมัน
  • elements: จัดการองค์ประกอบของอะตอมและสมดุลที่อิงจากอะตอม
  • fluid_system: ควบคุมว่าสปีชีส์โมเลกุลใดบ้างที่จะรวมอยู่ในการคำนวณ

การพัฒนาในอนาคตและการมีส่วนร่วมของชุมชน

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

อ้างอิง: Gaspype