You can simply use for loop to iterate x and y. Refer to the below code just for your reference. You might need to make modification as per your need.
This might be the good starting point for you to write code independently.
Anyway, I am getting some of the NaN values.
func = @(n,x,y) (((-1)^n)/((2*n + 1)^3))* sech(((2*n + 1)*pi)/2)*cosh(((2*n + 1)*pi*x)/2)*cos(((2*n + 1)*pi*y)/2);
n_upper_limit=100;
for x=1:5
for y=1:5
u(x,y) = 1- y^2 - ((32)/(pi^3))*(sum(arrayfun(@(n) func(n,x,y), 1:n_upper_limit),'omitnan'));
end
end
disp(u)
% For plotting u
imagesc(u)
title('Values of u')
xlabel('x values')
ylabel('y values')
xticks([1:5])
yticks([1:5])
colorbar
set(gca,'Ydir','normal')