Class EnergiemengeExtension
Do calculations on top of an Energiemenge BO4E.
Inheritance
Namespace: BO4E.Extensions.BusinessObjects.Energiemenge
Assembly: BO4E-dotnet.Extensions.dll
Syntax
public static class EnergiemengeExtension : object
Methods
| Improve this Doc View SourceAddDaysDST(DateTime, Double, TimeZoneInfo)
adds value days to dt. Adding 1 day might actually add 25 or 23 hours if the transisition DST<->non-DST happens.
Declaration
public static DateTime AddDaysDST(this DateTime dt, double value, TimeZoneInfo tz = null)
Parameters
| Type | Name | Description |
|---|---|---|
| DateTime | dt | datetime (kind unspecified or Utc) |
| System.Double | value | number of days to add |
| TimeZoneInfo | tz | timezone |
Returns
| Type | Description |
|---|---|
| DateTime |
Detangle(Energiemenge)
Declaration
public static void Detangle(this Energiemenge em)
Parameters
| Type | Name | Description |
|---|---|---|
| Energiemenge | em |
FixSapCDSBug(Energiemenge)
Our SAP CDS has a bug: When there's a change from non-DST to DST the Enddatum is set to the first second of the DST period. To
Declaration
public static void FixSapCDSBug(this Energiemenge em)
Parameters
| Type | Name | Description |
|---|---|---|
| Energiemenge | em |
GetAverage(Energiemenge)
Get Average (GetAverage(Energiemenge, TimeRange, Wertermittlungsverfahren, String, Mengeneinheit)) for a pure Energiemenge with automatically found parameters.
Declaration
public static Tuple<decimal?, Mengeneinheit> GetAverage(this Energiemenge em)
Parameters
| Type | Name | Description |
|---|---|---|
| Energiemenge | em | Energiemenge |
Returns
| Type | Description |
|---|---|
| Tuple<System.Nullable<System.Decimal>, Mengeneinheit> | Tuple of average value and unit of measurement |
GetAverage(Energiemenge, Wertermittlungsverfahren, String, Mengeneinheit)
Same as
Declaration
public static decimal? GetAverage(this Energiemenge em, Wertermittlungsverfahren wev, string obiskennzahl, Mengeneinheit me)
Parameters
| Type | Name | Description |
|---|---|---|
| Energiemenge | em | Energiemenge |
| Wertermittlungsverfahren | wev | type of measurement |
| System.String | obiskennzahl | OBIS |
| Mengeneinheit | me | an intensive or extensive unit |
Returns
| Type | Description |
|---|---|
| System.Nullable<System.Decimal> | The average for the given Mengeneinheit for the Energiemenge object or null if there was no Verbrauch for the given Mengeneinheit. |
GetAverage(Energiemenge, TimeRange, Wertermittlungsverfahren, String, Mengeneinheit)
Get average of Mengeneinheit for given time interval
Declaration
public static decimal? GetAverage(this Energiemenge em, TimeRange reference, Wertermittlungsverfahren wev, string obiskennzahl, Mengeneinheit me)
Parameters
| Type | Name | Description |
|---|---|---|
| Energiemenge | em | Energiemenge |
| TimeRange | reference | reference time frame |
| Wertermittlungsverfahren | wev | Wertermittlungsverfahren |
| System.String | obiskennzahl | OBIS |
| Mengeneinheit | me | an extensive or intensive unit |
Returns
| Type | Description |
|---|---|
| System.Nullable<System.Decimal> | the average value or null if no Verbrauch overlapped with the specified time interval |
GetCompletenessReport(Energiemenge)
GetCompletenessReport(Energiemenge, ITimeRange, Wertermittlungsverfahren, String, Mengeneinheit) for pure Energiemengen within their own time range.
Declaration
public static CompletenessReport GetCompletenessReport(this Energiemenge em)
Parameters
| Type | Name | Description |
|---|---|---|
| Energiemenge | em | Energiemenge |
Returns
| Type | Description |
|---|---|
| CompletenessReport | GetCompletenessReport(Energiemenge, ITimeRange, Wertermittlungsverfahren, String, Mengeneinheit) |
GetCompletenessReport(Energiemenge, CompletenessReport.CompletenessReportConfiguration)
Generate a CompletenessReport for the given configuration. Same as
Declaration
public static CompletenessReport GetCompletenessReport(this Energiemenge em, CompletenessReport.CompletenessReportConfiguration config)
Parameters
| Type | Name | Description |
|---|---|---|
| Energiemenge | em | Energiemenge |
| CompletenessReport.CompletenessReportConfiguration | config | configuration container |
Returns
| Type | Description |
|---|---|
| CompletenessReport |
GetCompletenessReport(Energiemenge, ITimeRange)
Generate a CompletenessReport for the given refenrence time frame reference
Declaration
public static CompletenessReport GetCompletenessReport(this Energiemenge em, ITimeRange reference)
Parameters
| Type | Name | Description |
|---|---|---|
| Energiemenge | em | Energiemenge |
| ITimeRange | reference | reference time frame |
Returns
| Type | Description |
|---|---|
| CompletenessReport |
GetCompletenessReport(Energiemenge, ITimeRange, Wertermittlungsverfahren, String, Mengeneinheit)
Generate a CompletenessReport for the given parameters.
Declaration
public static CompletenessReport GetCompletenessReport(this Energiemenge em, ITimeRange reference, Wertermittlungsverfahren wev, string obiskennzahl, Mengeneinheit einheit)
Parameters
| Type | Name | Description |
|---|---|---|
| Energiemenge | em | Energiemenge |
| ITimeRange | reference | reference time frame |
| Wertermittlungsverfahren | wev | Wertermittlungsverfahren |
| System.String | obiskennzahl | OBIS Kennzahl |
| Mengeneinheit | einheit | Mengeneinheit |
Returns
| Type | Description |
|---|---|
| CompletenessReport | the completeness report |
GetConsumption(Energiemenge, ITimeRange)
Get consumption in given time reference frame. Trying to automatically determine parameters and forward to
Declaration
public static Tuple<decimal, Mengeneinheit> GetConsumption(this Energiemenge em, ITimeRange reference)
Parameters
| Type | Name | Description |
|---|---|---|
| Energiemenge | em | Energiemenge |
| ITimeRange | reference | time reference frame |
Returns
| Type | Description |
|---|---|
| Tuple<System.Decimal, Mengeneinheit> | Tuple of consumption value and automatically determined unit of measurement |
GetConsumption(Energiemenge, ITimeRange, Wertermittlungsverfahren, String, Mengeneinheit)
Returns the consumption of a given kind of Mengeneinheit within the specified reference time range.
Declaration
public static decimal GetConsumption(this Energiemenge em, ITimeRange reference, Wertermittlungsverfahren wev, string obiskennzahl, Mengeneinheit me)
Parameters
| Type | Name | Description |
|---|---|---|
| Energiemenge | em | Energiemenge |
| ITimeRange | reference | reference time frame |
| Wertermittlungsverfahren | wev | Wertermittlungsverfahren |
| System.String | obiskennzahl | OBIS number |
| Mengeneinheit | me | an extensive unit (e.g. "kWh") |
Returns
| Type | Description |
|---|---|
| System.Decimal | the consumption within the give time slice |
GetCoverage(Energiemenge)
Get percentage of full time range of energiemenge which is covered with values.
Declaration
public static decimal GetCoverage(this Energiemenge em)
Parameters
| Type | Name | Description |
|---|---|---|
| Energiemenge | em | Energiemenge |
Returns
| Type | Description |
|---|---|
| System.Decimal | value between 0 (only coverage for 1 point in time) and 1.0 (100% coverage) |
GetCoverage(Energiemenge, ITimeRange)
Get percentage of time range covered by pure Energiemenge.
Declaration
public static decimal GetCoverage(this Energiemenge em, ITimeRange reference)
Parameters
| Type | Name | Description |
|---|---|---|
| Energiemenge | em | pure Energiemenge |
| ITimeRange | reference | time frame reference |
Returns
| Type | Description |
|---|---|
| System.Decimal | value between 0 (only coverage for 1 point in time) and 1.0 (100% coverage) |
GetCoverage(Energiemenge, ITimeRange, Wertermittlungsverfahren, String, Mengeneinheit, Int32)
Get ratio of overlap between given Energiemenge and a reference.
Method is basically just another name for
Declaration
public static decimal GetCoverage(this Energiemenge em, ITimeRange reference, Wertermittlungsverfahren wev, string obisKz, Mengeneinheit mengeneinheit, int decimalRounding = 10)
Parameters
| Type | Name | Description |
|---|---|---|
| Energiemenge | em | Energiemenge |
| ITimeRange | reference | reference time range |
| Wertermittlungsverfahren | wev | type of measurement |
| System.String | obisKz | OBIS |
| Mengeneinheit | mengeneinheit | unit of measurement |
| System.Int32 | decimalRounding | post decimals |
Returns
| Type | Description |
|---|---|
| System.Decimal | value between 0 (no overlap) and 1.0 (100% overlap) |
GetDailyCompletenessReports(Energiemenge, ITimeRange, Boolean)
Get Daily Completeness Reports for overallTimeRange. The magic is, that it takes DST into account!
Declaration
public static IDictionary<ITimeRange, CompletenessReport> GetDailyCompletenessReports(this Energiemenge em, ITimeRange overallTimeRange, bool useParallelExecution = false)
Parameters
| Type | Name | Description |
|---|---|---|
| Energiemenge | em | Energiemenge |
| ITimeRange | overallTimeRange | overall time frame. Beginning and end must have same hour/minute/second |
| System.Boolean | useParallelExecution | set true to internally use parallel linq |
Returns
| Type | Description |
|---|---|
| IDictionary<ITimeRange, CompletenessReport> |
GetDailyPlausibilityReports(Energiemenge, PlausibilityReport.PlausibilityReportConfiguration)
Get Daily Completeness Reports for overall time range defined in config.
The magic is, that it takes DST into account!
Declaration
public static IDictionary<ITimeRange, PlausibilityReport> GetDailyPlausibilityReports(this Energiemenge em, PlausibilityReport.PlausibilityReportConfiguration config)
Parameters
| Type | Name | Description |
|---|---|---|
| Energiemenge | em | Energiemenge |
| PlausibilityReport.PlausibilityReportConfiguration | config | configuration that contains the overall time range in Timeframe |
Returns
| Type | Description |
|---|---|
| IDictionary<ITimeRange, PlausibilityReport> |
GetJointCoverage(Energiemenge, TimeRange)
Get percentage of time range covered by all Wertermittlungsverfahren/OBIS/Mengeneinheit combinations, that are present in the Energiemenge->energieverbrauch array.
Declaration
public static decimal GetJointCoverage(this Energiemenge em, TimeRange reference)
Parameters
| Type | Name | Description |
|---|---|---|
| Energiemenge | em | Energiemenge |
| TimeRange | reference | reference |
Returns
| Type | Description |
|---|---|
| System.Decimal |
GetLoad(Energiemenge, Mengeneinheit, DateTime)
Returns the load in an intensive unit for a given point in time.
Declaration
public static decimal? GetLoad(this Energiemenge em, Mengeneinheit me, DateTime dt)
Parameters
| Type | Name | Description |
|---|---|---|
| Energiemenge | em | Energiemenge |
| Mengeneinheit | me | an intensive unit (e.g. "kW") |
| DateTime | dt | point in time |
Returns
| Type | Description |
|---|---|
| System.Nullable<System.Decimal> | load if Energiemenge BO contains value for specified date time |
GetMissingTimeRanges(Energiemenge)
Get list of those time ranges within the energiemenge where there are gaps.
Declaration
public static IList<TimeRange> GetMissingTimeRanges(this Energiemenge em)
Parameters
| Type | Name | Description |
|---|---|---|
| Energiemenge | em | Energiemenge |
Returns
| Type | Description |
|---|---|
| IList<TimeRange> |
GetMissingTimeRanges(Energiemenge, ITimeRange, Wertermittlungsverfahren, String, Mengeneinheit)
Get a list of those time ranges within a reference, where no energieverbrauch entries are defined.
Declaration
public static List<TimeRange> GetMissingTimeRanges(this Energiemenge em, ITimeRange reference, Wertermittlungsverfahren wev, string obis, Mengeneinheit me)
Parameters
| Type | Name | Description |
|---|---|---|
| Energiemenge | em | Energiemenge |
| ITimeRange | reference | reference timeframe |
| Wertermittlungsverfahren | wev | Wertermittlungsverfahren |
| System.String | obis | OBIS-Kennzahl |
| Mengeneinheit | me | Mengeneinheit |
Returns
| Type | Description |
|---|---|
| List<TimeRange> |
GetMissingTimeRanges(Energiemenge, TimeRange)
Declaration
public static List<TimeRange> GetMissingTimeRanges(this Energiemenge em, TimeRange reference)
Parameters
| Type | Name | Description |
|---|---|---|
| Energiemenge | em | Energiemenge |
| TimeRange | reference | reference time frame |
Returns
| Type | Description |
|---|---|
| List<TimeRange> |
GetMonthlyCompletenessReports(Energiemenge, ITimeRange, Boolean)
Get Monthly Completeness Reports for overallTimeRange.
Declaration
public static IDictionary<ITimeRange, CompletenessReport> GetMonthlyCompletenessReports(this Energiemenge em, ITimeRange overallTimeRange, bool useParallelExecution = false)
Parameters
| Type | Name | Description |
|---|---|---|
| Energiemenge | em | Energiemenge |
| ITimeRange | overallTimeRange | |
| System.Boolean | useParallelExecution | set true to internally use parallel linq |
Returns
| Type | Description |
|---|---|
| IDictionary<ITimeRange, CompletenessReport> |
GetMonthlyPlausibilityReports(Energiemenge, PlausibilityReport.PlausibilityReportConfiguration)
Get Monthly Completeness Reports for overall time range defined in config.
Declaration
public static IDictionary<ITimeRange, PlausibilityReport> GetMonthlyPlausibilityReports(this Energiemenge em, PlausibilityReport.PlausibilityReportConfiguration config)
Parameters
| Type | Name | Description |
|---|---|---|
| Energiemenge | em | Energiemenge |
| PlausibilityReport.PlausibilityReportConfiguration | config | configuration that contains the overall time range in Timeframe |
Returns
| Type | Description |
|---|---|
| IDictionary<ITimeRange, PlausibilityReport> |
GetPlausibilityReport(Energiemenge, Energiemenge, ITimeRange, Boolean)
Returns a PlausibilityReport that compares emReference with emOther.
within the interval defined in timeframe.
Declaration
public static PlausibilityReport GetPlausibilityReport(this Energiemenge emReference, Energiemenge emOther, ITimeRange timeframe = null, bool ignoreLocation = false)
Parameters
| Type | Name | Description |
|---|---|---|
| Energiemenge | emReference | reference Energiemenge (reference = used for normalisation) |
| Energiemenge | emOther | other Energiemenge |
| ITimeRange | timeframe | time frame to be analysed. If null, the overlap of |
| System.Boolean | ignoreLocation | By default (false) an ArgumentException is thrown if the LokationsId do not match. Setting this flag suppresses the error. |
Returns
| Type | Description |
|---|---|
| PlausibilityReport |
GetPlausibilityReport(Energiemenge, PlausibilityReport.PlausibilityReportConfiguration)
same as GetPlausibilityReport(Energiemenge, Energiemenge, ITimeRange, Boolean) but with a strongly typed container as input.
Declaration
public static PlausibilityReport GetPlausibilityReport(this Energiemenge energiemenge, PlausibilityReport.PlausibilityReportConfiguration config)
Parameters
| Type | Name | Description |
|---|---|---|
| Energiemenge | energiemenge | |
| PlausibilityReport.PlausibilityReportConfiguration | config | container containing the relevant data |
Returns
| Type | Description |
|---|---|
| PlausibilityReport |
GetSlicedCompletenessReports(Energiemenge, IEnumerable<ITimeRange>, Boolean)
creates a dictionary of completeness reports for a given list of reference time ranges.
Declaration
public static IDictionary<ITimeRange, CompletenessReport> GetSlicedCompletenessReports(this Energiemenge em, IEnumerable<ITimeRange> ranges, bool useParallelExecution = false)
Parameters
| Type | Name | Description |
|---|---|---|
| Energiemenge | em | Energiemenge |
| IEnumerable<ITimeRange> | ranges | list of ranges for which the completeness reports are generated |
| System.Boolean | useParallelExecution | set true to internally use parallel linq |
Returns
| Type | Description |
|---|---|
| IDictionary<ITimeRange, CompletenessReport> |
GetSlicedPlausibilityReports(Energiemenge, PlausibilityReport.PlausibilityReportConfiguration, IEnumerable<ITimeRange>)
creates a dictionary of completeness reports for a given list of reference time ranges.
Declaration
public static IDictionary<ITimeRange, PlausibilityReport> GetSlicedPlausibilityReports(this Energiemenge em, PlausibilityReport.PlausibilityReportConfiguration config, IEnumerable<ITimeRange> ranges)
Parameters
| Type | Name | Description |
|---|---|---|
| Energiemenge | em | Energiemenge |
| PlausibilityReport.PlausibilityReportConfiguration | config | |
| IEnumerable<ITimeRange> | ranges | list of ranges for which the completeness reports are generated |
Returns
| Type | Description |
|---|---|
| IDictionary<ITimeRange, PlausibilityReport> |
GetTimeRange(Energiemenge)
Get TimeRange covery by Energiemenge
Declaration
public static TimeRange GetTimeRange(this Energiemenge menge)
Parameters
| Type | Name | Description |
|---|---|---|
| Energiemenge | menge | Energiemenge |
Returns
| Type | Description |
|---|---|
| TimeRange | TimeRange ranging from the earliest Startdatum to the latest Enddatum |
GetTotalConsumption(Energiemenge)
Same as GetTotalConsumption(Energiemenge, Wertermittlungsverfahren, String, Mengeneinheit) but without autodetected parameters. By default a the full length of the Energiemenge is taken into account.
Declaration
public static Tuple<decimal, Mengeneinheit> GetTotalConsumption(this Energiemenge em)
Parameters
| Type | Name | Description |
|---|---|---|
| Energiemenge | em | Energiemenge |
Returns
| Type | Description |
|---|---|
| Tuple<System.Decimal, Mengeneinheit> | Tuple of consumption value and unit of measurement |
GetTotalConsumption(Energiemenge, Wertermittlungsverfahren, String, Mengeneinheit)
Get total consumption for given parameters
Declaration
public static decimal GetTotalConsumption(this Energiemenge em, Wertermittlungsverfahren wev, string obiskennzahl, Mengeneinheit me)
Parameters
| Type | Name | Description |
|---|---|---|
| Energiemenge | em | Energiemenge |
| Wertermittlungsverfahren | wev | type of measurement |
| System.String | obiskennzahl | OBIS |
| Mengeneinheit | me | unit of measurement |
Returns
| Type | Description |
|---|---|
| System.Decimal | consumption value |
GetWevObisMeCombinations(Energiemenge)
get all (Wertermittlungsverfahren, OBIS, Mengeneinheit) tuples occurring in em
Declaration
public static ISet<Tuple<Wertermittlungsverfahren, string, Mengeneinheit>> GetWevObisMeCombinations(this Energiemenge em)
Parameters
| Type | Name | Description |
|---|---|---|
| Energiemenge | em | em |
Returns
| Type | Description |
|---|---|
| ISet<Tuple<Wertermittlungsverfahren, System.String, Mengeneinheit>> | A Set of tuples of all (Wertermittlungsverfahren, OBIS, Mengeneinheit) combinations |
GetZeitraum(Energiemenge)
Get Zeitraum covered by Energiemenge.
Declaration
public static Zeitraum GetZeitraum(this Energiemenge menge)
Parameters
| Type | Name | Description |
|---|---|---|
| Energiemenge | menge | Energiemenge |
Returns
| Type | Description |
|---|---|
| Zeitraum | Zeitraum ranging from the earliest Startdatum to the latest Enddatum |
IsContinuous(Energiemenge)
Test, if the Energiemenge is continuous within its own min/max range. IsContinuous(Energiemenge, TimeRange)
Declaration
public static bool IsContinuous(this Energiemenge em)
Parameters
| Type | Name | Description |
|---|---|---|
| Energiemenge | em | Energiemenge |
Returns
| Type | Description |
|---|---|
| System.Boolean | true iff Energiemenge has defined value for every point in time t in min(energieverbrauch.startdatum) <= t < max(energieverbrauch.enddatum); false otherwise |
IsContinuous(Energiemenge, TimeRange)
Test, if the Energiemenge does have a defined value for every point in time within the given time range.
Declaration
public static bool IsContinuous(this Energiemenge em, TimeRange reference)
Parameters
| Type | Name | Description |
|---|---|---|
| Energiemenge | em | Energiemenge |
| TimeRange | reference | time range to check |
Returns
| Type | Description |
|---|---|
| System.Boolean | true iff Energiemenge has defined value for every point in time range, false otherwise |
IsEvenlySpaced(Energiemenge, ITimeRange, Wertermittlungsverfahren, String, Mengeneinheit, Boolean)
Test, if the single entries/intervals of the energieverbrauch array share the same duration and spacing in time.
Declaration
public static bool IsEvenlySpaced(this Energiemenge em, ITimeRange reference, Wertermittlungsverfahren wev, string obis, Mengeneinheit me, bool allowGaps = false)
Parameters
| Type | Name | Description |
|---|---|---|
| Energiemenge | em | Energiemenge |
| ITimeRange | reference | reference time frame |
| Wertermittlungsverfahren | wev | Wertermittlungsverfahren |
| System.String | obis | OBIS-Kennzahl |
| Mengeneinheit | me | Mengeneinheit |
| System.Boolean | allowGaps | set true to allow gaps |
Returns
| Type | Description |
|---|---|
| System.Boolean | True, if all energieverbrauch entries have the same length and their start and enddatum are evenly spaced. Also true, if there less than 2 entries in the energieverbrauch array. |
IsEvenlySpaced(Energiemenge, Boolean)
Declaration
public static bool IsEvenlySpaced(this Energiemenge em, bool allowGaps = false)
Parameters
| Type | Name | Description |
|---|---|---|
| Energiemenge | em | Energiemenge |
| System.Boolean | allowGaps |
Returns
| Type | Description |
|---|---|
| System.Boolean |
IsExtensive(Energiemenge)
Test if the energiemenge contains only extensive consumption units
Declaration
public static bool IsExtensive(this Energiemenge em)
Parameters
| Type | Name | Description |
|---|---|---|
| Energiemenge | em | Energiemenge |
Returns
| Type | Description |
|---|---|
| System.Boolean | true iff all |
IsIntensive(Energiemenge)
opposite of IsExtensive(Energiemenge)
Declaration
public static bool IsIntensive(this Energiemenge em)
Parameters
| Type | Name | Description |
|---|---|---|
| Energiemenge | em | Energiemenge |
Returns
| Type | Description |
|---|---|
| System.Boolean | true iff all |
IsPure(Energiemenge, Boolean)
shortcut for IsPureMengeneinheit(Energiemenge) && IsPureObisKennzahl(Energiemenge) && IsPureWertermittlungsverfahren(Energiemenge)
Declaration
public static bool IsPure(this Energiemenge em, bool checkUserProperties = false)
Parameters
| Type | Name | Description |
|---|---|---|
| Energiemenge | em | Energiemenge |
| System.Boolean | checkUserProperties | set true, to additionally check if user properties of all entries in energieverbrauch are equal. |
Returns
| Type | Description |
|---|---|
| System.Boolean | true iff the Energiemenge is pure in all OBIS-Kennzahl, Wertermittlungsverfahren and Mengeneinheit |
IsPureMengeneinheit(Energiemenge)
test if Energiemenge has only one Mengeneinheit
Declaration
public static bool IsPureMengeneinheit(this Energiemenge em)
Parameters
| Type | Name | Description |
|---|---|---|
| Energiemenge | em | Energiemenge |
Returns
| Type | Description |
|---|---|
| System.Boolean | true iff the Energiemenge->energieverbrauch list does only contain entries with mutually convertible units |
IsPureObisKennzahl(Energiemenge)
test if Energiemenge has only one Obiskennzahl
Declaration
public static bool IsPureObisKennzahl(this Energiemenge em)
Parameters
| Type | Name | Description |
|---|---|---|
| Energiemenge | em | Energiemenge |
Returns
| Type | Description |
|---|---|
| System.Boolean | true iff the Energiemenge->energieverbrauch list has at most one distinct Obiskennzahl |
IsPureUserProperties(Energiemenge)
test if all entries in Energieverbrauch do have same user properties. Only tests for those user properties present. Missing user properties do not lead to false.
Declaration
public static bool IsPureUserProperties(this Energiemenge em)
Parameters
| Type | Name | Description |
|---|---|---|
| Energiemenge | em | Energiemenge |
Returns
| Type | Description |
|---|---|
| System.Boolean |
IsPureWertermittlungsverfahren(Energiemenge)
test if Energiemenge has only one Wertermittlungsverfahren
Declaration
public static bool IsPureWertermittlungsverfahren(this Energiemenge em)
Parameters
| Type | Name | Description |
|---|---|---|
| Energiemenge | em | Energiemenge |
Returns
| Type | Description |
|---|---|
| System.Boolean | true iff the Energiemenge->energieverbrauch list has at most one distinct Wertermittlungsverfahren |
Normalise(Energiemenge, Decimal)
normalise energiemenge->energieverbrauch consumption values to a given target value
Declaration
public static Energiemenge Normalise(this Energiemenge em, decimal target = 1.0M)
Parameters
| Type | Name | Description |
|---|---|---|
| Energiemenge | em | Energiemenge |
| System.Decimal | target | normalising constant (1.0 by default) |
Returns
| Type | Description |
|---|---|
| Energiemenge | new Energiemenge object with normalised consumption values |
SplitInPureGroups(Energiemenge)
Declaration
public static List<Energiemenge> SplitInPureGroups(this Energiemenge em)
Parameters
| Type | Name | Description |
|---|---|---|
| Energiemenge | em |
Returns
| Type | Description |
|---|---|
| List<Energiemenge> |