查看单个帖子
旧 2019-12-10, 16:49   #1
poster
高级会员
 
注册日期: 2019-11-21
帖子: 3,006
声望力: 66
poster 正向着好的方向发展
帖子 编写全部代码后,才能在MatLab / Mathematica中运行代码

我想知道在使用Matlab时是否有一种方法,而不是让它逐行解释我写的内容,是否允许我编写所有想要的内容,并且仅在单击“评估”按钮时才解释它,或者这样的事情。来自c ++ / c#,我喜欢编写必须编写的代码,然后才运行它。

我也不喜欢将>>放在该行的开头。有没有办法做到这一点?

我在与Mathematica的关系中提出了同样的问题。我听说有一个Wolfram的工作台(似乎大多数人根本不知道)可以做到这一点,但似乎并没有提供给大学,所以我从未尝试过。


回答:
如果将代码写入代码文件(扩展名为.m),则可以一次运行所有代码。

跑:
编辑my_matlab_file

然后在编辑器中编写您的代码。保存文件。要运行刚刚编写的代码,您可以使用以下几种方法:
  1. 在命令行中
    my_matlab_file

  2. 在编辑器中,按“评估”按钮(有点绿色)
  3. 在编辑器中,按Ctrl + Enter。
为了获得更多控制,您还可以将文件分成多个单元格,这些单元格可以使用Ctrl + Enter进行单独评估:

my_matlab_file.m :

%% Initialization (Cell 1) x = 1; y = 2; %% Calculation (Cell 2) z = x + y 当您的文件很长且执行时间很长,并且必须在某处进行更改时,这非常有用。除了重新运行所有内容,您还可以仅评估进行更新的单元。

.m文件也可以用来创建函数。示例(mymeanfund.m)

function y = mymeanfunc(x) % Y = MYMEANFUNC(X) calculates the mean of X y = sum(X(:)) / numel(X) 并通过调用它来运行它:

>> m = mymeanfunc([1 2 3 4]) m = 2.5 附带说明一下,由于MATLAB的最新版本,使用OOP进行开发也是完全可能的。



更多&回答...
poster 当前离线   回复时引用此帖