انتقل إلى المحتوى

المحلّل والتهيئة المسبقة

تُضبط المحلّلات الخطية في FrontISTR باختيار طريقة مباشرة أو تكرارية؛ وتُقرن الطرق التكرارية بتهيئة مسبقة لحل المعادلات الخطية. وتعد طريقة معالجة MPC وإزالة درجات حرية التلامس اختيارات مساعدة تحدد كيفية التعامل مع نظام خطي يتضمن قيودًا متعددة النقاط أو قيود تلامس.

نظرة عامة على الوظائف

تتكون إعدادات المحلّل والتهيئة المسبقة من الاختيارات التالية. اختر أولًا طريقة تكرارية أو مباشرة كمحلّل خطي. ولا تُستخدم التهيئة المسبقة إلا مع الطريقة التكرارية.

الفئة الخيارات الرئيسية الدور
الطرق التكرارية CG, BiCGSTAB, GMRES, GPBiCG, GMRESR, GMRESREN حل المصفوفات المتناثرة الكبيرة باستخدام ذاكرة بكفاءة نسبية.
المهيئات المسبقة للطرق التكرارية SSOR، التحجيم القطري، BILU، AMG، SAINV، RIF تحسين تقارب الطرق التكرارية. لا تُستخدم مع الطرق المباشرة.
الطرق المباشرة MUMPS, MKL حل المعادلات الخطية بمتانة عن طريق تحليل المصفوفة.
طرق معالجة MPC طريقة العقوبة، طريقة MPC-CG، الإزالة الصريحة لدرجات الحرية إدراج القيود متعددة النقاط في النظام الخطي.
إزالة درجات حرية التلامس تلقائي، مفعّلة دائمًا التحكم في معالجة درجات حرية التلامس المضافة بواسطة تلامس SLAGRANGE.
الوظائف المساعدة تقدير عدد الشرط، تفريغ المصفوفة، التسجيل دعم التصحيح وتقييم التقارب وتقييم الأداء.

في التنفيذ المتوازي، يمكن الجمع بين توازٍ MPI المعتمد على تقسيم المجال وتوازٍ خيطي باستخدام OpenMP. الطرق التكرارية هي الاختيار القياسي للتحليلات المتوازية واسعة النطاق، بينما تُستخدم الطرق المباشرة عندما تكون المكتبات المطلوبة مرتبطة ويُحتاج إلى حل أكثر متانة.

اختيار المحلّل والمهيئ المسبق

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

عامل القرار النهج الموصى به
حجم المسألة الطرق المباشرة مستقرة وسهلة الاستخدام للمسائل الصغيرة إلى المتوسطة. الطرق التكرارية أكثر كفاءة في استخدام الذاكرة للمسائل الكبيرة.
تماثل المصفوفة فكّر في CG للمسائل الموجبة التعريف المتماثلة. للمسائل غير المتماثلة، فكّر في BiCGSTAB أو GMRES أو GPBiCG أو طرق مشابهة.
البيئة المتوازية في توازٍ MPI، اجمع طريقة تكرارية مع تقسيم المجال. للتهيئة المسبقة ضمن توازٍ OpenMP، فكّر في تنفيذ SSOR متعدد الألوان.
المهيئ المسبق (عند استخدام طريقة تكرارية) جرّب SSOR الافتراضي أولًا ثم فكّر في AMG. يكون SSOR خفيفًا حسابيًا عندما يكون التقارب جيدًا؛ وAMG مناسب للمسائل المعقدة واسعة النطاق.
التلامس وMPC في التحليلات التي تتضمن تلامسًا أو قيودًا متعددة النقاط، يؤثر اختيار طريقة معالجة MPC وإزالة درجات حرية التلامس في التقارب والمتانة.
المكتبات الخارجية تتوفر MUMPS وMKL وAMG في البنى المرتبطة بالمكتبات المقابلة.

في التحليلات القياسية، يكون حد التقارب الافتراضي والحد الأقصى لعدد التكرارات ومعامل التصحيح القطري للمهيئ المسبق كافية عمومًا. فقط عندما يكون التقارب بطيئًا أو يتباعد الحل ينبغي إعادة النظر، بالترتيب، في الطريقة التكرارية والمهيئ المسبق وطريقة معالجة MPC وإزالة درجات حرية التلامس. راجع مرجع الكلمة المفتاحية !SOLVER لقيم المعاملات والصيغة.

الطرق التكرارية

تحل الطرق التكرارية الأنظمة المتناثرة الكبيرة بتحديث الحل مرارًا من خلال ضرب المصفوفة في المتجه والتهيئة المسبقة. يوفر FrontISTR الطرق التكرارية التالية.

الطريقة التكرارية التطبيق النموذجي ملاحظات
CG مسائل موجبة التعريف متماثلة مرشح قياسي للتحليل الإنشائي وتحليل التوصيل الحراري.
BiCGSTAB مسائل غير متماثلة مرشح عندما ينتج التلامس أو تأثيرات الاقتران لا تماثل قويًا.
GMRES مسائل غير متماثلة يُستخدم مع حجم محدد لفضاء Krylov الجزئي.
GPBiCG مسائل غير متماثلة يُستخدم كطريقة محسّنة ضمن عائلة BiCGSTAB.
GMRESR مسائل غير متماثلة، تطبيقات متقدمة خيار يستخدم GMRES في صورة متداخلة.
GMRESREN مسائل غير متماثلة، تطبيقات متقدمة متغير تكراري ضمن عائلة GMRESR.

يفترض CG أن المصفوفة متماثلة وموجبة التعريف. إذا أدخل التلامس الاحتكاكي أو معالجة القيود غير المتماثلة أو تأثيرات الاقتران أو عوامل مشابهة لا تماثل قويًا، ففكّر في BiCGSTAB أو GMRES أو GPBiCG أو محلّل آخر لامتماثل. في GMRES، قد يؤدي زيادة حجم فضاء Krylov الجزئي إلى تحسين التقارب، لكنه يزيد أيضًا استخدام الذاكرة.

عند تحديد METHOD2، يمكن لـ FrontISTR التحول إلى طريقة تكرارية بديلة إذا تباعد CG أو انهار. هذه الوظيفة احتياطية للحالات التي يكون فيها CG هو المحلّل الأساسي؛ وتستخدم الطريقة البديلة الإعدادات وأسطر البيانات المتبقية نفسها للمحلّل الأساسي.

التهيئة المسبقة

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

المهيئ المسبق الخصائص التطبيق النموذجي
SSOR مهيئ مسبق قياسي؛ يدعم الترتيب متعدد الألوان. المرشح الأول للتجربة؛ مستخدم على نطاق واسع في التحليل الإنشائي.
التحجيم القطري مهيئ خفيف يستخدم العناصر القطرية. عندما تكون الكلفة الحسابية المنخفضة مفضلة.
BILU تحليل LU ناقص كتلي. مرشح للمسائل التي يصعب تقاربها باستخدام SSOR.
AMG شبكة متعددة جبرية باستخدام Trilinos-ML. مرشح للمسائل واسعة النطاق أو التي تهيمن عليها مكونات خطأ هرمية.
SAINV معكوس تقريبي متناثر. خيار تهيئة مسبقة متخصص لمسائل التلامس أو بيئات الذاكرة الموزعة.
RIF تحليل ناقص متين. خيار آخر للتحليل الناقص.

SSOR هو الاختيار القياسي، ويُستخدم إصدار بترتيب متعدد الألوان في توازٍ OpenMP. التحجيم القطري خفيف، إلا أن مقدار تحسينه للتقارب يعتمد على المسألة. يُنفذ BILU كتحليل LU ناقص كتلي ويدعم أيضًا المصفوفات ذات أعداد عامة من درجات الحرية. لعائلة BILU مسار يزيد تلقائيًا معامل التصحيح القطري SIGMA_DIAG ويعيد المحاولة عندما تتباعد الطريقة التكرارية؛ راجع مرجع الكلمات المفتاحية لكيفية تحديد القيمة.

يستخدم AMG مكتبة Trilinos-ML، لذلك يجب تمكين ML وقت البناء. يمكن تحديد المُنعِّمات ودورات الشبكة المتعددة وطرق التخشن وإعدادات أخرى، لكن راجع مرجع الكلمات المفتاحية للقيم التفصيلية. عند استخدام SAINV في تحليل متوازٍ يحتوي على تلامس أو قيود MPC، يمكن لعمق التداخل المستخدم في تقسيم المجال أن يؤثر في التقارب.

الطرق المباشرة

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

الطريقة المباشرة البيئة المتوازية التطبيق
MUMPS توازٍ MPI يحل المصفوفات المتناثرة بطريقة مباشرة في بيئات الذاكرة الموزعة.
MKL Intel MKL / OpenMP محلّل مباشر يعتمد على Intel MKL. يُستخدم Intel PARDISO داخليًا. مع عدة عمليات MPI، يُستخدم مسار Cluster MKL. DIRECTmkl اسم مستعار لـ MKL.

يمكن استخدام الطرق المباشرة مع المصفوفات المتماثلة وغير المتماثلة. تتطلب MUMPS وMKL ربط المكتبات المقابلة وقت البناء. ولا يمكن استخدامهما في البيئات التي لا تحتوي على تلك المكتبات، لذلك راجع دليل البناء لمعرفة الاعتماديات المطلوبة وخيارات CMake.

يحتوي FrontISTR أيضًا على مسار محلّل مباشر مدمج لا يستخدم مكتبة خارجية، لكن في التحليلات العادية التي تتطلب طريقة مباشرة، ينبغي عادةً النظر أولًا في MUMPS أو MKL.

لا تُطبق التهيئة المسبقة على الطرق المباشرة. حتى إذا حُدد مهيئ مسبق في !SOLVER، فلا يُرجع إليه في مسار المحلّل المباشر.

طرق معالجة MPC

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

طريقة معالجة MPC الموضع الاستخدام الافتراضي
طريقة العقوبة تحقق القيود تقريبًا بإضافة حدود صلابة كبيرة إلى معادلات القيد. الافتراضي للطرق المباشرة.
طريقة MPC-CG طريقة قديمة تعالج ضرب المصفوفة في المتجه المحتوي على القيود داخل المحلّل التكراري. مهجورة.
الإزالة الصريحة لدرجات الحرية تزيل درجات الحرية المقيدة وتحل النظام الخطي المصغر. الافتراضي للطرق التكرارية.

طريقة العقوبة هي الافتراضية للطرق المباشرة، بينما الإزالة الصريحة لدرجات الحرية هي الافتراضية للطرق التكرارية. طريقة MPC-CG خيار توافق قديم وغير موصى به للتحليلات الجديدة؛ استخدم عادةً الإزالة الصريحة لدرجات الحرية أو المعالجة الافتراضية للطريقة المباشرة المختارة.

يمكن تحديد طريقة معالجة MPC صراحة باستخدام MPCMETHOD في !SOLVER. راجع مرجع الكلمات المفتاحية لمعنى وصيغة كل قيمة.

إزالة درجات حرية التلامس

تقلل إزالة درجات حرية التلامس درجات حرية التلامس الإضافية التي يدخلها تلامس SLAGRANGE قبل تمرير النظام إلى المحلّل الخطي. ويمكن لإزالة درجات حرية التلامس هذه تحسين خصائص النظام الخطي الذي تتعامل معه طريقة تكرارية.

في الوضع التلقائي الافتراضي، تُفعّل إزالة درجات حرية التلامس للطرق التكرارية وتُعطل للطرق المباشرة. وللطرق المباشرة يوجد مسار يحل النظام الموسع الذي يحتوي على درجات حرية التلامس مباشرة.

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

الوظائف المساعدة

يمكن استخدام تقدير عدد الشرط وتفريغ المصفوفة والتسجيل للتحقق من تقارب المحلّل وأدائه. هذه الوظائف غير مطلوبة في التحليلات العادية وتُفعّل أساسًا للتصحيح أو تقييم الأداء.

الوظيفة الغرض ملاحظات
تقدير عدد الشرط يخرج مؤشرًا لعدد الشرط لـ CG وGMRES. متاح في البنى التي يكون LAPACK فيها مفعّلًا.
تفريغ المصفوفة يحفظ المصفوفة والطرف الأيمن الممررين إلى المحلّل. يدعم تنسيقات Matrix Market وCSR وBSR.
DUMPEXIT ينهي التحليل بعد تفريغ المصفوفة. يُستخدم عندما تكون المصفوفة وحدها مطلوبة للتحقق الخارجي.
ITERLOG يخرج تاريخ تقارب الطريقة التكرارية. يُستخدم لفحص اتجاهات المتبقي.
TIMELOG يخرج زمن حساب المحلّل. يخرج VERBOSE تفصيلًا أدق.
STEPLOG يخرج معلومات الخطوات. يُستخدم لفحص إجراء التحليل.

يسمح تفريغ المصفوفة بفحص مصفوفة المعاملات المجمعة بواسطة التحليل باستخدام أدوات خارجية. عند تفعيل DUMPEXIT، ينتهي التحليل بعد حفظ المصفوفة والطرف الأيمن. تقدير عدد الشرط وظيفة تجريبية متاحة مع CG وGMRES ويمكن استخدامها لتشخيص سلوك التقارب.

موضوعات ذات صلة