2011-08-05 22 views
7

मैं ऊंचाई के ऊपर चलने वाले तरल पदार्थ की मात्रा का अनुमान लगाने का एक तरीका ढूंढ रहा हूं। सबसे आसान समाधान मैं सोच सकता हूं कि इसे छोटे व्यास (< 0.1 मीटर) की बड़ी संख्या में गैर-खींचे गए क्षेत्रों के रूप में अनुमानित करना है। इसके बाद मैं उन स्थानों पर, जहां वे आराम करने के लिए आए थे, क्षेत्रों के "शीर्ष" पर पानी की सतह का प्रतिनिधित्व करने वाला एक दृश्य विमान लगाएंगे। मेरे ज्ञान के लिए, कोई प्रबंधित भौतिकी इंजन में तरल सिम्युलेटर में निर्मित नहीं है, इसलिए सवाल है।ऊंचाई ऊंचाई पर तरल प्रवाह को सिमुलेट करना

कार्यान्वयन में भौतिकी इंजन जैसे जिगलिब्क्स का उपयोग करना शामिल होगा, जो गोलाकारों की गति को अनुकरण करने में सक्षम है। विमानों की ऊंचाई निर्धारित करने के लिए, मैं समूह के शीर्ष परत पर मौजूद प्रत्येक क्षेत्र की अधिकतम ऊंचाई औसत करने की सोच रहा था।

मुझे प्रदर्शन शानदार होने की उम्मीद नहीं है, लेकिन क्या यह वास्तविक समय के लिए पहुंच योग्य होगा? यदि नहीं, तो क्या मैं इस सिमुलेशन का प्रवाह प्रवाह की पूर्व-बेक लाइनों में उपयोग कर सकता हूं?

मुझे उम्मीद है कि यह समझ में आता है, मुझे सचमुच राय/सुझाव चाहिए कि यह संभव है या नहीं, या इसके पास आने का बेहतर तरीका है।

किसी भी मदद के लिए धन्यवाद

, Venatu

(यदि उसके प्रासंगिक, मेरे लक्ष्य मंच XNA 4.0 है, केवल समय में इस बिंदु पर सी # का उपयोग कर। विंडोज, इसलिए PhysX/Havok अनुकरण के लिए संभावनाएं हैं, लेकिन मैं करूंगा एक प्रबंधित समाधान पसंद करते हैं)

+0

आपको कम से [vterrain.org पर सूचीबद्ध] अनुसंधान देखने के लिए चाहते हो सकता है (http://vterrain.org/Water/)। नदी सिमुलेशन पर विशेष रूप से काम करता है। – Bart

+0

मैं बस कुछ छोटे क्षेत्रों के साथ वर्णन करने जैसा कुछ ठीक करने के बारे में हूं! योजना गोलाकारों को काटने का अनुमान लगाते हुए, गोलाकारों को परिदृश्य को खराब करने की अनुमति देना है। –

उत्तर

2

मैंने वास्तविक समय में यथार्थवादी द्रव गतिशीलता को भौतिकी जैसे कुछ उपयोग किए बिना नहीं देखा है - शायद इसलिए कि आवश्यक गणना इतनी जटिल हैं! जैसा कि मैंने देखा है, आपके दृष्टिकोण के साथ समस्या उन सभी क्षेत्रों के आराम से संपर्क के साथ आएगी, जैसे वे बस गए हैं, जो बहुत सारी प्रोसेसिंग पावर लेते हैं। संपर्क बिंदुओं के बहुत सारे प्रदर्शन डेस्कटॉप में सबसे शक्तिशाली पर भी, प्रदर्शन में बहुत तेजी से खाने के लिए कुख्यात हैं।

यदि आप इस मार्ग से नीचे जा रहे हैं तो मैं वसंत आधारित भौतिकी का उपयोग करके तरल पदार्थ को लोचदार लेकिन ठोस शरीर के रूप में मॉडलिंग करने की सलाह दूंगा, जहां पानी के एक हिस्से पर लागू बल स्प्रिंग्स का उपयोग बाकी हिस्सों में फैलाने के लिए करेगा। यह आपको स्प्रिंग्स के लिए ब्रेकिंग पॉइंट सेट करने और शरीर को दो या दो से अधिक निकायों में अलग करने का विकल्प देता है जब यह होता है (और एक साथ वापस आने के लिए विपरीत।) यह आपको स्प्रे जैसी चीज़ों के लिए आधार प्रदान कर सकता है। प्रदर्शन के संदर्भ में यह एक अधिक बहुमुखी दृष्टिकोण भी है, क्योंकि आप अपने मॉडल का अनुमान लगाने के लिए उपयोग किए जाने वाले कणों और स्प्रिंग्स की संख्या चुन सकते हैं।

यह एक बड़ा और जटिल विषय है, लेकिन मुझे उम्मीद है कि कम से कम कुछ अंतर्दृष्टि प्रदान की जाएगी!

1

रीयल-टाइम में तरल पदार्थ अनुकरण करने की सबसे लोकप्रिय विधि चिकना-कण हाइड्रोडायनेमिक्स है।

कई उपयोगी लिंक्स:

http://en.wikipedia.org/wiki/Smoothed-particle_hydrodynamics

http://http.developer.nvidia.com/GPUGems/gpugems_ch38.html

http://www.plunk.org/~trina/thesis/html/thesis_toc.html

इसके अलावा खुद को अनुकरण करने के लिए आप भी इस तरह के झाडू-और-के रूप में कुछ विशेष व्यापक चरण टक्कर पता लगाने एल्गोरिदम की आवश्यकता होगी प्रुन या हैशिंग कोशिकाएं।

और आप सही हैं, तरल गतिशीलता के लिए कोई पूर्ण 2 डी समाधान नहीं है।