Interface CustomerModelAccessor

  • All Known Implementing Classes:
    OfficeComplex.TariffEvaluationWrapper

    public interface CustomerModelAccessor
    Defines an interface for access to customer model details that support tariff evaluation. This includes generation of per-tariff customer usage/production profiles. Required by TariffEvaluationHelper. Profiles can be for a full day, a full week, or whatever time period makes sense for the customer. Usage may be for a single individual customer or for the entire population. Results are normalized by the tariff evaluation process, so the only requirement is that all profiles for a given customer use the same time period (and the same weather), and the same population.
    Author:
    John Collins
    • Method Detail

      • getCustomerInfo

        CustomerInfo getCustomerInfo()
        Returns the CustomerInfo instance for this customer model.
      • getCapacityProfile

        CapacityProfile getCapacityProfile​(Tariff tariff)
        Returns a capacity profile for the given tariff. This must represent the usage of a single individual in a population model over some model-specific time period.
      • getBrokerSwitchFactor

        double getBrokerSwitchFactor​(boolean isSuperseding)
        Returns a [0,1] value representing the inconvenience of switching brokers. The value may depend on whether the current subscription is being switched to a superseding tariff as a result of revocation.
      • getTariffChoiceSample

        double getTariffChoiceSample()
        Returns a [0,1] random value used to make choices using the logit choice model.
      • getInertiaSample

        double getInertiaSample()
        Returns a [0,1] random value used to choose whether individual customers evaluate tariffs or not.
      • getShiftingInconvenienceFactor

        double getShiftingInconvenienceFactor​(Tariff tariff)
        Returns a [0,1] value representing the inconvenience of dealing with curtailment in exchange for a lower price.