Branch data Line data Source code
1 : : // ***************************************************************************** 2 : : /*! 3 : : \file src/Control/Tags.hpp 4 : : \copyright 2012-2015 J. Bakosi, 5 : : 2016-2018 Los Alamos National Security, LLC., 6 : : 2019-2021 Triad National Security, LLC. 7 : : All rights reserved. See the LICENSE file for details. 8 : : \brief Tags 9 : : \details Tags are unique types, used for metaprogramming. 10 : : */ 11 : : // ***************************************************************************** 12 : : #ifndef Tags_h 13 : : #define Tags_h 14 : : 15 : : #include <string> 16 : : #include "TaggedTuple.hpp" 17 : : 18 : : //! Tags used as unique-type labels for compile-time code-generation 19 : : namespace tag { 20 : : 21 : : struct low {}; 22 : : struct high {}; 23 [ + - ]: 189 : struct io { static std::string name() { return "io"; } }; 24 [ + - ]: 189 : struct quiescence { static std::string name() { return "quiescence"; } }; 25 [ + - ]: 189 : struct trace { static std::string name() { return "trace"; } }; 26 [ + - ]: 189 : struct version { static std::string name() { return "version"; } }; 27 [ + - ]: 189 : struct license { static std::string name() { return "license"; } }; 28 [ + - ]: 189 : struct input { static std::string name() { return "input"; } }; 29 [ + - ]: 189 : struct output { static std::string name() { return "output"; } }; 30 [ + - ]: 189 : struct screen { static std::string name() { return "screen"; } }; 31 [ + - ]: 189 : struct restart { static std::string name() { return "restart"; } }; 32 [ + - ]: 189 : struct nrestart { static std::string name() { return "nrestart"; } }; 33 [ + - ]: 189 : struct diag { static std::string name() { return "diag"; } }; 34 : : struct history { static std::string name() { return "history"; } }; 35 : : struct evalLB {}; 36 [ + - ]: 189 : struct verbose { static std::string name() { return "verbose"; } }; 37 [ + - ]: 189 : struct nonblocking { static std::string name() { return "nonblocking"; } }; 38 [ + - ]: 189 : struct benchmark { static std::string name() { return "benchmark"; } }; 39 : : struct lboff {}; 40 [ + - ]: 189 : struct feedback { static std::string name() { return "feedback"; } }; 41 : : struct reorder { static std::string name() { return "reorder"; } }; 42 [ + - ]: 189 : struct lbfreq { static std::string name() { return "lbfreq"; } }; 43 [ + - ]: 189 : struct rsfreq { static std::string name() { return "rsfreq"; } }; 44 : : struct pdf { static std::string name() { return "pdf"; } }; 45 : : struct nchare {}; 46 : : struct bounds {}; 47 : : struct ordinary {}; 48 : : struct central {}; 49 : : struct binsize { static std::string name() { return "binsize"; } }; 50 : : struct extent { static std::string name() { return "extent"; } }; 51 : : struct tolderef { static std::string name() { return "tolderef"; } }; 52 : : struct partitioner { static std::string name() { return "partitioner"; } }; 53 : : struct partitioned { static std::string name() { return "partitioned"; } }; 54 : : struct initpolicy { static std::string name() { return "initpolicy"; } }; 55 : : struct coeffpolicy { static std::string name() { return "coeffpolicy"; } }; 56 : : struct montecarlo {}; 57 : : struct matched {}; 58 : : struct compatibility {}; 59 : : struct bndint {}; 60 : : struct part { static std::string name() { return "part"; } }; 61 [ + - ]: 189 : struct particles { static std::string name() { return "particles"; } }; 62 : : struct centroid {}; 63 : : struct tty { static std::string name() { return "tty"; } }; 64 : : struct dump {}; 65 : : struct plot {}; 66 : : struct glob {}; 67 [ + - ]: 189 : struct control { static std::string name() { return "control"; } }; 68 : : struct stat { static std::string name() { return "stat"; } }; 69 : : struct field { static std::string name() { return "field"; } }; 70 [ + - ]: 189 : struct surface { static std::string name() { return "surface"; } }; 71 : : struct b { static std::string name() { return "b"; } }; 72 : : struct S { static std::string name() { return "S"; } }; 73 : : struct r { static std::string name() { return "r"; } }; 74 : : struct c { static std::string name() { return "c"; } }; 75 : : struct c0 { static std::string name() { return "c0"; } }; 76 : : struct c1 {}; 77 : : struct c2 {}; 78 : : struct c3 { static std::string name() { return "c3"; } }; 79 : : struct c4 { static std::string name() { return "c4"; } }; 80 : : struct mean { static std::string name() { return "mean"; } }; 81 : : struct cov { static std::string name() { return "cov"; } }; 82 : : struct timescale { static std::string name() { return "timescale"; } }; 83 [ + - ]: 189 : struct virtualization {static std::string name() { return "virtualization"; }}; 84 : : struct hydro {}; 85 : : struct mix {}; 86 : : struct frequency {}; 87 : : struct mixrate {}; 88 : : struct selected { static std::string name() { return "selected"; } }; 89 : : struct discr { static std::string name() { return "discr"; } }; 90 : : struct component { static std::string name() { return "component"; } }; 91 : : struct iter { static std::string name() { return "iter"; } }; 92 : : struct time { static std::string name() { return "time"; } }; 93 : : struct range { static std::string name() { return "range"; } }; 94 : : struct param { static std::string name() { return "param"; } }; 95 : : struct init { static std::string name() { return "init"; } }; 96 : : struct solve { static std::string name() { return "solve"; } }; 97 [ + - ]: 189 : struct chare { static std::string name() { return "chare"; } }; 98 : : struct battery { static std::string name() { return "battery"; } }; 99 : : struct generator {}; 100 [ + - ]: 189 : struct help { static std::string name() { return "help"; } }; 101 [ + - ]: 189 : struct helpctr { static std::string name() { return "helpctr"; } }; 102 : : struct helpkw {}; 103 : : struct cmdinfo {}; 104 : : struct group { static std::string name() { return "group"; } }; 105 : : struct esup {}; 106 : : struct psup {}; 107 : : struct gid {}; 108 : : struct position_id { static std::string name() { return "position_id"; } }; 109 : : struct velocity_id { static std::string name() { return "velocity_id"; } }; 110 : : struct dissipation_id { 111 : : static std::string name() { return "dissipation_id"; } }; 112 : : struct mixmassfracbeta_id { 113 : : static std::string name() { return "mixmassfracbeta_id"; } }; 114 : : struct edge { static std::string name() { return "edge"; } }; 115 : : struct com {}; 116 : : struct queried {}; 117 : : struct responded {}; 118 : : struct refinserted {}; 119 : : struct discinserted {}; 120 : : struct disccreated {}; 121 : : struct workinserted {}; 122 : : struct distributed {}; 123 : : struct load {}; 124 : : struct bcast {}; 125 : : struct elem {}; 126 : : struct avecost {}; 127 : : struct stdcost {}; 128 : : struct update {}; 129 : : struct ch {}; 130 : : struct pe {}; 131 : : struct it {}; 132 : : struct node {}; 133 : : 134 : : DEFTAG(cmd); 135 : : DEFTAG(ctrinfo); 136 : : 137 : : DEFTAG(title); 138 : : DEFTAG(nstep); 139 : : DEFTAG(term); 140 : : DEFTAG(t0); 141 : : DEFTAG(dt); 142 : : DEFTAG(cfl); 143 : : DEFTAG(ttyi); 144 : : DEFTAG(steady_state); 145 : : DEFTAG(residual); 146 : : DEFTAG(rescomp); 147 : : DEFTAG(partitioning); 148 : : DEFTAG(pelocal_reorder); 149 : : DEFTAG(operator_reorder); 150 : : DEFTAG(scheme); 151 : : DEFTAG(ndof); 152 : : DEFTAG(rdof); 153 : : DEFTAG(flux); 154 : : DEFTAG(lowspeed_kp); 155 : : DEFTAG(limiter); 156 : : DEFTAG(cweight); 157 : : DEFTAG(shock_detector_coeff); 158 : : DEFTAG(accuracy_test); 159 : : DEFTAG(limsol_projection); 160 : : DEFTAG(imex_runge_kutta); 161 : : DEFTAG(imex_maxiter); 162 : : DEFTAG(imex_reltol); 163 : : DEFTAG(imex_abstol); 164 : : 165 : : DEFTAG(ncomp); 166 : : DEFTAG(pde); 167 : : DEFTAG(problem); 168 : : DEFTAG(transport); 169 : : DEFTAG(compflow); 170 : : DEFTAG(multimat); 171 : : DEFTAG(multispecies); 172 : : DEFTAG(diffusivity); 173 : : DEFTAG(lambda); 174 : : DEFTAG(u0); 175 : : DEFTAG(alpha); 176 : : DEFTAG(beta); 177 : : DEFTAG(betax); 178 : : DEFTAG(betay); 179 : : DEFTAG(betaz); 180 : : DEFTAG(r0); 181 : : DEFTAG(p0); 182 : : DEFTAG(ce); 183 : : DEFTAG(kappa); 184 : : DEFTAG(nmat); 185 : : DEFTAG(nspec); 186 : : DEFTAG(prelax); 187 : : DEFTAG(prelax_timescale); 188 : : DEFTAG(intsharp); 189 : : DEFTAG(intsharp_param); 190 : : DEFTAG(rho0constraint); 191 : : DEFTAG(dt_sos_massavg); 192 : : DEFTAG(viscous); 193 : : DEFTAG(depvar); 194 : : DEFTAG(sys); 195 : : DEFTAG(physics); 196 : : 197 : : DEFTAG(material); 198 : : DEFTAG(eos); 199 : : DEFTAG(id); 200 : : DEFTAG(gamma); 201 : : DEFTAG(pstiff); 202 : : DEFTAG(w_gru); 203 : : DEFTAG(A_jwl); 204 : : DEFTAG(B_jwl); 205 : : DEFTAG(C_jwl); 206 : : DEFTAG(R1_jwl); 207 : : DEFTAG(R2_jwl); 208 : : DEFTAG(rho0_jwl); 209 : : DEFTAG(de_jwl); 210 : : DEFTAG(rhor_jwl); 211 : : DEFTAG(Tr_jwl); 212 : : DEFTAG(Pr_jwl); 213 : : DEFTAG(mu); 214 : : DEFTAG(cv); 215 : : DEFTAG(k); 216 : : DEFTAG(matidxmap); 217 : : DEFTAG(eosidx); 218 : : DEFTAG(matidx); 219 : : DEFTAG(solidx); 220 : : DEFTAG(yield_stress); 221 : : 222 : : DEFTAG(field_output); 223 : : DEFTAG(interval); 224 : : DEFTAG(time_interval); 225 : : DEFTAG(time_range); 226 : : DEFTAG(refined); 227 : : DEFTAG(elemvar); 228 : : DEFTAG(elemalias); 229 : : DEFTAG(nodevar); 230 : : DEFTAG(nodealias); 231 : : DEFTAG(filetype); 232 : : DEFTAG(sideset); 233 : : DEFTAG(outvar); 234 : : DEFTAG(diagnostics); 235 : : DEFTAG(error); 236 : : DEFTAG(format); 237 : : DEFTAG(precision); 238 : : DEFTAG(history_output); 239 : : DEFTAG(point); 240 : : DEFTAG(coord); 241 : : 242 : : DEFTAG(ale); 243 : : DEFTAG(smoother); 244 : : DEFTAG(mesh_velocity); 245 : : DEFTAG(mesh_motion); 246 : : DEFTAG(meshforce); 247 : : DEFTAG(dvcfl); 248 : : DEFTAG(vortmult); 249 : : DEFTAG(maxit); 250 : : DEFTAG(tolerance); 251 : : DEFTAG(move); 252 : : DEFTAG(fntype); 253 : : DEFTAG(fn); 254 : : 255 : : DEFTAG(amr); 256 : : DEFTAG(t0ref); 257 : : DEFTAG(dtref); 258 : : DEFTAG(dtref_uniform); 259 : : DEFTAG(dtfreq); 260 : : DEFTAG(maxlevels); 261 : : DEFTAG(initial); 262 : : DEFTAG(edgelist); 263 : : DEFTAG(coords); 264 : : DEFTAG(xminus); 265 : : DEFTAG(xplus); 266 : : DEFTAG(yminus); 267 : : DEFTAG(yplus); 268 : : DEFTAG(zminus); 269 : : DEFTAG(zplus); 270 : : DEFTAG(refvar); 271 : : DEFTAG(tol_refine); 272 : : DEFTAG(tol_derefine); 273 : : DEFTAG(pref); 274 : : DEFTAG(indicator); 275 : : DEFTAG(ndofmax); 276 : : DEFTAG(tolref); 277 : : 278 : : DEFTAG(bc); 279 : : DEFTAG(mesh); 280 : : DEFTAG(dirichlet); 281 : : DEFTAG(symmetry); 282 : : DEFTAG(inlet); 283 : : DEFTAG(outlet); 284 : : DEFTAG(farfield); 285 : : DEFTAG(extrapolate); 286 : : DEFTAG(noslipwall); 287 : : DEFTAG(stag_point); 288 : : DEFTAG(radius); 289 : : DEFTAG(timedep); 290 : : 291 : : DEFTAG(ic); 292 : : DEFTAG(materialid); 293 : : DEFTAG(pressure); 294 : : DEFTAG(temperature); 295 : : DEFTAG(velocity); 296 : : DEFTAG(mass_fractions); 297 : : DEFTAG(box); 298 : : DEFTAG(meshblock); 299 : : DEFTAG(blockid); 300 : : DEFTAG(volume); 301 : : DEFTAG(mass); 302 : : DEFTAG(density); 303 : : DEFTAG(energy); 304 : : DEFTAG(energy_content); 305 : : DEFTAG(xmin); 306 : : DEFTAG(xmax); 307 : : DEFTAG(ymin); 308 : : DEFTAG(ymax); 309 : : DEFTAG(zmin); 310 : : DEFTAG(zmax); 311 : : DEFTAG(orientation); 312 : : DEFTAG(initiate); 313 : : DEFTAG(init_time); 314 : : DEFTAG(front_width); 315 : : DEFTAG(front_speed); 316 : : 317 : : DEFTAG(filename); 318 : : DEFTAG(location); 319 : : DEFTAG(transfer); 320 : : 321 : : struct BirthdaySpacings {}; 322 : : 323 : : } // tag:: 324 : : 325 : : #endif // Tags_h