Function ImmersX::Vascularization::generate(const dealii::Triangulation<3>&, const dealii::Mapping<3>&, const NetworkData&, const Parameters&, MPI_Comm)¶
Defined in File generation.h
Function Documentation¶
-
GenerationResult ImmersX::Vascularization::generate(const dealii::Triangulation<3> &background, const dealii::Mapping<3> &mapping, const NetworkData &initial, const Parameters ¶meters, MPI_Comm communicator)¶
Grow a CCO tree from an initial seed without changing the input.
The collective path starts an arterial tree from an empty input on its native background owner and grows it across partitions. Imported arterial attachments are selected and started collectively at their native node owners. Venous growth starts collectively from real outlets or selected input venous leaves, with exclusive common-territory assignments. A new venous port is reserved before arterial growth. Terminal-count calibration uses global volume and arterial or dual coverage, with the same count decisions on all processes. All paths use a degree-one mapping. Arterial endpoints define the common territories; venous endpoints are separated from them by the configured distance. All forests use the same CCO engine, and all new vessels are checked against every system. Portal growth targets the same territories, with its own separation and supply fraction. Every input node and vessel stays fixed; selected tissue terminals become attachment identities. Every new vessel wall, including rounded ends and clearance, must lie inside the prepared background. An explicit inward port normal permits a planar surface section: the envelope is cut at that plane, and the opposite junction/end must clear it by the full radius plus clearance. The normal must match an actual planar boundary face and point into the domain. Imported exterior portions are preserved. Ambiguous boundary proximity at the finite geometry budget is rejected conservatively. Optional volume/coverage targets trigger a bounded, deterministic search over terminal counts without monotonicity pruning. A failed calibration returns an invalid result, including its best valid trial when available, for diagnostics only; it must not be adopted.