Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
12 changes: 6 additions & 6 deletions scripts/install/common/dependency_versions.sh
Original file line number Diff line number Diff line change
Expand Up @@ -2,25 +2,25 @@
# Central version control for all dependencies

# Portability libraries
export CAMP_VER="v2025.09.2"
export RAJA_VER="v2025.09.1"
export CAMP_VER="v2025.12.0"
export RAJA_VER="v2025.12.2"
#export UMPIRE_VER="v2025.09.0"
# For now we need something a little pass the v2025.09.0 release
# for Umpire as we need a small bug fix for any build with Umpire
export UMPIRE_VER="54a1909e91ce9604328977974e9b1002bf9f8781"
export CHAI_VER="v2025.09.1"
export UMPIRE_VER="v2025.12.0"
export CHAI_VER="v2025.12.0"

# Material models
export EXACMECH_REPO="https://github.com/LLNL/ExaCMech.git"
export EXACMECH_BRANCH="develop"

# FEM infrastructure
export HYPRE_VER="v2.32.0"
export HYPRE_VER="v3.1.0"
export METIS_VER="5.1.0"
export METIS_URL="https://mfem.github.io/tpls/metis-${METIS_VER}.tar.gz"

export MFEM_REPO="https://github.com/rcarson3/mfem.git"
export MFEM_BRANCH="exaconstit-dev"
export MFEM_BRANCH="exaconstit-latest"

# Main application
export EXACONSTIT_REPO="https://github.com/llnl/ExaConstit.git"
Expand Down
2 changes: 2 additions & 0 deletions src/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,7 @@ set(EXACONSTIT_HEADERS
postprocessing/mechanics_lightup.hpp
sim_state/simulation_state.hpp
solvers/mechanics_solver.hpp
solvers/trust_region_solver.hpp
utilities/dynamic_function_loader.hpp
utilities/mechanics_kernels.hpp
utilities/mechanics_log.hpp
Expand Down Expand Up @@ -59,6 +60,7 @@ set(EXACONSTIT_SOURCES
postprocessing/mechanics_lightup.cpp
sim_state/simulation_state.cpp
solvers/mechanics_solver.cpp
solvers/trust_region_solver.cpp
utilities/mechanics_kernels.cpp
utilities/unified_logger.cpp
)
Expand Down
2 changes: 1 addition & 1 deletion src/boundary_conditions/BCData.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -64,7 +64,7 @@ void BCData::SetScales() {
}
}

void BCData::GetComponents(int id, mfem::Array<bool>& component) {
void BCData::GetComponents(int id, std::array<bool, 3>& component) {
switch (id) {
case 0:
component[0] = false;
Expand Down
3 changes: 2 additions & 1 deletion src/boundary_conditions/BCData.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@
#include "mfem.hpp"
#include "mfem/linalg/vector.hpp"

#include <array>
#include <fstream>

/**
Expand Down Expand Up @@ -101,6 +102,6 @@ class BCData {
* - id = 6: (true, false, true)
* - id = 7: (true, true, true)
*/
static void GetComponents(int id, mfem::Array<bool>& component);
static void GetComponents(int id, std::array<bool, 3>& component);
};
#endif
28 changes: 11 additions & 17 deletions src/boundary_conditions/BCManager.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -13,14 +13,12 @@ void BCManager::UpdateBCData(std::unordered_map<std::string, mfem::Array<int>>&
ess_bdr["total"] = 0;
scale = 0.0;

auto ess_comp = map_ess_comp["total"].find(step)->second;
auto ess_id = map_ess_id["total"].find(step)->second;
const auto& ess_comp = map_ess_comp["total"].find(step)->second;
const auto& ess_id = map_ess_id["total"].find(step)->second;

mfem::Array<bool> cmp_row;
cmp_row.SetSize(3);
std::array<bool, 3> cmp_row;

component["total"] = false;
cmp_row = false;

for (size_t i = 0; i < ess_id.size(); ++i) {
// set the active boundary attributes
Expand Down Expand Up @@ -48,19 +46,17 @@ void BCManager::UpdateBCData(mfem::Array<int>& ess_bdr,

// The size here is set explicitly
component.SetSize(ess_bdr.Size(), 3);
mfem::Array<bool> cmp_row;
cmp_row.SetSize(3);
std::array<bool, 3> cmp_row;

component = false;
cmp_row = false;

if (map_ess_vel.find(step) == map_ess_vel.end()) {
return;
}

auto ess_vel = map_ess_vel.find(step)->second;
auto ess_comp = map_ess_comp["ess_vel"].find(step)->second;
auto ess_id = map_ess_id["ess_vel"].find(step)->second;
const auto& ess_vel = map_ess_vel.find(step)->second;
const auto& ess_comp = map_ess_comp["ess_vel"].find(step)->second;
const auto& ess_id = map_ess_id["ess_vel"].find(step)->second;

for (size_t i = 0; i < ess_id.size(); ++i) {
// set the active boundary attributes
Expand Down Expand Up @@ -111,19 +107,17 @@ void BCManager::UpdateBCData(mfem::Array<int>& ess_bdr,

// The size here is set explicitly
component.SetSize(ess_bdr.Size(), 3);
mfem::Array<bool> cmp_row;
cmp_row.SetSize(3);
std::array<bool, 3> cmp_row;

component = false;
cmp_row = false;

if (map_ess_vgrad.find(step) == map_ess_vgrad.end()) {
return;
}

auto ess_vgrad = map_ess_vgrad.find(step)->second;
auto ess_comp = map_ess_comp["ess_vgrad"].find(step)->second;
auto ess_id = map_ess_id["ess_vgrad"].find(step)->second;
const auto& ess_vgrad = map_ess_vgrad.find(step)->second;
const auto& ess_comp = map_ess_comp["ess_vgrad"].find(step)->second;
const auto& ess_id = map_ess_id["ess_vgrad"].find(step)->second;

for (size_t i = 0; i < ess_vgrad.size(); ++i) {
data[i] = ess_vgrad.at(i);
Expand Down
Loading
Loading