Many thanks to Michio and Edric for promptly responding to my query. I eventually found the issue to be due to the use of a global variable (INTLAB_CONST) within the Intlab toolbox and referred to by mostly all commands provided by the toolbox. Since the Parallel Computing toolbox doesn't have a good relationship with global variables, this led to the error (the error message itself was to the effect that the INTLAB_CONST variable, which is a structure, did not exist in the m-file being executed). A functional workaround is the following (for example):
% Main function excerpt (illustration only):
global INTLAB_CONST
parloop i=1:100
% Call to subroutine:
x=other_function(INTLAB_CONST,other_variables);
end
Within the subroutine being called by the parfor loop, the global variable is again declared and the value passed explicitly to the function is assigned to it, e.g.:
function x=other_function(INTLAB_CONST_TEMP,other_variables)
global INTLAB_CONST
INTLAB_CONST=INTLAB_CONST_TEMP
% Remainder of code...
end
I believe this allows (forces?) the Parallel Computing toolbox to categorize INTLAB_CONST as a variable and avoid the aforementioned difficulties.
Thanks again!
Marc