
你只是一个变量的话,在子程序中用global X,在主程序中同样也要加上global X,这样用Ode45就这接可以调用这个变量求解,还不懂就补充明白,把你想要完成的功能说的清楚些。
可以的吧,可以使用函数句柄或内联函数的方法来定义,但正规的函数定义则不行
比如:
clear all;clc;
f=@(x)x^2+4x;
t=-2:01:2;
y=f(t);
MATLAB如何成功的编辑存放并成功调用子函数:
1、当你没有把你编辑好的子函数放入正确的文件夹时,不管你输入的程序是否有错,当你执行时,系统都会提示“没有定义”,这个时候就是没有子函数文件放到主函数库文件夹中,如图所示。
2、就算知道了,这个问题那么主函数库文件夹在什么地方找呢?首先,输入“edit conv”这个“conv”是我准备编辑的子函数的主函数名,每个人所需的主函数名都不一样,这里可以不要那么在意。然后就可以打开相应的主函数,这是可以看到主函数所在文件夹位置。如图所示,※记住这个位置。
3、然后进行子函数的编辑,首先新建一个新的m文件,如图 *** 作所示,然后在编辑框中输入所要的子函数,如图所示,例如我就是输入了convnem的函数,这是conv的子函数。然后点击保存。
4、接下来,在刚刚第二步“conv”所在文件位置,将位置记录下来,将子函数的文件保存到主函数所在的文件夹即可,然后在重新的将你所需的程序(含有子函数的)输入并且执行,这时你会发现原来提示的错误没有了,那么这时调用自己添加的子函数成功了。以后有相应的子函数都可以通过这样的方法进行添加子函数。
MATLAB的含义是矩阵实验室(MATRIX LABORATORY),主要用于方便矩阵的存取,其基本元素是无须定义维数的矩阵。MATLAB自问世以来,就是以数值计算称雄。MATLAB进行数值计算的基本单位是复数数组(或称阵列),这使得MATLAB高度“向量化”。经过十几年的完善和扩充,现已发展成为线性代数课程的标准工具。由于它不需定义数组的维数,并给出矩阵函数、特殊矩阵专门的库函数,使之在求解诸如信号处理、建模、系统识别、控制、优化等领域的问题时,显得大为简捷、高效、方便,这是其它高级语言所不能比拟的。美国许多大学的实验室都安装有MATLAB供学习和研究之用。在那里,MATLAB是攻读学位的大学生硕士生、博士生必须掌握的基本工具。MATLAB中包括了被称作工具箱(TOOLBOX)的各类应用问题的求解工具。工具箱实际上是对MATLAB进行扩展应用的一系列MATLAB函数(称为M文件),它可用来求解各类学科的问题,包括信号处理、图象处理、控制系统辨识、神经网络等。随着MATLAB版本的不断升级,其所含的工具箱的功能也越来越丰富,因此,应用范围也越来越广泛,成为涉及数值分析的各类工程师不可不用的工具。 MATLAB53中包括了图形界面编辑GUI,改变了以前单一的“在指令窗通过文本形的指令进行各种 *** 作”的状况。这可让使用者也可以象VB、VC、VJ、DELPHI等那样进行一般的可视化的程序编辑。在命令窗口(matlab command window)键入simulink,就出现(SIMULINK) 窗口。以往十分困难的系统仿真问题,用SIMULINK只需拖动鼠标即可轻而易举地解决问题,这也是近来受到重视的原因所在。
以上就是关于用Matlab调用ODE45,其子程序中有一个和时间无关的变量,现在如何把不同时刻的该变量值返回到主程序中全部的内容,包括:用Matlab调用ODE45,其子程序中有一个和时间无关的变量,现在如何把不同时刻的该变量值返回到主程序中、matlab能否在主程序中直接定义函数因为我的函数需要在主程序运行之后才能确定、matlab主函数如何调用子函数等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)