gpt4 book ai didi

bash - 如何在工作区中运行带参数的 MATLAB 自定义脚本

转载 作者:行者123 更新时间:2023-11-29 09:48:40 24 4
gpt4 key购买 nike

我有一个 MATLAB 函数,它使用先前加载到工作区中的变量执行一些操作。例如:

do_something(A, B, C, ...);

我在 MATLAB 中使用 A、B、C ... 的不同子集运行函数 n 次。输出保存为 ASCII 以供 C++ 程序进一步处理。

我想为整个过程计时。所以我想从 shell 脚本运行 MATLAB 函数,然后是 C++ 程序。例如:

matlab -nojvm -nodesktop -nosplash -r "run matlabTest"; ./c++Test;

但我意识到 MATLAB 函数需要一些以前未加载的变量。所以,我的问题是如何使用工作区中的参数运行 MATLAB 函数? .工作区保存在同一目录中。

我正在使用 MATLAB 7.9.0 (R2009b) 在 Linux 上工作。

我注意到(在阅读/复习这个问题时)我可以使用 system 函数在 MATLAB 中运行 linux 命令。我已经成功地做到了这一点,但我不会一直怀疑如何以其他方式做到这一点。

最佳答案

您可以在引号内包含多个 MATLAB 命令,以 ; 分隔。你可以试试

matlab -nojvm -nodesktop -nosplash -r "mydata = 1; run matlabTest"; ./c++Test;

例如。如果您需要很多变量并且这变得冗长或不方便,也许您可​​以将工作区变量保存到 .mat 文件(比如 mydata.mat),然后将它们加载到:

matlab -nojvm -nodesktop -nosplash -r "load mydata; run matlabTest"; ./c++Test;

PS 不需要run,直接调用matlabTest即可。

关于bash - 如何在工作区中运行带参数的 MATLAB 自定义脚本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15497925/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com