public Time(TimeDomain domain, int year) { // Set the time domain. this.Domain = domain; // Initialize the value array to the corect number of elements for the time domain. if (domain == TimeDomain.None) { this.Value = new int[0]; } else if (domain == TimeDomain.Year) { this.Value = new int[1]; this.Value[0] = year; } else if (domain == TimeDomain.Month || domain == TimeDomain.Quarter) { this.Value = new int[2]; this.Value[0] = year; this.Value[1] = 1; } else // Day { this.Value = new int[3]; this.Value[0] = year; this.Value[1] = 1; this.Value[2] = 1; } }
public static string GetOutputFileHeaderFromTimeDomain(TimeDomain timeDomain) { string header = string.Empty; switch (timeDomain) { case TimeDomain.Year: header = "id\tyear\tpm25"; break; case TimeDomain.YearMonth: header = "id\tyear\tmonth\tpm25"; break; case TimeDomain.YearMonthDay: header = "id\tyear\tmonth\tday\tpm25"; break; case TimeDomain.YearQuarter: header = "id\tyear\tquarter\tpm25"; break; } return(header); }
public static TimeDomainContainer DecodeTime(TimeDomain timeDomain, double encodedTime, double timeEncodingFactor) { TimeDomainContainer container = null; switch (timeDomain) { case TimeDomain.Year: container = new TimeDomainContainer(Convert.ToInt32(encodedTime * timeEncodingFactor)); break; case TimeDomain.YearMonth: container = new TimeDomainContainer(Convert.ToInt32(encodedTime * timeEncodingFactor)); break; case TimeDomain.YearMonthDay: int decodedTime = Convert.ToInt32((encodedTime * timeEncodingFactor)); break; case TimeDomain.YearQuarter: container = new TimeDomainContainer(Convert.ToInt32(encodedTime * timeEncodingFactor)); break; } return(container); }
public static List <int> GetTimesToInterpolate(TimeDomain timeDomain) { List <int> times = new List <int>(); int endValue = 0; switch (timeDomain) { case TimeDomain.Year: endValue = YEAR_TIME_DOMAIN_SPECIAL_CASE; break; case TimeDomain.YearMonth: endValue = 12; break; case TimeDomain.YearMonthDay: endValue = 365; break; case TimeDomain.YearQuarter: endValue = 4; break; } for (int indx = 1; indx <= endValue; indx++) { times.Add(indx); } return(times); }
//TODO: TEST this one. public static List <int> GetTimesToInterpolate(TimeDomain timeDomain, int yearRangeStart, int yearRangeEnd) { List <int> times = new List <int>(); for (int indx = yearRangeStart; indx <= yearRangeEnd; indx++) { times.Add(indx); } return(times); }
public static List <double> GetEncodedTimesToInterpolate(TimeDomain timeDomain, double timeEncodingFactor) { List <double> times = new List <double>(); List <int> unEncodedTimes = GetTimesToInterpolate(timeDomain); foreach (int unEncodedTime in unEncodedTimes) { times.Add(unEncodedTime / timeEncodingFactor); } return(times); }
public IPIDBaseController SetSampleTime(double sampleTime) { _TimeDomain = TimeDomain.DiscreteTime; if (sampleTime < 0 && sampleTime != -1) { throw new SimulinkModelGeneratorException("SampleTime can not be negative, besides -1 for inherited types"); } _SampleTime = sampleTime.ToString(); return(this); }
public static Dictionary <int, TimeDomainContainer> GetTimesToInterpolateAsDictionary(int dataYear, TimeDomain timeDomain) { Dictionary <int, TimeDomainContainer> dictionary = new Dictionary <int, TimeDomainContainer>(); int endValue = 0; switch (timeDomain) { case TimeDomain.Year: endValue = YEAR_TIME_DOMAIN_SPECIAL_CASE; break; case TimeDomain.YearMonth: endValue = 12; dictionary = GetTimesToInterporlateDictionaryForMonthOrQuarter(dataYear, endValue, true); break; case TimeDomain.YearMonthDay: endValue = 365; dictionary = GetTimesToInterporlateDictionaryForDay(dataYear); break; case TimeDomain.YearQuarter: endValue = 4; dictionary = GetTimesToInterporlateDictionaryForMonthOrQuarter(dataYear, endValue, false); break; } return(dictionary); }
public static Dictionary <double, TimeDomainContainer> GetEncodedTimesToInterpolateForYearDictionary(int dataStartYear, int dataEndYear, TimeDomain timeDomain, double timeEncodingFactor) { Dictionary <double, TimeDomainContainer> lookupDictionary = new Dictionary <double, TimeDomainContainer>(); Dictionary <int, TimeDomainContainer> dictionary = GetTimesToInterpolateForYearAsDictionary(dataStartYear, dataEndYear); foreach (int key in dictionary.Keys) { lookupDictionary.Add(key / timeEncodingFactor, dictionary[key]); } return(lookupDictionary); }
public static Dictionary <double, TimeDomain> GetTimesToInterpolateAsDictionary(TimeDomain timeDomain, int yearRangeStart, int yearRangeEnd) { Dictionary <double, TimeDomain> dictionary = new Dictionary <double, TimeDomain>(); for (int indx = yearRangeStart; indx <= yearRangeEnd; indx++) { dictionary.Add(indx, timeDomain); } return(dictionary); }
public static Dictionary <double, TimeDomain> GetEncodedTimesToInterpolateDictionary(TimeDomain timeDomain, double timeEncodingFactor, int yearStartRange, int yearEndRange) { Dictionary <double, TimeDomain> dictionary = new Dictionary <double, TimeDomain>(); foreach (double key in GetTimesToInterpolateAsDictionary(timeDomain, yearStartRange, yearEndRange).Keys) { dictionary.Add(key / timeEncodingFactor, timeDomain); } return(dictionary); }
public IPIDSampleTime SetTimeDomain(TimeDomain timeDomain) { _TimeDomain = timeDomain; return(this); }
public AirCondition(string name, double windSpeedGround, double windDirection, TimeDomain timeDomain, Cloudage cloudage, double envTem) { this.Name = name; this.WindDirection = windDirection; this.WindSpeedGround = windSpeedGround; this.TimeDomain = timeDomain; this.Cloudage = cloudage; this.EnvTem = envTem; }
public AirCondition(string name, double windSpeedGround, double windDirection, TimeDomain timeDomain, SolarRadiation solarRadiation, double envTem) { this.Name = name; this.WindDirection = windDirection; this.WindSpeedGround = windSpeedGround; this.TimeDomain = timeDomain; this.SolarRadiation = solarRadiation; this.EnvTem = envTem; }