Methods API

This section provides detailed API documentation for the methods modules of EnTiSe.

Accessing Methods

EnTiSe provides two ways to access methods:

  1. Through TimeSeriesGenerator (Batch Processing):

    from entise.core.generator import TimeSeriesGenerator
    
    # Initialize the generator
    gen = TimeSeriesGenerator()
    
    # Add objects
    gen.add_objects(objects)
    
    # Generate timeseries
    summary, df = gen.generate(data)
    
  2. Direct Import (Individual Processing):

    # Import a specific method
    from entise.methods.pv import PVLib
    
    # Create an instance
    pvlib = PVLib()
    
    # Generate timeseries
    result = pvlib.generate(obj, data)
    
    # Access results
    summary = result["summary"]
    timeseries = result["timeseries"]
    

Flexible Parameter Passing

When using direct method access, EnTiSe provides flexible ways to pass parameters:

  1. Using Dictionaries:

    # Pass parameters as dictionaries
    obj = {"latitude": 48.1, "longitude": 11.6, "power": 5000}
    data = {"weather": weather_df}
    result = pvlib.generate(obj=obj, data=data)
    
  2. Using Named Parameters:

    # Pass parameters directly by name
    result = pvlib.generate(
        latitude=48.1,
        longitude=11.6,
        power=5000,
        weather=weather_df
    )
    
  3. Combining Both Approaches:

    # Use dictionaries for most parameters
    obj = {"latitude": 48.1, "longitude": 11.6}
    data = {"weather": weather_df}
    
    # Override specific parameters with explicit values
    result = pvlib.generate(
        obj=obj,
        data=data,
        power=5000  # This overrides any "power" value in obj
    )
    

The method automatically determines whether each parameter belongs in the object dictionary or the data dictionary based on the method’s defined required_keys, optional_keys, required_timeseries, and optional_timeseries attributes.

HVAC Methods

R1C1 Method

Occupancy Methods

Auxiliary Methods

Internal Gains

Solar Gains

Selectors