Changelog
v1.0.0
Implemented modules:
Reimplementation of vaccinations as a module;
Conversion of diagnostics as a module;
Vaccination trial module;
Reinfection module;
Transport module;
Schools monitoring module;
Visualizer module;
New Airborne network/infection mechanic for use in closed spaces;
Better organization of the lab tools for multiple simulations and analysis;
New population methods for creation of attributes with output management;
Implementation of new auxiliary classes:
RandomDistibution: used with parameters that can be passed as a distribution;
coefficient_container: used to apply coefficients to child classes (used in the disease class to modulate infection attributes);
New dynamic execution list on the community with add_to_execution() method, priority control and time of the day control;
Elimination of legacy distance mechanics;
Implementation of internal random network generator to improve performance;
Reorganization of network generation and states transition inside a single method to improve performance;
Reorganization of network generators as classes and creation of add_net_generator to dynamically set generators for different placements.
Implemented stop_filter to dynamically stop simulations;
v0.3.0
Implemented new flexible services, workers and rooms interface;
Implemented new configurable quarantines;
Implemented new configurable vaccination campaigns;
Improved parsing of parameters;
Added a mechanism to configure random distributions to determine infection probability and times between states transitions;
Added new plots: Symptoms or Infections in homes, Histogram of time between transitions, Infection tree;
Updated visualizer to also work with networks.
Implemented new clock with a start date, days of the week and functions to convert time;
Added the ability to select with days of the week a service opens;
New homes and environmental networks generators.
New networks available for services:
NET_HOSPITALS: used in hospitals (internal implementation);
NET_STREET_MARKETS: used in street markets (internal implementation);
Separated network generators on it's own file;
Separated vaccination, quarantine and decisions mechanics on it's own files;
Implemented new hdf5 interface (using new h5dict library);
Added the ability to decrease workers or visitors mid-simulation on services;
Update infections defaults according to new calibration.
v0.2.0
Implemented new mechanics to generate encounters in each location using local networks instead of distances;
Networks available in this release (using NetworkX):
NET_DEFAULT: used in homes, hospitals, non essential services and street markets (Barabasi Albert generator from NetworkX);
NET_MARKETS: used in markets (internal implementation);
NET_SCHOOLS: used in schools (internal implementation);
NET_RESTAURANTS_1 and NET_RESTAURANTS_2: used in restaurants (internal implemetation);
Profiler branched into it's own repository, named nanoProfiler ;
Added methods to visualize encounters networks and infection tree (using matplotlib and pygraphviz);
Creation of defaults.py with default values for all parameters and their descriptions;
New decision criteria using number of symptomatic cases, or by following an inputted time series with all the decisions set at specific intervals;
Organized internal simulation data to create a mode with low memory usage;
Added viral shedding and anti-body curves generation to disease object;
Implemented vaccination mechanics;
Implemented neighborhood distinction for particles and services;
Implemented an infection tree to store information respective to the propagation of the disease;
Implemented susceptibility and mortality defined by age group;
Added deceased state;
Implemented a progress bar and text output of main results;
Fixed errors in quarantine by tracing;
Added setup.py script for installation of COMORBUSS as a module.
v0.1.2
Classes delegated to their own files;
Creation of disease class for biological models;
Creation of standard plot class for loading and visualizing results;
Creating of profiler class;
Better integration of laboratory and experiment classes, now based on plots class;
Integration with database for Brazilian demography;
Implementation of social isolation as a time series;
Positions inside services on a subgrid;
Services and homes organized along third dimension (apartments, offices etc);
Compute_distances_isolate_homes redundant and eliminated;
Non-essential services implemented - clarification between contact and encounter;
Better handling of the changes for placement, activity and movement (all in mark_for_new_position), which feeds a single instance for updating positions (update_positions).
v0.1.1
Complete CLI - new interface, where the internal mechanisms are easily turned on or off, and user are exposed only to basic configuration parameter;
Introduced (experimental) lab module for automation of simulations and analysis;
Introduced decoupled decision and action mechanics;
Decoupled diagnostic mechanics (only PCR for now) from actions;
Decoupled hospitalization of serious cases from quarantine actions;
Abstracted quarantines to easily configure different types in separate comorbuss;
Corrected and optimized boundary conditions;
Decoupled configuration of movement from action in services;
Improved visualization;
Introduced simple quarantines by tracing;
Unified loader/saver;
Triage and demographic normalization inside community class;
Introduced generation of network contact matrix from agent tracing (experimental).