Существует ли лучший способ присвоения значений свойству класса в MATLAB?

#performance #matlab #for-loop #multidimensional-array #coding-efficiency

Вопрос:

есть ли лучший способ присвоить значения очень сложному объекту с несколькими вложенными классами и свойствами? Прямо сейчас у меня есть следующий фрагмент кода в четырехкратном цикле, но это серьезное узкое место в моем коде. Есть ли лучший способ справиться с чем-то подобным?

 for ind_1 = 1:N1
    for ind_2 = 1:N2
        for ind_3 = 1:N3
            for ind_4 = 1:N4
                if any(myLogicalVector)
                    obj.prop(ind_1).interaction(ind_2,ind_3,ind_4).interaction_flag = someFixedValue1;
                else
                    obj.prop(ind_1).interaction(ind_2,ind_3,ind_4).interaction_flag = someFixedValue2; 
                end
            end
        end
    end
end
 

Комментарии:

1. Пожалуйста , укажите свое определение obj того, что мы не можем сказать вам, как назначать вещи тому, чего мы не знаем. Кроме того, interaction(x,y,z) быть структурой (или, что еще хуже, классом) было бы очень неэффективно для больших размеров. Возможно, вам захочется переосмыслить свою структуру данных.