Чтобы пропустить индекс, типичный вариант - поместить в цикл следующее (как первое):
if (l == m)
continue
end
Другой вариант - сгенерировать все индексы, а затем удалить целевой:
allInds = 1:Nmax;
allInds(allInds == m) = []; % remove index m.
for l = allInds
...
Это имеет приятное преимущество, заключающееся в том, что вы можете четко видеть все индексы, которые будут посещены до того, как цикл начнется, и когда вы начнете добавлять дополнительные условия, это масштабируется гораздо лучше, чем ужасное гнездо условий внутри цикла.