diff --git a/ikarus/finiteelements/mechanics/membranestrains.hh b/ikarus/finiteelements/mechanics/membranestrains.hh index 66e949731..891ca4e9d 100644 --- a/ikarus/finiteelements/mechanics/membranestrains.hh +++ b/ikarus/finiteelements/mechanics/membranestrains.hh @@ -40,7 +40,8 @@ namespace Ikarus { const Eigen::Matrix j = J + gradu.transpose(); epsV << J.row(0).dot(gradu.col(0)) + 0.5 * gradu.col(0).squaredNorm(), - J.row(1).dot(gradu.col(1)) + 0.5 * gradu.col(1).squaredNorm(), j.row(0).dot(j.row(1)); + J.row(1).dot(gradu.col(1)) + 0.5 * gradu.col(1).squaredNorm(), + j.row(0).dot(j.row(1)) - J.row(0).dot(J.row(1)); return epsV; } diff --git a/python/ikarus/finite_elements/__init__.py b/python/ikarus/finite_elements/__init__.py index 0171793ee..bedce0c7e 100644 --- a/python/ikarus/finite_elements/__init__.py +++ b/python/ikarus/finite_elements/__init__.py @@ -104,13 +104,7 @@ def KirchhoffLoveShell( includes = ["ikarus/python/finiteelements/kirchhoffloveshell.hh"] includes += ["ikarus/finiteelements/febases/autodifffe.hh"] - autodiffWrapper = "AutoDiffFE" - element_type = ( - "Ikarus::" - + autodiffWrapper - + f">,true>," - f"Ikarus::FErequirements>,true>" - ) + element_type = f"Ikarus::KirchhoffLoveShell<{basis.cppTypeName},Ikarus::FERequirements>,true>" # else: # element_type = "Ikarus::" + func.__name__ + f"<{basis.cppTypeName}, {material.cppTypeName} ,Ikarus::FErequirements>,true>" diff --git a/tests/src/checkfebyautodiff.hh b/tests/src/checkfebyautodiff.hh index 6fb079498..230617f42 100644 --- a/tests/src/checkfebyautodiff.hh +++ b/tests/src/checkfebyautodiff.hh @@ -11,7 +11,7 @@ template