public virtual ParameterValuesCache Clone() { var clone = new ParameterValuesCache(); AllParameterValues.Each(x => clone.Add(x.Clone())); return(clone); }
public virtual void Merge(ParameterValuesCache parameterValuesCache, PathCache <IParameter> parameterCache) { var numberOfNewItems = parameterValuesCache.numberOfValuesPerPath; var currentCount = numberOfValuesPerPath; foreach (var parameterPath in parameterValuesCache.AllParameterPaths()) { if (!Has(parameterPath)) { addDefaultValues(parameterCache, parameterPath, currentCount); } ParameterValuesFor(parameterPath).Merge(parameterValuesCache.ParameterValuesFor(parameterPath)); } //fill up the one missing foreach (var parameterPath in AllParameterPaths()) { if (!parameterValuesCache.Has(parameterPath)) { addDefaultValues(parameterCache, parameterPath, numberOfNewItems); } } }
public virtual void RenamePath(string oldPath, string newPath) => ParameterValuesCache.RenamePath(oldPath, newPath);
public virtual void Add(IReadOnlyCollection <ParameterValue> parameterValues) => ParameterValuesCache.Add(parameterValues);
public virtual void Add(ParameterValues parameterValues) => ParameterValuesCache.Add(parameterValues);
public ParameterValues GetOrAddParameterValuesFor(string parameterPath) => ParameterValuesCache.GetOrAddParameterValuesFor(parameterPath);
public virtual ParameterValues ParameterValuesFor(string parameterPath) => ParameterValuesCache.ParameterValuesFor(parameterPath);
public virtual void SetValues(string parameterPath, IReadOnlyList <double> newValues) => ParameterValuesCache.SetValues(parameterPath, newValues);
public virtual IndividualValuesCache Clone() { return(new IndividualValuesCache(ParameterValuesCache.Clone(), CovariateValuesCache.Clone(), new List <int>(IndividualIds))); }
public double[] GetPercentiles(string parameterPath) => ParameterValuesCache.GetPercentiles(parameterPath);
public virtual string[] AllParameterPaths() => ParameterValuesCache.AllParameterPaths();
public virtual IReadOnlyList <double> PercentilesFor(string parameterPath) => ParameterValuesCache.PercentilesFor(parameterPath);
public virtual bool Has(string parameterPath) => ParameterValuesCache.Has(parameterPath);
public IndividualValuesCache(ParameterValuesCache parameterValuesCache, CovariateValuesCache covariateValuesCache, List <int> individualIds) { ParameterValuesCache = parameterValuesCache; CovariateValuesCache = covariateValuesCache; IndividualIds = individualIds; }
public ParameterValue[] AllParameterValuesAt(int indexOfIndividual) => ParameterValuesCache.AllParameterValuesAt(indexOfIndividual);
public virtual void Merge(IndividualValuesCache individualValuesCache, PathCache <IParameter> parameterCache) { IndividualIds.AddRange(individualValuesCache.IndividualIds); CovariateValuesCache.Merge(individualValuesCache.CovariateValuesCache); ParameterValuesCache.Merge(individualValuesCache.ParameterValuesCache, parameterCache); }
public virtual void Remove(string parameterPath) => ParameterValuesCache.Remove(parameterPath);