Your user-definded returned something that was not double precision, or it was infinite, or it was NaN. (Or possibly it was more than 2 dimensions, but I am not sure that is an error.)
Do you do anything with the result of evalfis() or do you just discard it like you show in your Question? If you just discard it, then perhaps the output you return from the user-defined function is something invalid.