From 5d431e465a0ac9b3650c3132436daf8cb1e17377 Mon Sep 17 00:00:00 2001 From: Oliver Sander <oliver.sander@tu-dresden.de> Date: Fri, 22 Jan 2016 06:41:13 +0100 Subject: [PATCH] Use the NonplanarCosseratShellEnergy if dim<dimworld --- src/cosserat-continuum.cc | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/cosserat-continuum.cc b/src/cosserat-continuum.cc index c086218e..a8a6b3ca 100644 --- a/src/cosserat-continuum.cc +++ b/src/cosserat-continuum.cc @@ -37,6 +37,7 @@ #include <dune/gfe/rigidbodymotion.hh> #include <dune/gfe/localgeodesicfeadolcstiffness.hh> #include <dune/gfe/cosseratenergystiffness.hh> +#include <dune/gfe/nonplanarcosseratshellenergy.hh> #include <dune/gfe/cosseratvtkwriter.hh> #include <dune/gfe/cosseratvtkreader.hh> #include <dune/gfe/geodesicfeassembler.hh> @@ -290,8 +291,11 @@ int main (int argc, char *argv[]) try } // Assembler using ADOL-C - CosseratEnergyLocalStiffness<FEBasis, - 3,adouble> cosseratEnergyADOLCLocalStiffness(materialParameters, + using LocalEnergy = std::conditional<dim==dimworld, + CosseratEnergyLocalStiffness<FEBasis,3,adouble>, + NonplanarCosseratShellEnergy<FEBasis,3,adouble> >::type; + + LocalEnergy cosseratEnergyADOLCLocalStiffness(materialParameters, &neumannBoundary, neumannFunction, volumeLoad); -- GitLab