كيف تتعلم CFD من الصفر: اكتب حلّالاً صغيراً وشاهده يفشل، واصعد سلّم الحالات المرجعية ذات الأجوبة المنشورة، ثم تعلّم البرنامج.

رسم توضيحي من DEEB-FLOW لتجهيزة تجريبية تُستخدم للمصادقة على محاكاة
رسم تصوّري تفاعلي: معامل انتقال الحرارة الموضعي على امتداد أنبوب مسخّن، استناداً إلى حالة من DEEB-FLOW. حرّك المؤشر أفقياً لتنعيم الشبكة من 4 إلى 32 خلية: تتقارب الدرجات المحسوبة نحو منحناها المستقل عن الشبكة (المتقطع)، ويعطي سطر القراءة مؤشر تقارب الشبكة. الفجوة التي تبقى مقابل النقاط المقيسة وأشرطة عدم اليقين هي ما يحكم عليه التحقق التجريبي. القيم توضيحية.

صورة جميلة وثلاثة أسئلة

يعرض عليك طالب صورة كفافية جميلة للجريان حول سيارة. ألوان ناعمة، وخطوط انسياب معقولة، ومعامل سحب بثلاث خانات عشرية. تسأله ثلاثة أسئلة: كم كانت قيمة y+‎ على الهيكل، وهل أُغلق ميزان الكتلة، وكم تغيّر السحب حين نُعّمت الشبكة؟ لا جواب عن أي منها.

هذا الطالب تعلّم برنامج CFD. لكنه لم يتعلم CFD بعد.

لكي تتعلم CFD من الصفر، تعلّم أن تميّز الجواب الصحيح من الجواب الواثق. وهذا عملياً أربع مراحل بهذا الترتيب: القليل من الرياضيات الذي يفسر لماذا تخطئ الحلول العددية، وحلّال صغير تكتبه بنفسك وتكسره عمداً، وسلّم من حالات مرجعية لها أجوبة منشورة، ثم برنامج تجاري أو مفتوح المصدر في النهاية فقط. يعرض هذا المقال هذا المسار، مع مثال محسوب يبيّن أهم درس في هذا العلم في عشرة أسطر من الجبر، وخطة أسبوعية في الختام.

ماذا يعني أن تتعلم CFD؟

ثلاثة أشياء، والبرنامج رابعها وأقلها أهمية.

  • الفيزياء. ما الذي تقوله معادلات الحفظ، وما الذي يفعله كل حد، وأي الحدود يسود في مسألتك. عدد رينولدز وعدد بيكليه وعدد ماخ تخبرك عن الجريان قبل بناء الشبكة أكثر مما تخبرك معظم الصور الملونة بعد الحساب.
  • الطرق العددية. كيف تتحول معادلة متصلة إلى جبر، وأي خطأ يدخله ذلك. كل جواب بطريقة الحجوم المحدودة خاطئ بمقدار خطأ التقطيع، والمهارة أن تعرف حجمه وطبيعته.
  • الحكم الهندسي. أن تقرر ماذا تنمذج، وأن تتحقق من أن الأرقام متقاربة والموازين مغلقة والنتيجة غير حساسة للشبكة، وأن تقارن بشيء مستقل. هذا هو التحقق والمصادقة، وهو ما يدفع أصحاب العمل والعملاء ثمنه.
  • البرنامج واجهة إلى الثلاثة كلها. يمكن تعلمه في أسابيع قليلة متى كان الباقي في مكانه، وهو يتغير مع كل إصدار على أي حال.

الرياضيات التي تحتاج إليها، ولماذا

أقل مما يخشاه كثيرون، وأكثر مما تعترف به معظم الدروس التعليمية.

تحتاج إلى حساب المتجهات (التباعد، والتدرج، ومبرهنة التباعد)، لأن طريقة الحجوم المحدودة هي مبرهنة التباعد مطبّقة على حجم صغير. وتحتاج إلى تمييز الأصناف الثلاثة من المعادلات التفاضلية الجزئية، لأنها تتصرف بشكل مختلف: المسائل الإهليلجية (الانتشار المستقر، الضغط) تشعر بكل الحدود دفعة واحدة، والمسائل المكافئة (الانتشار العابر) تتقدم في الزمن، والمسائل الزائدية (الحمل الخالص، الأمواج، الصدمات) تنقل المعلومة على امتداد الخطوط المميزة وتعاقب المخططات التي تتجاهل اتجاه الجريان.

وتحتاج إلى متسلسلات تايلور، لأن خطأ التقطيع يأتي منها. انشر دالة ملساء حول نقطة وخذ الفروق:

φ(x + Δx) = φ + Δx φ′ + (Δx²/2) φ″ + (Δx³/6) φ‴ + …φ(x − Δx) = φ − Δx φ′ + (Δx²/2) φ″ − (Δx³/6) φ‴ + …D_c φ = [φ(x + Δx) − φ(x − Δx)] / (2Δx) = φ′ + (Δx²/6) φ‴ + …D_u φ = [φ(x) − φ(x − Δx)] / Δx = φ′ − (Δx/2) φ″ + …

هنا D_c هو الفرق المركزي وD_u الفرق الأمامي باتجاه المنبع. الفرق المركزي من الرتبة الثانية: إذا نصّفت حجم الخلية انخفض الخطأ الرئيسي إلى الربع. والفرق باتجاه المنبع من الرتبة الأولى، وحدّ خطئه الرئيسي يتناسب مع مشتقة ثانية. احفظ هذه الفكرة. فعليها يقوم القسم التالي كله.

اكتب حلّالاً صغيراً واكسره

قبل أن تفتح واجهة تجارية، اكتب حلّالاً من نحو أربعين سطراً. ستتعلم من مشاهدته وهو يفشل أكثر مما تتعلم من شهر من الدروس.

نقطة انطلاق مجانية ومتقنة هي CFD Python، أي «12 خطوة إلى نافييه-ستوكس» من إعداد لورينا باربا وجيلبرت فورسيث: دفاتر Jupyter تبدأ بالحمل الخطي أحادي البعد وتمر بالانتشار ومعادلة برغرز ومعادلتي لابلاس وبواسون وصولاً إلى الجريان ثنائي البعد في تجويف وفي قناة. المحتوى مرخّص بـ CC-BY 4.0 والشيفرة بـ BSD-3، فيمكنك استخدامها وتكييفها بحرية.

ثم أجرِ التجربة الوحيدة التي ينبغي أن يكون كل مهندس CFD قد أجراها بيديه.

مثال محسوب: عدد بيكليه الخلوي

خذ الحمل والانتشار المستقرين أحاديي البعد لكمية قياسية φ على المجال 0 ≤ x ≤ L، مع φ(0) = 0 وφ(L) = 1. المعادلة وحلها الدقيق هما:

d(ρuφ)/dx = d/dx (Γ dφ/dx)φ(x) = [exp(Pe·x/L) − 1] / [exp(Pe) − 1], Pe = ρuL / Γ

عند Pe = 50 يكون الحل قريباً من الصفر على المجال كله ويرتفع بحدة في طبقة رقيقة عند الطرف الأيمن. وعند x = 0.9 L تكون القيمة الدقيقة نحو exp(−5) ≈ 0.007.

قطّع المجال إلى N خلية منتظمة. الكمية التي تتحكم في كل شيء هي عدد بيكليه الخلوي Pe_Δ = ρuΔx / Γ = Pe / N. على شبكة منتظمة يؤول كل مخطط إلى علاقة تكرارية تنمو حلولها من عقدة إلى أخرى بنسبة ثابتة، وهذه النسبة تخبرك بما يفعله المخطط:

φ(i+1) / φ(i) → exp(Pe_Δ)r_c = (1 + Pe_Δ/2) / (1 − Pe_Δ/2)r_u = 1 + Pe_Δ

السطر الأول هو النسبة الدقيقة بين العقد المتجاورة، وr_c النسبة التي يعطيها المخطط المركزي، وr_u النسبة التي يعطيها مخطط المنبع من الرتبة الأولى.

على 10 خلايا يكون Pe_Δ = 5:

المخططالنسبة بين العقد المتجاورةما الذي تراه
الحل الدقيقexp(5) ≈ 148طبقة حادة في الخلية الأخيرة
المركزي(1 + 2.5)/(1 − 2.5) ≈ −2.33تنقلب الإشارة من عقدة إلى أخرى: تذبذبات وقيم خارج المجال من 0 إلى 1
باتجاه المنبع1 + 5 = 6أملس ورتيب، وطبقة أسمك بكثير مما ينبغي

على 40 خلية يكون Pe_Δ = 1.25: يعطي المخطط المركزي نسبة نحو 4.3 مقابل 3.5 للحل الدقيق، أملس وقريب؛ ويعطي مخطط المنبع 2.25، وما زال التلطيخ ظاهراً.

ينتج عن ذلك درسان، وهما أهم ما في هذا المقال.

المخطط المركزي يتذبذب حين يكون Pe_Δ > 2. تصبح النسبة سالبة، ويظهر في الحل تذبذب لا علاقة له بالفيزياء. هذه هي النتيجة الكلاسيكية في كتاب باتانكار، ولهذا لا تستخدم الحلّالات التجارية الفرق المركزي الخالص للحمل في معظم أنواع الجريان.

مخطط المنبع لا يتذبذب أبداً، ويخطئ بطريقة تبدو صحيحة. خطأ البتر من منشور تايلور أعلاه، (Δx/2)φ″، يعمل تماماً كانتشار إضافي. ويتصرف المخطط كما لو كان معامل الانتشار:

Γ_eff = Γ + ρuΔx/2 = Γ (1 + Pe_Δ/2)

على 10 خلايا يساوي ذلك 3.5 Γ. فحلك الأملس بمخطط المنبع هو، في الرتبة الرئيسية، حلّ مسألة عدد بيكليه فيها نحو 50/3.5 ≈ 14 وليس 50. ولا شيء على الشاشة يخبرك بذلك. خطوط التساوي نظيفة، والبواقي تهبط بجمال، والجواب يعود إلى جريان آخر.

لهذا أفضّل أن يرى المبتدئ أولاً حلاً مركزياً متذبذباً. فالتذبذب صادق.

كل حلّال حديث يقدّم مخططات محدودة من رتب أعلى (المنبع من الرتبة الثانية مع محددات، QUICK، عائلات TVD) تقع بين الطرفين. ولن تفهم ما تفعله هذه الإعدادات إلا بعد أن ترى الطرفين يفشلان.

تحقق من رتبة الدقة

نعّم الشبكة الآن. احسب الخطأ مقارنة بالحل الدقيق على شبكتين بنسبة تنعيم r. إذا كان e₁ الخطأ على الشبكة الخشنة وe₂ الخطأ على الناعمة، فالرتبة المرصودة هي:

p = ln(e₁ / e₂) / ln(r)

مثال محسوب بأرقام توضيحية. مخطط من الرتبة الثانية يعطي خطأين قدرهما 0.020 و0.0051 على شبكتين خطوتاهما Δx وΔx/2، إذن p = ln(3.92)/ln(2) ≈ 1.97. صحيح. وإذا حصلت على 1.0 من مخطط يفترض أنه من الرتبة الثانية، ففي مكان ما شيء من الرتبة الأولى: شرط حدي، أو تدرج، أو استيفاء على الوجوه. والعثور عليه أفضل تعليم عددي على الإطلاق. هذا هو الحساب نفسه الذي يقوم عليه مؤشر تقارب الشبكة، المشروح خطوة بخطوة في مقالنا عن استقلالية الشبكة.

اصعد سلّماً من الحالات ذات الأجوبة المنشورة

متى انضبط سلوك شيفرتك، انتقل إلى حالات نشر غيرك جوابها. كل درجة تعلّمك صعوبة جديدة واحدة، ولكل منها فحص تنجح فيه أو ترسب.

الدرجةالحالةما الذي تعلّمهالمرجعالفحص
1الحمل والانتشار أحادي البعدالمخططات، وعدد بيكليه، ورتبة الدقةالحل الدقيق أعلاهالرتبة المرصودة تطابق رتبة المخطط
2تجويف ذو غطاء متحرك، Re 100 و1000الربط بين الضغط والسرعة في بعدينGhia وGhia وShin (1982)، السرعات على الخطوط المركزيةمنحنياتك تمر بنقاطهم المجدولة
3جريان طباقي في أنبوبطول المدخل، والتدرجات عند الجدارهاغن-بوازوي: f = 64/Reيقترب معامل الاحتكاك من 64/Re مع تنعيم الشبكة
4درجة خلفية، جريان طباقيالانفصال وإعادة الالتصاقArmaly وزملاؤه (1983)، قياساتطول إعادة الالتصاق بدلالة عدد رينولدز
5أسطوانة في قناة، DFG 2D-2الجريان العابر، والخطوة الزمنيةFeatFlow: C_D,max = 3.2200 وSt = 0.30188يظهر انفصال الدوامات وتقترب القيمتان
6قناة مضطربةمعالجة الجدار وحدود RANSDNS عند Re_τ من 180 إلى 5200 (Lee وMoser، 2015؛ بيانات Oden Institute)السرعة المتوسطة بوحدات الجدار مقارنة بمنحنى DNS
7أنبوب مسخّن، جريان مضطربمعاملات انتقال الحرارةعلاقة غنيلينسكيعدد نسلت ضمن تشتت العلاقة

الدرجة 3 تستحق ملاحظة. طول المدخل الطباقي نحو 0.05 Re D، فعند Re = 1000 يحتاج المنحنى إلى نحو 50 قطراً ليكتمل. والأنبوب القصير يعطي معامل احتكاك أعلى بوضوح من 64/Re، وهذا هو الجريان النامي يفعل ما ينبغي له. وتعلّم التمييز بين الأمرين هو الهدف بعينه.

في الدرجة 6 يكتشف معظم المتعلمين الذاتيين أن نموذج الاضطراب نموذج. قارن منحنى السرعة المتوسطة بوحدات الجدار مع DNS، مرة والخلية الأولى عند y+‎ ≈ 1 ومرة مع دوال الجدار عند y+‎ ≈ 50. ويشرح مقال k-omega SST وk-epsilon في هذه المدونة لماذا يختلف سلوكهما.

والدرجة 5 أيضاً اختبار جيد لأي إنسان أو أداة تدّعي أنها تعدّ حالات CFD نيابة عنك؛ ومقال وكلاء الذكاء الاصطناعي لـ CFD يستخدمها لهذا الغرض بالذات.

ثم تعلّم البرنامج

عند هذه المرحلة ستصبح القوائم مفهومة، لأن كلاً منها قرار اتخذته بيدك من قبل: مخطط الحمل، والربط بين الضغط والسرعة، ومعالجة الجدار، والخطوة الزمنية.

تعلّم برنامجاً واحداً جيداً قبل أن تجرب عدة برامج. طريقان مجانيان يكفيان للتعلم. OpenFOAM مفتوح المصدر ويعمل على Linux، أو على Windows عبر WSL. وAnsys Student مجاني للطلاب والمدرّسين، ويعمل على Windows، ويسمح بما يصل إلى مليون خلية لمسائل الموائع على أربع أنوية كحد أقصى، للاستخدام التعليمي فقط. والمليون خلية تكفي لكل درجة من السلّم أعلاه، وليس ذلك مصادفة.

أعد الدرجات 2 و3 و5 في البرنامج. إذا اتفق تجويفك المكتوب يدوياً والتجويف التجاري أحدهما مع الآخر ومع Ghia، فقد تحققت من الاثنين، وتعلّمت إعدادات البرنامج بالمقارنة لا بالثقة.

كتب تستحق الاقتناء

  • Versteeg وMalalasekera، An Introduction to Computational Fluid Dynamics: The Finite Volume Method. أوضح كتاب أول في طريقة الحجوم المحدودة التي تستخدمها البرامج التجارية.
  • Patankar، Numerical Heat Transfer and Fluid Flow. قصير وقديم وما زال أفضل شرح لسبب تصرف المخططات كما تتصرف.
  • Ferziger وPerić وStreet، Computational Methods for Fluid Dynamics. المرجع في الطرق العددية بعد تجاوز الأساسيات.
  • Moukalled وMangani وDarwish، The Finite Volume Method in Computational Fluid Dynamics. جسر من النظرية إلى التنفيذ في OpenFOAM.
  • Pope، Turbulent Flows. لليوم الذي يصبح فيه سؤال «أي نموذج اضطراب؟» سؤالاً حقيقياً.

خطة من 16 أسبوعاً

اقتراحي لمن يحمل شهادة هندسية ولديه نحو ثماني إلى عشر ساعات أسبوعياً. كل مرحلة تنتهي بشيء يمكنك عرضه.

الأسابيعالعملالمُخرَج
1 و2متسلسلات تايلور وأصناف المعادلات؛ الخطوات 1 إلى 4 من CFD Pythonشيفرة انتشار أحادي البعد مع حلها الدقيق
3 و4الحمل والانتشار؛ تجربة بيكليه؛ رتبة الدقةرسم للحل الدقيق والمركزي وحل المنبع عند Pe_Δ = 5 و1.25
5 و6الخطوات 9 إلى 11 من CFD Python؛ تجويف ذو غطاء متحركتجويفك مقارنة بـ Ghia وزملائه عند Re 100
7 و8تثبيت برنامج واحد؛ إعادة التجويف؛ جريان طباقي في أنبوبمعامل الاحتكاك مقارنة بـ 64/Re مع تنعيم الشبكة
9 و10بناء الشبكات: الطبقات الحدية، ومقاييس الجودة؛ دراسة على ثلاث شبكاتمؤشر تقارب الشبكة للأنبوب
11 و12الاضطراب والجدران؛ قناة مضطربةu+ بدلالة y+‎ مقارنة بـ DNS لطريقتين في معالجة الجدار
13 و14الجريان العابر؛ أسطوانة DFGعدد ستروهال وأقصى سحب مقارنة بالمرجع
15 و16مشروع صغير خاص بكتقرير قصير فيه التقارب والموازين ودراسة الشبكة ومقارنة واحدة بالبيانات

المُخرَج الأخير هو الذي يجلب لك الوظيفة. تقرير يقول «هبوط الضغط 1245 Pa بعدم يقين عددي قدره 1.6%، ويتفق مع العلاقة ضمن 4%» يساوي أكثر من أي عدد من الصور الملونة.

أخطاء شائعة كما تبدو على الشاشة

  • حل أملس لم يُقارن بأي شيء. أنتجه مخطط المنبع. وقد يكون خاطئاً بأضعاف، كما يبيّن المثال.
  • تذبذب «عولج» بالانتقال إلى الرتبة الأولى. كان التذبذب يقول إن الشبكة أخشن من أن يناسبها المخطط. والرتبة الأولى تخفي الرسالة وتبقي الخطأ.
  • درس تعليمي أعيد نقرة بنقرة. يعمل، ولا تستطيع أن تقول لماذا كان أي إعداد على ما هو عليه. غيّر إعداداً واحداً في كل مرة وتوقع أثره قبل التشغيل.
  • معامل احتكاك «خاطئ» بنسبة 30% في أنبوب قصير. إنه طول المدخل، والحلّال محق.
  • حالة مضطربة بلا فحص لـ y+‎. لم تكن معالجة الجدار قط ضمن مجال صلاحيتها، ولم يكن النموذج يفعل ما تظن.
  • البواقي دليلاً وحيداً على التقارب. راقب الكمية التي ستذكرها وتحقق من ميزان الكتلة؛ ومقال التقارب في هذه المدونة يشرح السبب.

ما الذي كنت سأفعله

إذا كنت تحمل شهادة هندسية ولديك بضع ساعات أسبوعياً، فاتبع الترتيب أعلاه: رياضيات تفسر الخطأ، ثم حلّال صغير، ثم حالات مرجعية، ثم البرنامج. لا تتجاوز تجربة بيكليه. فهي تستغرق أمسية وتغيّر طريقة قراءتك لكل صورة ملونة طوال مسيرتك.

وإذا كنت تستخدم برنامجاً تجارياً في عملك من دون خلفية عددية، فاسلك المسار نفسه بصيغة مكثفة: تجربة بيكليه، والتجويف مقارنة بـ Ghia، ودراسة على ثلاث شبكات لحالة تعرفها. ثلاث عطلات أسبوعية. وستبدأ ترى أي نتائجك القديمة ما زلت تقبل أن توقّع عليها.

وإذا أردت مساعدة منظمة، فدورتنا «نمذجة CFD لجريان السوائل والغازات» تسير بالترتيب نفسه: صياغة المسألة، والفيزياء، والمحاكاة، والتحقق، والتفسير، ودورة «انتقال الحرارة في التطبيقات الهندسية» تغطي الدرجة 7 وما بعدها. وفي كل الأحوال التزم القاعدة: لا تغادر أي نتيجة مكتبك قبل أن تقارنها بشيء لم تحسبه بنفسك.

المصادر والمطالعة

خدمة ذات صلة

مراجعة النماذج والدراسات المخصصة

معرفة ما يدعمه النموذج، وأين يبقى عدم اليقين، وما يحتاج إلى تحقق.

استعرض الخدمات
كل المقالات