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 "Elliptic/BoundaryConditions/AnalyticSolution.hpp" 9 : #include "Elliptic/BoundaryConditions/BoundaryConditionType.hpp" 10 : #include "Elliptic/Systems/Elasticity/BoundaryConditions/LaserBeam.hpp" 11 : #include "Elliptic/Systems/Elasticity/BoundaryConditions/Zero.hpp" 12 : #include "Utilities/TMPL.hpp" 13 : 14 0 : namespace Elasticity::BoundaryConditions { 15 : 16 : template <typename System> 17 0 : using standard_boundary_conditions = tmpl::append< 18 : tmpl::list< 19 : elliptic::BoundaryConditions::AnalyticSolution<System>, 20 : Zero<System::volume_dim, elliptic::BoundaryConditionType::Dirichlet>, 21 : Zero<System::volume_dim, elliptic::BoundaryConditionType::Neumann>>, 22 : tmpl::conditional_t<System::volume_dim == 3, tmpl::list<LaserBeam>, 23 : tmpl::list<>>>; 24 : 25 : }