আমি ভাবছি যে কীভাবে গ্লোবাল স্পার্স সসীম উপাদান ম্যাট্রিকগুলিতে ডিরিচলেট সীমানা শর্তগুলি কার্যকরভাবে কার্যকর করা হয়। উদাহরণস্বরূপ বলতে দিন যে আমাদের বিশ্বব্যাপী সসীম উপাদান ম্যাট্রিক্স ছিল:
তারপরে প্রথম নোডে ডিরিচলেট শর্তটি প্রয়োগ করতে ( ) আমরা প্রথম সারিতে শূন্য করে, কে 1 put at এ 1 রেখে এবং ডান দিকের প্রথম কলামটি বিয়োগ করব। উদাহরণস্বরূপ আমাদের সিস্টেমটি হয়ে উঠবে:
এটি তত্ত্বের ক্ষেত্রে সমস্ত ভাল এবং ভাল, তবে আমাদের কে ম্যাট্রিক্স যদি সংকুচিত সারি বিন্যাসে (সিআরএস) সঞ্চিত থাকে তবে কলামগুলি ডানদিকে সরিয়ে নেওয়া বড় সিস্টেমে ব্যয়বহুল হয়ে ওঠে (অনেকগুলি নোড ডেরিচলেট সহ)। একটি বিকল্প হ'ল ডেরিচলেট শর্তের সাথে সম্পর্কিত কলামগুলি ডান হাতের কাছে না সরিয়ে নেওয়া, অর্থাৎ আমাদের সিস্টেমটি হয়ে উঠবে:
তবে এটির পিছনে একটি বড় অঙ্কন রয়েছে যে সিস্টেমটি আর প্রতিসম নয় এবং তাই আমরা আর পূর্ব শর্তযুক্ত কনজুগেট গ্রেডিয়েন্ট (বা অন্যান্য প্রতিসাম্পিক দ্রাবক) ব্যবহার করতে পারি না। একটি আকর্ষণীয় সমাধান যা আমি পেলাম তা হ'ল "বড় সংখ্যাগুলির পদ্ধতি" যা আমি জেনেডি নিকিশকভের "প্রোগ্রামিং ফিনিট এলিমেন্টস অফ জাভা" বইটিতে পেয়েছি। এই পদ্ধতিটিতে এই সত্যটি ব্যবহার করা হয় যে ডাবল নির্ভুলতার মধ্যে প্রায় 16 সংখ্যক নির্ভুলতা রয়েছে। পজিশনে 1 রাখার পরিবর্তে আমরা একটি বিশাল সংখ্যা রাখি। উদাহরণস্বরূপ আমাদের সিস্টেমটি হয়ে যায়:
এই পদ্ধতির সুবিধাগুলি হ'ল এটি ম্যাট্রিক্সের প্রতিসাম্যতা বজায় রাখে এবং স্পার্স স্টোরেজ ফর্ম্যাটগুলির জন্যও খুব দক্ষ। আমার প্রশ্নগুলি তখন নিম্নরূপ:
কীভাবে ডিরিচলেট সীমানা শর্তগুলি তাপ / তরলগুলির জন্য সীমাবদ্ধ উপাদান কোডগুলিতে সাধারণত প্রয়োগ করা হয়? লোকেরা সাধারণত প্রচুর সংখ্যার পদ্ধতি ব্যবহার করে বা তারা অন্য কিছু করে? বিপুল সংখ্যার পদ্ধতির কোনও অসুবিধা আছে যা কেউ দেখতে পাচ্ছে? আমি ধরে নিচ্ছি যে বেশিরভাগ বাণিজ্যিক এবং অ-বাণিজ্যিক কোডগুলিতে সম্ভবত এই সমস্যাটি সমাধান করে এমন কিছু স্ট্যান্ডার্ড দক্ষ পদ্ধতি ব্যবহার করা হয়েছে (স্পষ্টতই আমি প্রত্যাশা করি না যে লোকেরা প্রতিটি বাণিজ্যিক সসীম উপাদান সলভারের সমস্ত অভ্যন্তরীণ কাজ জানতে পারে তবে এই সমস্যাটি মৌলিক / মৌলিক বলে মনে হয়) যথেষ্ট যে কেউ সম্ভবত এই জাতীয় প্রকল্পগুলিতে কাজ করেছেন এবং দিকনির্দেশনা সরবরাহ করতে পারেন)।