CoarseningManager1d.h 1.73 KB
 Praetorius, Simon committed Aug 02, 2013 1 2 3 4 5 6 7 ``````/****************************************************************************** * * AMDiS - Adaptive multidimensional simulations * * Copyright (C) 2013 Dresden University of Technology. All Rights Reserved. * Web: https://fusionforge.zih.tu-dresden.de/projects/amdis * `````` Praetorius, Simon committed Oct 14, 2016 8 `````` * Authors: `````` Praetorius, Simon committed Aug 02, 2013 9 10 11 12 13 14 15 16 17 `````` * Simon Vey, Thomas Witkowski, Andreas Naumann, Simon Praetorius, et al. * * This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE * WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. * * * This file is part of AMDiS * * See also license.opensource.txt in the distribution. `````` Praetorius, Simon committed Oct 14, 2016 18 `````` * `````` Praetorius, Simon committed Aug 02, 2013 19 `````` ******************************************************************************/ `````` Thomas Witkowski committed Dec 16, 2010 20 21 `````` `````` Peter Gottschling committed Feb 15, 2008 22 23 24 25 26 27 28 29 30 31 `````` /** \file CoarseningManager1d.h */ #ifndef AMDIS_COARSENINGMANAGER_1D_H #define AMDIS_COARSENINGMANAGER_1D_H #include "CoarseningManager.h" namespace AMDiS { `````` Praetorius, Simon committed Oct 14, 2016 32 `````` /** \ingroup Adaption `````` Peter Gottschling committed Feb 15, 2008 33 34 35 36 37 38 `````` * \brief * Implements a CoarseningManager for 1-dimensional meshes. */ class CoarseningManager1d : public CoarseningManager { public: `````` Praetorius, Simon committed Oct 14, 2016 39 40 41 `````` /// Calls base class constructor and checks dimension of mesh. CoarseningManager1d() : CoarseningManager() `````` Thomas Witkowski committed May 07, 2009 42 `````` {} `````` Peter Gottschling committed Feb 15, 2008 43 `````` `````` Thomas Witkowski committed May 07, 2009 44 45 `````` /// destructor virtual ~CoarseningManager1d() {} `````` Peter Gottschling committed Feb 15, 2008 46 47 48 49 50 51 52 53 `````` /** \brief * Overloads CoarseningManager::coarsenMesh. In 1d a simple recursive * coarsening algorithm is implemented which doesn't need coarsenFunction. */ Flag coarsenMesh(Mesh *aMesh); protected: `````` Thomas Witkowski committed May 07, 2009 54 `````` /// Not needed in this sub class `````` Praetorius, Simon committed Oct 14, 2016 55 `````` void coarsenFunction(ElInfo *) `````` Thomas Witkowski committed Jun 10, 2009 56 `````` { `````` Peter Gottschling committed Feb 15, 2008 57 58 `````` FUNCNAME("CoarseningManager1d::coarsenFunction"); ERROR_EXIT("not used for dim = 1"); `````` Thomas Witkowski committed May 07, 2009 59 `````` } `````` Praetorius, Simon committed Oct 14, 2016 60 `````` `````` Thomas Witkowski committed May 07, 2009 61 `````` /// Needed instead of coarsenFunction in 1d. `````` Peter Gottschling committed Feb 15, 2008 62 `````` int coarsenRecursive(Line *parent); `````` Praetorius, Simon committed Oct 14, 2016 63 `````` `````` Peter Gottschling committed Feb 15, 2008 64 65 66 67 68 `````` }; } #endif // AMDIS_COARSENINGMANAGER_1D_H``````