41 #include "DTK_MapOperatorFactory.hpp" 42 #include "DTK_ConsistentInterpolationOperator.hpp" 44 #include "DTK_L2ProjectionOperator.hpp" 45 #include "DTK_PointCloudOperatorFactory.hpp" 53 d_name_map[
"L2 Projection"] = L2_PROJECTION;
54 d_name_map[
"Consistent Interpolation"] = CONSISTENT_INTERPOLATION;
55 d_name_map[
"Point Cloud"] = POINT_CLOUD;
60 Teuchos::RCP<MapOperator>
62 const Teuchos::RCP<const TpetraMap> &range_map,
63 const Teuchos::ParameterList ¶meters )
66 std::string map_name = parameters.get<std::string>(
"Map Type" );
67 DTK_REQUIRE( d_name_map.count( map_name ) );
68 int map_id = d_name_map.find( map_name )->second;
71 Teuchos::ParameterList map_list = parameters.sublist( map_name );
77 Teuchos::RCP<MapOperator> map;
87 case CONSISTENT_INTERPOLATION:
89 domain_map, range_map, parameters ) );
94 map = pcloud_factory.
create( domain_map, range_map, map_list );
99 bool map_type_is_valid =
false;
100 DTK_INSIST( map_type_is_valid );
104 DTK_ENSURE( Teuchos::nonnull( map ) );
MapOperatorFactory()
Constructor.
Assertions and Design-by-Contract for error handling.
Teuchos::RCP< MapOperator > create(const Teuchos::RCP< const TpetraMap > &domain_map, const Teuchos::RCP< const TpetraMap > &range_map, const Teuchos::ParameterList ¶meters)
Creation method.
Teuchos::RCP< MapOperator > create(const Teuchos::RCP< const TpetraMap > &domain_map, const Teuchos::RCP< const TpetraMap > &range_map, const Teuchos::ParameterList ¶meters)
Creation method.
Factory for DTK point cloud map operators.