I suspect the issue is due to not modifying the solver hook function to handle more dependent variables. (In this case the same warning will appear irrespective if an error has occurred or the function has not been found.)

To clarify, as the solver hook functions basically allow modification of the underlying sparse finite element matrices they can not be generalized and must be adapted to each individual problem (which is why there currently isn't a convenient periodic boundary option available in the GUI).

I assume you have tried to use the "periodic_bc" function from the "ex_periodic1" example just as it is. To support multiple dependent variable in this example,

lines 104-105 in the file ex_periodic1.m must be changed from

dof_i = 1;
dof_j = prob.eqn.ndof;

to

offset = sum(prob.eqn.ndof(1:i_dvar-1));
dof_i = offset+1;
dof_j = offset+prob.eqn.ndof(i_dvar);

to match up the first and last degrees of freedom (the periodic matches) for each dependent variable.