From 059b66022b79bc796573d8e318b398ff804605e1 Mon Sep 17 00:00:00 2001
From: Elias Pipping <elias.pipping@fu-berlin.de>
Date: Wed, 7 Dec 2011 22:31:08 +0100
Subject: [PATCH] Use make_shared

---
 src/test-gradient-method.cc | 56 +++++++++++++++----------------------
 1 file changed, 22 insertions(+), 34 deletions(-)

diff --git a/src/test-gradient-method.cc b/src/test-gradient-method.cc
index 1df4e6fb..0f15006d 100644
--- a/src/test-gradient-method.cc
+++ b/src/test-gradient-method.cc
@@ -35,9 +35,8 @@ void testIdentity() {
   b[0] = 1;
   b[1] = 2;
 
-  Dune::shared_ptr<Dune::NiceFunction const> f(new Dune::LinearFunction(1));
-  Dune::shared_ptr<Functional::NonlinearityType const> phi(
-      new Functional::NonlinearityType(f));
+  auto f = Dune::make_shared<Dune::LinearFunction const>(1);
+  auto phi = Dune::make_shared<Functional::NonlinearityType const>(f);
   Functional J(A, b, phi);
 
   Functional::SmallVector start = b;
@@ -72,9 +71,8 @@ void testSampleFunction() {
   b[0] = 1;
   b[1] = 2;
 
-  Dune::shared_ptr<Dune::NiceFunction const> f(new Dune::SampleFunction<2>());
-  Dune::shared_ptr<Functional::NonlinearityType const> phi(
-      new Functional::NonlinearityType(f));
+  auto f = Dune::make_shared<Dune::SampleFunction<2> const>();
+  auto phi = Dune::make_shared<Functional::NonlinearityType const>(f);
   Functional J(A, b, phi);
 
   Functional::SmallVector start = b;
@@ -123,9 +121,8 @@ void testSampleFunctionNonsmooth() {
   b[0] = 1;
   b[1] = 2;
 
-  Dune::shared_ptr<Dune::NiceFunction const> f(new Dune::SampleFunction<2>());
-  Dune::shared_ptr<Functional::NonlinearityType const> phi(
-      new Functional::NonlinearityType(f));
+  auto f = Dune::make_shared<Dune::SampleFunction<2> const>();
+  auto phi = Dune::make_shared<Functional::NonlinearityType const>(f);
   Functional J(A, b, phi);
 
   Functional::SmallVector start;
@@ -187,9 +184,8 @@ void testTrivialFunction() {
   b[0] = 1;
   b[1] = 2;
 
-  Dune::shared_ptr<Dune::NiceFunction const> f(new Dune::TrivialFunction());
-  Dune::shared_ptr<Functional::NonlinearityType const> phi(
-      new Functional::NonlinearityType(f));
+  auto f = Dune::make_shared<Dune::TrivialFunction const>();
+  auto phi = Dune::make_shared<Functional::NonlinearityType const>(f);
   Functional J(A, b, phi);
 
   Functional::SmallVector start = b;
@@ -233,9 +229,8 @@ void testHorribleFunction() {
   b[0] = 1;
   b[1] = 2;
 
-  Dune::shared_ptr<Dune::NiceFunction const> f(new Dune::HorribleFunction());
-  Dune::shared_ptr<Functional::NonlinearityType const> phi(
-      new Functional::NonlinearityType(f));
+  auto f = Dune::make_shared<Dune::HorribleFunction const>();
+  auto phi = Dune::make_shared<Functional::NonlinearityType const>(f);
   Functional J(A, b, phi);
 
   Functional::SmallVector start = b;
@@ -270,10 +265,8 @@ void testHorribleFunctionLogarithmic() {
   b[0] = 1;
   b[1] = 2;
 
-  Dune::shared_ptr<Dune::NiceFunction const> f(
-      new Dune::HorribleFunctionLogarithmic());
-  Dune::shared_ptr<Functional::NonlinearityType const> phi(
-      new Functional::NonlinearityType(f));
+  auto f = Dune::make_shared<Dune::HorribleFunctionLogarithmic const>();
+  auto phi = Dune::make_shared<Functional::NonlinearityType const>(f);
   Functional J(A, b, phi);
 
   Functional::SmallVector start = b;
@@ -312,9 +305,8 @@ void testSampleFunction3D() {
   b[1] = 2;
   b[2] = 3;
 
-  Dune::shared_ptr<Dune::NiceFunction const> f(new Dune::SampleFunction<2>());
-  Dune::shared_ptr<Functional::NonlinearityType const> phi(
-      new Functional::NonlinearityType(f));
+  auto f = Dune::make_shared<Dune::SampleFunction<2> const>();
+  auto phi = Dune::make_shared<Functional::NonlinearityType const>(f);
   Functional J(A, b, phi);
 
   Functional::SmallVector start = b;
@@ -352,9 +344,8 @@ void testSampleFunction2() {
   b[0] = 1;
   b[1] = 1;
 
-  Dune::shared_ptr<Dune::NiceFunction const> f(new Dune::SampleFunction<2>());
-  Dune::shared_ptr<Functional::NonlinearityType const> phi(
-      new Functional::NonlinearityType(f));
+  auto f = Dune::make_shared<Dune::SampleFunction<2> const>();
+  auto phi = Dune::make_shared<Functional::NonlinearityType const>(f);
   Functional J(A, b, phi);
 
   Functional::SmallVector start = b;
@@ -388,9 +379,8 @@ void testSampleFunctionSteep1() {
   b[0] = 1;
   b[1] = 2;
 
-  Dune::shared_ptr<Dune::NiceFunction const> f(new Dune::SampleFunction<2>());
-  Dune::shared_ptr<Functional::NonlinearityType const> phi(
-      new Functional::NonlinearityType(f));
+  auto f = Dune::make_shared<Dune::SampleFunction<2> const>();
+  auto phi = Dune::make_shared<Functional::NonlinearityType const>(f);
   Functional J(A, b, phi);
 
   Functional::SmallVector start;
@@ -427,9 +417,8 @@ void testSampleFunctionSteep2() {
   b[0] = 1;
   b[1] = 2.5;
 
-  Dune::shared_ptr<Dune::NiceFunction const> f(new Dune::SampleFunction<2>());
-  Dune::shared_ptr<Functional::NonlinearityType const> phi(
-      new Functional::NonlinearityType(f));
+  auto f = Dune::make_shared<Dune::SampleFunction<2> const>();
+  auto phi = Dune::make_shared<Functional::NonlinearityType const>(f);
   Functional J(A, b, phi);
 
   Functional::SmallVector start;
@@ -466,9 +455,8 @@ void testSteepFunction() {
   b[0] = 1;
   b[1] = 2.5;
 
-  Dune::shared_ptr<Dune::NiceFunction const> f(new Dune::SampleFunction<100>());
-  Dune::shared_ptr<Functional::NonlinearityType const> phi(
-      new Functional::NonlinearityType(f));
+  auto f = Dune::make_shared<Dune::SampleFunction<100> const>();
+  auto phi = Dune::make_shared<Functional::NonlinearityType const>(f);
   Functional J(A, b, phi);
 
   Functional::SmallVector start;
-- 
GitLab