45 std::vector<BoundaryInfo::BCTuple> all_bc_tuples =
49 std::vector<std::string> var_names = {
"var1",
"var2"};
50 std::vector<std::set<boundary_id_type>> side_ids =
58 std::vector<std::map<BoundaryInfo::BCTuple, Real>> bc_vals(var_names.size());
61 for (
unsigned int i=0; i<var_names.size(); ++i)
64 auto & vals = bc_vals[i];
66 for (
const auto & t : all_bc_tuples)
72 if (side_ids[i].count(b_id))
76 Real val = static_cast<Real>(b_id);
79 vals.insert(std::make_pair(t, val));
90 #ifdef LIBMESH_HAVE_EXODUS_API
95 writer.write(
"write_sideset_data.e");
96 writer.write_sideset_data (1, var_names, side_ids, bc_vals);
105 reader.read(
"write_sideset_data.e");
107 std::vector<std::string> read_in_var_names;
108 std::vector<std::set<boundary_id_type>> read_in_side_ids;
109 std::vector<std::map<BoundaryInfo::BCTuple, Real>> read_in_bc_vals;
110 reader.read_sideset_data
111 (1, read_in_var_names, read_in_side_ids, read_in_bc_vals);
114 CPPUNIT_ASSERT(read_in_var_names == var_names);
115 CPPUNIT_ASSERT(read_in_side_ids == side_ids);
116 CPPUNIT_ASSERT(read_in_bc_vals == bc_vals);
118 #endif // #ifdef LIBMESH_HAVE_EXODUS_API