# Modeling Mitochondria Voltage depending on the Sodium/Potassium Pumps results in Algebraic loops Error.

조회 수: 4 (최근 30일)
Pancy Lwin 2024년 4월 4일
댓글: Pancy Lwin 2024년 4월 5일
Hello All,
I am having this error in my code.
--> Error reported from ODE Compilation:
Initial assignment rules and repeated assignment rules cannot create explicit or implicit algebraic loops (for example, 'x = y' and 'y = x'). Implicit references to compartments occur when referencing a species in concentration. The following rules introduce algebraic loops into the model:
The equation is to calculate the mitocondria voltage based on the chemical pumps and electrodefusion. however, the reaction rates for these pumps depend on the miltocondria voltage. As a result, my code has algebraic loop problem. How should I work around this issue?

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

### 채택된 답변

Arthur Goldsipe 2024년 4월 4일
Can you share your model? That would allow me to offer more specific advice. (If you're not comfortable posting it publicly, please feel free to reach out to me directly.)
The error message normally lists the rules that are involved in algebraic rules. That information might give you a little more insight into where the loops are occurring. But ultimately, we will probably need your modeling expertise to figure out how to break the algebraic loop.
Here's a concrete example. Let's say you have these repeated assignment rules in the error message:
a = b + 1
b = c + 1
c = a + N
These rules create an algebraic loop for a, b, and c. Depending on the value of N, there may be no valid solution to equations. Or there may be an infinite number of solutions to the system. So you need to figure out HOW these values are supposed to be uniquely determined. For example, maybe you intended for c(t) = a(t=0) + N(t). One way to fix the model would be to create a separate parameter a0 that where you hard-code the value of a at t=0. Then, update the final repeated assignment rule to
c = a0 + N
That way, SimBiology determines that (at each time) c must be calcuated first, then b (from c), and a (from b).
-Arthur
##### 댓글 수: 1이전 댓글 -1개 표시이전 댓글 -1개 숨기기
Pancy Lwin 2024년 4월 5일
Thank you very much, Arthur. I will reach out to you.

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

### 커뮤니티

더 많은 답변 보기:  SimBiology Community

### 카테고리

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

R2021b

### Community Treasure Hunt

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

Start Hunting!

Translated by