Adding functions permanently to matlab
显示 更早的评论
I have many self developed functions in a folder called Finance (C:\Documents\MATLAB\Finance). I sthere a way to add these functions permanently to my matlab path so whenever i use a script this script would call them automatically?
采纳的回答
更多回答(2 个)
Paulo Silva
2011-7-2
4 个投票
use pathtool to select that folder and save
the cyclist
2011-7-2
Yes. Use the path() or addpath() command in a file called startup.m, in the top-level MATLAB directory. For example, where is how I added a utilities directory (on a Mac):
path(path,genpath('/Users/thecyclist/Documents/MATLAB/utilities'));
That file is run at MATLAB start.
3 个评论
(Sorry to resurrect a very old thread...)
I know about path, pathtool, and the GUI approach suggested above to make functions available from the Command Prompt, and I realize any of those would work for functions located pretty much anywhere on the host.
Just curious: is there a conventional / standard / "best practices" location for parking such self-developed functions, as per the OP's question? Initially I thought about $MATLABROOT/toolbox/local, but that seems to contain exclusively Mathworks-provided scripts and text files.
John D'Errico
2020-5-21
This is a completely different question. Please don't resurrect an old question to ask a new one.
But do NOT put functions in the matlabroot directories. The toolbox directories are cached on startup, so any changes you make to your personal functions will not be seen.
AMM
2020-5-21
John-
I asked here because I thought my query was directly relevant to the OP's question (modulo "how" vs. "where"). My apologies. I'll re-post this as a new question.
Thanks also for the info about caching at startup. I can easily imagine this would result in confusing/unexpected behavior if I were to edit any of those functions during a session, then fail to quit/restart. Cheers.
类别
在 帮助中心 和 File Exchange 中查找有关 Search Path 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!