larvaworld.lib.param.composition
Attributes
Classes
Chemical compound parameter group for nutritional composition. |
|
Substrate nutritional composition parameter group. |
|
Odor stimulus parameter group for olfactory experiments. |
|
Life stage epoch parameter group with substrate and timing. |
|
Life history parameter group for larva development. |
|
Air puff stimulus parameter group for mechanosensory experiments. |
Module Contents
- class larvaworld.lib.param.composition.Compound(**kwargs)
Bases:
larvaworld.lib.param.nested_parameter_group.NestedConfChemical compound parameter group for nutritional composition.
Defines molecular properties and elemental composition for substrate compounds used in larva nutrition modeling.
- Attributes:
d: Density in g/cm³ w: Molecular weight in g/mol nC: Number of carbon atoms nH: Number of hydrogen atoms nO: Number of oxygen atoms nN: Number of nitrogen atoms ww: Computed weighted molecular mass
- Example:
>>> glucose = Compound(w=180.18, nC=6, nH=12, nO=6) >>> glucose.ww # Weighted mass computed automatically
- d
- w
- nC
- nH
- nO
- nN
- ww
- class larvaworld.lib.param.composition.Substrate(quality=1.0, type=None, **kwargs)
Bases:
larvaworld.lib.param.nested_parameter_group.NestedConfSubstrate nutritional composition parameter group.
Models substrate nutrition with compound concentrations, quality degradation, and molar concentration calculations for feeding/growth simulations.
- Attributes:
composition: Dict of compound densities (g/cm³) per compound type quality: Quality factor (0-1, default: 1.0) for nutrient degradation d: Total substrate density C: Total molar concentration X: Nutrient molar concentration X_ratio: Nutrient/total concentration ratio
- Example:
>>> substrate = Substrate(type='standard', quality=0.8) >>> substrate.get_f(K=0.1) # Feeding response function
- composition
- quality
- d_water = 1
- d_yeast_drop = 0.125
- V_drop = 0.05
- d
- C
- X
- X_ratio
- get_d_X(compounds=None, quality=None) float
- get_w_X(compounds=None) float
- get_X(quality=None, compounds=None) float
- get_mol(V, **kwargs) float
- get_f(K, **kwargs) float
- get_C(quality=None) float
- get_X_ratio(**kwargs) float
- larvaworld.lib.param.composition.substrate_dict
- class larvaworld.lib.param.composition.Odor(**kwargs)
Bases:
larvaworld.lib.param.nested_parameter_group.NestedConfOdor stimulus parameter group for olfactory experiments.
Defines odorant identity, concentration gradient (Gaussian distribution), and provides concentration computation at spatial positions.
- Attributes:
id: Unique odorant identifier intensity: Peak concentration in micromoles (optional) spread: Gradient spread (standard deviation, optional) dist: Multivariate normal distribution (auto-computed) peak_value: Peak concentration value (auto-computed)
- Example:
>>> odor = Odor(id='odorA', intensity=2.0, spread=0.01) >>> odor.gaussian_value([0.005, 0.005]) # Concentration at position
- id
- intensity
- spread
- gaussian_value(pos) float | None
- draw_dist() None
- classmethod oG(c=1, id='Odor')
- classmethod oD(c=1, id='Odor')
- classmethod oO(o, **kwargs)
- class larvaworld.lib.param.composition.Epoch(**kwargs)
Bases:
larvaworld.lib.param.nested_parameter_group.NestedConfLife stage epoch parameter group with substrate and timing.
Defines developmental epoch with age range and associated substrate nutrition, used for life history modeling.
- Attributes:
age_range: Epoch duration in hours post-hatch (start, end) substrate: Substrate nutrition for this epoch start: Epoch start time (property) end: Epoch end time (property, can be None for final epoch)
- Example:
>>> epoch = Epoch(age_range=(0.0, 96.0), substrate={'type': 'standard'}) >>> epoch.ticks(dt=0.1) # Simulation ticks for epoch duration
- age_range
- substrate
- property start: float
- property end: float | None
- ticks(dt) int | float
- class larvaworld.lib.param.composition.Life(**kwargs: Any)
Bases:
larvaworld.lib.param.nested_parameter_group.NestedConfLife history parameter group for larva development.
Defines complete life history with age, feeding epochs, and pupation. Supports construction from epoch ticks or pre-starvation protocols.
- Attributes:
age: Starting age in hours post-hatch (default: 0.0, None = pupation) epochs: List of Epoch instances defining feeding schedule reach_pupation: Whether to grow to pupation (default: False)
- Example:
>>> life = Life(age=96.0, epochs=[epoch1, epoch2]) >>> life_prestarved = Life.prestarved(age=72.0, h_starved=24.0)
- age
- epochs
- reach_pupation
- classmethod from_epoch_ticks(ticks=[], subs=None, reach_pupation=False)
- classmethod prestarved(age=0.0, h_starved=0.0, rearing_quality=1.0, starvation_quality=0.0, final_quality=None, substrate_type='standard', reach_pupation=False)
- class larvaworld.lib.param.composition.AirPuff(**kwargs: Any)
Bases:
larvaworld.lib.param.nested_parameter_group.NestedConfAir puff stimulus parameter group for mechanosensory experiments.
Defines air puff timing and strength for delivering mechanical stimulation during simulations.
- Attributes:
duration: Puff duration in seconds (default: 1.0) start_time: Puff onset time in seconds (default: None) strength: Puff strength coefficient (default: 1.0)
- Example:
>>> puff = AirPuff(duration=2.0, start_time=30.0, strength=0.8)
- duration
- speed
- direction
- start_time
- N
- interval