diff --git a/dune/gfe/cosseratenergystiffness.hh b/dune/gfe/cosseratenergystiffness.hh index 197a1d1133413e4d3a62c8c04800a033d114cfcc..af54e5f1087f1405e16ce129c3ed5b71cc6905bb 100644 --- a/dune/gfe/cosseratenergystiffness.hh +++ b/dune/gfe/cosseratenergystiffness.hh @@ -371,7 +371,7 @@ energy(const typename Basis::LocalView& localView, // Only translational dofs are affected by the volume load for (size_t i=0; i<volumeLoadDensity.size(); i++) - energy -= thickness_ * (volumeLoadDensity[i] * value.r[i]) * quad[pt].weight() * integrationElement; + energy += thickness_ * (volumeLoadDensity[i] * value.r[i]) * quad[pt].weight() * integrationElement; } @@ -405,7 +405,7 @@ energy(const typename Basis::LocalView& localView, // Only translational dofs are affected by the Neumann force for (size_t i=0; i<neumannValue.size(); i++) - energy -= thickness_ * (neumannValue[i] * value.r[i]) * quad[pt].weight() * integrationElement; + energy += thickness_ * (neumannValue[i] * value.r[i]) * quad[pt].weight() * integrationElement; } diff --git a/dune/gfe/nonplanarcosseratshellenergy.hh b/dune/gfe/nonplanarcosseratshellenergy.hh index 7061eab810e04015304fe4f13a41042f756e6cd9..97a1b6bdf2fc0238a04c0532880e676dbe7d8feb 100644 --- a/dune/gfe/nonplanarcosseratshellenergy.hh +++ b/dune/gfe/nonplanarcosseratshellenergy.hh @@ -334,7 +334,7 @@ energy(const typename Basis::LocalView& localView, // Only translational dofs are affected by the volume load for (size_t i=0; i<volumeLoadDensity.size(); i++) - energy -= thickness_ * (volumeLoadDensity[i] * value.r[i]) * quad[pt].weight() * integrationElement; + energy += thickness_ * (volumeLoadDensity[i] * value.r[i]) * quad[pt].weight() * integrationElement; } @@ -367,7 +367,7 @@ energy(const typename Basis::LocalView& localView, // Only translational dofs are affected by the Neumann force for (size_t i=0; i<neumannValue.size(); i++) - energy -= thickness_ * (neumannValue[i] * value.r[i]) * quad[pt].weight() * integrationElement; + energy += thickness_ * (neumannValue[i] * value.r[i]) * quad[pt].weight() * integrationElement; } } diff --git a/src/cosserat-continuum.cc b/src/cosserat-continuum.cc index 348182cf00021c7c1691aef5c9c827010dd7fbf9..b4aa70abe91c47bd214e6c4a4ce9ea00cb538d67 100644 --- a/src/cosserat-continuum.cc +++ b/src/cosserat-continuum.cc @@ -398,7 +398,7 @@ int main (int argc, char *argv[]) try auto neumannFunction = [&]( FieldVector<double,dimworld> ) { auto nV = neumannValues; - nV *= homotopyParameter; + nV *= (-homotopyParameter); return nV; }; @@ -408,7 +408,7 @@ int main (int argc, char *argv[]) try auto volumeLoad = [&]( FieldVector<double,dimworld>) { auto vL = volumeLoadValues; - vL *= homotopyParameter; + vL *= (-homotopyParameter); return vL; };