naaice_tug_input/eval/bench_defs.hpp.in
2024-04-04 18:24:48 +02:00

105 lines
3.2 KiB
C++

#ifndef _BENCH_DEFS_HPP
#define _BENCH_DEFS_HPP
#include <string>
#include <vector>
struct init_boundary {
const std::vector<int> north_const;
const std::vector<int> south_const;
const std::vector<int> east_const;
const std::vector<int> west_const;
const std::vector<double> values;
};
struct bench_input {
const std::string csv_file_init;
const std::string csv_alpha_x;
const std::string csv_alpha_y;
const std::size_t ncols;
const std::size_t nrows;
const double s_x;
const double s_y;
const init_boundary boundary;
const double timestep;
const int iterations;
};
static bench_input barite_200_input = {
.csv_file_init = "@BARITE_200_BENCH@/barite_200_init.csv",
.csv_alpha_x = "@BARITE_200_BENCH@/alpha_x.csv",
.csv_alpha_y = "@BARITE_200_BENCH@/alpha_y.csv",
.ncols = 200,
.nrows = 200,
.s_x = 1,
.s_y = 1,
.boundary = {.north_const = {0, 1, 2, 3, 4},
.south_const = {},
.east_const = {},
.west_const = {0, 1, 2, 3, 4},
.values = {111.0124, 55.50622, -3.336970273297e-08, 0.1, 0.2,
.0, .0}},
.timestep = 1000,
.iterations = 50
};
// static bench_input barite_large_input = {
// .csv_file_init = "@BARITE_LARGE_BENCH@/barite_large.csv",
// .csv_alpha_x = "@BARITE_LARGE_BENCH@/alpha_x.csv",
// .csv_alpha_y = "@BARITE_LARGE_BENCH@/alpha_y.csv",
// .ncols = 2000,
// .nrows = 1000,
// .s_x = 20,
// .s_y = 10,
// .boundary = {.north_const = {},
// .south_const = {},
// .east_const = {},
// .west_const = {},
// .values = {0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0}},
// .timestep = 50,
// .iterations = 10
// };
// static const std::vector<int> gen_vec(int elems) {
// std::vector<int> vec(elems);
// for (int i = 0; i < elems; i++) {
// vec[i] = i;
// }
// return vec;
// }
// static bench_input surfex_input = {
// .csv_file_init = "@SURFEX_BENCH@/surfex.csv",
// .csv_alpha_x = "@SURFEX_BENCH@/alpha_x.csv",
// .csv_alpha_y = "@SURFEX_BENCH@/alpha_y.csv",
// .ncols = 1000,
// .nrows = 1000,
// .s_x = 100,
// .s_y = 100,
// .boundary = {.north_const = gen_vec(500),
// .south_const = {},
// .east_const = {},
// .west_const = {},
// .values = {0.147659686316291, 0.0739242798146046,
// 7.46361643222701e-20, 2.92438561098248e-21,
// 2.65160558871092e-06, 2.89001071336443e-05,
// 0.000429291158114428, 1.90823391198114e-07,
// 3.10832423034763e-12, 2.7888235127385e-15,
// 2.5301787e-06, 2.31391999937907e-05,
// 0.00036746969, 1.01376078438546e-14,
// 1.42247026981542e-19, 9.49422092568557e-18,
// 2.19812504654191e-05, 6.01218519999999e-07,
// 4.82255946569383e-12, 5.49050615347901e-13,
// 1.32462838991902e-09}},
// .timestep = 200,
// .iterations = 10
// };
#endif // _BENCH_DEFS_HPP