New model GSoC2026 - #24
Conversation
… mappings in some BioDynamo versions
…ic a cylindrical capsule
…python draft file to analyse the csv
…oth the basal necrosis probability and the factor
… cup both with and without aging factor. fitting oxygen_saturation_for_proliferation
…ndaries z and generalization of CART cell spwan
| sparam->cylindrical_tumor_radius, sparam->cylindrical_tumor_height, | ||
| sparam->initial_number_of_cylindrical_tumor_cells); | ||
| } else { | ||
| Log::Error("Simulate", "Unknown tumor shape, please use 'sphere' or 'cylinder'."); |
There was a problem hiding this comment.
warning: no header providing "bdm::Log" is directly included [misc-include-cleaner]
src/cart_tumor.cc:39:
- #include <cstdint>
+ #include "core/util/log.h"
+ #include <cstdint>|
|
||
| namespace bdm { | ||
|
|
||
| CylinderWallBoundaryCondition::CylinderWallBoundaryCondition(real_t value, |
There was a problem hiding this comment.
warning: no header providing "bdm::real_t" is directly included [misc-include-cleaner]
src/diffusion/cylinder_wall_boundary_condition.cc:21:
+ #include "core/real_t.h"| */ | ||
|
|
||
| #ifndef CYLINDER_WALL_BOUNDARY_CONDITION_H_ | ||
| #define CYLINDER_WALL_BOUNDARY_CONDITION_H_ |
There was a problem hiding this comment.
warning: header guard does not follow preferred style [llvm-header-guard]
| #define CYLINDER_WALL_BOUNDARY_CONDITION_H_ | |
| #ifndef GITHUB_WORKSPACE_SRC_DIFFUSION_CYLINDER_WALL_BOUNDARY_CONDITION_H | |
| #define GITHUB_WORKSPACE_SRC_DIFFUSION_CYLINDER_WALL_BOUNDARY_CONDITION_H |
src/diffusion/cylinder_wall_boundary_condition.h:73:
+ endif // GITHUB_WORKSPACE_SRC_DIFFUSION_CYLINDER_WALL_BOUNDARY_CONDITION_H| CylinderWallBoundaryCondition(real_t value, real_t min_z, real_t max_z); | ||
|
|
||
| /// @brief see BoundaryCondition::Evaluate() | ||
| real_t Evaluate(real_t x, real_t y, real_t z, real_t time) const final; |
There was a problem hiding this comment.
warning: function 'Evaluate' should be marked [[nodiscard]] [modernize-use-nodiscard]
| real_t Evaluate(real_t x, real_t y, real_t z, real_t time) const final; | |
| e()[[nodiscard]] |
| /// Upper z-bound (inclusive) where the boundary condition is active | ||
| real_t max_z_ = 0.0; | ||
|
|
||
| BDM_CLASS_DEF_OVERRIDE(CylinderWallBoundaryCondition, 1); |
There was a problem hiding this comment.
warning: do not use 'else' after 'return' [llvm-else-after-return]
| BDM_CLASS_DEF_OVERRIDE(CylinderWallBoundaryCondition, 1); | |
| 0; |
Additional context
biodynamo/build/include/core/util/root.h:27: expanded from macro 'BDM_CLASS_DEF_OVERRIDE'
ClassDefOverride(class_name, class_version_id)
^biodynamo/build/third_party/root/include/Rtypes.h:341: expanded from macro 'ClassDefOverride'
_ClassDefOutline_(name,id,,override) \
^biodynamo/build/third_party/root/include/Rtypes.h:303: expanded from macro 'ClassDefOutline'
_ClassDefBase_(name,id, virtual_keyword, overrd) \
^biodynamo/build/third_party/root/include/Rtypes.h:279: expanded from macro 'ClassDefBase'
} else if (recurseBlocker == 1) { \
^| /// Upper z-bound (inclusive) where the boundary condition is active | ||
| real_t max_z_ = 0.0; | ||
|
|
||
| BDM_CLASS_DEF_OVERRIDE(CylinderWallBoundaryCondition, 1); |
There was a problem hiding this comment.
warning: use c++17 style variable templates [modernize-type-traits]
0;
^Additional context
biodynamo/build/include/core/util/root.h:27: expanded from macro 'BDM_CLASS_DEF_OVERRIDE'
ClassDefOverride(class_name, class_version_id)
^biodynamo/build/third_party/root/include/Rtypes.h:341: expanded from macro 'ClassDefOverride'
_ClassDefOutline_(name,id,,override) \
^biodynamo/build/third_party/root/include/Rtypes.h:303: expanded from macro 'ClassDefOutline'
_ClassDefBase_(name,id, virtual_keyword, overrd) \
^biodynamo/build/third_party/root/include/Rtypes.h:272: expanded from macro 'ClassDefBase'
static_assert(std::is_integral<decltype(id)>::value, \
^| if (jfile.contains("bounded_space_min_allowed_z")) { | ||
| bounded_space_min_allowed_z = jfile["bounded_space_min_allowed_z"].get<double>(); | ||
| } else { | ||
| bounded_space_min_allowed_z = -bounded_space_length/2; |
There was a problem hiding this comment.
warning: result of integer division used in a floating point context; possible loss of precision [bugprone-integer-division]
bounded_space_min_allowed_z = -bounded_space_length/2;
^| if (jfile.contains("bounded_space_max_allowed_z")) { | ||
| bounded_space_max_allowed_z = jfile["bounded_space_max_allowed_z"].get<double>(); | ||
| } else { | ||
| bounded_space_max_allowed_z = bounded_space_length/2; |
There was a problem hiding this comment.
warning: result of integer division used in a floating point context; possible loss of precision [bugprone-integer-division]
bounded_space_max_allowed_z = bounded_space_length/2;
^| // if the tumor shape is cylindrical it should be set to false, otherwise it should be set to true | ||
| if (tumor_shape == "cylinder") { | ||
| // NOLINTNEXTLINE(cppcoreguidelines-avoid-magic-numbers,readability-magic-numbers) | ||
| diffuse_on_z_axis = false; |
There was a problem hiding this comment.
warning: redundant boolean literal in conditional assignment [readability-simplify-boolean-expr]
diffuse_on_z_axis = false;
^|
|
||
| for (size_t i = 0; i < number_of_cells; ++i) { | ||
| // sqrt ensures uniform distribution over the disk area (area element = r dr dθ) | ||
| real_t angle = random->Uniform(0.0, kTwicePi); |
There was a problem hiding this comment.
warning: variable 'angle' of type 'real_t' (aka 'double') can be declared 'const' [misc-const-correctness]
| real_t angle = random->Uniform(0.0, kTwicePi); | |
| const |
This PR extends and calibrates CARTopiaX to reproduce the experimental results reported in Ando et al., Evaluating CAR-T Cell Therapy in a Hypoxic 3D Tumor Model (Advanced Healthcare Materials, 2019).
The implemented changes improve the biological realism of the simulation by reproducing the experimental setup and the observed CAR T-cell behavior under hypoxic conditions. This demonstrates CARTopiaX as a flexible and robust in silico hypothesis-testing framework capable of replicating published studies, accelerating CAR T-cell research, and reducing reliance on costly and time-consuming wet-lab experiments.