26#define NODE_EDGES(X_RO, X_RW) \
28 X_RO(shamrock::solvergraph::ScalarEdge<Tscal>, gpart_mass) \
31 X_RO(shamrock::solvergraph::Indexes<u32>, part_counts) \
32 X_RO(shamrock::solvergraph::Indexes<u32>, part_counts_with_ghost) \
35 X_RO(shamrock::solvergraph::IFieldSpan<Tvec>, xyz) \
36 X_RO(shamrock::solvergraph::IFieldSpan<Tscal>, hpart) \
37 X_RO(shamrock::solvergraph::IFieldSpan<Tscal>, omega) \
38 X_RO(shamrock::solvergraph::IFieldSpan<Tscal>, pressure) \
41 X_RO(shammodels::sph::solvergraph::NeighCache, neigh_cache) \
44 X_RW(shamrock::solvergraph::IFieldSpan<Tvec>, grad_P_on_rho)
48 template<
class Tvec,
template<
class>
class SPHKernel>
51 using Tscal = shambase::VecComponent<Tvec>;
53 static constexpr Tscal kernel_radius = SPHKernel<Tscal>::Rkern;
56 NodeComputePressureGrad() {}
58 EXPAND_NODE_EDGES(NODE_EDGES)
62 inline virtual std::string
_impl_get_label()
const {
return "ComputePressureGrad"; };
virtual std::string _impl_get_label() const
get the label of the node
void _impl_evaluate_internal()
evaluate the node
virtual std::string _impl_get_tex() const
get the tex of the node
Inode is node between data edges, takes multiple inputs, multiple outputs.
namespace for the sph model modules