Я пытался установить максимальное время выполнения для функции Matlab, но ни один из них не преуспел. У меня есть файл Matlab, загружающий настройки модели из COMSOL (используя COMSOL с прямой связью Matlab).
%filename ‘mymodel.m'
fff = 0;
store{fff+1,1} = 'out1';
store{fff+1,2} = 'out2';
for i = 1:2
for j = 1:2
fff = fff+1;
%load Model parameter setting
model_parameter_script_file
if i == 1;model.param.set('x1',val1);end
if i == 2;model.param.set('x1',val2);end
if j == 1;model.param.set('x2',val1);end
if j == 2;model.param.set('x2',val2);end
try
%load model solution script from COMSOL
model_soulution_script_file
%store table calculated from the solution into 'store'
%catch null values
catch
store{fff+1,1} = 'null';
store{fff+1,2} = 'null';
end
end
end
Проблема в том, что я не могу найти способ сообщить компьютеру о завершении цикла for, если кто-либо из них превысит максимальное время выполнения. Можно ли это сделать с помощью Matlab Parallel Computing Toolbox? Это можно использовать для ускорения выполнения программы, но не уверен, что он может убить поток, когда обнаружит, что конкретное задание превышает максимальное время выполнения. Большое спасибо за вашу помощь заранее.
t(n) = toc;
. Итак, еслиt(n) > threshold
, вы можете вырваться из программы. Информацию о том, как завершить программу, см. здесь или здесь - person Autonomous   schedule 10.07.2016