From bf037713c54e7bb94f6a664baf085bbf36128ecc Mon Sep 17 00:00:00 2001
From: Lisa Julia Nebel <lisa_julia.nebel@tu-dresden.de>
Date: Wed, 22 Nov 2023 11:22:33 +0100
Subject: [PATCH] Change the cosseratcontinuumtest to check the newly
 implemented part in localintegralenergy and the bulkcosseratdensity

---
 test/cosseratcontinuumtest.cc | 17 +++++++++++------
 1 file changed, 11 insertions(+), 6 deletions(-)

diff --git a/test/cosseratcontinuumtest.cc b/test/cosseratcontinuumtest.cc
index 0e9aade9..8bcf1a00 100644
--- a/test/cosseratcontinuumtest.cc
+++ b/test/cosseratcontinuumtest.cc
@@ -22,10 +22,13 @@
 
 #include <dune/fufem/boundarypatch.hh>
 
-#include <dune/gfe/assemblers/cosseratenergystiffness.hh>
 #include <dune/gfe/assemblers/mixedlocalgfeadolcstiffness.hh>
 #include <dune/gfe/assemblers/mixedgfeassembler.hh>
+#include <dune/gfe/assemblers/sumenergy.hh>
+#include <dune/gfe/assemblers/localintegralenergy.hh>
+#include <dune/gfe/densities/bulkcosseratdensity.hh>
 #include <dune/gfe/mixedriemanniantrsolver.hh>
+#include <dune/gfe/neumannenergy.hh>
 
 // grid dimension
 const int dim = 3;
@@ -193,14 +196,16 @@ int main (int argc, char *argv[])
   //  Create an assembler
   // ////////////////////////////
 
-  CosseratEnergyLocalStiffness<CompositeBasis, dim,adouble> localCosseratEnergy(parameters,
-                                                                              neumannBoundary.get(),
-                                                                              neumannFunction,
-                                                                              nullptr);
+  GFE::SumEnergy<CompositeBasis, RealTuple<adouble,dim>,Rotation<adouble,dim> > sumEnergy;
+  auto neumannEnergy = std::make_shared<GFE::NeumannEnergy<CompositeBasis, RealTuple<adouble,dim>, Rotation<adouble,dim>>>(neumannBoundary,neumannFunction);
+  auto bulkCosseratDensity = std::make_shared<GFE::BulkCosseratDensity<adouble,double>>(parameters);
+  auto bulkCosseratEnergy = std::make_shared<GFE::LocalIntegralEnergy<CompositeBasis, RealTuple<adouble,dim>, Rotation<adouble,dim>>>(bulkCosseratDensity);
+  sumEnergy.addLocalEnergy(bulkCosseratEnergy);
+  sumEnergy.addLocalEnergy(neumannEnergy);
 
   MixedLocalGFEADOLCStiffness<CompositeBasis,
                       RealTuple<double,dim>,
-                      Rotation<double,dim> > localGFEADOLCStiffness(&localCosseratEnergy);
+                      Rotation<double,dim> > localGFEADOLCStiffness(&sumEnergy);
   MixedGFEAssembler<CompositeBasis,
             RealTuple<double,dim>,
             Rotation<double,dim> > mixedAssembler(compositeBasis, &localGFEADOLCStiffness);
-- 
GitLab