反应继续在Simbiology即使浓度低于零
7视图(30天)
显示旧的评论
你好,
我试图在Simbiology模拟一个简单的反应模型,但遇到一个问题,系统会让浓度达到负。
试剂(A)是消耗在反应中,其浓度会降低随着时间的推移,和足够的时间,然而Simbiology让这个浓度会负。有一种反应后会停止所有的试剂都是使用了?anothoer字,一次= 0的反应不会超越这一点随着时间的继续(所有试剂和产品将达到平衡,不再改变)。
这个想法是添加一个类似“如果(< = 0)= 0”的判断,但我不知道如何用simbiology。我试图添加“= max (A, 0)“重复的任务,但它不会工作。考虑事件触发了但似乎事件只能工作在第一次触发。
提前谢谢你
0评论
接受的答案
亚瑟Goldsipe
2022年5月2日
我回答类似的问题
在这里
。当我提到,目前还没有办法完全避免负数在所有情况下。但通常是安全的忽视负小(相对于你的解算器指定公差)。如果负数的大小很大,这可能表明一个建模错误和/或一个问题解决者公差。如果你看到这样的负数,你应该试着去理解是什么导致他们和您的模型作出相应的改变。如果有某种反馈导致负数mangified,您可能需要修改反应速率的表达式。例如,如果X是一个物种是负的,你可能想要取代X的出现率与马克斯(0,X)表达式。我建议这个试图使用一个事件或重复分配规则。
更多的答案(2)
Achal Mahajan
2022年5月2日
你好,
这篇文章可能是有用的
//www.tianjin-qmedu.com/matlabcentral/answers/78266-non-negative-values-for-species-in-simbiology
。同样的问题已经被详细讨论。随意接触又不为你工作!