In src/cuda/tensor.cu Line 219
float3
dot(symtensor3 const& T, float3 const& v)
and also Line 230
float3
dot(symtensor3 const& T, float3 const& v)
{
return make_float3(
T.xxv.x + T.xyv.y + T.xzv.z,
T.xyv.y + T.yyv.y + T.yzv.z, // the first v.y → v.x
T.xzv.x + T.yzv.y + T.zz*v.z);
}
i believe this function should be
T.xxv.x + T.xyv.y + T.xzv.z,
T.xyv.x + T.yyv.y + T.yzv.z, //v.y → v.x
T.xzv.x + T.yzv.y + T.zz*v.z);
just like the function in Line 242
float4
dot(symtensor4 const& T, float4 const& v)
{
return make_float4(
T.xxv.x + T.xyv.y + T.xzv.z + T.xwv.w,
T.xyv.x + T.yyv.y + T.yzv.z + T.ywv.w,
T.xzv.x + T.yzv.y + T.zzv.z + T.zwv.w,
T.xwv.x + T.ywv.y + T.zwv.z + T.wwv.w);
}