【发布时间】:2020-04-13 16:25:05
【问题描述】:
我编写了一个.m 文件,其中定义了许多矩阵。现在,我想添加其中的一些,并进行一些其他操作。 现在我可以在文件本身中编写这些操作并在 octave-cli 中运行它以查看结果,但我想加载定义,并在 octave GUI 的输入字段中一一进行操作(类似于可以在数学笔记本中完成),但我不想再次在 octave gui 中手动输入所有行。如何将行加载到 octave 的工作区?
例如,假设somedefinitions.m的内容是
function somedefinitions()
c = 4;
d = 5;
现在我希望将其加载到 octave gui,并希望在输入字段中评估 c+d、c*d 等(但我不想在 octave-gui 中手动编写 c 和 d 的定义)。
如何做到这一点?我试过load somedefinitions.m 但这说它无法确定文件格式。
【问题讨论】:
-
您无法加载
somedefinitions,因为它不是数据。如果您调用文件somedefinitions.m但不使其成为函数,则可以在主代码中调用somedefinitions。这将执行somedefinitions.m中的所有内容并将其加载到工作空间中。然后你可以在命令窗口中做任何你想做的事情。你现在不能这样做,因为函数有自己的工作空间,所以即使你不这样做,变量也会在somedefinitions中定义,但在完成后会被删除。简而言之,删除示例的第一行,然后调用该脚本。 -
当我在 gui 中运行
load(somedefinitions.m)时,它会显示error: invalid call to script /path/to/somedefinitions.m。 -
你不能加载它,因为它不是数据。你只需输入
somedefinitions,它就会执行脚本,正如我在之前的评论中所说的那样。 -
有效。谢谢。请以答案的形式发表您的意见,我会接受。
标签: octave