Line data Source code
1 0 : // Distributed under the MIT License. 2 : // See LICENSE.txt for details. 3 : 4 : #pragma once 5 : 6 : #include <cstddef> 7 : 8 : #include "ParallelAlgorithms/Amr/Criteria/DriveToTarget.hpp" 9 : #include "ParallelAlgorithms/Amr/Criteria/IncreaseResolution.hpp" 10 : #include "ParallelAlgorithms/Amr/Criteria/Loehner.hpp" 11 : #include "ParallelAlgorithms/Amr/Criteria/Persson.hpp" 12 : #include "ParallelAlgorithms/Amr/Criteria/Random.hpp" 13 : #include "ParallelAlgorithms/Amr/Criteria/TruncationError.hpp" 14 : #include "Utilities/TMPL.hpp" 15 : 16 : namespace amr::Criteria { 17 : 18 : /*! 19 : * \brief AMR criteria that are generally applicable 20 : * 21 : * \tparam Dim the spatial dimension 22 : * \tparam TensorTags the tensor fields to monitor 23 : */ 24 : template <size_t Dim, typename TensorTags> 25 1 : using standard_criteria = tmpl::list< 26 : // p-AMR criteria 27 : ::amr::Criteria::IncreaseResolution<Dim>, 28 : ::amr::Criteria::TruncationError<Dim, TensorTags>, 29 : // h-AMR criteria 30 : ::amr::Criteria::Loehner<Dim, TensorTags>, 31 : ::amr::Criteria::Persson<Dim, TensorTags>, 32 : // Criteria for testing or experimenting 33 : ::amr::Criteria::DriveToTarget<Dim>, ::amr::Criteria::Random>; 34 : 35 : } // namespace amr::Criteria