15 std::complex<double> output(0,0);
16 double xi2Norm= sqrt(std::pow(xi(0),2) + std::pow(xi(2),2));
18 double nuFactor= 1-nu;
23 output= output + xi(k)*xi(l)*M_PI/(2*std::pow(xi2Norm,3));
24 else if (k==1 && l==1)
25 output= output + M_PI/(2*xi2Norm);
28 std::list<int> ijkl{i,j,k,l};
29 int count= std::count(ijkl.begin(),ijkl.end(),1);
33 output= output - xi(i)*xi(j)*xi(k)*xi(l)/(2*nuFactor) * 3 * M_PI / (8*std::pow(xi2Norm,5));
35 output= output - 1.0/(2*nuFactor) * 3 * M_PI / (8*xi2Norm);
40 for(
const auto elem : ijkl)
42 output= output - temp/(2*nuFactor) * M_PI / (8*std::pow(xi2Norm,3));
45 return -output/(4*std::pow(M_PI,2)*
mu);