Coverage for pybeepop/beepop/ieditem.py: 0%
11 statements
« prev ^ index » next coverage.py v7.11.0, created at 2025-10-30 13:34 +0000
« prev ^ index » next coverage.py v7.11.0, created at 2025-10-30 13:34 +0000
1"""BeePop+ In-Hive Exposure Dose (IED) Module.
3IMPORTANT NOTE: This module is currently NOT IMPLEMENTED or USED in the
4BeePop+ Python simulation. The IEDItem class exists as a placeholder from the
5C++ port but is not integrated into the simulation engine. The IED functionality
6is disabled (ied_enable = False in session.py) and would require additional
7development to become functional.
9Classes:
10 IEDItem: Individual in-hive exposure event with life-stage-specific mortality
11 (NOT CURRENTLY USED IN SIMULATION)
12"""
14from datetime import datetime
17class IEDItem:
18 """In-hive exposure dose event causing life-stage-specific mortality.
20 IMPORTANT: This class is currently NOT IMPLEMENTED or USED in the BeePop+
21 Python simulation. It exists as a placeholder from the C++ port but is not
22 integrated into the simulation engine. To use this functionality, additional
23 development would be required to connect it to the colony mortality systems
24 and enable the IED processing in the session manager.
26 Represents an acute pesticide exposure event occurring within the hive
27 that affects bees across multiple life stages. IED events model scenarios
28 such as contaminated stored resources, residue buildup in wax comb, or
29 other in-hive exposure pathways.
31 Attributes:
32 ied_date (datetime): Date when exposure event occurs
33 mort_eggs (float): Mortality rate for eggs (proportion 0.0-1.0)
34 mort_larvae (float): Mortality rate for larvae (proportion 0.0-1.0)
35 mort_brood (float): Mortality rate for capped brood (proportion 0.0-1.0)
36 mort_adults (float): Mortality rate for adult workers (proportion 0.0-1.0)
37 mort_foragers (float): Mortality rate for foragers (proportion 0.0-1.0)
38 """
40 def __init__(
41 self,
42 ied_date=None,
43 mort_eggs=0.0,
44 mort_larvae=0.0,
45 mort_brood=0.0,
46 mort_adults=0.0,
47 mort_foragers=0.0,
48 ):
49 self.ied_date = ied_date or datetime.now()
50 self.mort_eggs = mort_eggs
51 self.mort_larvae = mort_larvae
52 self.mort_brood = mort_brood
53 self.mort_adults = mort_adults
54 self.mort_foragers = mort_foragers
56 def __str__(self):
57 return (
58 f"IEDItem(date={self.ied_date}, mort_eggs={self.mort_eggs}, "
59 f"mort_larvae={self.mort_larvae}, mort_brood={self.mort_brood}, "
60 f"mort_adults={self.mort_adults}, mort_foragers={self.mort_foragers})"
61 )