2009-02-10 27 views
8

मैं एक मैटलैब मेक्स-फाइल लिख रहा हूं। हालांकि, मैक्स-फाइलों में गंभीर सीमा लगती है: help mexfilename कोई मदद टेक्स्ट प्रकट नहीं होगा।मैक्स-फ़ंक्शन में "सहायता" -टेक्स्ट जोड़ने के लिए कैसे?

मैं इसे एक एम-फाइल लिखकर बाधित कर सकता हूं, जो आखिरकार मैक्स फ़ाइल कहता है, लेकिन इसमें सहायता शामिल है, लेकिन एक बेहतर तरीका होना चाहिए।

दूसरी ओर, कि जिस तरह से मैं एम-फ़ाइल है, जहां यह कहीं अधिक ऐसा करने के लिए सुविधाजनक है में सभी त्रुटि-जांच कर सकता है ...

उत्तर

10

मुझे विश्वास है कि पियरेबीडीआर सही है; आप अपने फ़ंक्शन का एक एम-फ़ाइल संस्करण केवल हेडर कॉल और टिप्पणी ब्लॉक के साथ बनाएंगे, लेकिन कोई भी शरीर नहीं।

एम-फाइल में इनपुट के लिए त्रुटि जांचने का बुरा विचार नहीं हो सकता है, तो एम-फाइल को मैक्स-फाइल का आह्वान करना होगा (हालांकि आपको उन्हें अलग-अलग नाम देना पड़ सकता है)। MATLAB में चरों की जांच करने के लिए यह अधिक सीधे हो सकता है (उदाहरण के लिए, nargchk जैसे बिल्ट-इन्स का उपयोग करके) और उन्हें एक मानक प्रारूप में डाल दें जो आप हमेशा मैक्स फ़ंक्शन में इनपुट चाहते हैं। छवि प्रसंस्करण टूलबॉक्स फ़ंक्शंस में से कई फ़ंक्शन जो मैंने देखा है, ऐसा करने के लिए प्रतीत होता है (एम-फाइल में डेटा स्वरूपण और जांच कर रहा है और फिर मैक्स फ़ाइल में महंगे कंप्यूटेशंस कर रहा है)।

+3

मुझे एहसास है कि यह पुराना है, लेकिन यहां पर सलाह का पालन करने के बाद - मैंने पाया कि 'एम' फ़ाइल को 'मेक्सिको' फ़ाइल के समान फ़ोल्डर में होना था, अन्यथा मैटलैब ने खाली 'एम' फ़ाइल प्राथमिकता दी और कुछ भी नहीं किया! – n00dle

+1

@ianhales: मैं आम तौर पर पथ पर एम-फाइल (इनपुट तर्क पार्सिंग और चेकिंग के साथ) डालता हूं, और मैक्स-फ़ाइल (वास्तविक गणना करना) एक आसन्न 'निजी 'फ़ोल्डर में डालता हूं। उदाहरण के लिए, आपके पास 'myfcn' कॉलिंग के साथ'/path/to/myfcn.m' और '/ path/to/private/myfcn_mex.m' होगा (मानना ​​है कि पथ में 'पथ/to' जोड़ा गया है) निजी मेक्स-फ़ंक्शन – Amro

5

आप एक मीटर फ़ाइल बनाने के लिए (है name.m) उसी नाम के साथ आपकी मेक्स-फ़ाइल (name.c)। फिर, आप फ़ंक्शन घोषणा और टेक्स्ट की सहायता करते हैं, लेकिन कोई फंक्शन बॉडी नहीं। उदाहरण:

function [o1,o2] = MyFct(i1,i2,i3) 
% MyFct takes 3 arguments and returns 2 ...  
संबंधित मुद्दे