public void should_add_the_concentration_parameter_to_the_created_molecule_builder_as_a_local_parameter() { var param = _result.Parameter(CoreConstants.Parameters.CONCENTRATION); param.ShouldNotBeNull(); param.BuildMode.ShouldBeEqualTo(ParameterBuildMode.Local); }
public void should_override_the_parameters_define_as_formula() { var permParameter = _molecule.Parameter(CoreConstants.Parameters.PERMEABILITY); permParameter.IsFixedValue.ShouldBeFalse(); permParameter.Formula.ShouldBeAnInstanceOf <ConstantFormula>(); permParameter.Value.ShouldBeEqualTo(_alternativePerm2.Parameter(CoreConstants.Parameters.PERMEABILITY).Value); }
public void should_let_the_parameter_defined_as_formula_untouched_but_not_editable() { var permParameter = _molecule.Parameter(CoreConstants.Parameters.PERMEABILITY); permParameter.IsFixedValue.ShouldBeFalse(); permParameter.Formula.ShouldBeAnInstanceOf <ExplicitFormula>(); permParameter.Editable.ShouldBeFalse(); }
private void updateAlternativeParameters(ParameterAlternative alternative, IMoleculeBuilder drug) { var allParameters = alternative.AllParameters().ToList(); foreach (var alternativeParameter in allParameters) { //Parameter does not exist in drug? var drugParameter = drug.Parameter(alternativeParameter.Name); if (drugParameter == null) { continue; } //parameter is a rate. parameter in molecule should be readonly if (!alternativeParameter.Formula.IsConstant()) { drugParameter.Editable = false; } //target parameter is a rate and source parmaeter is constant else if (!drugParameter.Formula.IsConstant()) { drugParameter.Formula = _objectBaseFactory.Create <ConstantFormula>().WithValue(alternativeParameter.Value); } _parameterSetUpdater.UpdateValue(alternativeParameter, drugParameter); //only update value description if the alternative contains one and one only parameter if (allParameters.Count == 1) { drugParameter.ValueDescription = alternative.Description; } } }
private void removeGlobalExpressionsParameterFor(IMoleculeBuilder molecule) { CoreConstants.Parameters.AllGlobalRelExpParameters.Each(parameterName => { var parameter = molecule.Parameter(parameterName); if (parameter != null) { molecule.RemoveChild(parameter); } }); }
private void addDrugParametersTo(IMoleculeBuilder molecule, IFormulaCache formulaCache) { var allExistingParameters = molecule.AllParameters().ToList(); molecule.Name = CoreConstants.Molecule.Drug; _parameterContainerTask.AddMoleculeParametersTo(molecule, formulaCache); foreach (var parameter in molecule.AllParameters().Where(p => !allExistingParameters.Contains(p))) { parameter.BuildingBlockType = PKSimBuildingBlockType.Simulation; parameter.Visible = false; parameter.CanBeVariedInPopulation = false; molecule.Add(parameter); } setDefaultParameterValues(molecule); //default value for floating in lumen should be 0 molecule.Parameter(CoreConstants.Parameter.IS_FLOATING_IN_LUMEN).Value = 0; }
private void updateAlternativeParameters(ParameterAlternative alternative, IMoleculeBuilder drug, IFormulaCache formulaCache) { var allParameters = alternative.AllParameters().ToList(); foreach (var alternativeParameter in allParameters) { //Parameter does not exist in drug? var drugParameter = drug.Parameter(alternativeParameter.Name); if (drugParameter == null) { continue; } if (alternativeParameter.Formula.IsTable()) { var tableFormula = _cloner.Clone(alternativeParameter.Formula); formulaCache.Add(tableFormula); drugParameter.Formula = tableFormula; } //parameter is a rate. parameter in molecule should be readonly else if (!alternativeParameter.Formula.IsConstant()) { drugParameter.Editable = false; } //target parameter is a rate and source parameter is constant else if (!drugParameter.Formula.IsConstant()) { drugParameter.Formula = _objectBaseFactory.Create <ConstantFormula>().WithValue(alternativeParameter.Value); } _parameterSetUpdater.UpdateValue(alternativeParameter, drugParameter); //Default parameter Default and visible may not match database default and need to be set according to alternative parameter drugParameter.IsDefault = alternativeParameter.IsDefault; drugParameter.Visible = alternativeParameter.Visible; } }
public void should_update_the_molecule_weight_of_all_concentration_columns_related_to_a_molecule_with_a_mol_weight_parameter() { _concentrationColumn.DataInfo.MolWeight.ShouldBeEqualTo(_drug.Parameter(AppConstants.Parameters.MOLECULAR_WEIGHT).Value); _fractionColumn.DataInfo.MolWeight.ShouldBeNull(); }
public void should_remove_the_global_relative_expression_paramters_that_do_not_make_sense_for_trnasporter() { CoreConstants.Parameters.AllGlobalRelExpParameters.Each(parmaterName => _result.Parameter(parmaterName).ShouldBeNull()); }
public void should_set_the_default_values_of_all_default_parameter_into_the_molecule_that_where_fixed_by_the_user() { _molecule.Parameter(Constants.Parameters.MOL_WEIGHT).Value.ShouldBeEqualTo(_compound.Parameter(Constants.Parameters.MOL_WEIGHT).Value); }