protected override void Context() { base.Context(); _species = A.Fake <Species>(); _defaultPopulation = new SpeciesPopulation().WithName("POP"); A.CallTo(() => _species.DefaultPopulation).Returns(_defaultPopulation); var individualSettingsDTO = new IndividualSettingsDTO(); A.CallTo(() => _individualDefaultValueRetriever.DefaultSettingFor(_defaultPopulation)).Returns(individualSettingsDTO); var originData = new OriginData(); A.CallTo(() => _insividualSettingsMapper.MapFrom(individualSettingsDTO)).Returns(originData); _individual = new Individual(); A.CallTo(() => _individualFactory.CreateStandardFor(originData)).Returns(_individual); }
protected override void Context() { base.Context(); _originData = new OriginData { Species = A.Fake <Species>().WithName("toto"), SpeciesPopulation = A.Fake <SpeciesPopulation>() }; _individual = new Individual(); _invalidResults = A.Fake <ValidationResult>(); A.CallTo(() => _invalidResults.ValidationState).Returns(ValidationState.Invalid); _organism = A.Fake <Organism>(); _neighborhoods = A.Fake <IContainer>(); _rootContainer = new RootContainer(); A.CallTo(() => _entityBaseFactory.Create <IRootContainer>()).Returns(_rootContainer); A.CallTo(() => _entityBaseFactory.Create <Individual>()).Returns(_individual); A.CallTo(() => _entityBaseFactory.Create <Organism>()).Returns(_organism); A.CallTo(() => _entityBaseFactory.Create <IContainer>()).Returns(_neighborhoods); A.CallTo(() => _entityValidator.Validate(_individual)).Returns(_invalidResults); }
private void MainForm_Load(object sender, EventArgs e) { if (File.Exists(Properties.Resources.path)) { try { FileStream fs = new FileStream(Properties.Resources.path, FileMode.Open); BinaryFormatter bf = new BinaryFormatter(); oData = bf.Deserialize(fs) as OriginData; LoadOriginDataToData(); fs.Close(); } catch (Exception) { MessageBox.Show("读取数据发生了错误。\n如果您是首次使用,请删除文件Thing3.dat后重试"); } } }
protected override void Context() { base.Context(); var previousSubject = A.Fake <ISimulationSubject>(); var previousOriginData = new OriginData { SpeciesPopulation = A.Fake <SpeciesPopulation>() }; previousOriginData.SpeciesPopulation.IsAgeDependent = true; A.CallTo(() => previousSubject.IsPreterm).Returns(true); A.CallTo(() => previousSubject.OriginData).Returns(previousOriginData); _subject.OriginData.SpeciesPopulation.IsAgeDependent = true; A.CallTo(() => _subject.IsPreterm).Returns(false); sut.UpdateSelectedSubject(previousSubject); }
protected override void Context() { base.Context(); _originData = new OriginData { Age = new OriginDataParameter(5), Species = A.Fake <Species>().WithName("toto"), Population = A.Fake <SpeciesPopulation>(), Weight = new OriginDataParameter() }; _individual = new Individual(); _validationResult = new ValidationResult(); _diseaseStateImplementation = A.Fake <IDiseaseStateImplementation>(); A.CallTo(() => _diseaseStateImplementation.Validate(_originData)).Throws <OSPSuiteException>(); A.CallTo(() => _entityBaseFactory.Create <Individual>()).Returns(_individual); A.CallTo(() => _entityValidator.Validate(_individual)).Returns(_validationResult); A.CallTo(() => _diseaseStateImplementationRepository.CreateFor(_individual)).Returns(_diseaseStateImplementation); }
protected override void Context() { _parameterQuery = A.Fake <IParameterQuery>(); _parameterFactory = A.Fake <IParameterFactory>(); _originData = new OriginData(); _param1 = A.Fake <IParameter>(); _param1.Name = "param1"; var paramDef1 = new ParameterValueMetaData { BuildingBlockType = PKSimBuildingBlockType.Individual }; _param2 = A.Fake <IParameter>(); _param2.Name = "param2"; var paramDef2 = new ParameterValueMetaData { BuildingBlockType = PKSimBuildingBlockType.Individual }; _param3 = A.Fake <IParameter>(); _param3.Name = "param3"; var paramDef3 = new ParameterValueMetaData { BuildingBlockType = PKSimBuildingBlockType.Compound }; _valueDefinitions.Add(paramDef1); _valueDefinitions.Add(paramDef2); var paramRateDef1 = new ParameterRateMetaData(); paramDef3.BuildingBlockType = PKSimBuildingBlockType.Individual; _rateDefinitions.Add(paramRateDef1); _paramRate1 = new PKSimParameter().WithFormula(new ExplicitFormula("a formula")); _paramRate1.Name = "RateParameter"; A.CallTo(_parameterQuery).WithReturnType <IEnumerable <ParameterValueMetaData> >().Returns(_valueDefinitions); A.CallTo(_parameterQuery).WithReturnType <IEnumerable <ParameterDistributionMetaData> >().Returns(_distributionDefinitions); A.CallTo(_parameterQuery).WithReturnType <IEnumerable <ParameterRateMetaData> >().Returns(_rateDefinitions); A.CallTo(() => _parameterFactory.CreateFor(paramDef1)).Returns(_param1); A.CallTo(() => _parameterFactory.CreateFor(paramDef2)).Returns(_param2); A.CallTo(() => _parameterFactory.CreateFor(paramRateDef1, A <FormulaCache> ._)).Returns(_paramRate1); sut = new ParameterContainerTask(_parameterQuery, _parameterFactory); }
public IParameter BMIBasedOn(OriginData originData, IParameter parameterWeight, IParameter parameterHeight) { var standardBMI = MeanOrganismParameter(originData, CoreConstants.Parameters.BMI); if (standardBMI == null) { return(null); } var organism = new Container().WithName(Constants.ORGANISM); organism.Add(parameterHeight); organism.Add(parameterWeight); organism.Add(standardBMI); standardBMI.Formula = _formulaFactory.BMIFormulaFor(parameterWeight, parameterHeight); standardBMI.Formula.ResolveObjectPathsFor(standardBMI); return(standardBMI); }
protected override void Context() { base.Context(); _originData = new OriginData { Species = new Species { Name = "A", Icon = "B" }, SpeciesPopulation = A.Fake <SpeciesPopulation>() }; _individual = new Individual(); _organism = new Organism(); _neighborhoods = A.Fake <IContainer>(); _rootContainer = new RootContainer(); A.CallTo(() => _entityBaseFactory.Create <IRootContainer>()).Returns(_rootContainer); A.CallTo(() => _entityBaseFactory.Create <Individual>()).Returns(_individual); A.CallTo(() => _entityBaseFactory.Create <Organism>()).Returns(_organism); A.CallTo(() => _entityBaseFactory.Create <IContainer>()).Returns(_neighborhoods); _valueOrigin = new ValueOrigin { Method = ValueOriginDeterminationMethods.InVitro, Source = ValueOriginSources.Database }; _originData.UpdateValueOriginFrom(_valueOrigin); _originData.Age = 10; _originData.AgeUnit = _age.DisplayUnit.Name; _organism.Add(_age); _originData.GestationalAge = 40; _originData.GestationalAgeUnit = _gestationalAge.DisplayUnit.Name; _organism.Add(_gestationalAge); _originData.Height = 170; _originData.HeightUnit = _height.DisplayUnit.Name; _organism.Add(_height); _originData.Weight = 170; _originData.WeightUnit = _weight.DisplayUnit.Name; _organism.Add(_weight); _originData.BMI = 170; _originData.BMIUnit = _bmi.DisplayUnit.Name; _organism.Add(_bmi); }
private static bool needScaling(OriginData originData, IParameter individualParameter) { if (!originData.Population.IsHeightDependent) { return(false); } if (!individualParameter.IsNamed(Constants.Parameters.VOLUME)) { return(false); } if (!individualParameter.ParentContainer.IsAnImplementationOf <Organ>()) { return(false); } //Volume in organ return(true); }
public void EditModelConfiguration(ISimulationSubject selectedSubject) { if (selectedSubject == null) { return; } _originData = selectedSubject.OriginData; ModelProperties modelProperties; if (selectedModelConfiguration != null) { modelProperties = _modelPropertiesTask.DefaultFor(_originData, selectedModelConfiguration.ModelName); } else { modelProperties = _modelPropertiesTask.DefaultFor(_originData); } editModelProperties(modelProperties); }
protected override void Context() { base.Context(); _discreteDistribution1 = new ParameterDistributionMetaData { Age = 20, Mean = 5 }; _discreteDistribution2 = new ParameterDistributionMetaData { Age = 10, Mean = 15 }; _discreteDistributions = new List <ParameterDistributionMetaData> { _discreteDistribution1, _discreteDistribution2 }; _parameter = A.Fake <IDistributedParameter>(); var meanParameter = DomainHelperForSpecs.ConstantParameterWithValue(1).WithName("Mean"); A.CallTo(() => _parameter.MeanParameter).Returns(meanParameter); _originData = new OriginData { Age = 12 }; A.CallTo(() => _distrFormulaFactory.CreateDiscreteDistributionFormulaFor(_parameter, meanParameter)).Returns(new DiscreteDistributionFormula()); }
public OriginData MapFrom(IndividualSettingsDTO individualSettingsDTO) { var originData = new OriginData { Species = individualSettingsDTO.Species, Population = individualSettingsDTO.Population, Gender = individualSettingsDTO.Gender, SubPopulation = subPopulationFrom(individualSettingsDTO.SubPopulation), Age = originDataParameterFrom(individualSettingsDTO.ParameterAge), GestationalAge = originDataParameterFrom(individualSettingsDTO.ParameterGestationalAge), Height = originDataParameterFrom(individualSettingsDTO.ParameterHeight), Weight = originDataParameterFrom(individualSettingsDTO.ParameterWeight), BMI = originDataParameterFrom(individualSettingsDTO.ParameterBMI) }; updateDiseaseState(originData, individualSettingsDTO); originData.UpdateValueOriginFrom(individualSettingsDTO.ValueOrigin); individualSettingsDTO.CalculationMethods.Select(cm => cm.CalculationMethod).Each(originData.AddCalculationMethod); return(originData); }
private void updateDiseaseState(OriginData originData, IndividualSettingsDTO individualSettingsDTO) { var diseaseState = individualSettingsDTO.DiseaseState; var isHealthy = diseaseState.IsHealthy; if (isHealthy) { originData.DiseaseState = null; return; } originData.DiseaseState = diseaseState; var diseaseStateParameter = individualSettingsDTO.DiseaseStateParameter; //This is a disease state without parameters if (diseaseStateParameter.IsNull()) { return; } //disease parameters are saved in a collection and we need to save the name to differentiate them originData.AddDiseaseStateParameter(originDataParameterFrom(diseaseStateParameter, addName: true)); }
protected override void Context() { _simulationPresenter = A.Fake <ICreateSimulationPresenter>(); _view = A.Fake <ISimulationSubjectConfigurationView>(); _simulationFactory = A.Fake <ISimulationFactory>(); _buildingBlockInSimulationManager = A.Fake <IBuildingBlockInSimulationManager>(); _simulation = A.Fake <Simulation>(); _lazyLoadTask = A.Fake <ILazyLoadTask>(); sut = new SimulationSubjectConfigurationPresenter(_view, _lazyLoadTask, _buildingBlockInSimulationManager); A.CallTo(() => _view.BindTo(A <SimulationSubjectDTO> ._)) .Invokes(x => _simulationSubjectDTO = x.GetArgument <SimulationSubjectDTO>(0)); sut.InitializeWith(_simulationPresenter); _subject = A.Fake <ISimulationSubject>(); var originData = new OriginData { SpeciesPopulation = A.Fake <SpeciesPopulation>() }; A.CallTo(() => _subject.OriginData).Returns(originData); sut.Initialize(); }
protected override void Context() { _compartment = A.Fake <Compartment>(); A.CallTo(() => _compartment.OrganName).Returns("MyParentOrgan"); _compartment.Name = "MyComp"; var containerPath = new ObjectPath(new[] { _compartment.OrganName, _compartment.Name }).ToString(); _containerPathRetriever = A.Fake <IEntityPathResolver>(); A.CallTo(() => _containerPathRetriever.PathFor(_compartment)).Returns(containerPath); _originData = new OriginData(); _originData.Population = new SpeciesPopulation(); var distributionDefinition = new ParameterDistributionMetaData(); var rateDefinition = new ParameterRateMetaData(); var valueDefinition = new ParameterValueMetaData(); distributionDefinition.ParameterName = "tutu"; var distributionRepository = A.Fake <IParameterDistributionRepository>(); A.CallTo(() => distributionRepository.AllFor(containerPath)).Returns(new List <ParameterDistributionMetaData> { distributionDefinition }); var rateRepository = A.Fake <IParameterRateRepository>(); A.CallTo(() => rateRepository.AllFor(containerPath)).Returns(new List <ParameterRateMetaData> { rateDefinition }); var valueRepository = A.Fake <IParameterValueRepository>(); A.CallTo(() => valueRepository.AllFor(containerPath)).Returns(new List <ParameterValueMetaData> { valueDefinition }); sut = new ParameterQuery(distributionRepository, valueRepository, rateRepository, _containerPathRetriever); }
public OriginData MapFrom(IndividualSettingsDTO individualSettingsDTO) { var originData = new OriginData { Species = individualSettingsDTO.Species, SpeciesPopulation = individualSettingsDTO.SpeciesPopulation, Gender = individualSettingsDTO.Gender, SubPopulation = subPopulationFrom(individualSettingsDTO.SubPopulation), Age = individualSettingsDTO.ParameterAge.KernelValue, AgeUnit = displayUnit(individualSettingsDTO.ParameterAge), GestationalAge = individualSettingsDTO.ParameterGestationalAge.KernelValue, GestationalAgeUnit = displayUnit(individualSettingsDTO.ParameterGestationalAge), Height = individualSettingsDTO.ParameterHeight.KernelValue, HeightUnit = displayUnit(individualSettingsDTO.ParameterHeight), Weight = individualSettingsDTO.ParameterWeight.KernelValue, WeightUnit = displayUnit(individualSettingsDTO.ParameterWeight), BMI = individualSettingsDTO.ParameterBMI.KernelValue, BMIUnit = displayUnit(individualSettingsDTO.ParameterBMI), }; individualSettingsDTO.CalculationMethods.Select(cm => cm.CalculationMethod).Each(originData.AddCalculationMethod); return(originData); }
private Ontogeny forMolecule(OriginData originData, string molecule) { return(allFor(originData.Species.Name).FindByName(molecule) ?? new NullOntogeny()); }
public IParameter MeanHeightFor(OriginData originData) { return(MeanOrganismParameter(originData, CoreConstants.Parameters.MEAN_HEIGHT)); }
private double percentileFrom(IEnumerable <ParameterDistributionMetaData> allDistributionsForParameter, OriginData originData, double parameterValue) { var parameter = _parameterFactory.CreateFor(allDistributionsForParameter, originData); parameter.Value = parameterValue; return(parameter.Percentile); }
private double postmenstrualAgeInYearsFor(OriginData originData) { return(postmenstrualAgeInYearsFor(originData.Age, originData.GestationalAge)); }
public double OntogenyFactorFor(Ontogeny ontogeny, string containerName, OriginData originData, RandomGenerator randomGenerator = null) { return(OntogenyFactorFor(ontogeny, containerName, originData.Age, originData.GestationalAge, randomGenerator)); }
private DistributedParameterValue distributedOntogenyFactorFor(Ontogeny ontogeny, string moleculeName, OriginData originData, string parameterName, string ontogenyLocation) { var parameterPath = new ObjectPath { moleculeName, parameterName }; var(mean, std, distributionType) = _ontogenyRepository.OntogenyParameterDistributionFor(ontogeny, originData, ontogenyLocation); return(new DistributedParameterValue(parameterPath, mean, CoreConstants.DEFAULT_PERCENTILE, mean, std, distributionType)); }
public IReadOnlyList <Sample> AllPlasmaProteinOntogenyFactorForStrictBiggerThanPMA(string parameterName, OriginData originData, RandomGenerator randomGenerator = null) { return(AllOntogenyFactorForStrictBiggerThanPMA(forMolecule(originData, SupportedProteins[parameterName]), originData, CoreConstants.Groups.ONTOGENY_PLASMA, randomGenerator)); }
public void EditSimulation(Simulation simulation, CreationMode creationMode) { _originData = simulation.BuildingBlock <ISimulationSubject>().OriginData; editModelProperties(simulation.ModelProperties); }
public double PlasmaProteinOntogenyFactor(string protein, OriginData originData, RandomGenerator randomGenerator = null) { return(PlasmaProteinOntogenyFactor(protein, originData.Age, originData.GestationalAge, originData.Species.Name, randomGenerator)); }
private ParameterValue ontogenyFactorFor(Ontogeny ontogeny, string moleculeName, OriginData originData, string parameterName, string ontogenyLocation) { var path = new ObjectPath { moleculeName, parameterName }; double factor = _ontogenyRepository.OntogenyFactorFor(ontogeny, ontogenyLocation, originData); return(new ParameterValue(path, factor, CoreConstants.DEFAULT_PERCENTILE)); }
public void AddModelParametersTo <TContainer>(TContainer parameterContainer, OriginData originData, ModelProperties modelProperties, IFormulaCache formulaCache) where TContainer : IContainer { addParametersTo(parameterContainer, originData, modelProperties.AllCalculationMethods().Select(cm => cm.Name), param => true, formulaCache); }
private void addParametersTo <T>(T parameterContainer, OriginData originData, IEnumerable <string> calculationMethods) where T : IContainer { addParametersTo(parameterContainer, originData, calculationMethods, x => true); }
public void AddInvididualParametersTo <TContainer>(TContainer parameterContainer, OriginData originData, string parameterName) where TContainer : IContainer { addParametersTo(parameterContainer, originData, originData.AllCalculationMethods().Select(cm => cm.Name), param => param.BuildingBlockType == PKSimBuildingBlockType.Individual && string.Equals(param.ParameterName, parameterName)); }
public IReadOnlyList <Sample> AllOntogenyFactorForStrictBiggerThanPMA(Ontogeny ontogeny, OriginData originData, string containerName, RandomGenerator randomGenerator = null) { Start(); if (ontogeny.IsUndefined()) { return(new List <Sample>()); } var pma = postmenstrualAgeInYearsFor(originData); var gaInYears = inYears(originData.GestationalAge.GetValueOrDefault(CoreConstants.NOT_PRETERM_GESTATIONAL_AGE_IN_WEEKS)); var ontogenies = AllValuesFor(ontogeny, containerName).Where(x => x.PostmenstrualAge > pma).ToList(); if (!ontogenies.Any()) { return(new List <Sample>()); } var factorRetriever = ontogenyFactorRetriever(randomGenerator, ontogenies); return(ontogenies.Select(x => new Sample(x.PostmenstrualAge - gaInYears, factorRetriever(x))).ToList()); }