অনির্দিষ্টকালের প্রতিসাম্য সিস্টেমের জন্য পিইটিএসসি-তে কোন পূর্বশর্তি (এবং সলভার) ব্যবহার করা উচিত?


12

আমার সিস্টেমটি ল্যাগরেঞ্জ মাল্টিপ্লায়ারগুলির (যেমন incompressable স্টোকসের প্রবাহ) এর সাথে একটি প্রতিসাম্পূর্ণ FE সমস্যা:

(ABTBC)

যেখানে সাধারণ ক্ষেত্রে (আমি এমনকি ল্যাগরেঞ্জের গুণকগুলি শেষ হওয়ার জন্য সমীকরণগুলি নম্বরযুক্ত কিনা তাও নিশ্চিত করে ফেলেছি)। সিস্টেমটি বেশ বড় (+ 100 কে লাইন)।C=0

এই প্রশ্নের উত্তর পড়ে , আমার মনে হয়েছিল যে উপযুক্ত পূর্বশর্ত রয়েছে যা মিশ্র ফে-সমস্যাগুলির জন্য ব্যবহার করা যেতে পারে।

পিইটিএসসি ব্যবহার করে, আমি মাইনআরএস ( -ksp_type minres -pc_type none -mat_type sbaij) দিয়ে সিস্টেমটি সমাধান করতে পেরেছি , যদিও যথার্থতা দুর্দান্ত নয় (লিনিয়ার সমস্যার জন্য বেশ কয়েকটি নিউটন-পুনরাবৃত্তি ঘটায়)। পূর্বশর্তাকারী এবং কেএসপি-সলভারের কোনও অন্য সমন্বয় কাজ করছে বলে মনে হয় না।

পিইটিএসসি-র জন্য এমন কোনও পতাকাের সংমিশ্রণ রয়েছে যা কেবলমাত্র মাইন্রেসের চেয়ে দ্রুত এই সিস্টেমটি সমাধান করবে?


1
সায়কম্প এসই তে স্বাগতম! আপনার প্রশ্নটি স্পষ্টতা এবং সাধারণতার দিক দিয়ে উত্থাপিত। কেবলমাত্র একটি বাক্যটি কিছুটা অস্পষ্ট বা অসম্পূর্ণ: অনর্থক গণনার কারণে আপনার অর্থ কী?
জানুয়ারী

1
আমি বাক্যটি শেষ করতে ভুলে গেছি! আমি আশা করি এটি এখন পরিষ্কার হয়ে গেছে।
মিকেল Öhman

উত্তর:


13

সতর্কতা

স্যাডল পয়েন্ট সমস্যার সমাধানে সুনির্দিষ্ট সমস্যার চেয়ে অনেক বেশি পছন্দ জড়িত এবং আরও অনেক কিছুই ভুল হতে পারে। অভিযাত্রী ডিবাগ করার জন্য সমস্ত স্তরের জন্য মনিটর ব্যবহার করুন, সহায়ক অপারেটরগুলি একক (সাধারণত কেবলমাত্র একটি ধ্রুব নাল স্পেস) থাকাকালীন নাল স্পেসগুলি সঠিকভাবে পরিচালিত হয় এবং পূর্বশর্তগুলি স্থিতিশীল থাকে তা নিশ্চিত করতে। এই কৌশলগুলি এই প্রশ্নে আলোচনা করা হয় ।

স্যাডল পয়েন্টের সমস্যাগুলি সমাধান করা

আপনি ব্যবহারকারীর ম্যানুয়ালে ব্লক ম্যাট্রিকগুলি সমাধান করার বিভাগটি দিয়ে শুরু করতে পারেন । স্টোকসের মতো সমস্যার জন্য, আপনি পিসিএফআইএলডিএসপিএলআইটি ব্যবহার করে একটি শুর পরিপূরক পূর্বশর্ত তৈরি করতে পারেন ।

-pc_type fieldsplit -pc_fieldsplit_type schur -pc_fieldsplit_detect_saddle_point

এটি স্কুয়ার পরিপূরক ( ) এর জন্য একটি সর্বনিম্ন স্কোয়ার্স কম্যুটেটর পূর্বশর্তকের সাথে মিলিত হতে পারে -fieldsplit_1_pc_type lsc। এটি সাধারণ -fieldsplit_1_ksp_type preonlyএবং বাইরের পুনরাবৃত্তিকে বেশিরভাগ কাজ করতে দিন। ব্লক-ত্রিভুজাকার বৈকল্পগুলি জনপ্রিয় হয় যখন এইভাবে ব্যবহৃত হয়, যেমন -pc_fieldsplit_schur_fact_type upper,।

আমাদের কাগজে (প্রিপ্রিন্ট) অপশন অপশন ব্যবহার করে আপনি সলভার রচনা সম্পর্কিত আরও বিশদ জানতে পারেন , যা ব্লক পচনের সাথে মাল্টিগ্রিড ঘুরে দেখার জন্য (ফিল্ডস্প্লিটটি মাল্টিগ্রিডের ভিতরে রাখার ) সাথেও আলোচনা করে।

অনেক সমস্যার জন্য, আপনি ক্ষেত্রের পচন কাস্টমাইজ করতে এবং শুর পরিপূরক পূর্বশর্তগুলি দিতে চান, যার মধ্যে অনেকগুলি সহায়ক অপারেটরদের সাথে জড়িত। উদাহরণস্বরূপ, এলম্যান এট আল-এর "প্রেসার কনভেকশন-ডিসফিউশন" (পিসিডি) পদ্ধতিটির জন্য চাপের জায়গার ক্ষেত্রে অ্যাসিলিয়ারি অপারেটরের বিচক্ষণতা প্রয়োজন। এই উদ্দেশ্যে পিসিহেল এবং ব্যবহারকারীর ম্যানুয়াল বিভাগের উদাহরণগুলি দেখুন ।


3

আপনি একটি পূর্বশর্ত চান, এবং এর একটি নির্মাণ এখানে আলোচনা করা হয়েছে: http://www.math.tamu.edu/~bangerth/videos.676.38.html


বক্তৃতাটি খুব আকর্ষণীয় ছিল, তবে আমি কীভাবে এটি সমাধান করতে পিইটিএসসি ব্যবহার করতে পারি তার কয়েকটি দৃ concrete় উদাহরণ খুঁজছিলাম।
মিকেল Öhman
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.