Class Immunizations

java.lang.Object
org.mitre.synthea.modules.Immunizations

public class Immunizations extends Object
This is a complete, but fairly simplistic approach to synthesizing immunizations. It is encounter driven; whenever an encounter occurs, the doctor checks for due immunizations and gives them. In at least one case (HPV) this means that the immunization schedule isn't strictly followed since the encounter schedule doesn't match the immunization schedule (e.g., 11yrs, 11yrs2mo, 11yrs6mo) -- but in most cases they do line up. This module also assumes perfect doctors and compliant patients. Every patient eventually receives every recommended immunization (unless they die first). This module also does not implement any deviations or contraindications based on patient conditions. For now, we've avoided specific brand names, preferring the general CVX codes.
  • Field Details

    • IMMUNIZATIONS

      public static final String IMMUNIZATIONS
      The key used to identify immunizations in the system.
      See Also:
  • Constructor Details

    • Immunizations

      public Immunizations()
  • Method Details

    • performEncounter

      public static void performEncounter(Person person, long time)
      Administer vaccines to the person at the state time according to the required immunization schedule.
      Parameters:
      person - - the person to vaccinate.
      time - - the current simulation time.
    • immunizationDue

      public static int immunizationDue(String immunization, Person person, long time, Map<String,List<Long>> immunizationsGiven)
      Return whether or not the specified immunization is due.
      Parameters:
      immunization - The immunization to give
      person - The person to receive the immunization
      time - The time the immunization would be given
      immunizationsGiven - The history of immunizations
      Returns:
      -1 if the immunization should not be given, otherwise a positive integer, where the value is the series. For example, 1 if this is the first time the vaccine was administered; 2 if this is the second time, et cetera.
    • getAllCodes

      public static Collection<HealthRecord.Code> getAllCodes()
      Get all of the Codes this module uses, for inventory purposes.
      Returns:
      Collection of all codes and concepts this module uses
    • getMaximumDoses

      public static int getMaximumDoses(String code)
      Get the maximum number of vaccine doses for a particular code.
      Parameters:
      code - The vaccine code.
      Returns:
      The maximum number of doses to be administered.
    • inventoryAttributes

      public static void inventoryAttributes(Map<String,Attributes.Inventory> attributes)
      Populate the given attribute map with the list of attributes that this module reads/writes with example values when appropriate.
      Parameters:
      attributes - Attribute map to populate.