updated find_fix to get_fix_by_id for kokkos_omp test

This commit is contained in:
alphataubio
2024-08-04 01:53:08 -04:00
parent 84afef94f6
commit 0e9a419593

View File

@ -875,37 +875,38 @@ TEST(FixTimestep, kokkos_omp)
EXPECT_POSITIONS("run_pos (normal run, verlet)", lmp->atom, test_config.run_pos, epsilon); EXPECT_POSITIONS("run_pos (normal run, verlet)", lmp->atom, test_config.run_pos, epsilon);
EXPECT_VELOCITIES("run_vel (normal run, verlet)", lmp->atom, test_config.run_vel, epsilon); EXPECT_VELOCITIES("run_vel (normal run, verlet)", lmp->atom, test_config.run_vel, epsilon);
int ifix = lmp->modify->find_fix("test"); auto *ifix = lmp->modify->get_fix_by_id("test");
if (ifix < 0) {
if (!ifix) {
FAIL() << "ERROR: no fix defined with fix ID 'test'\n"; FAIL() << "ERROR: no fix defined with fix ID 'test'\n";
} else { } else {
Fix *fix = lmp->modify->fix[ifix];
if (fix->thermo_virial) { if (ifix->thermo_virial) {
EXPECT_STRESS("run_stress (normal run, verlet)", fix->virial, test_config.run_stress, EXPECT_STRESS("run_stress (normal run, verlet)", ifix->virial, test_config.run_stress,
epsilon); epsilon);
} }
stats.reset(); stats.reset();
// global scalar // global scalar
if (fix->scalar_flag) { if (ifix->scalar_flag) {
double value = fix->compute_scalar(); double value = ifix->compute_scalar();
EXPECT_FP_LE_WITH_EPS(test_config.global_scalar, value, epsilon); EXPECT_FP_LE_WITH_EPS(test_config.global_scalar, value, epsilon);
} }
// global vector // global vector
if (fix->vector_flag) { if (ifix->vector_flag) {
int num = fix->size_vector; int num = ifix->size_vector;
EXPECT_EQ(num, test_config.global_vector.size()); EXPECT_EQ(num, test_config.global_vector.size());
for (int i = 0; i < num; ++i) for (int i = 0; i < num; ++i)
EXPECT_FP_LE_WITH_EPS(test_config.global_vector[i], fix->compute_vector(i), EXPECT_FP_LE_WITH_EPS(test_config.global_vector[i], ifix->compute_vector(i),
epsilon); epsilon);
} }
// check t_target for thermostats // check t_target for thermostats
int dim = -1; int dim = -1;
double *ptr = (double *)fix->extract("t_target", dim); double *ptr = (double *)ifix->extract("t_target", dim);
if ((ptr != nullptr) && (dim == 0)) { if ((ptr != nullptr) && (dim == 0)) {
int ivar = lmp->input->variable->find("t_target"); int ivar = lmp->input->variable->find("t_target");
if (ivar >= 0) { if (ivar >= 0) {
@ -925,31 +926,30 @@ TEST(FixTimestep, kokkos_omp)
EXPECT_POSITIONS("run_pos (restart, verlet)", lmp->atom, test_config.run_pos, epsilon); EXPECT_POSITIONS("run_pos (restart, verlet)", lmp->atom, test_config.run_pos, epsilon);
EXPECT_VELOCITIES("run_vel (restart, verlet)", lmp->atom, test_config.run_vel, epsilon); EXPECT_VELOCITIES("run_vel (restart, verlet)", lmp->atom, test_config.run_vel, epsilon);
ifix = lmp->modify->find_fix("test"); ifix = lmp->modify->get_fix_by_id("test");
if (ifix < 0) { if (!ifix) {
FAIL() << "ERROR: no fix defined with fix ID 'test'\n"; FAIL() << "ERROR: no fix defined with fix ID 'test'\n";
} else { } else {
Fix *fix = lmp->modify->fix[ifix]; if (ifix->thermo_virial) {
if (fix->thermo_virial) { EXPECT_STRESS("run_stress (restart, verlet)", ifix->virial, test_config.run_stress,
EXPECT_STRESS("run_stress (restart, verlet)", fix->virial, test_config.run_stress,
epsilon); epsilon);
} }
stats.reset(); stats.reset();
// global scalar // global scalar
if (fix->scalar_flag) { if (ifix->scalar_flag) {
double value = fix->compute_scalar(); double value = ifix->compute_scalar();
EXPECT_FP_LE_WITH_EPS(test_config.global_scalar, value, epsilon); EXPECT_FP_LE_WITH_EPS(test_config.global_scalar, value, epsilon);
} }
// global vector // global vector
if (fix->vector_flag) { if (ifix->vector_flag) {
int num = fix->size_vector; int num = ifix->size_vector;
EXPECT_EQ(num, test_config.global_vector.size()); EXPECT_EQ(num, test_config.global_vector.size());
for (int i = 0; i < num; ++i) for (int i = 0; i < num; ++i)
EXPECT_FP_LE_WITH_EPS(test_config.global_vector[i], fix->compute_vector(i), EXPECT_FP_LE_WITH_EPS(test_config.global_vector[i], ifix->compute_vector(i),
epsilon); epsilon);
} }
if (print_stats && stats.has_data()) if (print_stats && stats.has_data())
@ -964,31 +964,30 @@ TEST(FixTimestep, kokkos_omp)
EXPECT_POSITIONS("run_pos (rmass, verlet)", lmp->atom, test_config.run_pos, epsilon); EXPECT_POSITIONS("run_pos (rmass, verlet)", lmp->atom, test_config.run_pos, epsilon);
EXPECT_VELOCITIES("run_vel (rmass, verlet)", lmp->atom, test_config.run_vel, epsilon); EXPECT_VELOCITIES("run_vel (rmass, verlet)", lmp->atom, test_config.run_vel, epsilon);
ifix = lmp->modify->find_fix("test"); ifix = lmp->modify->get_fix_by_id("test");
if (ifix < 0) { if (!ifix) {
FAIL() << "ERROR: no fix defined with fix ID 'test'\n"; FAIL() << "ERROR: no fix defined with fix ID 'test'\n";
} else { } else {
Fix *fix = lmp->modify->fix[ifix]; if (ifix->thermo_virial) {
if (fix->thermo_virial) { EXPECT_STRESS("run_stress (rmass, verlet)", ifix->virial, test_config.run_stress,
EXPECT_STRESS("run_stress (rmass, verlet)", fix->virial, test_config.run_stress,
epsilon); epsilon);
} }
stats.reset(); stats.reset();
// global scalar // global scalar
if (fix->scalar_flag) { if (ifix->scalar_flag) {
double value = fix->compute_scalar(); double value = ifix->compute_scalar();
EXPECT_FP_LE_WITH_EPS(test_config.global_scalar, value, epsilon); EXPECT_FP_LE_WITH_EPS(test_config.global_scalar, value, epsilon);
} }
// global vector // global vector
if (fix->vector_flag) { if (ifix->vector_flag) {
int num = fix->size_vector; int num = ifix->size_vector;
EXPECT_EQ(num, test_config.global_vector.size()); EXPECT_EQ(num, test_config.global_vector.size());
for (int i = 0; i < num; ++i) for (int i = 0; i < num; ++i)
EXPECT_FP_LE_WITH_EPS(test_config.global_vector[i], fix->compute_vector(i), EXPECT_FP_LE_WITH_EPS(test_config.global_vector[i], ifix->compute_vector(i),
epsilon); epsilon);
} }
if (print_stats && stats.has_data()) if (print_stats && stats.has_data())