private DistributedParameterValueWithUnit distributedParameterValueFrom(IDistributedParameter parameter) { var parameterPath = _entityPathResolver.PathFor(parameter); var distributionType = parameter.Formula.DistributionType(); double p1 = 0, p2 = 0; if (distributionType == DistributionTypes.Normal || distributionType == DistributionTypes.LogNormal) { p1 = parameter.MeanParameter.Value; p2 = parameter.DeviationParameter.Value; } else if (distributionType == DistributionTypes.Uniform) { p1 = parameter.Parameter(Constants.Distribution.MINIMUM).Value; p2 = parameter.Parameter(Constants.Distribution.MAXIMUM).Value; } var distributedParameterValue = new DistributedParameterValue(parameterPath, parameter.Value, parameter.Percentile, p1, p2, distributionType); return(new DistributedParameterValueWithUnit(distributedParameterValue, parameter.BaseUnitName())); }
public DistributedParameterValueWithUnit(DistributedParameterValue distributedParameterValue, string unit = "") : base(distributedParameterValue, unit) { _distributedParameterValue = distributedParameterValue; }