species go to negative values

조회 수: 2 (최근 30일)
Day
Day 2024년 5월 14일
댓글: Day 2024년 5월 30일
Hi
I developed a model in Simbiology simulating the effect of a drug on a tissue mass. Sometime, I received a message that the integration toerance does not met and other times I had a mass species with negative values.Why does the software allow the value of a species representing the mass of this tissue go to negative values? what is the cause of this issue and how can I solve it? I want the content of this species to go as small as it can go without jumping to negative values.
Thank you
  댓글 수: 2
emjey
emjey 2024년 5월 14일
In general it is not impossible to get negative values as solutions. Imagine for example zero-order degradation in your system, it will lead to negative solutions eventually.
To help you with your specific issue it would be good to have a concrete example.
Day
Day 2024년 5월 30일
Thank you

댓글을 달려면 로그인하십시오.

답변 (2개)

John D'Errico
John D'Errico 2024년 5월 14일
편집: John D'Errico 2024년 5월 14일
Remember that the software does not truly understand your model, and what you are attempting to simulate in that model. It only understands numbers. And numbers have no non-negativity constraint, so in certain circumstances, you could have a problem where negative numbers made sense.
I would suggest you work in terms of the log of the mass, I'll call it m. Wherever you need the mass itself (M) all you need do is use the simple transformation
M = exp(m)
Note that the log of the mass now has no constraints, and the mass will always be a positive value. This simple transformation makes a lot of sense when you have a problem where a value can span orders of magnitude, as otherwise, there will often be numerical problems. This sort of transformation is often appropriate when you have a variable which really only works in terms of positive numbers.

Jeremy Huard
Jeremy Huard 2024년 5월 15일
I would also recommend to have a look at the Model Debugger for SimBiology. This tool will allow you to define breakpoint conditions (e.g. negative species values) to pause a model simulation and investigate which term is problematic.

커뮤니티

더 많은 답변 보기:  SimBiology Community

카테고리

Help CenterFile Exchange에서 Extend Modeling Environment에 대해 자세히 알아보기

제품


릴리스

R2024a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by