package affectors; import main.Node; import main.Globals; /** One third of a triplet of affectors which mediates dissociation of receptor-ligand complexes. * Use this one in the RECEPTOR. Use the Lig version in the ligand and the * Com version in the COMPLEX. They reverse the Dimerization affectors. This can be used for both * cytoplasmic and membrane-bound proteins. As with the dimerization Affectors, * the ligand and receptor must be scaled by the ratio between their dimensional maximum * quantities, and that scaling happens in here only for the ligand (the complex is assumed * to be on the same scale as the receptor). * * The parameter that governs the ratio between receptor and ligand MUST BE THE SAME * FOR BOTH RECEPTOR AND LIGAND. * *
Formula
*
dReceptor/dt = COMPLEX/half life
*
*
Parameters *
Complex [COMPLEX] | The Node represeting the dimer |
Half-life [H_COMPLEX] | The half-life of the complex before it splits apart. |
Ratio of ligand and receptor [R_RATIO] | The stoichiometric ratio of receptor and ligand. |
Usage
*
*
* @author Josselin Milloz
*
* @see DissociationEC_Com_Aff
* @see DissociationEC_Lig_Aff
*/
public class DissociationEC_Rec_Aff extends Affector {
/** The half-life in minutes of the "ligand"-bound "receptor" complex; reciprocal of the dissociation rate. */
int halfLifeParam;
int ratioParam;
static final String desc = "Dissociation of a two-component complex; version for receptor";
static final String [] nodeDescriptions = {"Complex"};
static final String [] paramDescriptions = {"Half-life of complex"};
static final int [] whichSides = { -1 };
public DissociationEC_Rec_Aff() {}
protected void setLabelsAndTypes() {
setDescriptions(this.desc, nodeDescriptions, paramDescriptions);
setSided(true, whichSides);
this.Type[GUI_CAPABLE] = 1;
this.Type[CERTIFICATION] = Affector.RETURNS_DERIV;
this.Type[MATHTYPE] = Affector.KK;
this.Type[TERMTYPE] = Affector.CONVERSION;
}
public void setParameterNumbers(int [] param_nums)
{
halfLifeParam = param_nums[0];
}
public float getValue(Node which_node) {
return ((Globals.characteristicTime / params[halfLifeParam]) * Nodes[0].getIntegrationValue(side));
}
}
&RECEPTOR
* &DissociationEC_Rec_Aff COMPLEX H_complex R_ratio
*
* &endRECEPTOR