Parameter unit setting problem
3 次查看(过去 30 天)
显示 更早的评论
I observed that the units of the parameters obtained from the literature model are in pg/µl*10^15 *cell^2 *d. When I try to implement it using SimBiology, the system raises an error, and I am unsure how to resolve it.
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/1557389/image.png)
m2 = sbiomodel('CART1201');
P_IL6 = addparameter(m2, 'P_IL6', 'Units','picogram/(microliter*1e5*cell*cell*day)','ConstantValue',false);
set(P_IL6,'Notes','CART induced IL6 secretion');
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/1557394/image.png)
m2 = sbiomodel('CART1201');
P_IL6 = addparameter(m2, 'P_IL6', 'Units','picogram/(microliter*10^5*cell*cell*day)','ConstantValue',false);
set(P_IL6,'Notes','CART induced IL6 secretion');
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/1557399/image.png)
1 个评论
David Goodmanson
2023-12-1
Hi Bohao,
Their 10^15 does not agree with your 10^5, but that is an aside to what I want to ask about. I don't use the units feature of Matlab so I don't know the rules, but would it be possible to create a dimensionless variable called, say, ten15, whose value is 10^15?
采纳的回答
Arthur Goldsipe
2023-12-1
编辑:Arthur Goldsipe
2023-12-4
Hi Bohao,
SimBiology's units functionality does not support embedding numeric multipliers like 10^15. And even after you address that issue, you will probably see that SimBiology warns you because there is no unit called "cell".
My recommendation is to define your own custom units (and possibly a custom unit prefix) to support this set of units. When you do this, your custom definitions are stored in a unit library rather than in your model. This means that if you share your model with someone else, you will also need to share any custom units or unit prefixes that this model references. You can read more about the SimBiology user-defined library here.
To make my answer more concrete, here's sample code that defines a unit for cell and another unit for 10^15:
cell = sbiounit('cell','dimensionless');
sbioaddtolibrary(cell);
times1e15 = sbiounit('times1e15','dimensionless',1e15);
sbioaddtolibrary(times1e15);
m2 = sbiomodel('CART1201');
P_IL6 = addparameter(m2, 'P_IL6');
P_IL6.Units = 'picogram/(microliter*times1e15*cell*cell*day)';
P_IL6.ConstantValue = false;
P_IL6.Notes = 'CART induced IL6 secretion';
0 个评论
更多回答(0 个)
社区
更多回答在 SimBiology Community
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Perform Sensitivity Analysis 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!