|
30 | 30 |
|
31 | 31 | namespace bdm { |
32 | 32 |
|
33 | | - |
34 | | -/** |
35 | | - * @brief Enumeration defining the possible states of a CAR-T cell |
36 | | - * |
37 | | - * This enum class represents the different states that a CAR-T cell can be in |
38 | | - * during its lifecycle in the simulation. |
39 | | - */ |
| 33 | +/// Enumeration defining the possible states of a CAR-T cell |
| 34 | +/// |
| 35 | +/// This enum class represents the different states that a CAR-T cell can be in |
| 36 | +/// during its lifecycle in the simulation. |
40 | 37 | enum class CartCellState : int { |
41 | | - /** @brief Living cell state - the cell is alive and functioning normally */ |
42 | | - kAlive=0, |
| 38 | + kAlive=0,///< Living cell state - the cell is alive and functioning normally |
43 | 39 |
|
44 | | - /** @brief Apoptotic phase - the cell is undergoing programmed cell death |
45 | | - * characterized by cell shrinkage and controlled death |
46 | | - */ |
47 | | - kApoptotic=1 |
| 40 | + kApoptotic=1///< Apoptotic phase - the cell is undergoing programmed cell death characterized by cell shrinkage and controlled death |
48 | 41 | }; |
49 | 42 |
|
50 | | -/** |
51 | | - * @brief CAR-T cell class implementation |
52 | | - * |
53 | | - * This class represents a CAR-T (Chimeric Antigen Receptor T-cell) in the simulation. |
54 | | - * It inherits from the base Cell class and includes specific behaviors and properties |
55 | | - * related to CAR-T cell biology, including states, volume dynamics, and interactions |
56 | | - * with tumor cells. |
57 | | - */ |
| 43 | +/// CAR-T cell class implementation |
| 44 | +/// |
| 45 | +/// This class represents a CAR-T (Chimeric Antigen Receptor T-cell) in the simulation. |
| 46 | +/// It inherits from the base Cell class and includes specific behaviors and properties |
| 47 | +/// related to CAR-T cell biology, including states, volume dynamics, and interactions |
| 48 | +/// with tumor cells. |
58 | 49 | class CartCell : public Cell { |
59 | 50 | BDM_AGENT_HEADER(CartCell, Cell, 1); |
60 | 51 |
|
@@ -113,134 +104,118 @@ class CartCell : public Cell { |
113 | 104 | /// Returns the diffusion grid for immunostimulatory factors |
114 | 105 | DiffusionGrid* GetImmunostimulatoryFactorDiffusionGrid() const { return immunostimulatory_factor_dgrid_; } |
115 | 106 |
|
116 | | - /** @brief Change volume using exponential relaxation equation |
117 | | - * |
118 | | - * This method explicitly solves the system of exponential relaxation differential |
119 | | - * equations using a discrete update step. It is used to grow or shrink the volume |
120 | | - * (and proportions) smoothly toward a desired target volume over time. The relaxation |
121 | | - * rate controls the speed of convergence and dt=1 (the time_step). |
122 | | - * |
123 | | - * @param relaxation_rate_cytoplasm Relaxation rate for cytoplasm volume changes |
124 | | - * @param relaxation_rate_nucleus Relaxation rate for nucleus volume changes |
125 | | - * @param relaxation_rate_fluid Relaxation rate for fluid volume changes |
126 | | - */ |
| 107 | + /// Change volume using exponential relaxation equation |
| 108 | + /// |
| 109 | + /// This method explicitly solves the system of exponential relaxation differential |
| 110 | + /// equations using a discrete update step. It is used to grow or shrink the volume |
| 111 | + /// (and proportions) smoothly toward a desired target volume over time. The relaxation |
| 112 | + /// rate controls the speed of convergence and dt=1 (the time_step). |
| 113 | + /// |
| 114 | + /// @param relaxation_rate_cytoplasm Relaxation rate for cytoplasm volume changes |
| 115 | + /// @param relaxation_rate_nucleus Relaxation rate for nucleus volume changes |
| 116 | + /// @param relaxation_rate_fluid Relaxation rate for fluid volume changes |
127 | 117 | void ChangeVolumeExponentialRelaxationEquation(real_t relaxation_rate_cytoplasm, real_t relaxation_rate_nucleus, real_t relaxation_rate_fluid); |
128 | 118 |
|
129 | | - /** @brief Calculate displacement of the cell |
130 | | - * |
131 | | - * Computes the displacement of the cell based on interaction forces. |
132 | | - * |
133 | | - * @param force Pointer to the interaction force object |
134 | | - * @param squared_radius The squared radius of the cell |
135 | | - * @param dt The time step for the simulation |
136 | | - * @return The calculated displacement vector |
137 | | - */ |
| 119 | + /// Calculate displacement of the cell |
| 120 | + /// |
| 121 | + /// Computes the displacement of the cell based on interaction forces. |
| 122 | + /// |
| 123 | + /// @param force Pointer to the interaction force object |
| 124 | + /// @param squared_radius The squared radius of the cell |
| 125 | + /// @param dt The time step for the simulation |
| 126 | + /// @return The calculated displacement vector |
138 | 127 | Real3 CalculateDisplacement(const InteractionForce* force, |
139 | 128 | real_t squared_radius, real_t dt) override; |
140 | 129 |
|
141 | | - /** @brief Consume or secrete substances |
142 | | - * |
143 | | - * Computes new oxygen or immunostimulatory factor concentration after |
144 | | - * consumption or secretion by the cell. |
145 | | - * |
146 | | - * @param substance_id The ID of the substance (oxygen or immunostimulatory factor) |
147 | | - * @param old_concentration The previous concentration of the substance |
148 | | - * @return The new concentration after consumption/secretion |
149 | | - */ |
| 130 | + /// Consume or secrete substances |
| 131 | + /// |
| 132 | + /// Computes new oxygen or immunostimulatory factor concentration after |
| 133 | + /// consumption or secretion by the cell. |
| 134 | + /// |
| 135 | + /// @param substance_id The ID of the substance (oxygen or immunostimulatory factor) |
| 136 | + /// @param old_concentration The previous concentration of the substance |
| 137 | + /// @return The new concentration after consumption/secretion |
150 | 138 | real_t ConsumeSecreteSubstance(int substance_id, real_t old_concentration); |
151 | 139 |
|
152 | | - /** @brief Compute constants for consumption and secretion |
153 | | - * |
154 | | - * Updates constants after the cell's change of volume or quantities. |
155 | | - * These constants are used in the consumption/secretion differential equations. |
156 | | - */ |
| 140 | + /// Compute constants for consumption and secretion |
| 141 | + /// |
| 142 | + /// Updates constants after the cell's change of volume or quantities. |
| 143 | + /// These constants are used in the consumption/secretion differential equations. |
157 | 144 | void ComputeConstantsConsumptionSecretion(); |
158 | 145 |
|
159 | | - |
160 | | - /** @name Private Member Variables |
161 | | - * @brief Private attributes of the CAR-T cell |
162 | | - * @{ |
163 | | - */ |
164 | 146 | private: |
165 | | - /** @brief Current state of the CAR-T cell */ |
| 147 | + /// Current state of the CAR-T cell |
166 | 148 | CartCellState state_; |
167 | 149 |
|
168 | | - /** @brief Timer to track time in the current state (in minutes) |
169 | | - * Used for apoptotic state timing |
170 | | - */ |
| 150 | + /// Timer to track time in the current state (in minutes) |
| 151 | + /// Used for apoptotic state timing |
171 | 152 | int timer_state_; |
172 | 153 |
|
173 | | - /** @brief Pointer to the oxygen diffusion grid */ |
| 154 | + /// Pointer to the oxygen diffusion grid |
174 | 155 | DiffusionGrid* oxygen_dgrid_; |
175 | 156 |
|
176 | | - /** @brief Pointer to the immunostimulatory factor diffusion grid */ |
| 157 | + /// Pointer to the immunostimulatory factor diffusion grid |
177 | 158 | DiffusionGrid* immunostimulatory_factor_dgrid_; |
178 | 159 |
|
179 | | - /** @brief Flag indicating if the cell is attached to a tumor cell */ |
| 160 | + /// Flag indicating if the cell is attached to a tumor cell |
180 | 161 | bool attached_to_tumor_cell_; |
181 | 162 |
|
182 | | - /** @brief Current time until apoptosis */ |
| 163 | + /// Current time until apoptosis |
183 | 164 | real_t current_live_time_; |
184 | 165 |
|
185 | | - /** @brief Fluid fraction of the cell volume */ |
| 166 | + /// Fluid fraction of the cell volume |
186 | 167 | real_t fluid_fraction_; |
187 | 168 |
|
188 | | - /** @brief Volume of the nucleus */ |
| 169 | + /// Volume of the nucleus |
189 | 170 | real_t nuclear_volume_; |
190 | 171 |
|
191 | | - /** @brief Target cytoplasm solid volume for exponential relaxation |
192 | | - * Used during volume changes following exponential relaxation equation |
193 | | - */ |
| 172 | + /// Target cytoplasm solid volume for exponential relaxation |
| 173 | + /// Used during volume changes following exponential relaxation equation |
194 | 174 | real_t target_cytoplasm_solid_; |
195 | 175 |
|
196 | | - /** @brief Target nucleus solid volume for exponential relaxation */ |
| 176 | + /// Target nucleus solid volume for exponential relaxation |
197 | 177 | real_t target_nucleus_solid_; |
198 | 178 |
|
199 | | - /** @brief Target fluid fraction for exponential relaxation */ |
| 179 | + /// Target fluid fraction for exponential relaxation |
200 | 180 | real_t target_fraction_fluid_; |
201 | 181 |
|
202 | | - /** @brief Target relation between cytoplasm and nucleus volumes */ |
| 182 | + /// Target relation between cytoplasm and nucleus volumes |
203 | 183 | real_t target_relation_cytoplasm_nucleus_; |
204 | 184 |
|
205 | | - /** @brief Velocity of the cell in the previous time step */ |
| 185 | + /// Velocity of the cell in the previous time step |
206 | 186 | Real3 older_velocity_; |
207 | 187 |
|
208 | | - /** @brief Rate of oxygen consumption by the cell */ |
| 188 | + /// Rate of oxygen consumption by the cell |
209 | 189 | real_t oxygen_consumption_rate_; |
210 | 190 |
|
211 | | - /** @brief Rate of immunostimulatory factor secretion by the cell */ |
| 191 | + /// Rate of immunostimulatory factor secretion by the cell |
212 | 192 | real_t immunostimulatory_factor_secretion_rate_; |
213 | 193 |
|
214 | | - /** @brief Constant 1 for oxygen consumption/secretion differential equation solution */ |
| 194 | + /// Constant 1 for oxygen consumption/secretion differential equation solution |
215 | 195 | real_t constant1_oxygen_; |
216 | 196 |
|
217 | | - /** @brief Constant 2 for oxygen consumption/secretion differential equation solution */ |
| 197 | + /// Constant 2 for oxygen consumption/secretion differential equation solution |
218 | 198 | real_t constant2_oxygen_; |
219 | 199 |
|
220 | | - /** @brief Pointer to the attached tumor cell */ |
| 200 | + /// Pointer to the attached tumor cell |
221 | 201 | TumorCell* attached_cell_; |
222 | 202 |
|
223 | | - /** @} */ // end of Private Member Variables group |
224 | 203 | }; |
225 | 204 |
|
226 | | -/** |
227 | | - * @brief Behavior class for controlling CAR-T cell state transitions |
228 | | - * |
229 | | - * This behavior handles the state control logic for CAR-T cells, managing |
230 | | - * transitions between different cell states such as alive and apoptotic phases. |
231 | | - * It inherits from the base Behavior class and implements the Run method to |
232 | | - * execute the state control logic during simulation steps. |
233 | | - */ |
| 205 | +/// Behavior class for controlling CAR-T cell state transitions |
| 206 | +/// |
| 207 | +/// This behavior handles the state control logic for CAR-T cells, managing |
| 208 | +/// transitions between different cell states: alive and apoptotic phases. |
| 209 | +/// It inherits from the base Behavior class and implements the Run method to |
| 210 | +/// execute the state control logic during simulation steps. |
234 | 211 | struct StateControlCart : public Behavior { |
235 | 212 | BDM_BEHAVIOR_HEADER(StateControlCart, Behavior, 1); |
236 | 213 |
|
237 | 214 | StateControlCart() { AlwaysCopyToNew(); } |
238 | 215 |
|
239 | 216 | virtual ~StateControlCart() {} |
240 | 217 |
|
241 | | - /** @brief Execute the state control behavior |
242 | | - * @param agent Pointer to the agent (cell) on which to apply the behavior |
243 | | - */ |
| 218 | + /// Execute the state control behavior |
244 | 219 | void Run(Agent* agent) override; |
245 | 220 | }; |
246 | 221 |
|
|
0 commit comments