108 lines
5.2 KiB
C#
108 lines
5.2 KiB
C#
|
|
///
|
|||
|
|
/// Copyright (c) 2015 Sensus Metering Systems
|
|||
|
|
///
|
|||
|
|
using System;
|
|||
|
|
using System.Collections.Generic;
|
|||
|
|
|
|||
|
|
namespace Results.Entities
|
|||
|
|
{
|
|||
|
|
public class TestRslt
|
|||
|
|
{
|
|||
|
|
/// Identity
|
|||
|
|
public virtual int Id { get; protected set; }
|
|||
|
|
public virtual Batch Batch { get; set; }
|
|||
|
|
public virtual TestData TestData { get; set; }
|
|||
|
|
public virtual int Part { get; set; }
|
|||
|
|
public virtual int RepetitionNr { get; set; } /// Repetition number from the set of repeated tests (1...)
|
|||
|
|
|
|||
|
|
/// Results
|
|||
|
|
public virtual DateTime StartTime { get; set; } /// Date and time of the test start
|
|||
|
|
public virtual DateTime EndTime { get; set; } /// Date and time of the test end
|
|||
|
|
public virtual double FlowSetTime { get; set; } /// [s] Measurement time in seconds
|
|||
|
|
public virtual double TestTime { get; set; } /// [s] Measurement time in seconds
|
|||
|
|
public virtual float AmbientTempAve { get; set; } /// [deg.C] Average ambient air temperature
|
|||
|
|
public virtual float AmbientPressAve { get; set; } /// Average ambient air pressure
|
|||
|
|
public virtual float AmbientHumiAve { get; set; } /// [%] Average ambient air relative humidity
|
|||
|
|
public virtual float PressUpAvrg { get; set; } /// [Bar] Input water pressure (average)
|
|||
|
|
public virtual float PressUpStart { get; set; } /// [Bar]
|
|||
|
|
public virtual float PressUpEnd { get; set; } /// [Bar]
|
|||
|
|
public virtual float PressUpMin { get; set; } /// [Bar]
|
|||
|
|
public virtual float PressUpMax { get; set; } /// [Bar]
|
|||
|
|
public virtual float PressDownAvrg { get; set; } /// [Bar]
|
|||
|
|
public virtual float PressDownStart { get; set; } /// [Bar]
|
|||
|
|
public virtual float PressDownEnd { get; set; } /// [Bar]
|
|||
|
|
public virtual float PressDownMin { get; set; } /// [Bar]
|
|||
|
|
public virtual float PressDownMax { get; set; } /// [Bar]
|
|||
|
|
public virtual float TempInAvrg { get; set; } /// [deg.C]
|
|||
|
|
public virtual float TempInStart { get; set; } /// [deg.C]
|
|||
|
|
public virtual float TempInEnd { get; set; } /// [deg.C]
|
|||
|
|
public virtual float TempInMin { get; set; } /// [deg.C]
|
|||
|
|
public virtual float TempInMax { get; set; } /// [deg.C]
|
|||
|
|
public virtual float TempOutAvrg { get; set; } /// [deg.C]
|
|||
|
|
public virtual float TempOutStart { get; set; } /// [deg.C]
|
|||
|
|
public virtual float TempOutEnd { get; set; } /// [deg.C]
|
|||
|
|
public virtual float TempOutMin { get; set; } /// [deg.C]
|
|||
|
|
public virtual float TempOutMax { get; set; } /// [deg.C]
|
|||
|
|
public virtual float TempDivAvrg { get; set; } /// [deg.C]
|
|||
|
|
public virtual float TempDivStart { get; set; } /// [deg.C]
|
|||
|
|
public virtual float TempDivEnd { get; set; } /// [deg.C]
|
|||
|
|
public virtual float TempDivMin { get; set; } /// [deg.C]
|
|||
|
|
public virtual float TempDivMax { get; set; } /// [deg.C]
|
|||
|
|
public virtual double MassStartRaw { get; set; } /// [kg]
|
|||
|
|
public virtual double MassStart { get; set; } /// [kg]
|
|||
|
|
public virtual double MassEndRaw { get; set; } /// [kg]
|
|||
|
|
public virtual double MassEnd { get; set; } /// [kg]
|
|||
|
|
public virtual double MassDiff { get; set; } /// [kg]
|
|||
|
|
public virtual double DensityIn { get; set; } /// [kg/m3]
|
|||
|
|
public virtual double DensityOut { get; set; } /// [kg/m3]
|
|||
|
|
public virtual double DensityDiv { get; set; } /// [kg/m3]
|
|||
|
|
public virtual double Buoyancy { get; set; }
|
|||
|
|
public virtual double FlowMass { get; set; } /// [kg/h] calculated from conventional true value
|
|||
|
|
public virtual double FlowCTV { get; set; } /// [l/h] calculated from conventional true value
|
|||
|
|
public virtual double FlowMin { get; set; } /// [l/h] minimum flow
|
|||
|
|
public virtual double FlowMax { get; set; } /// [l/h] maximum flow
|
|||
|
|
public virtual double VolumeCTV { get; set; } /// [l] Volume conventional true value
|
|||
|
|
public virtual double VolumeMaster { get; set; } /// [l] Volume from the master flow meter
|
|||
|
|
public virtual double ErrorMaster { get; set; } /// [%]
|
|||
|
|
public virtual double PulsesMaster { get; set; }
|
|||
|
|
public virtual double ConstMaster { get; set; } /// [pls/l] Pulses per liter master flow meter
|
|||
|
|
|
|||
|
|
|
|||
|
|
/// Wrappers
|
|||
|
|
public string Name()
|
|||
|
|
{
|
|||
|
|
if (TestData.Repeats == 1) { return TestData.Name; }
|
|||
|
|
else { return string.Format("{0} ({1}/{2})", TestData.Name, RepetitionNr, TestData.Repeats); }
|
|||
|
|
}
|
|||
|
|
public double Qfrom() { return TestData.Qfrom; }
|
|||
|
|
public double Qto() { return TestData.Qto; }
|
|||
|
|
public double TargetVolume() { return TestData.TargetVolume; }
|
|||
|
|
public double TargetTime() { return TestData.TargetTime; }
|
|||
|
|
public int Repeats() { return TestData.Repeats; }
|
|||
|
|
public string Method() { return TestData.Method; }
|
|||
|
|
public double ErrLimLo() { return TestData.ErrLimLo; }
|
|||
|
|
public double ErrLimHi() { return TestData.ErrLimHi; }
|
|||
|
|
public double Uncertainty() { return TestData.Uncertainty; }
|
|||
|
|
public string Components() { return TestData.Components; }
|
|||
|
|
|
|||
|
|
|
|||
|
|
public TestRslt()
|
|||
|
|
{
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
public TestRslt(Batch batch, TestData testData, int part, int repetitionNr)
|
|||
|
|
: this()
|
|||
|
|
{
|
|||
|
|
Batch = batch;
|
|||
|
|
TestData = testData;
|
|||
|
|
Part = part;
|
|||
|
|
RepetitionNr = repetitionNr;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
public override string ToString()
|
|||
|
|
{
|
|||
|
|
return string.Format("batch={0}, procedure={1}, test={2}, {3} {4}", Batch.BatchNr, Batch.ProcedureName, Name(), StartTime.ToShortDateString(), StartTime.ToShortTimeString());
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
}
|