рдкрд╛рдпрдерди рд╕реАрдУрд╡реАрдЖрдИрдбреА тАЛтАЛ-19 рдорд╣рд╛рдорд╛рд░реА рд╕рд┐рдореБрд▓реЗрд╢рди

рдЫрд╡рд┐


рдкрд░рд┐рдЪрдп


. . . , , . ? ? , . : , , , . , , . , , , , . Johns Hopkins University.



COVID-19 тАФ , SARS-CoV-2 (2019-nCoV). тАФ , /, .



, .

, , .

: |


, : , , , , , ( , ), . , , , , . , . , 2.4. , , , , тАФ . , ( 15% ), , , ; .


, , , . . :


  1. ,
  2. .


:


  1. , .
  2. , ( ). , .
  3. , , . .
  4. - ( ) , .

тАФ , - . COVID-19 1 14 .


. тАФ . . , 0.35 ( , 2.4 , 1 14) 0.135 . , . .


Python


: . , , (Total cases), (New cases) (Infected), , ( - , ).


import numpy as np
import matplotlib.pyplot as plt

COUNTRY = "Italy"
DAYS_OF_SIMULATION = 366
COEF_BASE = 0.35
COEF_QUARANTINE = 0.135
DAY_QUARANTINE = 74
INCUBATION_PERIOD = 15

#   
np.random.seed(0)

#         . 
#     :     . 
#      ,   , , 
#            - .
def get_coef(day):
    return COEF_BASE if day < DAY_QUARANTINE else COEF_QUARANTINE

if __name__ == "__main__":
    #  
    days = np.arange(1, DAYS_OF_SIMULATION)

    #  
    infected = np.random.randint(1, INCUBATION_PERIOD, 1)

    infected_lst = []  #      ,      
    new_cases_lst = []
    new_cases_total_lst = []

    #    
    for day in days:
        #   
        coef = get_coef(day)

    #      
        new_cases_idx = np.argwhere(infected == day).flatten()

        #        
        new_cases_count = new_cases_idx.size

        #       ,  
        infected = np.delete(infected, new_cases_idx)

        #             
        new_infected_count = np.random.poisson(coef, infected.size).sum()
        new_infected = np.random.randint(1, INCUBATION_PERIOD, new_infected_count) + day
        infected = np.concatenate((infected, new_infected))

        #  
        infected_lst.append(infected.size)
        new_cases_lst.append(new_cases_count)
        new_cases_total_lst.append(sum(new_cases_lst))

        print(day, infected.size)

    plt.figure(figsize=(16, 8))

    #    
    plt.subplot(311)
    plt.title(f"COVID-19 pandemic in {COUNTRY}")
    plt.plot(days, new_cases_total_lst)
    plt.grid(True)
    plt.legend(["Total cases"], loc='upper left')

    #     
    plt.subplot(312)
    plt.bar(days, new_cases_lst, alpha=0.7, color='y')
    plt.grid(True)
    plt.legend(["New cases"], loc='upper left')

    #    
    plt.subplot(313)
    plt.plot(days, infected_lst, color='r')
    plt.grid(True)
    plt.legend(["Infected"], loc='upper left')

    plt.show()

.


DAYS_OF_SIMULATION -    ,
COEF_BASE -       ,
COEF_QUARANTINE -       ,
DAY_QUARANTINE -        ,
INCUBATION_PERIOD -       ( ).


, , .


, :


COUNTRY = "Italy"
DAYS_OF_SIMULATION = 366
COEF_BASE = 0.35
COEF_QUARANTINE = 0.135
DAY_QUARANTINE = 74
INCUBATION_PERIOD = 15

рдЫрд╡рд┐


. - , ( 74- ), - , , 14 . , 300000, 250- , 180 ( , , 6 ). , 40000.


:
тАФ 300000
тАФ 6
тАФ 40000


, , :


COUNTRY = "USA"
DAYS_OF_SIMULATION = 366
COEF_BASE = 0.35
COEF_QUARANTINE = 0.135
DAY_QUARANTINE = 83
INCUBATION_PERIOD = 15

рдЫрд╡рд┐


. , , ( DAY_QUARANTINE - ), , COEF_QUARANTINE . .


:
тАФ 1700000
тАФ 6
тАФ 250000



тАФ , . , , . "" . :


  1. тАФ .
  2. 1 тАФ .
  3. 2 тАФ .

.


I.


COUNTRY = "Russia"
DAYS_OF_SIMULATION = 366
COEF_BASE = 0.35
COEF_QUARANTINE = 0.135
DAY_QUARANTINE = 73
INCUBATION_PERIOD = 15

рдЫрд╡рд┐


тАФ 250000
тАФ 6
тАФ 35000


II. 1


COUNTRY = "Russia"
DAYS_OF_SIMULATION = 366
COEF_BASE = 0.35
COEF_QUARANTINE = 0.135
DAY_QUARANTINE = 80
INCUBATION_PERIOD = 15

рдЫрд╡рд┐


тАФ 950000
тАФ 7
тАФ 140000


III. 2


COUNTRY = "Russia"
DAYS_OF_SIMULATION = 366
COEF_BASE = 0.35
COEF_QUARANTINE = 0.135
DAY_QUARANTINE = 87
INCUBATION_PERIOD = 15

рдЫрд╡рд┐


тАФ 4000000
тАФ 8
тАФ 550000


, , -, DAY_QUARANTINE, COEF_QUARANTINE, ( , ). - :


  1. , ;
  2. ;
  3. .


, , . , . , . :


  1. , , ,
  2. ,
  3. ( , ),
  4. ,
  5. ,
  6. тАж .

рдореИрдВ рдкрд╛рдардХреЛрдВ рдХреЛ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЗ рд╕рд╛рде рдЦреЗрд▓рдиреЗ рдХрд╛ рд╕реБрдЭрд╛рд╡ рджреЗрддрд╛ рд╣реВрдВ, рдЕрдиреНрдп рджреЗрд╢реЛрдВ рдХреЗ рд▓рд┐рдП рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХрд╛ рдЕрдиреБрдХрд░рдг рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░рддрд╛ рд╣реВрдВ, рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рдореЗрдВ рд╕рджрд╕реНрдпрддрд╛ рд╕рдорд╛рдкреНрдд рдХрд░рддрд╛ рд╣реВрдВред рдЕрдзрд┐рдХ рдмреЗрд╣рд┐рд╕рд╛рдм рдХрд╛рд░рдХреЛрдВ рдХреЛ рдЬреЛрдбрд╝рдХрд░ рд╕рд┐рдореБрд▓реЗрд╢рди рдХреЛ рдЬрдЯрд┐рд▓ рдмрдирд╛рдирд╛ рднреА рджрд┐рд▓рдЪрд╕реНрдк рд╣реИред


All Articles