Matlab如何添加新的工具箱
更新时间:2023-05-13 18:32:01 阅读量: 实用文档 文档下载
matlab
Matlab如何添加新的工具箱-经验总结(适合菜鸟) 因为是菜鸟,所以我写的也很详细,实际上也是为自己备忘,嘻嘻
1,我是单独下载的工具箱,把新的工具箱拷贝到某个目录(我的是C:\Program Files\MATLAB\R2008a\toolbox)。
注意:你要是添加的很多个m文件,那就把这些m文件直接拷到再下一层你想要的工具箱的文件夹里
例如,我要添加的是遗传工具箱,在刚才的文件夹下我已经有gads(遗传工具箱)文件夹了,但有的m文件还没有,我就把新的m文件统统拷到C:\Program
Files\MATLAB\R2008a\toolbox\gads目录下了
如果你连某工具箱(你打算添加的)的文件夹都没有,那就把文件夹和文件一起拷到C:\Program Files\MATLAB\R2008a\toolbox下。
先把工具箱保存到MATLAB安装目录的根目录下面,然后运行matlab7---->file---->set path---->add folder 然后把你的工具箱文件夹添加进去就可以了
2 在matlab的菜单file下面的set path把它(C:\Program
Files\MATLAB\R2008a\toolbox\gads)加上。
3 把路径加进去后在file→Preferences→General的Toolbox Path Caching里点击update Toolbox Path Cache更新一下。
记得一定要更新!我就是没更新,所以添加了路径,一运行还是不行。
后来更新了才行。
4 用which newtoolbox_command.m来检验是否可以访问。如果能够显示新设置的路径,则表明该工具箱可以使用了。
这个我也不知道怎么用。怎么检验?在命令窗口输入which newtoolbox_command.m?还是打开which newtoolbox_command.m文件(我搜索了,没找到这个文件啊)我一直没搞懂。
我的matlab小经验
我前几天刚刚接触matlab 由于要用MATLAB遗传算法工具箱编程,我直接在安装好的matlab命令栏输入程序 结果提示找不到函数 后来我才了接到 MATLAB7.0自带的工具箱是GADS,在此环境下运行程序会出现函数未定义等问题,这是因为那些函数室GATBX工具箱里面的,GADS中没有。需要把GATBX添加到MATLAB搜索路径之下。 先将 GATBx复制到 MATLAB安装目录下的toolbox 下
然后打开MATLAB 然后 FILE ->SET PATH
选 ADD FOLDER 选择你刚才复制的那个文件夹就OK了
如果你的工具箱中有很多子目录的话,选择 ADD WITH SUBFOLDER
之后的操作和上面一样了...
matlab
在matlab中添加新的工具箱
首先说说添加到matlab搜索路径好处:1 对 n——你只需要存储一个副本,就可以在其他地方使用。具体来说,假设你在数据盘D上新建了两个目录abc和def,这两个工程(每个目录下的所有程序相应地称为一个工程)都需要调用同一个(些)函数(简称工具箱),这时候,如果你没有把该工具箱添加到matlab的搜索路径下,则需要分别把工具箱中所有用到的文件都复制到目录abc和def下才能正确运行。这显然浪费空间,所以,matlab提供了一个搜索路径(默认在matlab安装目录下的toolbox中),只要把工具箱对应的整个文件夹复制到搜索路径对应的目录下,并且通知matlab一声(把该路径正确添加到搜索路径中),就可以在abc和def中使用这个工具箱了(即无论你的工程文件在哪个目录(有效的目录)下都可以访问这个工具箱中的函数)。下面就以matlab安装目录下的toolbox目录作为默认的添加路径进行详细说明。
1. 如何添加工具箱?
以下是添加工具箱的方法:(论坛很多人转载过,这里就不作区分了,下面的举例也一样)
如果是Matlab安装光盘上的工具箱,重新执行安装程序,选中即可。如果是单独下载的工具箱,则需要把新的工具箱(以下假设工具箱名字为svm)解压到toolbox目录下,然后用addpath或者pathtool把该工具箱的路径添加到matlab的搜索路径中,最后用which newtoolbox_command.m来检验是否可以访问。如果能够显示新设置的路径,则表明该工具箱可以使用了。具体请看工具箱自己代的README文件。
1.1 举例:
要添加的工具箱为svm,则解压后,里边有一个目录svm,假设matlab安装在D:\MATLAB6p5,将svm目录拷贝至D:\MATLAB6p5\toolbox,然后运行matlab,在命令窗口输入addpath ’D:\MATLAB6p5\toolbox\svm’回车,来添加路径。然后在svm目录下,任意找一个m文件,以svcinfo.m为例,在命令窗口中输入which svcinfo.m。如果显示出该文件路径,如 D:\MATLAB6p5\toolbox\svm\svcinfo.m,则安装成功,当然也可以在命令窗口输入path来查看。上面的说明和例子基本上介绍了在matlab中如何添加工具箱,下面是其他补充:
1.2 添加方式总结:
事实上,有两种添加工具箱到matlab搜索路径的方法:其一是用代码,其二是用界面。其实无论用哪种方法,都是修改pathdef.m这个文件,阁下如果是高手,可以直接打开该文件修改,呵呵,对此这里不作讨论。
1.2.1 代码方式:
1.2.1.1 适用于添加下载的工具箱(别人的):
在命令窗口输入addpath D:\MATLAB6p5\toolbox\svm 或者
addpath(‘D:\MATLAB6p5\toolbox\svm’);
但是这种方法只能添加svm目录,如果该目录下有其他子文件夹,并且运行时候“隐式”调用到这些子文件夹(例如假设svm目录下存在子文件夹matdata,该子文件夹下有logo.mat这个文件,且在m文件代码中使用了诸如 load logo 这样的句子,即没有显式给出logo.mat的具体路径,则称为“隐式”),则不能正确访问。因此,有必要在添加时使用以下语句把svm目录下所有文件夹都添加到搜索路径中:
程序代码
addpath(genpath(D:\MATLAB6p5\toolbox\svm));
matlab
另外,如果只使用以上代码,则退出matlab后,新添加的路径不会被保存下来,下次重新启动matlab后又需要重新添加。可以用savepath来解决这个问题,即在命令窗口中使用 savepath 便可。不过保存路径操作只对matlab 2006a、2006b有效(应该对版本7.0以上的都有效,因没有测试,所以不敢肯定),对6.5版本的matlab无效(该版本没有savepath这个命令)。
1.2.1.2 适用于添加自己的工具箱(即工具箱自己编写,然后希望别人下载后当运行主文件时自动把路径添加到matlab搜索路径中):
在主文件中加入如下代码;
程序代码
sCurrPath = fileparts(mfilename('fullpath'));
addpath(genpath(sCurrPath)); %如果该工具箱没有其他子目录,则可以不需要用genpath savepath; %这句可根据各人需要自行选择,相信上一节的解释已经很清楚。
1.2.2 界面方式:
首先把主界面调出来,有两种方式,一种是在命令窗口输入pathtool,另一种是在matlab菜单调用(File -> Set Path )。打开主界面后,相信不用太多解释了。Add Folder 或者 Add with subfolders 就可以了,添加完毕后,如果需要保存该路径,则在close前save一下就可以了。
这种方式的好处是如果路径有问题,matlab会马上报错,告诉用户添加失败。
2 工具箱添加失败:
2.1 work目录和toolbox目录问题:
你当然可以单独把一个或多个文件(不含文件夹)放在work目录下来实现“1对n”,因为work目录是其中一个matlab默认的搜索路径,但显然不能包含文件夹,如果包含文件夹,则同样需要把该文件夹添加到搜索路径中。相反,你不能单独把一个或多个文件(不含文件夹)放在toolbox目录下来实现“1对n”,因为toolbox这个目录并非matlab的一个默认搜索路径,除非你把toolbox文件夹添加到搜索路径中。
2.2 由于路径名称而导致添加失败的总结:
2.2.1 路径存在空格:
错误:addpath C:\Program Files\MATLAB\R2006b\toolbox\finity
正确:addpath(‘C:\Program Files\MATLAB\R2006b\toolbox\finity’) 或者使用界面方式添加
说明:在6.5版本的matlab不推荐使用带空格的路径,因为matlab6.5的安装路径是不允许有空格的,因此不晓得带空格的工具箱路径会出现什么问题。7.0以上应该没有问题。 界面方式则估计没有问题,有问题matlab会自动报错的。
2.2.2 路径存在中文:
用addpath和界面方式均可以成功添加,但不推荐,最好使用英文路径。
2.2.3 路径存在“@”字符:
均不成功,不要使用“@”字符
小结:出现其他与添加相关的错误时,用标准的路径和文件名试试吧。
3 正确添加了工具箱,但运行调用时出错:
matlab
3.1 版本问题:
对于工具箱检测到matlab版本不兼容的问题,先引用一下happy教授的回复:
=====================happy================================
这个是有用的,估计是作者考虑到随着matlab的升级会出现不兼容的问题,因此加了类似的设置error('unsupported matlab version. please send an email.');以提示大家。从这一设置上看4.x和5.x版本的是完全没有问题的,之后的版本可能会出现问题,是否真的会出现需要进行测试
=========================================================
我也遇到过这类问题(如3.3节提到的spm5,下载得到的文件如果遇到2006版本的matlab则无法成功运行),但不是matlab的直接回复说“版本不支持”,而是普通的语法出错。我的经验是根据错误提示调试一下,看看问题出在哪里,然后再对程序作相应修改。例如在我的问题中,由于不支持最新的版本,所以2006a和2006b版本分别用下面的语句进行检查:strcmp(version('-release'),'2006a') 和 strcmp(version('-release'),'2006b')。
3.2 程序中其他语法错误:
估计部分语法不兼容,例如7.0版本以上的matlab可以使用&&、||、@(x)等等之类的符号,但是在6.5版本下无效,这种错误也需要自己手动修改一下代码。
3.3 工具箱中的函数重名问题:
Happy教授也提到过,除了改名,没有太好的办法。但是如果改的地方不止一个,例如遇到该文件进行了多次的自我调用(一个典型例子是以switch 和case语句进行区分不同的操作),或者其他文件存在对该文件的调用时,这是个很头痛的事情。根据我的经验,也没有找到太好的解决办法。以我所用的两个工具箱为例,它们的文件夹名字不同(一个是spm2,一个是spm5),但是里面的主m文件名字都一样,为spm.m,如果两个工具箱同处于matlab的搜索路径中,会导致其中一个工具箱失效,更别说两者之间通过切换来进行调用了。我一般的解决方法是安装两个matlab,例如一个是6.5版,一个是2006版,把两个工具箱分别添加到不同的matlab中,这样就可以启动不同版本的matlab使用不同版本的工具箱了,呵呵,算是一个补救的方法吧。
3.4 找不到m文件的问题:
如果你已经把工具箱正确添加到搜索路径下,这种情况一般不会发生。也就是说,通过“文件夹copy -> 运行matlab ->添加路径”步骤后,该文件夹下所有文件应该都可以访问到。但是,当你对该文件夹下的m文件更新(包括修改和新增)了以后,此时如果你不重启matlab,则可能会出现找不到m文件的问题(特别是该工具箱中的文件没有依赖关系,它们只是被放在一起方便调用,当你新增一个m文件到该文件夹下而不重启matlab的时候,会造成这一新增m文件访问失败)。解决这个问题的方法之一显然是重启matlab,如果你不想重启,也可用第二个方法:在命令窗口输入: rehash toolbox ,“强制”matlab刷新toolbox目录下的所有文件,这样就可以正确访问了。
正在阅读:
Matlab如何添加新的工具箱05-13
2021年选人用人工作报告3篇08-21
城市交通安全管理的智能决策支持系统探讨07-20
石油天然气隐患排查实施方案10-23
公司梯形齿、弧齿背型双金属带锯条系列产品开发项目资金可研报告06-25
设计院部门及岗位职责(完整版)06-15
新疆神新发展有限责任公司顺通煤矿综采招标答疑文件(三)04-16
2015年1月中央电大专科《办公室管理》期末考试试题及答案09-21
规范变电设备验收提高验收质量和效率-2019年精选文档03-19
塔机附着验算计算书05-01
- 教学能力大赛决赛获奖-教学实施报告-(完整图文版)
- 互联网+数据中心行业分析报告
- 2017上海杨浦区高三一模数学试题及答案
- 招商部差旅接待管理制度(4-25)
- 学生游玩安全注意事项
- 学生信息管理系统(文档模板供参考)
- 叉车门架有限元分析及系统设计
- 2014帮助残疾人志愿者服务情况记录
- 叶绿体中色素的提取和分离实验
- 中国食物成分表2020年最新权威完整改进版
- 推动国土资源领域生态文明建设
- 给水管道冲洗和消毒记录
- 计算机软件专业自我评价
- 高中数学必修1-5知识点归纳
- 2018-2022年中国第五代移动通信技术(5G)产业深度分析及发展前景研究报告发展趋势(目录)
- 生产车间巡查制度
- 2018版中国光热发电行业深度研究报告目录
- (通用)2019年中考数学总复习 第一章 第四节 数的开方与二次根式课件
- 2017_2018学年高中语文第二单元第4课说数课件粤教版
- 上市新药Lumateperone(卢美哌隆)合成检索总结报告
- 工具箱
- 添加
- Matlab
- 如何
- 广东省湛江第一中学等四校2016届高三上学期第一次联考数学(文)试题(含答案)
- 不同价态金属离子对BSA结构的影响
- 外研版高二英语说课稿1
- 动物生物学 绪论
- 政治与经济常识第二章
- 近岸水产养殖对海洋渔业环境的影响
- 初二语文期末试卷
- 初中精选数学计算题200道15326
- Android RIL总体架构介绍
- 盾构施工引起土体位移的空间计算方法
- Kindergarten Level 01 Stories
- 消费者心理学论文
- 页面置换算法实验报告
- 安全生产月活动通知
- 乌海市海南区小学英语四年级下册专项复习:连词成句
- 2015-2020年中国干手器市场全景调查与行业运营态势报告
- 2011年代维考试题V1
- 一种新的复杂网络聚类算法
- 南昌市业主大会议事规则(示范文本)
- 中心小学体育兴趣小组工作总结