babylon.models.components.material

MaterialComponent - Material conditions of an entity.

MaterialComponent represents the material conditions of an entity in the Babylon simulation. It tracks economic resources (wealth), available material resources, and control over the means of production.

This is the fundamental component for the Material Ontology in the Entity-Component architecture.

Classes

MaterialComponent(**data)

Material conditions of an entity.

class babylon.models.components.material.MaterialComponent(**data)[source]

Bases: BaseModel

Material conditions of an entity.

Tracks the economic and material state of an entity including: - Accumulated wealth (Currency) - Available resources (Currency) - Control over means of production (Probability)

All values use constrained types for automatic validation: - wealth, resources: Currency [0, inf) - means_of_production: Probability [0, 1]

This component is immutable (frozen) to ensure state integrity.

Parameters:
wealth

Accumulated economic resources (default: 10.0)

resources

Available material resources (default: 0.0)

means_of_production

Control over productive apparatus [0, 1] (default: 0.0)

model_config: ClassVar[ConfigDict] = {'frozen': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

wealth: Annotated[float]
resources: Annotated[float]
means_of_production: Annotated[float]
property component_type: str

Return the component type identifier.

Returns:

The string ‘material’ identifying this component type.