Shamrock 2025.10.0
Astrophysical Code
Loading...
Searching...
No Matches
FieldNames.hpp
Go to the documentation of this file.
1// -------------------------------------------------------//
2//
3// SHAMROCK code for hydrodynamics
4// Copyright (c) 2021-2026 Timothée David--Cléris <tim.shamrock@proton.me>
5// SPDX-License-Identifier: CeCILL Free Software License Agreement v2.1
6// Shamrock is licensed under the CeCILL 2.1 License, see LICENSE for more information
7//
8// -------------------------------------------------------//
9
10#pragma once
11
27namespace shammodels::gsph::names {
28
29 // ========================================================================
30 // Common fields - used by ALL physics modes
31 // ========================================================================
32 namespace common {
33 inline constexpr const char *xyz = "xyz";
34 inline constexpr const char *hpart = "hpart";
35 } // namespace common
36
37 // ========================================================================
38 // Newtonian physics fields
39 // ========================================================================
40 namespace newtonian {
41
43 inline constexpr const char *vxyz = "vxyz";
44
46 inline constexpr const char *axyz = "axyz";
47
49 inline constexpr const char *uint = "uint";
50
52 inline constexpr const char *duint = "duint";
53
55 inline constexpr const char *density = "density";
56
58 inline constexpr const char *pressure = "pressure";
59
61 inline constexpr const char *soundspeed = "soundspeed";
62
64 inline constexpr const char *omega = "omega";
65
67 inline constexpr const char *grad_density = "grad_density";
68
70 inline constexpr const char *grad_pressure = "grad_pressure";
71
73 inline constexpr const char *grad_vx = "grad_vx";
74
76 inline constexpr const char *grad_vy = "grad_vy";
77
79 inline constexpr const char *grad_vz = "grad_vz";
80 } // namespace newtonian
81
82 // ========================================================================
83 // Internal temporary field names (for compute fields)
84 // ========================================================================
85 namespace internal {
87 inline constexpr const char *old_axyz = "old_axyz";
88
90 inline constexpr const char *old_duint = "old_duint";
91 } // namespace internal
92
93} // namespace shammodels::gsph::names
94
95// ============================================================================
96// Solvergraph edge names
97// ============================================================================
98namespace shammodels::gsph::edges {
99
101 inline constexpr const char *part_counts = "part_counts";
102
104 inline constexpr const char *part_counts_with_ghost = "part_counts_with_ghost";
105
107 inline constexpr const char *patch_rank_owner = "patch_rank_owner";
108
110 inline constexpr const char *neigh_cache = "neigh_cache";
111
113 inline constexpr const char *sizes = "sizes";
114
116 inline constexpr const char *positions_with_ghosts = "part_pos";
117
119 inline constexpr const char *hpart_with_ghosts = "h_part";
120
122 inline constexpr const char *pos_merged = "pos";
123
125 inline constexpr const char *h_old = "h_old";
126
128 inline constexpr const char *h_new = "h_new";
129
131 inline constexpr const char *eps_h = "eps_h";
132
133} // namespace shammodels::gsph::edges
constexpr const char * grad_pressure
Gradient of pressure \nabla P (for MUSCL reconstruction)
constexpr const char * grad_vx
Gradient of velocity x-component \nabla v_x (for MUSCL reconstruction)
constexpr const char * duint
Time derivative of internal energy du/dt.
constexpr const char * axyz
3-acceleration field
constexpr const char * uint
Specific internal energy u.
constexpr const char * patch_rank_owner
Patch rank ownership.
constexpr const char * vxyz
3-velocity field
constexpr const char * pos_merged
Position merged references (for h-iteration)
constexpr const char * part_counts_with_ghost
Particle counts including ghosts.
constexpr const char * old_axyz
Old acceleration (for corrector step)
constexpr const char * grad_vz
Gradient of velocity z-component \nabla v_z (for MUSCL reconstruction)
constexpr const char * xyz
Position field (3D coordinates)
constexpr const char * density
Density \rho (derived from h)
constexpr const char * eps_h
Epsilon h references (for h-iteration convergence)
constexpr const char * h_new
New smoothing length references (for h-iteration)
constexpr const char * hpart_with_ghosts
Smoothing length references with ghosts.
constexpr const char * old_duint
Old internal energy derivative (for corrector step)
constexpr const char * h_old
Old smoothing length references (for h-iteration)
constexpr const char * grad_vy
Gradient of velocity y-component \nabla v_y (for MUSCL reconstruction)
constexpr const char * sizes
Temporary sizes for h-iteration.
constexpr const char * part_counts
Particle counts per patch.
constexpr const char * positions_with_ghosts
Position references with ghosts.
constexpr const char * grad_density
Gradient of density \nabla \rho (for MUSCL reconstruction)
constexpr const char * soundspeed
Sound speed c_s (derived from EOS)
constexpr const char * pressure
Pressure P (derived from EOS)
constexpr const char * hpart
Smoothing length field.
constexpr const char * neigh_cache
Neighbor cache.
constexpr const char * omega
Grad-h correction factor \Omega.