Мне был предоставлен файл под названием generator.m, который имитирует генераторную строку в 2D.Симуляция, которую я получил, является урезанной версией того, что можно найти здесь https://www.comsol.se/model/generator-in-2d-2122.. Вызвав generator(i, 0)
, я получаю вектор с намагниченностью генератора.Параметр th варьируется от 0 до 100 и определяет, насколько поврежден генератор (где 0 соответствует отсутствию повреждения, а 100 - значительному повреждению).
Мне нужно определить значение i
, для которого максимальное значениенамагниченность в генераторе, которая может быть вычислена как max(generator(i, 0))
, равна 1.05 * 10^4
.Для этого я написал следующую программу:
maxu = zeros(101);
for i = 1:101
maxu(i) = max(generator(i-1, 0));
end
maxuPlot = plot(0:100, maxu(1:101))
Получившийся график выглядит следующим образом:
Затем я могу определить, для какого я максимальная намагниченностьравен 1.05 * 10^4
, читая график.Тем не менее, создание этого графика занимает где-то около 10 минут и не находит точного i
, который мы ищем.
Может кто-нибудь придумать более эффективный и / или точный способ поиска, для которого i
максимальная намагниченность будет 1.05 * 10^4
?