diff --git a/src/metatensor/metatensor.cpp b/src/metatensor/metatensor.cpp index bc149e603e..a36f35f6fa 100644 --- a/src/metatensor/metatensor.cpp +++ b/src/metatensor/metatensor.cpp @@ -686,17 +686,17 @@ void MetatensorPlumedAction::apply() { ); // add virials to the derivatives - derivatives.push_back(strain_grad[0][0].item()); - derivatives.push_back(strain_grad[0][1].item()); - derivatives.push_back(strain_grad[0][2].item()); + derivatives.push_back(-strain_grad[0][0].item()); + derivatives.push_back(-strain_grad[0][1].item()); + derivatives.push_back(-strain_grad[0][2].item()); - derivatives.push_back(strain_grad[1][0].item()); - derivatives.push_back(strain_grad[1][1].item()); - derivatives.push_back(strain_grad[1][2].item()); + derivatives.push_back(-strain_grad[1][0].item()); + derivatives.push_back(-strain_grad[1][1].item()); + derivatives.push_back(-strain_grad[1][2].item()); - derivatives.push_back(strain_grad[2][0].item()); - derivatives.push_back(strain_grad[2][1].item()); - derivatives.push_back(strain_grad[2][2].item()); + derivatives.push_back(-strain_grad[2][0].item()); + derivatives.push_back(-strain_grad[2][1].item()); + derivatives.push_back(-strain_grad[2][2].item()); unsigned index = 0; this->setForcesOnAtoms(derivatives, index);