История изменений
Исправление Zodd, (текущая версия) :
Хочу оценить производительность, не подскажешь как лучше подсчитать тройной интеграл в питоне?
Не пойму как лучше это реализовать.
Интеграл вычисляется через квадратуру Гаусса (тройная сумма):
\sum_i\sum_j\sum_k {a_i a_j a_k transpose(B).D.B dV}
На плюсах схематично такой код:
for (int l=0; l<el; ++l) {
dK = 0;
for (int i=0; i<iInt; ++i)
for (int j=0; j<iInt; ++j)
for (int k=0; k<iInt; ++k) {
matmul(D,B,Bt);
matmul(B,Bt,dK); // dK = B^T.D.B
dK *= a_i*a_j*a_k*dV
sum(dK,K); //K += dK
}
}
P.S. dK, K, B, D - матрицы
Исходная версия Zodd, :
Хочу оценить производительность, не подскажешь как лучше подсчитать тройной интеграл в питоне?
Не пойму как лучше это реализовать.
Интеграл вычисляется через квадратуру Гаусса (тройная сумма):
\sum_i\sum_j\sum_k {a_i a_j a_k transpose(B).D.B dV}
На плюсах схематично такой код:
for (int l=0; l<el; ++l) {
dK = 0;
for (int i=0; i<iInt; ++i)
for (int j=0; j<iInt; ++j)
for (int k=0; k<iInt; ++k) {
matmul(D,B,Bt);
matmul(B,Bt,dK); // dK = B^T.D.B
dK *= a_i*a_j*a_k*dV
sum(dK,K); //K += dK
}
}