Ну, вы, конечно, не получите это в одну строку кода. ;-)
Я не знаю, что делает эта математика, но позвольте мне предложить подход.
Похоже, что в различных выражениях сигмы существуют различные объекты (Q, A, D и т. Д.), Которые имеют одинаковое количество элементов, которые должны быть итерированы индексом «i».
Эти объекты, по-видимому, создаются в некоторой точке, оставаясь постоянными, а функция «P» применяется к множеству значений x, y и t.
Это предполагает, что вам нужен класс «Калькулятор», который принимает эти объекты (Q, A, D и т. Д.) В качестве параметров конструктора. (Или, возможно, вычисляет их в конструкторе.)
Затем ваша функция Calculator.P() определяется значениями x, y и t и возвращает тройку значений. (Я не уверен, что это означает говорить о точках, но используйте подходящий 3-значный объект.)
Тело P затем просто становится 3-мя циклами «for (int i = 0; i <) numValues; i ++) ", вычисляя сумму каждого из этих выражений.
Короче говоря, у вас есть класс, который принимает инварианты в качестве параметров конструктора, поэтому их можно сохранить для использования при каждом вызове P и поместить все параметризованные вычисления в функцию P.
Вы можете реализовать его на Java, вызвав Matlab с Java: D – Maroun
Мне очень жаль, что я не смог связаться с хахахом. Matlab. Я помню те дни. : P Engineering 2-й год ... – TastyLemons
Sigma проще всего сделать в java 8: 'IntStream.range (0, n) .mapToDouble (i -> cos (i)). Sum()'. –