40#pragma omp parallel for schedule(dynamic)
41 for (
Index gw_level1 = 0; gw_level1 <
qptotal_; gw_level1++) {
42 const Eigen::MatrixXd& Mmn1 =
Mmn_[gw_level1 + qpmin];
43 for (
Index gw_level2 = gw_level1; gw_level2 <
qptotal_; gw_level2++) {
44 const Eigen::MatrixXd& Mmn2 =
Mmn_[gw_level2 + qpmin];
46 -(Mmn1.topRows(occlevel).cwiseProduct(Mmn2.topRows(occlevel))).sum();
47 result(gw_level2, gw_level1) = sigma_x;
50 result = result.selfadjointView<Eigen::Lower>();
66 const Eigen::VectorXd& frequencies)
const {
68#pragma omp parallel for schedule(dynamic)
69 for (
Index gw_level1 = 0; gw_level1 <
qptotal_; gw_level1++) {
70 for (
Index gw_level2 = gw_level1 + 1; gw_level2 <
qptotal_; gw_level2++) {
72 gw_level1, gw_level2, frequencies[gw_level1], frequencies[gw_level2]);
73 result(gw_level2, gw_level1) = sigma_c;
76 result = result.selfadjointView<Eigen::Lower>();