मैंने MATLAB केंद्रीय पर एक ही प्रश्न पोस्ट किया , और बिल ग्रीन ने कृपया एक उत्तर प्रदान किया ।
मैं संक्षेप में रिपोर्ट करता हूं और इसे बढ़ाता हूं ताकि यह दूसरों के लिए उपयोगी हो सके।
बिल द्वारा समाधान:
इस तरह का प्लॉट बनाने का एक तरीका यह है। मान लें कि आपके पास पीडीई टूलबॉक्स मेशर, पी, और सॉल्यूशन वेक्टर, यू द्वारा बनाया गया पॉइंट मैट्रिक्स है। नीचे दिए गए फ़ंक्शन दो अंत बिंदुओं के x और y स्थानों द्वारा परिभाषित रेखा के साथ उस समाधान का एक भूखंड बनाएंगे। मेरा उदाहरण एक इकाई वर्ग पर एक समाधान के लिए है और मैं लाइन (0, .5) से (1, .5) के साथ एक भूखंड चाहता हूं। मैं भूखंड में 25 अंक शामिल करना चाहता हूं। जैसा कि आप देख सकते हैं, वास्तविक कार्य TriScatteredInterp
कोर MATLAB से फ़ंक्शन द्वारा किया जा रहा है ।
plotAlongLine(p, u, [0,.5], [1,.5], 25);
function plotAlongLine(p, u, xy1, xy2, numpts)
x = linspace(xy1(1),xy2(1),numpts);
y = linspace(xy1(2),xy2(2),numpts);
F = TriScatteredInterp(p(1,:)', p(2,:)', u);
uxy = F(x,y);
figure; plot(x, uxy); //REM: x is chosen here as a curvilinear coordinate
end
मैं आगे टिप्पणी करना चाहता हूं कि पिछला फ़ंक्शन किसी को समाधान u
या इसके कार्यों को प्लॉट करने की अनुमति देता है f(u)
, बशर्ते u
मेष नोड्स पर परिभाषित किया गया हो (जैसा कि आमतौर पर एफईएम अनुमानित समाधानों के लिए होता है)।
यदि किसी को जाल केंद्रों (जैसे कार्यों grad u
) पर परिभाषित कार्यों के वर्गों की साजिश करने की आवश्यकता होती है , तो वह अग्रिम फ़ंक्शन का उपयोग कर सकता है pdeprtni
जो केंद्र-मूल्यवान कार्यों से नोड-वैल्यू-फ़ंक्शन का उत्पादन करता है ।