Matlab Error-fplot (); - PullRequest
       19

Matlab Error-fplot ();

0 голосов
/ 29 мая 2010
>> fplot(fh,[-2 4])
??? Undefined function or variable "e".

Error in ==> myfun at 3
Y(:,2) = e(:).^x;
Error in ==> fplot at 102
x = xmin; y = feval(fun,x,args{4:end});

Я попытался построить две функции, используя этот файл m.

function Y = myfun(x)
Y(:,1) = 3*x;
Y(:,2) = e(:).^x;

1 Ответ

1 голос
/ 29 мая 2010

Как упоминал Донни в своем комментарии, переменная e не определена в вашем m-файле.

Если вы определили e в другом месте, вы должны передать его в myfun, чтобы функция знала его значение. Поскольку fplot не принимает функции построения графиков с более чем одним входным значением, вам необходимо передать ему анонимную функцию.

Во-первых, вам нужно изменить определение myfun, чтобы включить e в качестве ввода:

function Y = myfun(x,e)
Y(:,1) = 3*x;
Y(:,2) = e(:).^x;

Затем вы создаете свой дескриптор функции fh следующим образом (fh по-прежнему принимает только один ввод, Matlab использует значение e, как оно было определено в рабочей области во время создания дескриптора функции):

fh = @(x)(myfun(x,e))

Наконец, вы можете вызвать fplot, как вы привыкли

fplot(fh,[-2 4])
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...