-
Hi Synthea team, In the Examplitis example, if this module only runs once for a person, then if he's male, he will have 90% chance of never catching this disease, or 10% of catching this disease between 40-50 years old, i.e. there won't be a male of 60 years old that goes through the Examplitis ConditionOnset state. Am I correct? Also, If a module only run once during a lifetime of a patient, how do you deal with disease such as flu, where a patient may be infected multiple times, perhaps once in several years? Or in the case of covid19, probability of subsequent infection will be lower because of the vaccine? are those all modeled in Synthea? Finally, if I understand it correctly, Synthea will wait in a module when there is an age_guard or delay; if the flow reaches terminal state, then this module will not be run for the rest of lifetime of a person. Thank you for your help! |
Beta Was this translation helpful? Give feedback.
Replies: 1 comment 1 reply
-
Hi, sincere apologies for the delay on this, somehow your message slipped through the cracks. I hope this response is still useful. Each module runs once over the lifetime of a simulated patient, starting at the Initial state in every module at birth, and then it's up to Guard and Delay states to ensure things don't happen instantly at birth. Each module is processed and may advance once per timestep, but really that's an internal detail you don't need to worry about to understand the flow of modules. (You could think of it as, once per timestep Synthea looks at each module and evaluates: 'does the patient move on from this state at this time?') Re: the Examplitis module, you're correct, there won't be a male of 60 years old that goes through the ConditionOnset, it would have only happened between age 40-50. And re: the terminal state, yes correct that marks the end of the module and it will not run again. For conditions that may re-occur, such as flu or the most common one in Synthea is viral sinusitis in the Sinusitis module, you'll notice the whole module is a loop and there is no terminal state. Another example is Sore Throat where there are different infection rates based on age, using a complex transition. We also use table transitions or combinations of states and transitions to model these kinds of things |
Beta Was this translation helpful? Give feedback.
Hi, sincere apologies for the delay on this, somehow your message slipped through the cracks. I hope this response is still useful.
Each module runs once over the lifetime of a simulated patient, starting at the Initial state in every module at birth, and then it's up to Guard and Delay states to ensure things don't happen instantly at birth. Each module is processed and may advance once per timestep, but really that's an internal detail you don't need to worry about to understand the flow of modules. (You could think of it as, once per timestep Synthea looks at each module and evaluates: 'does the patient move on from this state at this time?')
Re: the Examplitis module, you're correct, …