def __init__(self, position, cube_length, light_time_function, temperature_time_function, timedelta, initial_time, end_time, initial_terpene, sources=(), sinks=()): assert isinstance(position, Coord) self.cubelength = cube_length self.light_time_function = light_time_function self.temperature_time_function = temperature_time_function self.position = position self.terpene_concentration = initial_terpene # scaling to convert ppbv to molecules per cube meter (m3) # self.nair = 101325 * 6.022e23 / (8.314 * (25 + 273.15)) self.fnair = self.nair * 1e-6 * 1e-9 # * 1e-11 # adapted to get rid of large numbers for molecules! # Molecular weight of a monoterpene # self.mtWeight = 136 self.inboxes = {} for n in self.position.surroundingCoords(): self.inboxes[n] = Inbox.LocalInbox() self.sources_list = list(sources) self.sink_list = list(sinks) self.time = initial_time self.timedelta = timedelta self.end_time = end_time self.channels = [] # (inbox, outbox) self.neighbors = {} self.stateConsumer = None