প্রবাহিত জিপিইউ গণনা জল


15

আমার সিভিল ইঞ্জিনিয়ারিং ব্যাকগ্রাউন্ড রয়েছে এবং নিয়মিত হাইড্রোলিক এবং হাইড্রোলজিক বিশ্লেষণ করি। তারা এই ধরণের জিনিসের জন্য ডিগ্রি বিক্রি করে, তবে এটি সত্যই রকেট বিজ্ঞান নয়। আমি সম্প্রতি জিপিইউতে একটি ভূখণ্ডের জন্য সম্পূর্ণ হাইড্রোলজিক এবং হাইড্রোলিক প্রক্রিয়াটি প্রয়োগ করার বিষয়টি আমার মনে পেয়েছি। আমি সাম্প্রতিককালে কম্পিউট শেডারগুলি শিখেছি তাই এখন আমি সমান্তরাল জিপিইউ ওয়ার্কফ্লো ডিজাইনের চেয়ে ইঞ্জিনিয়ারিংয়ে আরও ভাল থাকছি।

সূত্রটি ব্যবহার করে আপনি বৃষ্টিপাতের ইভেন্টের সময় উত্পন্ন জলের পরিমাণ গণনা করতে পারেন:
Q (CF/S) = c * I (in/hr) * A (acres)

আমি এমনকি প্রথম ক্ষেত্রের "একারেজ" গণনা ছাড়িয়ে যেতে অসুবিধা করছি।

বর্তমান বাস্তবায়ন ওভারভিউ:

  1. ভূখণ্ডটি 1-ইউনিটের বিরতিতে উল্লম্ব একটি নিয়মিত গ্রিড
  2. একটি উচ্চতা ম্যাপে প্রতিটি শীর্ষবিন্দুর জন্য একটি করে R32 উচ্চতার মান থাকে
  3. বর্তমানে, আমি কেবলমাত্র 4 টি মূল দিকগুলিতে প্রবাহের অনুমতি দিচ্ছি (কোন তির্যক নয়)
  4. আমি ইতিমধ্যে বিশ্লেষণ করে রেখেছি এমন একটি শীর্ষকোষের জন্য স্টেনসিল হিসাবে একটি টেক্সচার 2 ডি [ইনট] ব্যবহার করছি

বর্তমান অ্যালগরিদম:

  1. যখন ভূখণ্ডের সরঞ্জামটি সক্রিয় ছিল এবং এখন নেই, তবে ....
  2. "স্টেনসিল" সাফ করুন।
  3. সর্বনিম্ন উচ্চতার জন্য পুরো অঞ্চলটি স্ক্যান করুন।
  4. সেই একক পয়েন্টটি সিএস_ফ্লুডের প্রাথমিক ইনপুট।
  5. সিএস_ফ্লুড একটি এক্স-অক্ষ পাস করে।
  6. প্রতিটি ইনপুট ভারটেক্সটি 2048 বার পর্যন্ত এক্স- এবং এক্স + উভয় দিকের মধ্যেই অনুমান করা হয়।
  7. OOB স্থানাঙ্কের সাথে সংলগ্ন প্রান্তবিন্দু সন্ধান করা এই দিকের অঞ্চলের প্রান্তটি নির্দেশ করে। কারেন্টপয়েন্টটি বাউন্ডারিপয়েন্টস বাফারে যুক্ত হয় এবং সেই দিকের জন্য প্রজেকশন লুপটি সমাপ্ত হয়। এটি সহজ ছিল এবং প্রতিবার দুর্দান্ত কাজ করে।
  8. উচ্চতাগুলির সাথে সংলগ্ন শীর্ষগুলি> = বর্তমান ভার্টেক্সের উচ্চতা স্টেনসিলের মধ্যে চিহ্নিত এবং নেক্সটপাস বাফারে যুক্ত করা হয়েছে।
  9. উচ্চতাগুলির সাথে সংলগ্ন শীর্ষগুলি <বর্তমানের শীর্ষবিন্দুর উচ্চতা একটি পর্বতের শীর্ষকে নির্দেশ করে এবং প্রজেকশন লুপটি সমাপ্ত করে। ভবিষ্যতের বন্যার ভরাটের পুনরাবৃত্তিটি সম্ভবত রিজের গোড়ায়, তার "পিছনে" পাশের চারপাশে প্রবাহিত হবে এবং দ্বিতীয় বার একই পর্বত সনাক্ত করতে পারে।
  10. যে কোনও পিক / রিজ পয়েন্টগুলি একাধিকবার শনাক্ত করা হয়েছে এটি এই উদ্দেশ্যে সীমানা পয়েন্ট হবে না
  11. ঠিক একবার সনাক্ত হওয়া যে কোনও শিখর / রিজ পয়েন্টগুলি বাউন্ডারিপয়েন্টগুলিতে যুক্ত করা হয় এবং সেই দিকে প্রজেকশন লুপটি সমাপ্ত হয়।
  12. সিএস_ফ্লুড এক্স-অক্ষ পাস দ্বারা উত্পন্ন পয়েন্টগুলি ইনপুট হিসাবে ব্যবহার করে একই কোড দিয়ে একটি জেড-অক্ষ পাস করে।
  13. এই মুহূর্তে, সিএস_ফ্লাড দু'দিকের মধ্যে অনির্দিষ্টকালের জন্য পর্যায়ক্রমে চলতে থাকে। শেষ পর্যন্ত, যখনই সিএস_ফ্লুড সম্পূর্ণ হয় এবং নেক্সটপাস বাফার খালি থাকে আমি সামগ্রিক লুপটি শেষ করব ate

আদর্শভাবে, সেই সময়ে, বাউন্ডারিপয়েন্টগুলিতে প্রাকৃতিক নিকাশী বিভাজনে ঘটে এমন প্রতিটি শীর্ষবিন্দু থাকবে। সীমানার মধ্যে অবতরণ জলের ফোটা অবশেষে একই নিম্ন স্থানে প্রবাহিত। সীমানার বাইরে জলের ফোটা অবতরণ "অন্য কোথাও" যান।

তারপর:

  1. স্টেনসিল সাফ না করে, নিম্নতম, নন-স্টেনসিলড, ভারটেক্সের জন্য অঞ্চলটি পুনরায় স্ক্যান করুন।
  2. সিএস_ফ্লুড ইটারেট করুন।
  3. স্টেনসিল পূর্ণ না হওয়া পর্যন্ত পুনরাবৃত্তি করুন (বা অনুরূপ কিছু)।

এই রঙগুলির সাথে 3 ডি বোঝা শক্ত; এটি অবিচ্ছেদ্য উচ্চতায় কনট্যুর লাইনগুলি দেখায়:
(প্রান্তের কাছাকাছি একটি বার্ম দ্বারা বেষ্টিত একটি গর্ত) প্রান্ত বার্ম গর্ত

একটি প্রান্তবিন্দু জুড়ে নিষ্কাশনের প্রায় 10 অনন্য উপায় রয়েছে; প্রত্যেককে একটি অনন্য রঙ দেওয়া দেখে মনে হচ্ছে:
(দৃশ্যমান বিজ্ঞপ্তি সরঞ্জাম চিহ্ন, "ছদ্মবেশগুলি" সুন্দরভাবে দেখায়) এখানে চিত্র বর্ণনা লিখুন

এটি সিএস_ফ্লাড, সীমানা বা অন্যথায়, পয়েন্ট হিসাবে প্রকাশিত প্রতিটি পয়েন্ট দেখায়: এখানে চিত্র বর্ণনা লিখুন

অ্যালগরিদম সর্বদা প্রায় কাজ করে । কখনও কখনও, এটি এমনকি সঠিকভাবে কাজ করে। অন্যান্য সময়ে, অ্যালগরিদম স্পষ্টভাবে সঠিক আকারে অন্তর্ভুক্ত থাকে তবে অনির্দিষ্টকালের জন্য আউটপুট পয়েন্টগুলিতে চালিয়ে যাবে। 3 য় স্ক্রিনশটে দেখা যায়, কখনও কখনও এটি বিভ্রান্ত হয়। সেখানে অন্য একটি পরিস্থিতি / উপাদান থাকতে হবে যা আমি উপেক্ষা করেছি। আমি আমার নজরদারি বা সমস্যাটি আক্রমণের সহজ এবং / অথবা আরও মার্জিত উপায়গুলির পরামর্শগুলি খুঁজে পেতে সহায়তা করব।

অনুপস্থিত পয়েন্ট

MissingPoint! নেক্সটপাস বাফারটিতে সনাক্ত করা প্রতিটি নতুন বাউন্ডারিপয়েন্ট যোগ করতে অ্যালগরিদমকে ব্যান্ড-সহায়তা দিয়ে অন্তর্ভুক্ত করা যেতে পারে। পরবর্তী পাসের সময়, সেই ব্যান্ড-সহায়তা দ্বারা উত্পাদিত 99% পয়েন্টগুলি কোথাও যেতে পারে না এবং কিছুই করতে পারে না তা নির্ধারণ করে অল্প পরিমাণ জিপিইউ সময় নষ্ট করবে। প্রথম পাসের সময়, অন্যান্য নেক্সটপাস পয়েন্টগুলির সাথে লোয়েস্টপয়েন্ট পাঠানোও এই নির্দিষ্ট পরিস্থিতিটি পরিচালনা করবে।

আমি জানি এটি প্রশ্রয়যোগ্য এবং পর্যাপ্ত সময় দেওয়ার পরে, আমি এটি যা করতে চাই তা করতে ব্যান্ড-সহায়তা করতে সক্ষম হব। আমি যদি এটি সম্ভব হয় তবে এটি আরও ভাল, স্মার্ট, দ্রুততর পদ্ধতিতে করতে চাই এবং আরও ভাল করার জন্য আমার এখনও পর্যাপ্ত অভিজ্ঞতা নেই।


সুতরাং আপনি বোঝাতে চেয়েছেন যে আপনি কেবল এই অঞ্চলে সমস্ত জলের নালা কোথায় গুনতে চান?
এভিলটাক

@ এভিলটাক, আমি মনে করি আমি একটি ভাল অ্যালগরিদম স্থির করেছি, তবে আমি এখনও "অদ্ভুত জিনিস" পেয়ে যাচ্ছি যা ব্যাখ্যা করার মতো অভিজ্ঞতা আমার নেই। আপনি যদি সমান্তরাল জিপিইউ'ইং-তে ভাল হন তবে দয়া করে পরীক্ষা করে দেখুন: গেমদেব.স্ট্যাকেক্সেঞ্জ
জন

উত্তর:


1

যখন একটি ড্রপ একটি প্রান্তবিন্দুটি দেখার জন্য "চেষ্টা" করেছিল, স্টেনসিলটি InterlockedExchange"মূল মান" ব্যবহার করে চিহ্নিত করা হয়েছিল এটি নির্ধারণ করার জন্য এটি ইতিমধ্যে স্টেনসিল করা হয়েছে কিনা (যদিও আমি কেবল এটি ওভাররোট করেছি)।

আমি যে সেরা অ্যালগরিদম নিয়ে এসেছি তা বন্যাকে একটি "স্ক্র্যাচ প্যাড" এবং একটি একক নিয়ম দিয়েছে: "ডাউন-হিল প্রবাহ করো না" (উচ্চতা সমান বা এর চেয়ে বেশি) না। এটি প্রায় সমস্ত জটিল পরীক্ষার অপসারণ করেছিল। যদিও এটি সাধারণত শৃঙ্গগুলি / ges ের উপর দিয়ে প্রবাহিত না করা ভাল তবে এটি তাদের সাথে প্রবাহিত কারণ সংলগ্ন প্রান্তগুলি "সমতল"। এটি মাঝেমধ্যে ফোঁটাগুলি অতীতের রিজ-লাইনগুলি ছিটিয়ে যাওয়ার অনুমতি দেয়।

এখানে চিত্র বর্ণনা লিখুন

"খুব দূরের" পয়েন্টগুলির প্রতিটি হ'ল "প্রবাহিত" এবং নিকাশী অঞ্চলে "প্রবাহিত হবে" (1 এ থামবে) বা না (একটি 0 এ থামবে)। "নোটস" বাতিল করা হয়েছে এবং সংশোধন করা স্ক্র্যাচ-প্যাডটি "চূড়ান্ত" অনুলিপি করা হয়েছে। যদি ফাইনালটি ইতিমধ্যে স্টেনসিল করা থাকে তবে স্ক্র্যাচ প্যাডটি ফেলে দেওয়া হবে। (ভবিষ্যত: এই সংঘর্ষগুলি সম্মিলিতভাবে বর্তমান নিকাশী অঞ্চলটির বাইরের সীমানাকে উপস্থাপন করতে হবে))

10FPS এ:

এখানে চিত্র বর্ণনা লিখুন

"নোটগুলি" লাল রঙে দেখানো হয়, একবার বড় অঞ্চলটি ফাইনালে অনুলিপি করে সবুজ হয়ে যায়, তারপরে অ্যালগোরিদমটি বাকী অবিরত অঞ্চলগুলির জন্য পুনরাবৃত্তি করে।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.