In [1]:
from dzdy import *

In [2]:
par_script = """
PCore pSIR {
    transmission_rate = 1.5
    rec_rate ~ triangle(0.1, 0.2, 0.3)
    beta ~ exp(transmission_rate)
    gamma ~ exp(rec_rate)
    Die ~ exp(0.02)
}
"""

dc_ctbn_script = """
CTBN SIR_bn {
    life[Alive | Dead]
    sir[S | I | R]
    
    Alive{life:Alive}
    Dead{life:Dead}
    Inf{life:Alive, sir:I}
    Rec{life:Alive, sir:R}
    Sus{life:Alive, sir:S}

    Die -> Dead # from transition Die to state Dead by distribution Die
    Sus -- Infect(beta) -> Inf 
    Inf -- Recov(gamma) -> Rec
    
    Alive -- Die # from state Alive to transition Die
}
"""

dc_ctmc_script = """
CTMC SIR_mc {
    Inf
    Rec
    Sus
    Dead

    Sus -- Infect(beta) -> Inf 
    Inf -- Recov(gamma) -> Rec
    Sus -- Die -> Dead
    
    Inf -- Die
    Rec -- Die
}
"""

In [3]:
da = Director()
da.read_pc(par_script)
da.read_dc(dc_ctmc_script)
da.read_dc(dc_ctbn_script)

In [4]:
da.list_pc()


Out[4]:
['pSIR']

In [5]:
da.list_dc()


Out[5]:
['SIR_mc', 'SIR_bn']