أسماء وظيفة والمعلمات في المتغيرات ماتلاب

StackOverflow https://stackoverflow.com/questions/421873

  •  05-07-2019
  •  | 
  •  

سؤال

في بلدي ماتلاب م ملف أستخدمه بعض المنطق (سلسلة CONCAT) لبناء متغيرات مثل هذا:

c = 'CalcPrediction(1,10)'

وهذا يعني لدي السلسلة التي هي وظيفة وبعض المعلمات. كيف يمكنني أن أفعل هذا النداء وظيفة؟

ومحاولة المدى (ج) نتائج البحث في

>> run(c)
??? Error using ==> run at 71
CalcPrediction(1,10) not found.

ملحوظة: المدى (ج) يعمل بشكل جيد إذا كان هناك أية معلمات. مثلا     ج = 'CalcPrediction'؛     المدى (ج)؛

هل كانت مفيدة؟

المحلول

والأمر كنت تبحث عن وeval() بدلا من run()

نصائح أخرى

ودون رؤية الواقع النصي أنه من الصعب التعميم، ولكن ...

وأين جذر تربيعي هو ملف م تحتوي فقط: y=sqrt(x)

وبعد ذلك تنفيذ:

وx=[2,0];

وc='squareRoot';

وrun(c);

ويعطي:

وy =

و1.4142 0

وهذا المثال هو القول يمكنك تحديد البرنامج النصي لاستخدام متغير المعلنة (x في هذه الحالة) ثم تعريف متغير قبل تشغيل البرنامج النصي.

وبدون النصي أنا لا أعرف ما تفعلونه مع المعلمات. إذا كان هذا لا يجيب على سؤالك، الرد على السيناريو الخاص بك.

وتحتاج إلى استخدام <لأ href = "http://www.mathworks.com/access/helpdesk/help/techdoc/index.html؟/access/helpdesk/help/techdoc/ref/str2func.html" يختلط = "نوفولو noreferrer"> str2func . تحتاج هذه الدالة سلسلة وإرجاع معالج وظيفة التي يمكن استدعاؤها مع المعلمات الخاصة بك. تحقق من الأمثلة على الصفحة المرتبطة.

fh = str2func('CalcPrediction')
fh(1, 10)
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top