منصوبے کے بارے میں

Oceananigans.jl ایک جولیا سافٹ ویئر پیکیج ہے جو غیر ہائیڈروسٹیٹک اور ہائیڈروسٹیٹک Boussinesq مساوات کے محدود حجم کے تخروپن کے لیے ہے، جس کا مقصد سمندری نوعیت کی سیال حرکیات ہے۔ یہ کارٹیشین اور کروی خول کے ڈومینز کو سپورٹ کرتا ہے اور CPUs یا CUDA-فعال Nvidia GPUs پر چل سکتا ہے، جہاں GPU پر عمل CUDA.jl لوڈ کرنے اور آرکیٹیکچر دلیل کو CPU() سے GPU() میں تبدیل کرنے سے فعال ہوتا ہے۔ یہ پروجیکٹ ایک لچکدار صارف انٹرفیس پر زور دیتا ہے: سادہ تخروپن مختصر اظہار میں ہوتے ہیں، جبکہ زیادہ پیچیدہ ترتیبات ممکن رہتی ہیں۔ ایک کم سے کم مثال RectilinearGrid بناتی ہے، WENO ادویکشن کے ساتھ NonhydrostaticModel تخلیق کرتی ہے، بے ترتیب ابتدائی رفتار کے میدان مرتب کرتی ہے، وقت کے قدم اور رکنے کے وقت کے ساتھ Simulation کی وضاحت کرتی ہے، اور اسے چلاتی ہے۔ دستاویزات میں مثال اسکرپٹس، اہم اشیاء اور افعال پر سبق، محدود حجم کے عددی طریقوں کی وضاحتیں، حل شدہ حرکیاتی مساوات، اور صارفین کے لیے اشیاء اور افعال کا لائبریری حوالہ شامل ہے۔ کمیونٹی وسائل میں کمپیوٹیشنل سائنس اور تجرباتی خصوصیات کے لیے GitHub Discussions، جولیا سیٹ اپ، GPU رسائی، اور پیداواری ورک فلو پر تجاویز کے ساتھ ایک ویکی، نیز Slack چینلز اور مسئلہ/PR تاریخ شامل ہے۔ ترقی کمیونٹی سے چلتی ہے جس میں تعلیمی اور صنعتی شراکت دار شامل ہیں؛ جانچ کا بنیادی ڈھانچہ atdepth اور Climate Modeling Alliance فراہم کرتے ہیں۔ پیکیج MIT لائسنس یافتہ ہے اور رجسٹرڈ جولیا پیکیج رجسٹری سے انسٹال کیا جا سکتا ہے، جس کے لیے جولیا 1.10 یا بعد کا ورژن درکار ہے۔ README میں کئی ماڈل-ترقیاتی مقالے درج ہیں جو Runge-Kutta ٹائم اسٹیپنگ، تفریق پذیر زمینی نظام ماڈلنگ، WENO پر مبنی مومینٹم ادویکشن، GPU سمندری حرکیاتی کور، اور CATKE عمودی تفریق کا احاطہ کرتے ہیں، اور جائزہ مقالے کے حوالے کی دعوت دیتا ہے۔ کارکردگی کے معیارات ایک عوامی ڈیش بورڈ پر ٹریک کیے جاتے ہیں، جس میں نوٹ کیا گیا ہے کہ GPU سنترپتی کے لیے عام طور پر تقریباً دس ملین گرڈ پوائنٹس یا اس سے زیادہ درکار ہوتے ہیں اور Float32 تبدیلی کے اوور ہیڈ کی وجہ سے ہمیشہ Float64 سے تیز نہیں ہو سکتا۔