Вы говорите о создании результата, который является функцией по существу от элементов U. Однако нигде этот код не зависит от элементов U. Посмотрите внимательно на то, что вы написали. Несмотря на то, что вы используете переменную U_iso, нигде в этом коде не используется ни один элемент U, как вы его написали.
Итак, когда вы говорите об определении этого для матрицы U, это определение не имеет смысла. Пока что кажется, что вызов repmat в самом конце создаст матрицу желаемого размера, и, очевидно, это не то, что вы ищете.
Возможно, вы пытались упростить задачу для простоты объяснения. Но то, что вы сделали, это слишком упростило, не оставив нас с чем-то, что даже имело смысл. Пожалуйста, объясните вашу проблему более четко и покажите код, который соответствует вашему объяснению, для лучшего ответа, чем я могу дать до сих пор.
(Примечание: МОЖЕТ быть вариант использования arrayfun. Или ответ на этот вопрос может быть более тривиальным, с использованием простых векторизованных операций. Я не могу знать на данный момент.)
EDIT:
Ваш вопрос все еще остается без ответа. Этот цикл создает один скалярный результат, по существу суммируясь по всему массиву. Вы не говорите, что имеете в виду, чтобы интеграл вычислялся для каждого элемента U_iso, поскольку вы уже суммируете по всему массиву. Пожалуйста, учитесь быть точными в своих вопросах, иначе мы просто угадаем, что вы имеете в виду.
Мое лучшее предположение на данный момент состоит в том, что вы можете вычислить кумулятивный интеграл в двух измерениях. Cumtrapz может помочь вам, ЕСЛИ это ваша цель. Но я не уверен, что это ваша цель, поскольку ваши объяснения настолько неполны.
Вы говорите, что хотите получить одинаковое значение в каждой ячейке результата. Если это то, что вы хотите, то вызов repmat в конце будет делать то, что вы хотите.