Skip to content

Commit 4792547

Browse files
committed
STK: Snapshot 11-14-25 06:22 from Sierra 5.27.3-195-g383cb9a3
Signed-off-by: Alan Williams <[email protected]>
1 parent 790fca2 commit 4792547

File tree

169 files changed

+1367
-1283
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

169 files changed

+1367
-1283
lines changed

packages/stk/CHANGELOG.md

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,12 @@
11
# CHANGELOG
22

3+
5.27.2-02 (STK_VERSION 5270202) 11/14/25
4+
stk_util: deprecate STK_FUNCTION/STK_INLINE_FUNCTION; prefer direct usage
5+
of KOKKOS_FUNCTION/KOKKOS_INLINE_FUNCTION
6+
stk_mesh: Change default access tag for Field::data<>() to ReadOnly.
7+
Also misc bug fixes related to shell-edge connectivity,
8+
multi-state field initialization, etc.
9+
310
5.27.2-01 (STK_VERSION 5270201) 11/05/25
411
stk_doc_tests: fix build error when Seacas/Ioss is on but MPI is off
512
stk_mesh: add GPU-compatible APIs for parallel_sum and friends.

packages/stk/stk_balance/stk_balance/balanceUtils.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -54,7 +54,7 @@ double BalanceSettings::getFieldVertexWeight(const stk::mesh::BulkData &bulkData
5454
{
5555
const stk::mesh::Field<double> &field = *getVertexWeightField(bulkData, criteria_index);
5656
if (field.defined_on(entity)) {
57-
auto fieldData = field.data<stk::mesh::ReadOnly>();
57+
auto fieldData = field.data();
5858
auto weight = fieldData.entity_values(entity);
5959
STK_ThrowRequireWithSierraHelpMsg(weight() >= 0);
6060
return weight();

packages/stk/stk_balance/stk_balance/internal/Vertices.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,7 @@ void Vertices::fillVertexWeights(const stk::mesh::BulkData& bulkData,
4747
}
4848
else if (balanceSettings.getVertexWeightMethod() == VertexWeightMethod::CONNECTIVITY) {
4949
const stk::mesh::Field<double> & connectivityWeights = *balanceSettings.getVertexConnectivityWeightField(bulkData);
50-
auto connectivityWeightsData = connectivityWeights.data<stk::mesh::ReadOnly>();
50+
auto connectivityWeightsData = connectivityWeights.data();
5151
for (size_t i = 0; i < entities.size(); ++i) {
5252
mVertexWeights[i] = connectivityWeightsData.entity_values(entities[i])();
5353
}

packages/stk/stk_balance/stk_balance/internal/Zoltan2ParallelGraph.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -345,7 +345,7 @@ void Zoltan2ParallelGraph::createGraphEdgesUsingNodeConnectivity(stk::mesh::Bulk
345345
}
346346
else if (balanceSettings.getVertexWeightMethod() == stk::balance::VertexWeightMethod::CONNECTIVITY) {
347347
const stk::mesh::Field<double> & connectivityWeights = *balanceSettings.getVertexConnectivityWeightField(stkMeshBulkData);
348-
auto connectivityWeightsData = connectivityWeights.data<stk::mesh::ReadOnly>();
348+
auto connectivityWeightsData = connectivityWeights.data();
349349
mVertexWeights[local_id] = connectivityWeightsData.entity_values(elementOfConcern)();
350350
}
351351
else if (balanceSettings.getVertexWeightMethod() == stk::balance::VertexWeightMethod::FIELD) {

packages/stk/stk_balance/stk_balance/internal/privateDeclarations.cpp

Lines changed: 9 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,6 @@
88
#include <stk_balance/internal/DiagnosticsContainer.hpp>
99

1010
#include <stk_mesh/base/MetaData.hpp>
11-
#include <stk_mesh/base/SkinMesh.hpp>
1211
#include <stk_mesh/base/FieldBase.hpp> // for field_data
1312
#include <stk_mesh/base/FieldBLAS.hpp>
1413
#include <stk_mesh/base/GetEntities.hpp>
@@ -35,7 +34,6 @@
3534
#include "stk_mesh/base/FieldParallel.hpp"
3635
#include <stk_mesh/base/SideSetEntry.hpp>
3736
#include <stk_mesh/base/SkinBoundary.hpp>
38-
#include <stk_mesh/base/SkinMeshUtil.hpp>
3937
#include <stk_util/environment/Env.hpp>
4038
#include <stk_util/parallel/ParallelReduce.hpp>
4139
#include <stk_util/parallel/OutputStreams.hpp>
@@ -769,7 +767,7 @@ void fill_spider_connectivity_count_fields_and_parts(stk::mesh::BulkData & bulk,
769767

770768

771769
const stk::mesh::Field<int> * volumeConnectivityCountField = balanceSettings.getSpiderVolumeConnectivityCountField(bulk);
772-
auto volumeConnectivityCountFieldData = volumeConnectivityCountField->data();
770+
auto volumeConnectivityCountFieldData = volumeConnectivityCountField->data<stk::mesh::ReadWrite>();
773771
stk::mesh::Selector selectBeamElements(meta.locally_owned_part() &
774772
meta.get_topology_root_part(stk::topology::BEAM_2));
775773
stk::mesh::EntityVector beams;
@@ -787,7 +785,7 @@ void fill_output_subdomain_field(const stk::mesh::BulkData & bulk, const Balance
787785
{
788786
if (balanceSettings.shouldFixSpiders()) {
789787
const stk::mesh::Field<int> * outputSubdomainField = balanceSettings.getOutputSubdomainField(bulk);
790-
auto outputSubdomainFieldData = outputSubdomainField->data();
788+
auto outputSubdomainFieldData = outputSubdomainField->data<stk::mesh::ReadWrite>();
791789

792790
for (const stk::mesh::EntityProc & entityProc : decomp) {
793791
const stk::mesh::Entity elem = entityProc.first;
@@ -859,7 +857,7 @@ void store_diagnostic_element_weights(const stk::mesh::BulkData & bulk,
859857
{
860858
if (stk::balance::get_diagnostic<TotalElementWeightDiagnostic>()) {
861859
const stk::mesh::Field<double> & weightField = *balanceSettings.getDiagnosticElementWeightField(bulk);
862-
auto weightFieldData = weightField.data();
860+
auto weightFieldData = weightField.data<stk::mesh::ReadWrite>();
863861
const std::vector<double> & vertexWeights = vertices.get_vertex_weights();
864862
const int numSelectors = 1;
865863
const int selectorIndex = 0;
@@ -1043,7 +1041,7 @@ std::pair<stk::mesh::Entity, stk::mesh::Entity> get_spider_beam_body_and_node_fo
10431041
const stk::mesh::Entity * elems = bulk.begin_elements(bodyNode);
10441042
const unsigned numElements = bulk.num_elements(bodyNode);
10451043
const stk::mesh::Field<int> & volumeElemConnectivityCountField = *balanceSettings.getSpiderVolumeConnectivityCountField(bulk);
1046-
auto volumeElemConnectivityCountFieldData = volumeElemConnectivityCountField.data<stk::mesh::ReadOnly>();
1044+
auto volumeElemConnectivityCountFieldData = volumeElemConnectivityCountField.data();
10471045

10481046
for (unsigned i = 0; i < numElements; ++i) {
10491047
if (bulk.bucket(elems[i]).topology() == stk::topology::BEAM_2) {
@@ -1149,7 +1147,7 @@ stk::mesh::EntityVector get_local_spider_legs(const stk::mesh::BulkData & bulk,
11491147
int get_new_spider_leg_owner(const stk::mesh::BulkData & bulk, const stk::mesh::Entity & footNode,
11501148
const stk::mesh::Part & spiderPart, const stk::mesh::Field<int> & outputSubdomainField)
11511149
{
1152-
auto outputSubdomainFieldData = outputSubdomainField.data<stk::mesh::ReadOnly>();
1150+
auto outputSubdomainFieldData = outputSubdomainField.data();
11531151
const stk::mesh::Entity* footElements = bulk.begin_elements(footNode);
11541152
const unsigned numElements = bulk.num_elements(footNode);
11551153
int newLegOwner = std::numeric_limits<int>::max();
@@ -1196,7 +1194,7 @@ void update_output_subdomain_field(const stk::mesh::BulkData & bulk,
11961194
stk::mesh::Entity spiderEntity,
11971195
int newLegOwner)
11981196
{
1199-
auto outputSubdomainFieldData = outputSubdomainField.data();
1197+
auto outputSubdomainFieldData = outputSubdomainField.data<stk::mesh::ReadWrite>();
12001198
if (bulk.entity_rank(spiderEntity) == stk::topology::ELEM_RANK) {
12011199
auto outputSubdomain = outputSubdomainFieldData.entity_values(spiderEntity);
12021200
outputSubdomain() = newLegOwner;
@@ -1493,7 +1491,7 @@ void compute_total_element_weight_diagnostic(TotalElementWeightDiagnostic & diag
14931491
const stk::balance::BalanceSettings & balanceSettings,
14941492
const stk::mesh::Field<double> & weightField, int rank)
14951493
{
1496-
auto weightFieldData = weightField.data<stk::mesh::ReadOnly>();
1494+
auto weightFieldData = weightField.data();
14971495
const stk::mesh::BucketVector & buckets = bulk.get_buckets(stk::topology::ELEM_RANK,
14981496
bulk.mesh_meta_data().locally_owned_part());
14991497
const int numCriteria = balanceSettings.getNumCriteria();
@@ -1635,7 +1633,7 @@ double get_connected_node_weight(const stk::mesh::BulkData & bulk, std::vector<s
16351633
void spread_weight_across_connected_elements(const stk::mesh::BulkData & bulk, const stk::mesh::Entity & node,
16361634
double nodeWeight, const stk::mesh::Field<double> & elementWeights)
16371635
{
1638-
auto elementWeightsData = elementWeights.data();
1636+
auto elementWeightsData = elementWeights.data<stk::mesh::ReadWrite>();
16391637
const unsigned numElements = bulk.num_elements(node);
16401638
const stk::mesh::Entity * elements = bulk.begin_elements(node);
16411639

@@ -1677,7 +1675,7 @@ void compute_connectivity_weight_diagnostic(ConnectivityWeightDiagnostic & diag,
16771675
{
16781676
const stk::mesh::MetaData & meta = bulk.mesh_meta_data();
16791677
const stk::mesh::Field<double> & elementWeights = *balanceSettings.getVertexConnectivityWeightField(bulk);
1680-
auto elementWeightsData = elementWeights.data<stk::mesh::ReadOnly>();
1678+
auto elementWeightsData = elementWeights.data();
16811679

16821680
double totalWeight = 0.0;
16831681
const stk::mesh::BucketVector & buckets = bulk.get_buckets(stk::topology::ELEM_RANK, meta.locally_owned_part());

packages/stk/stk_doc_tests/stk_balance/howToUseStkBalance.cpp

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,7 @@ bool is_mesh_balanced(const stk::mesh::BulkData& bulk)
3939

4040
bool is_mesh_balanced_wrt_weight(const stk::mesh::BulkData& bulk, stk::mesh::Field<double>& weightField)
4141
{
42-
auto weightFieldData = weightField.data<stk::mesh::ReadOnly>();
42+
auto weightFieldData = weightField.data();
4343

4444
std::vector<size_t> counts;
4545
stk::mesh::comm_mesh_counts(bulk, counts);
@@ -246,7 +246,7 @@ class FieldVertexWeightSettings : public stk::balance::GraphCreationSettings
246246

247247
void set_vertex_weights(const stk::mesh::BulkData& bulk, stk::mesh::Selector selector, stk::mesh::Field<double>& weightField)
248248
{
249-
auto weightFieldData = weightField.data();
249+
auto weightFieldData = weightField.data<stk::mesh::ReadWrite>();
250250

251251
stk::mesh::EntityVector elements;
252252
stk::mesh::get_entities(bulk, stk::topology::ELEM_RANK, selector, elements);
@@ -406,8 +406,8 @@ void set_vertex_weights_checkerboard(stk::mesh::BulkData& bulk, stk::mesh::Selec
406406
stk::mesh::EntityVector elements;
407407
stk::mesh::get_entities(bulk, stk::topology::ELEM_RANK, selector, elements);
408408

409-
auto weightField1Data = weightField1.data();
410-
auto weightField2Data = weightField2.data();
409+
auto weightField1Data = weightField1.data<stk::mesh::ReadWrite>();
410+
auto weightField2Data = weightField2.data<stk::mesh::ReadWrite>();
411411
for(stk::mesh::Entity element : elements)
412412
{
413413
auto data1 = weightField1Data.entity_values(element);

packages/stk/stk_doc_tests/stk_io/RenamedInputFields.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -74,7 +74,7 @@ class InputNodesetDataCalledDispX : public stk::unit_test_util::MeshFixture
7474
void expect_field_data(stk::mesh::FieldBase *field, double expected)
7575
{
7676
stk::mesh::Entity node11 = get_bulk().get_entity(stk::topology::NODE_RANK, 11);
77-
auto fieldData = field->data<double,stk::mesh::ReadOnly>();
77+
auto fieldData = field->data<double>();
7878
ASSERT_TRUE(field->defined_on(node11));
7979
auto nodeData = fieldData.entity_values(node11);
8080
const double epsilon = 1e-6;

packages/stk/stk_doc_tests/stk_io/handleMissingFieldOnRead.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -144,7 +144,7 @@ namespace {
144144
EXPECT_EQ("disp", missing_fields[1].db_name());
145145
EXPECT_EQ("displacement_STKFS_N", missing_fields[1].field()->name());
146146

147-
auto temperatureData = temperature.data<stk::mesh::ReadOnly>();
147+
auto temperatureData = temperature.data();
148148

149149
// The value of the "temperature" field at all nodes should be 2.0
150150
stk::mesh::for_each_entity_run(stkIo.bulk_data(), stk::topology::NODE_RANK,

packages/stk/stk_doc_tests/stk_io/howToCreateAndWriteNodesetOrSideset.cpp

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -76,8 +76,8 @@ void compare_fields(const stk::mesh::BulkData& bulk1,
7676

7777
ASSERT_EQ(entityList1.size(), entityList2.size());
7878

79-
auto field1Data = field1->data<double,stk::mesh::ReadOnly>();
80-
auto field2Data = field2->data<double,stk::mesh::ReadOnly>();
79+
auto field1Data = field1->data<double>();
80+
auto field2Data = field2->data<double>();
8181

8282
for(unsigned i=0; i<entityList1.size(); ++i)
8383
{
@@ -105,7 +105,7 @@ void verify_field_is_valid(const stk::mesh::MetaData &meta,
105105
stk::topology::rank_t rank = meta.mesh_bulk_data().entity_rank(entity);
106106
stk::mesh::FieldBase* field = meta.get_field(rank, fieldName);
107107
ASSERT_TRUE(field != nullptr);
108-
auto fieldData = field->data<double,stk::mesh::ReadOnly>();
108+
auto fieldData = field->data<double>();
109109
auto fieldDataForEntity = fieldData.entity_values(entity);
110110
const unsigned numComponents = fieldDataForEntity.num_components();
111111
ASSERT_EQ(fieldLength, numComponents);

packages/stk/stk_doc_tests/stk_io/howToWriteRestartWithEdges.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -67,7 +67,7 @@ TEST(StkIoHowTo, WriteRestartWithEdges)
6767
stk::mesh::EntityVector edges;
6868
stk::mesh::get_entities(*bulk, stk::topology::EDGE_RANK, edges);
6969

70-
auto edgeFieldData = edgeField.data<stk::mesh::ReadOnly>();
70+
auto edgeFieldData = edgeField.data();
7171

7272
for(auto edge : edges) {
7373
auto data = edgeFieldData.entity_values(edge);

0 commit comments

Comments
 (0)