Computational Science Asked by Alone Programmer on February 19, 2021
Please excuse me if this question somehow looks trivial or not really interesting, but I recently have a hard time to convince someone else that my algorithm for constructing a self-similar binary structured-tree (read more here: https://doi.org/10.1002/cnm.3229) is correct. So, the algorithm is summarized in these 4 steps:
$$r_{text{left}} = alpha r_{p}$$
$$r_{text{right}} = beta r_{p}$$
The bifurcating procedure halts if the radius of the current vessel is less than $r_{text{threshold}}$ and it is set as a terminal branch.
My problem is that based on my understanding the above algorithm works like this:
But I have a lengthy discussion with someone else that argues that I need to only compare $r_{p}$ with $r_{text{threshold}}$ not $r_{text{left}}$ and $r_{text{right}}$ and in the original paper the purpose of authors from current vessel is $r_{p}$. In my understanding it doesn’t make sense because in the original paper referenced here (https://doi.org/10.1002/cnm.3229) authors calculate $r_{text{left}}$ and $r_{text{right}}$ at step 2 and then decide to bifurcate or not, but if they want to decide to bifurcate solely based on $r_{p}$ so why even step 2 is there cause in that situation we don’t need $r_{text{left}}$ and $r_{text{right}}$ to decide to bifurcate or not. Any idea or suggestion is appreciated here.
The other person's argument sounds to me like a reorganization of your algorithm. It will produce slightly different results, but in the end achieve the same goal. Let me demonstrate with a simple tree of one parent of radius 1, two children of radii (alpha=)0.3 and (beta=)0.7 against a threshold of 0.5.
Your suggestion would produce the tree below
1
Null_|_0.7
Null_|_Null
Their suggestion would produce a slightly different tree
1
0.3________|________0.7
Null_|_Null 0.21____|____0.49
Null_|_Null Null_|_Null
I am putting Null
because I am not exactly sure how you handle your data structures, maybe you don't create the leaves at all. In that case, visualization would be different.
The main point is that the first tree is a subtree of the second tree. Hence, this becomes a philosophical problem. Which one of the trees describes the phenomenon better? I would argue that your interpretation is the correct one, because I don't agree with creating children which are below the prescribed threshold, since they will not survive. But the argument "the parents who are below the threshold cannot produce off-springs" is equally valid.
The citation you pulled
The bifurcating procedure halts if the radius of the current vessel is less than threshold and it is set as a terminal branch.
seems to agree with the second interpretation, e.g. "the parents who are below the threshold cannot produce off-spring."
Looking at the algorithm, they definitely compute radii of the children before they talk about the stopping criteria. It may be bad writing but definitely supports your interpretation.
The problem is we can not know what they actually did in their research without access to their codes and they don't seem to provide it. How do you feel about reaching out to them and requesting some of their codes? In my experience, many researchers are happy to share their code -unless it is proprietary or poorly written research software, e.g. the incurable plague of academia- as it is a way to get some exposure.
Correct answer by Abdullah Ali Sivas on February 19, 2021
Get help from others!
Recent Questions
Recent Answers
© 2024 TransWikia.com. All rights reserved. Sites we Love: PCI Database, UKBizDB, Menu Kuliner, Sharing RPP