如何运行Matlab批处理脚本并保存结果


#!/bin/bash
###########################
#
#PBS -l nodes=1:ppn=12
#PBS -l walltime=00:30:00

XXXXXXXXx及以下是我运行matlab的脚本详细信息我想保存试用的结果。但是它不起作用。

export JOBID=`echo "${PBS_JOBID}" | cut -d'.' -f1`
cd ${PBS_O_WORKDIR}
module load matlab/R2017b
matlab
trial.m

我的脚本名称:trial.m如何将试用版.m的结果保存到我的环境中?在我的试用版.m matlab文件中,我有以下代码来显示我的结果,这行吗?β和值是的两个数字矢量

disp(betas); 
disp(values);
save('parameters.mat','betas','values');

另外,try.m需要调用我保存在同一文件中的外部函数,它能自动调用吗?

调用MATLAB并通过以下命令执行trial.m

matlab -r trial -logfile logfile.log -nodisplay -nosplash

确保trial.m在完成时退出MATLAB,以继续执行任何后处理步骤。您还应该抑制MATLAB GUI和Splash屏幕,因为脚本是非交互式运行的。还要确保trial.m通过使用exit命令强制MATLAB退出。

通过调用save函数创建.MAT文件,将trial.m的结果保存到环境中。注意:要使用其他软件访问文件,请调用csvwrite以CSV格式保存。

csvwrite('betas.csv',betas);
csvwrite('values.csv',values);

MATLAB替代Bash

或者,您可以使用MATLAB的parallel计算工具箱来提交作业。在这种情况下,您不再需要bash脚本。但是,您需要修改MATLAB文件来处理向集群提交的作业(此处(。

相关内容

  • 没有找到相关文章

最新更新