Как я могу добавить путь Matlab в личную папку?

Я хотел бы получить доступ к функциям, которые находятся в личной папке с Matlab. было бы очень приятно узнать, как добавить путь для личных папок?

5 ответов

Я не думаю, что есть способ обойти Matlab's path внутренности, которые мешают вам добавлять "личные" папки.

Если вам действительно нужен доступ к закрытой функции откуда-то из установки Matlab, вы, конечно, можете свободно скопировать эту приватную функцию (или полный каталог) в другое место, чтобы добавить ее в свой путь.

Я думаю, что лучше всего было бы переместить функцию из частного каталога (либо скопировав ее, либо просто переместив ее вверх на один каталог).

Поскольку кажется, что добавление папки к пути невозможно, вы можете рассмотреть альтернативу.

Вместо того, чтобы копировать функцию (которая предоставит вам 2 версии для обслуживания), вы должны иметь возможность создать / найти функцию, которая вызывает нужную вам приватную функцию.

Теперь, если ваша основная функция обновляется, вы все еще в порядке. (За исключением случаев, когда изменяется формат ввода, но тогда у вас есть большие проблемы для беспокойства).

Я обнаружил, что следующее полезно для разработки, например, отладка частных функций.

cd private
addpath ..

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

Мое предложение, если вам нужен доступ к закрытой функции cubicmx.mex, хранящейся в

C:\MATLAB\R2011a\toolbox\matlab\polyfun\private

создать однострочную функцию cubicmx_drv.m в родительском каталоге

C:\MATLAB\R2011a\toolbox\matlab\polyfun

с одним утверждением, вызывающим мексиканское.

В таком примере это будет звучать как:

function zi = cubicmx_drv(x,y,z,xi,yi,tri,t)
   zi = cubicmx(x,y,z,xi,yi,tri,t);

Вам просто нужно помнить, чтобы заново создать заново, если вы меняете компьютер или рабочую среду. Кроме того, вы даже можете переустановить его из своего собственного кода, например

 try
     zi=cubicmx(x,y,z,xi,yi,tri,t);
   catch
     %create (or copy your local version) cubicmx_drv.m to the proper path 
     error(['Exit and restart matlab to solve this problem'])
   end

Это автоматическое решение будет работать после перезапуска Matlab.

Другие вопросы по тегам