コード例 #1
0
        protected override void Context()
        {
            _identification       = A.Fake <ParameterIdentification>();
            _dimensionFactory     = A.Fake <IDimensionFactory>();
            _displayUnitRetriever = A.Fake <IDisplayUnitRetriever>();

            A.CallTo(_dimensionFactory).WithReturnType <IDimension>().ReturnsLazily(x => x.Arguments.Get <IWithDimension>(0).Dimension);

            _predictedVsObservedChart = new ParameterIdentificationPredictedVsObservedChart().WithAxes();

            _observedConcentrationData      = DomainHelperForSpecs.ObservedData();
            _concentrationObservationColumn = _observedConcentrationData.FirstDataColumn();

            _simulationData   = DomainHelperForSpecs.IndividualSimulationDataRepositoryFor("Simulation");
            _simulationColumn = _simulationData.FirstDataColumn();

            _fractionObservedData                = DomainHelperForSpecs.ObservedData();
            _fractionObservationColumn           = _fractionObservedData.FirstDataColumn();
            _fractionObservationColumn.Dimension = DomainHelperForSpecs.NoDimension();

            sut = new PredictedVsObservedChartService(_dimensionFactory, _displayUnitRetriever);
        }
        protected override void Context()
        {
            base.Context();
            _noDimensionColumnForSimulation.Dimension = DomainHelperForSpecs.NoDimension();
            _concentrationColumnForSimulation         = DomainHelperForSpecs.ConcentrationColumnForSimulation("Simulation", _simulationData.BaseGrid);
            _simulationData.Add(_concentrationColumnForSimulation);


            _quantityWithNoDimension   = A.Fake <IQuantity>();
            _quantityWithConcentration = A.Fake <IQuantity>();
            A.CallTo(() => _quantityWithNoDimension.Dimension).Returns(DomainHelperForSpecs.NoDimension());
            A.CallTo(() => _quantityWithConcentration.Dimension).Returns(DomainHelperForSpecs.ConcentrationDimensionForSpecs());

            var simulationQuantitySelection = A.Fake <SimulationQuantitySelection>();
            var anotherQuantitySelection    = A.Fake <SimulationQuantitySelection>();
            var noDimensionOutputMapping    = new OutputMapping {
                OutputSelection = simulationQuantitySelection
            };
            var concentrationOutputMapping = new OutputMapping {
                OutputSelection = anotherQuantitySelection
            };

            A.CallTo(() => simulationQuantitySelection.Quantity).Returns(_quantityWithNoDimension);
            A.CallTo(() => anotherQuantitySelection.Quantity).Returns(_quantityWithConcentration);


            _outputMappings = new[] { noDimensionOutputMapping, concentrationOutputMapping };
            A.CallTo(() => _parameterIdentification.AllOutputMappings).Returns(_outputMappings);
            _noDimensionDataColumn           = _observationData.FirstDataColumn();
            _noDimensionDataColumn.Dimension = DomainHelperForSpecs.NoDimension();

            _concentrationDataColumn = new DataColumn("newColumn", DomainHelperForSpecs.ConcentrationDimensionForSpecs(), _observationData.BaseGrid);
            _observationData.Add(_concentrationDataColumn);

            A.CallTo(() => _parameterIdentification.AllObservationColumnsFor(_noDimensionColumnForSimulation.QuantityInfo.PathAsString)).Returns(new List <DataColumn> {
                _noDimensionDataColumn, _concentrationDataColumn
            });
            A.CallTo(() => _parameterIdentification.AllObservedData).Returns(new[] { _observationData });
        }
コード例 #3
0
 public void the_dimension_selected_to_plot_identity_curve_should_be_fraction()
 {
     _predictedVsObservedChart.AxisBy(AxisTypes.X).Dimension.ShouldBeEqualTo(DomainHelperForSpecs.NoDimension());
 }
コード例 #4
0
        protected override void Context()
        {
            base.Context();
            var solDim = new Dimension(new BaseDimensionRepresentation(), "Solubility", "m");

            solDim.AddUnit(new Unit("cm", 0.01, 0));
            _refPhValue         = 7;
            _solValue           = 100;
            _gainPerChargeValue = 1000;
            A.CallTo(_formulaFactory).WithReturnType <TableFormula>().Returns(new TableFormula());
            var solubilityTable = DomainHelperForSpecs.ConstantParameterWithValue(0).WithName(CoreConstants.Parameters.SOLUBILITY_TABLE).WithDimension(solDim);
            var refPh           = DomainHelperForSpecs.ConstantParameterWithValue(_refPhValue).WithName(CoreConstants.Parameters.REFERENCE_PH).WithDimension(DomainHelperForSpecs.NoDimension());
            var solubilty       = DomainHelperForSpecs.ConstantParameterWithValue(_solValue).WithName(CoreConstants.Parameters.SOLUBILITY_AT_REFERENCE_PH).WithDimension(solDim);
            var gainPerCharge   = DomainHelperForSpecs.ConstantParameterWithValue(_gainPerChargeValue).WithName(CoreConstants.Parameters.SOLUBILITY_GAIN_PER_CHARGE).WithDimension(DomainHelperForSpecs.NoDimension());

            _solubility_pKa_pH_Factor         = new PKSimParameter().WithName(CoreConstants.Parameters.SOLUBILITY_P_KA__P_H_FACTOR);
            _solubility_pKa_pH_Factor.Formula = new ExplicitFormula("10 * (pH +1)");
            _solubility_pKa_pH_Factor.Formula.AddObjectPath(new FormulaUsablePath(new[] { ObjectPath.PARENT_CONTAINER, CoreConstants.Parameters.REFERENCE_PH }).WithAlias("pH"));

            _compoundForCalculation = new Compound {
                refPh, solubilty, gainPerCharge, _solubility_pKa_pH_Factor
            };
            _solubilityAlternative = new ParameterAlternative {
                refPh, solubilty, gainPerCharge, solubilityTable
            };

            var solubilityAlternativeGroup = new ParameterAlternativeGroup();

            solubilityAlternativeGroup.AddAlternative(_solubilityAlternative);


            _originalRefPh       = DomainHelperForSpecs.ConstantParameterWithValue(_refPhValue).WithName(CoreConstants.Parameters.REFERENCE_PH).WithDimension(DomainHelperForSpecs.NoDimension());
            _originalRefPh.Value = 4;
            _compound            = new Compound {
                _originalRefPh
            };
            _compound.AddParameterAlternativeGroup(solubilityAlternativeGroup);

            A.CallTo(() => _executionContext.Clone(_compound)).Returns(_compoundForCalculation);
        }
コード例 #5
0
 protected override void Context()
 {
     base.Context();
     _baseGrid        = new BaseGrid("Time", DomainHelperForSpecs.NoDimension());
     _baseGrid.Values = new float[] { 0, 1, 2 };
 }
コード例 #6
0
        protected override void Context()
        {
            base.Context();
            _compound = new Compound();
            var solDim = new Dimension(new BaseDimensionRepresentation(), "Solubility", "m");

            solDim.AddUnit(new Unit("cm", 0.01, 0));
            _refPhValue         = 7;
            _solValue           = 100;
            _gainPerChargeValue = 1000;
            A.CallTo(() => _formulaFactory.CreateTableFormula()).Returns(new TableFormula());
            var refPh         = DomainHelperForSpecs.ConstantParameterWithValue(_refPhValue).WithName(CoreConstants.Parameter.RefpH).WithDimension(DomainHelperForSpecs.NoDimension());
            var solubilty     = DomainHelperForSpecs.ConstantParameterWithValue(_solValue).WithName(CoreConstants.Parameter.SolubilityAtRefpH).WithDimension(solDim);
            var gainPerCharge = DomainHelperForSpecs.ConstantParameterWithValue(_gainPerChargeValue).WithName(CoreConstants.Parameter.SolubilityGainPerCharge).WithDimension(DomainHelperForSpecs.NoDimension());

            _solubility_pKa_pH_Factor         = new PKSimParameter().WithName(CoreConstants.Parameter.SOLUBILITY_P_KA__P_H_FACTOR);
            _solubility_pKa_pH_Factor.Formula = new ExplicitFormula("10 * (pH +1)");
            _solubility_pKa_pH_Factor.Formula.AddObjectPath(new FormulaUsablePath(new[] { ObjectPath.PARENT_CONTAINER, CoreConstants.Parameter.RefpH }).WithAlias("pH"));
            _compound.Add(refPh);
            _compound.Add(solubilty);
            _compound.Add(gainPerCharge);
            _compound.Add(_solubility_pKa_pH_Factor);
            _solubilityAlternative = new ParameterAlternative();
            _solubilityAlternative.Add(refPh);
            _solubilityAlternative.Add(solubilty);
            _solubilityAlternative.Add(gainPerCharge);

            var solubilityAlternativeGroup = new ParameterAlternativeGroup();

            solubilityAlternativeGroup.AddAlternative(_solubilityAlternative);

            _compound.AddParameterAlternativeGroup(solubilityAlternativeGroup);
        }