how to solve "Undefined function" problem?

I am writing a code where i used melcepsta function and it worked fine for the first time. Later I closed Matlab completely and opened it 3 days later to run the same program, but it did not run and it gave me this error.. "Undefined function 'Melcepsta'". Before running the program after 3 days it asked whether to change the path of the .m file or add to the path.. I selected add to the path.. I have attached the .m and .fig file along. Please, any help will be appreciated.

 Réponse acceptée

OCDER
OCDER le 24 Sep 2018

0 votes

Add the path where your missing function is to your Matlab working path. Read more here.

6 commentaires

mohanish
mohanish le 24 Sep 2018
how to add the path?
addpath('C:\User\MyUserName\MyMatlabFolder\MelcepstaFolder\')
something like that.
mohanish
mohanish le 25 Sep 2018
i am not able to understand. Can you explain this in my code?
Where is your missing melcepsta.m file located on your hard drive? You need to let Matlab know where to look for this file, and to do that, you use addpath. You do this OUTSIDE of your code, directly on the Matlab command prompt. Imagine if Record.m is located C:\MyFolder, and melcepsta.m is located in F:\MyHiddenFolder. Matlab will have no idea about where melcepsta.m is, so when Record.m in line 113 says
d = melcepsta(myRocording)
Matlab gets lost - Undefined function melcepsta. By using addpath, you tell Matlab "hey, search here for that file".
If you can't figure out how to use pathing, then place melcepsta.m in the same folder as your Record.m file.
addpath('C:\Folder_Where_Melcepsta_Is')
then run your GUI
Record
mohanish
mohanish le 26 Sep 2018
Thank you so much Man! It worked. That was a stupid mistake!
OCDER
OCDER le 26 Sep 2018
You're welcome!

Connectez-vous pour commenter.

Plus de réponses (1)

Wilbert Clarke
Wilbert Clarke le 10 Avr 2024
J = 0.02;
b = 0.1;
K = 0.01;
R = 1.1;
L = 0.5;
numerator = K;
denominator = [J, b, K^2];
M = tf(numerator, denominator);
T = feedback(M, 1);
C = 1/s;
one_minus_T = 1 - T;
E_ss = limit(s * C * one_minus_T, s, 0)

Catégories

En savoir plus sur Debugging and Analysis dans Centre d'aide et File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by