Skip to content

Commit 91f5f36

Browse files
fix a week of compiler errors
1 parent 558f9c1 commit 91f5f36

3 files changed

Lines changed: 29 additions & 19 deletions

File tree

src/libs/blueprint/conduit_blueprint_mesh.hpp

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -834,7 +834,8 @@ namespace matset
834834
const float64 epsilon = CONDUIT_EPSILON);
835835

836836
//-------------------------------------------------------------------------
837-
void CONDUIT_BLUEPRINT_API create_or_reuse_material_map(const conduit::Node &matset);
837+
void CONDUIT_BLUEPRINT_API create_or_reuse_material_map(const conduit::Node &matset,
838+
conduit::Node &material_map);
838839
//-------------------------------------------------------------------------
839840
void CONDUIT_BLUEPRINT_API renumber_material_ids(const conduit::Node &src_matset,
840841
conduit::Node &dest_matset);

src/libs/blueprint/conduit_blueprint_mesh_matset_xforms.cpp

Lines changed: 20 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -236,7 +236,6 @@ store_material_data_for_zone_to_silo_arrays(
236236
// get material data for a specific zone from the "sparse by element" representation
237237
void
238238
get_uni_buffer_element_dom_material_data_for_zone(const conduit::Node &matset,
239-
const conduit::Node &material_map,
240239
const index_t zone_id,
241240
std::vector<int> &local_material_ids,
242241
std::vector<float64> &local_volume_fractions,
@@ -245,7 +244,7 @@ get_uni_buffer_element_dom_material_data_for_zone(const conduit::Node &matset,
245244
const float64_accessor vol_fracs = matset["volume_fractions"].value();
246245
const index_t_accessor material_ids = matset["material_ids"].value();
247246

248-
auto o2m_idx = o2mrelation::O2MIndex(src_matset);
247+
auto o2m_idx = o2mrelation::O2MIndex(matset);
249248
num_mats_in_zone = o2m_idx.size(zone_id);
250249
for (index_t many_id = 0; many_id < num_mats_in_zone; many_id ++)
251250
{
@@ -263,7 +262,6 @@ get_uni_buffer_element_dom_material_data_for_zone(const conduit::Node &matset,
263262
// get material and field data for a specific zone from the "sparse by element" representation
264263
void
265264
get_uni_buffer_element_dom_material_field_data_for_zone(const conduit::Node &matset,
266-
const conduit::Node &material_map,
267265
const conduit::Node &field,
268266
const index_t zone_id,
269267
std::vector<int> &local_material_ids,
@@ -275,7 +273,7 @@ get_uni_buffer_element_dom_material_field_data_for_zone(const conduit::Node &mat
275273
const index_t_accessor material_ids = matset["material_ids"].value();
276274
const float64_accessor mset_vals = field["matset_values"].value();
277275

278-
auto o2m_idx = o2mrelation::O2MIndex(src_matset);
276+
auto o2m_idx = o2mrelation::O2MIndex(matset);
279277
num_mats_in_zone = o2m_idx.size(zone_id);
280278
for (index_t many_id = 0; many_id < num_mats_in_zone; many_id ++)
281279
{
@@ -309,7 +307,7 @@ get_multi_buffer_element_dom_material_data_for_zone(const conduit::Node &matset,
309307
const float64 vf_for_mat = mat_vfs[zone_id];
310308
if (vf_for_mat > epsilon)
311309
{
312-
const int material_id = matset["material_map"][matname].as_int();
310+
const int material_id = material_map[matname].as_int();
313311

314312
num_mats_in_zone ++;
315313
local_volume_fractions.push_back(vf_for_mat);
@@ -338,7 +336,7 @@ get_multi_buffer_element_dom_material_field_data_for_zone(const conduit::Node &m
338336
const float64 vf_for_mat = mat_vfs[zone_id];
339337
if (vf_for_mat > epsilon)
340338
{
341-
const int material_id = matset["material_map"][matname].as_int();
339+
const int material_id = material_map[matname].as_int();
342340
const float64_accessor mset_vals = field["matset_values"][matname].value();
343341
const float64 val_for_mat = mset_vals[zone_id];
344342

@@ -360,7 +358,7 @@ void get_multi_buffer_element_dom_material_field_data_for_zones(
360358
std::vector<std::vector<float64>> &vol_fracs,
361359
std::vector<std::vector<float64>> &matset_values)
362360
{
363-
std::vector<std::string> &matnames = matset["element_ids"].child_names();
361+
const std::vector<std::string> &matnames = matset["element_ids"].child_names();
364362
for (const auto &matname : matnames)
365363
{
366364
const int material_id = material_map[matname].as_int();
@@ -391,7 +389,7 @@ void get_multi_buffer_element_dom_material_data_for_zones(
391389
std::vector<std::vector<int>> &material_ids,
392390
std::vector<std::vector<float64>> &vol_fracs)
393391
{
394-
std::vector<std::string> &matnames = matset["element_ids"].child_names();
392+
const std::vector<std::string> &matnames = matset["element_ids"].child_names();
395393
for (const auto &matname : matnames)
396394
{
397395
const int material_id = material_map[matname].as_int();
@@ -448,6 +446,9 @@ to_silo(const conduit::Node &matset,
448446
// [ ] mix_spec
449447
// [ ] mixlen
450448

449+
// TODO
450+
(void) specset;
451+
451452
//
452453
// make sure output is empty to start
453454
//
@@ -625,7 +626,7 @@ to_silo(const conduit::Node &matset,
625626
std::vector<float64> &local_matset_values)
626627
{
627628
get_uni_buffer_element_dom_material_field_data_for_zone(
628-
matset, material_map, field, zone_id, local_material_ids,
629+
matset, field, zone_id, local_material_ids,
629630
local_volume_fractions, local_matset_values, num_mats_in_zone);
630631
});
631632
}
@@ -638,7 +639,7 @@ to_silo(const conduit::Node &matset,
638639
std::vector<float64> &local_volume_fractions)
639640
{
640641
get_uni_buffer_element_dom_material_data_for_zone(
641-
matset, material_map, zone_id, local_material_ids,
642+
matset, zone_id, local_material_ids,
642643
local_volume_fractions, num_mats_in_zone);
643644
});
644645
}
@@ -761,7 +762,7 @@ multi_buffer_element_dominant_specset_to_silo(const conduit::Node &specset,
761762
// we must iterate using the material map since it has the "correct"
762763
// ordering of materials. Ordering may be different for the specset.
763764
// We choose the material map order to be the one source of truth.
764-
matmap_itr.to_front();
765+
auto matmap_itr = silo_matset["material_map"].children();
765766
while (matmap_itr.has_next())
766767
{
767768
matmap_itr.next();
@@ -962,6 +963,9 @@ multi_buffer_material_dominant_specset_to_silo(const conduit::Node &specset,
962963
const conduit::Node &silo_matset,
963964
conduit::Node &dest)
964965
{
966+
(void) specset;
967+
(void) silo_matset;
968+
(void) dest;
965969
// TODO
966970
}
967971

@@ -972,6 +976,9 @@ uni_buffer_element_dominant_specset_to_silo(const conduit::Node &specset,
972976
const conduit::Node &silo_matset,
973977
conduit::Node &dest)
974978
{
979+
(void) specset;
980+
(void) silo_matset;
981+
(void) dest;
975982
// TODO
976983
}
977984

@@ -1013,7 +1020,7 @@ determine_num_elems_in_multi_buffer_by_material(const conduit::Node &elem_ids)
10131020
const int num_vf = mat_elem_ids_vals.dtype().number_of_elements();
10141021
for (int i = 0; i < num_vf; i ++)
10151022
{
1016-
const int64 element_id = mat_elem_ids_vals[i];
1023+
const int element_id = mat_elem_ids_vals[i];
10171024
running_max = std::max(running_max, element_id + 1);
10181025
}
10191026
}
@@ -2288,7 +2295,7 @@ renumber_material_ids(conduit::Node &matset)
22882295
for (index_t i = 0; i < mat_ids.number_of_elements(); i ++)
22892296
{
22902297
const int old_mat_id = mat_ids[i];
2291-
mat_ids[i] = old_to_new.at(old_mat_id);
2298+
mat_ids.set(i, old_to_new.at(old_mat_id));
22922299
}
22932300
}
22942301
else

src/tests/blueprint/t_blueprint_mesh_matset_xforms.cpp

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -956,7 +956,7 @@ TEST(conduit_blueprint_mesh_matset_xforms, mesh_util_create_or_reuse_matmap)
956956
const double radius = 0.25;
957957

958958
Node info;
959-
std::std::vector<Node> venn_examples(3);
959+
std::vector<Node> venn_examples(3);
960960
blueprint::mesh::examples::venn("full", nx, ny, radius, venn_examples[0]);
961961
blueprint::mesh::examples::venn("sparse_by_element", nx, ny, radius, venn_examples[1]);
962962
blueprint::mesh::examples::venn("sparse_by_material", nx, ny, radius, venn_examples[2]);
@@ -1020,11 +1020,12 @@ TEST(conduit_blueprint_mesh_matset_xforms, mesh_util_renumber_mat_ids)
10201020

10211021
// renumber with new matset
10221022
Node renumbered_matset;
1023-
renumber_material_ids(matset, renumbered_matset);
1023+
blueprint::mesh::matset::renumber_material_ids(matset, renumbered_matset);
10241024

10251025
// renumber in-place
1026-
renumber_material_ids(matset);
1026+
blueprint::mesh::matset::renumber_material_ids(matset);
10271027

1028+
Node info;
10281029
EXPECT_FALSE(renumbered_matset.diff(baseline, info, CONDUIT_EPSILON, true));
10291030
EXPECT_FALSE(matset.diff(baseline, info, CONDUIT_EPSILON, true));
10301031
}
@@ -1063,11 +1064,12 @@ TEST(conduit_blueprint_mesh_matset_xforms, mesh_util_renumber_mat_ids)
10631064

10641065
// renumber with new matset
10651066
Node renumbered_matset;
1066-
renumber_material_ids(matset, renumbered_matset);
1067+
blueprint::mesh::matset::renumber_material_ids(matset, renumbered_matset);
10671068

10681069
// renumber in-place
1069-
renumber_material_ids(matset);
1070+
blueprint::mesh::matset::renumber_material_ids(matset);
10701071

1072+
Node info;
10711073
EXPECT_FALSE(renumbered_matset.diff(baseline, info, CONDUIT_EPSILON, true));
10721074
EXPECT_FALSE(matset.diff(baseline, info, CONDUIT_EPSILON, true));
10731075
}

0 commit comments

Comments
 (0)