public void UpdateDistributionBasedOn(IEnumerable <ParameterDistributionMetaData> distributions, IDistributedParameter parameter, IDistributedParameter baseParameter, OriginData originData) { var knownSamples = from distribution in distributions select new Sample(distribution.Age, distribution.Mean); parameter.MeanParameter.Value = _interpolation.Interpolate(knownSamples, originData.Age.Value); parameter.ScaleDistributionBasedOn(baseParameter); }
public void UpdateDistributionBasedOn(IEnumerable <ParameterDistributionMetaData> distributions, IDistributedParameter parameter, IDistributedParameter baseParameter, OriginData originData) { var knownSamples = from distribution in distributions select new { Mean = new Sample(distribution.Age, distribution.Mean), Std = new Sample(distribution.Age, distribution.Deviation) }; knownSamples = knownSamples.ToList(); parameter.MeanParameter.Value = _interpolation.Interpolate(knownSamples.Select(item => item.Mean), originData.Age.Value); parameter.DeviationParameter.Value = _interpolation.Interpolate(knownSamples.Select(item => item.Std), originData.Age.Value); parameter.ScaleDistributionBasedOn(baseParameter); }