Changing the result of a simulation with changing the units
9 Comments
- You can double check that you correctly converted the numeric value of kon when you change the units by using sbiounitcalculator. For example:
- You can compare two models exactly what's different by using the functionality described here.
- You can inspect your model equations and initial conditions as described here.
- You can use the SimBiology Model Debugger to step through your simulations to try to figure out where things go wrong.
Answers (1)
Hi @Day ,
The discrepancy in simulation results arises from the dimensional analysis and the inherent relationships between the units involved. When you define k_{ass} as:
k_ass = (kon/volume) * free_receptors
where ( kon ) is in liter/(mole*hour), the units of k_{ass} become consistent with the other parameters in the model. However, when you change ( kon ) to liter/(mole*hour), you effectively alter the scale of the rate constant without adjusting the units of ( free_receptors ) (which remains in nanomoles). This change leads to a different interpretation of the uptake rate, as the conversion factor between moles and nanomoles (1 mole = ( 10^9 ) nanomoles) must be accounted for. Consequently, the rate of receptor binding and the overall dynamics of the model will differ, resulting in varied simulation outcomes. It is crucial to maintain consistent units across all parameters to ensure accurate modeling and interpretation of results. To illustrate this, consider the following MATLAB code snippet:
% Parameters volume = 1; % in liters kon_mole = 0.1; % in liter/(mole*hour) kon_nanomole = kon_mole * 1e-9; % converting to liter/(nanomole*hour) free_receptors = 50; % in nanomoles
% Nonlinear uptake rate calculation k_ass_mole = (kon_mole / volume) * (free_receptors * 1e-9); % in moles k_ass_nanomole = (kon_nanomole / volume) * free_receptors; % in nanomoles
disp(['Uptake rate (mole): ', num2str(k_ass_mole)]); disp(['Uptake rate (nanomole): ', num2str(k_ass_nanomole)]);
In this example, the uptake rates calculated using different units for k_on will yield different results, demonstrating the importance of consistent unit usage in simulations.
Please see attached.
Hope this helps.
4 Comments
See Also
Categories
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!