parameterrules
Class DimerHalfMaxRule

java.lang.Object
  extended byparameterrules.ParameterRule
      extended byparameterrules.DimerHalfMaxRule
All Implemented Interfaces:
java.lang.Cloneable

public class DimerHalfMaxRule
extends ParameterRule

Because of the way things are scaled, dimers can have concentrations more than 1. Specifically, a dimer's value can reach HalfLifeDimer / HalfLifeScalingMonomer where the scaling monomer is the monomer that the dimer is scaled with respect to. This means that to get the same half-maximal activation and repression ranges for a transcription factor dimer as for undimerized transcription factors, the absolute ranges have to be adjusted upwards by the ration above. The clumsy way we do that now is to make the range of those K parameters in the files large enough to cover all possible ratios of half lives, and then use this parameter rule to keep the actual values used in a simulation run within the range we want. This rule implements the following calculation:

LowerBound * ratio <= DimerKParam <= UpperBound * ratio
where ratio = DimerHalfLife / ScalingHalfLife


Field Summary
 
Fields inherited from class parameterrules.ParameterRule
numParams, paramNums
 
Method Summary
 boolean changeParameters(float[] params, int mode, ParameterSet set)
          This method should change parameters so that they conform to this rule.
 float getFuzzyScore(float[] params)
          This method should return 0 if the parameters in the input set pass the criteria in this rule.
protected  void loadParameter(java.lang.String info, BetterTokenizer tokenizer)
          Override this function for each parameter rule to load in setup info specific to that rule.
 void loadParameters(BetterTokenizer tokenizer)
          Overridden to do error checking, making sure that all parameters are specified.
 
Methods inherited from class parameterrules.ParameterRule
copy, init, isGood, pickNewParameterValue
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Method Detail

getFuzzyScore

public float getFuzzyScore(float[] params)
Description copied from class: ParameterRule
This method should return 0 if the parameters in the input set pass the criteria in this rule. Otherwise it should return a positive number whose magnitude gets larger as the parameter set gets farther from satisfying this rule.

Overrides:
getFuzzyScore in class ParameterRule
Parameters:
params - The values of all the parameters in the reference parameter set. The params array and the reference parameter set need to match one-to-one.

changeParameters

public boolean changeParameters(float[] params,
                                int mode,
                                ParameterSet set)
Description copied from class: ParameterRule
This method should change parameters so that they conform to this rule. If the parameters matched the rule without any changes, this method should return true. Otherwise, return false.

Overrides:
changeParameters in class ParameterRule
Parameters:
params - The values of all the parameters in the reference parameter set. The params array and the reference parameter set need to match one-to-one.

loadParameters

public void loadParameters(BetterTokenizer tokenizer)
                    throws java.lang.Exception
Overridden to do error checking, making sure that all parameters are specified.

Overrides:
loadParameters in class ParameterRule
Throws:
java.lang.Exception

loadParameter

protected void loadParameter(java.lang.String info,
                             BetterTokenizer tokenizer)
                      throws java.lang.Exception
Description copied from class: ParameterRule
Override this function for each parameter rule to load in setup info specific to that rule. You can use the refParam to look up the positions of any model parameters you load. The default method will load parameters with the @Param tag and put the parameter numbers into the paramNums array.

Overrides:
loadParameter in class ParameterRule
Throws:
java.lang.Exception