[Avida-SVN] r3530 - in development: documentation source/main
baerb at myxo.css.msu.edu
baerb at myxo.css.msu.edu
Tue Nov 17 09:07:47 PST 2009
Author: baerb
Date: 2009-11-17 12:07:46 -0500 (Tue, 17 Nov 2009)
New Revision: 3530
Modified:
development/documentation/actions.html
development/documentation/environment.html
development/source/main/cEnvironment.cc
development/source/main/cReactionProcess.h
Log:
Added some modification to the enzyme reaction.
Modified: development/documentation/actions.html
===================================================================
--- development/documentation/actions.html 2009-11-13 21:42:51 UTC (rev 3529)
+++ development/documentation/actions.html 2009-11-17 17:07:46 UTC (rev 3530)
@@ -9,7 +9,7 @@
<div class="revision">
Revised 2006-09-03 DMB
-<br>Generated Thu Sep 3 20:49:10 2009 by make_actions_html</div>
+<br>Generated Mon Nov 16 13:42:09 2009 by make_actions_html</div>
<p>
<a href="index.html">Return to the Index</a> |
@@ -74,10 +74,14 @@
<a href="#ConnectCells">ConnectCells</a><br>
<a href="#copy_deme">copy_deme</a><br>
<a href="#CopyDeme">CopyDeme</a><br>
+ <a href="#CountMultipleOpinions">CountMultipleOpinions</a><br>
+ <a href="#CountOpinions">CountOpinions</a><br>
<a href="#DecayPoints">DecayPoints</a><br>
<a href="#DelayedDemeEvent">DelayedDemeEvent</a><br>
<a href="#DelayedDemeEventsPerSlots">DelayedDemeEventsPerSlots</a><br>
<a href="#DeletionLandscape">DeletionLandscape</a><br>
+ <a href="#DemeBalanceTwoTasks">DemeBalanceTwoTasks</a><br>
+ <a href="#DemeReactionDiversity">DemeReactionDiversity</a><br>
<a href="#DemeResourceThresholdPredicate">DemeResourceThresholdPredicate</a><br>
<a href="#Desynchronization">Desynchronization</a><br>
<a href="#detail_parasite_pop">detail_parasite_pop</a><br>
@@ -86,6 +90,8 @@
<a href="#DiffuseHGTGenomeFragments">DiffuseHGTGenomeFragments</a><br>
<a href="#DisconnectCells">DisconnectCells</a><br>
<a href="#disconnect_cells">disconnect_cells</a><br>
+ <a href="#DistributeData">DistributeData</a><br>
+ <a href="#DistributeDataEfficiently">DistributeDataEfficiently</a><br>
<a href="#DivideDemes">DivideDemes</a><br>
<a href="#DumpCellDataGrid">DumpCellDataGrid</a><br>
<a href="#dump_donor_grid">dump_donor_grid</a><br>
@@ -95,6 +101,7 @@
<a href="#dump_fitness_grid">dump_fitness_grid</a><br>
<a href="#DumpFitnessGrid">DumpFitnessGrid</a><br>
<a href="#dump_genotype_grid">dump_genotype_grid</a><br>
+ <a href="#DumpGenotypeColorGrid">DumpGenotypeColorGrid</a><br>
<a href="#DumpGenotypeIDGrid">DumpGenotypeIDGrid</a><br>
<a href="#dump_historic_pop">dump_historic_pop</a><br>
<a href="#dump_historic_sex_pop">dump_historic_sex_pop</a><br>
@@ -164,17 +171,18 @@
<a href="#KillRate">KillRate</a><br>
<a href="#KillRectangle">KillRectangle</a><br>
<a href="#kill_rectangle">kill_rectangle</a><br>
+ <a href="#KillWithinRadiusBelowResourceThreshold">KillWithinRadiusBelowResourceThreshold</a><br>
<a href="#LoadClone">LoadClone</a><br>
<a href="#load_clone">load_clone</a><br>
<a href="#load_dump_file">load_dump_file</a><br>
<a href="#LoadPopulation">LoadPopulation</a><br>
<a href="#LoadStructuredPopulation">LoadStructuredPopulation</a><br>
<a href="#MigrateDemes">MigrateDemes</a><br>
+ <td valign="top">
<a href="#MixPopulation">MixPopulation</a><br>
<a href="#ModMutProb">ModMutProb</a><br>
<a href="#MutationalNeighborhood">MutationalNeighborhood</a><br>
<a href="#new_trial">new_trial</a><br>
- <td valign="top">
<a href="#NewTrial">NewTrial</a><br>
<a href="#outflow_scaled_resource">outflow_scaled_resource</a><br>
<a href="#OutflowScaledResource">OutflowScaledResource</a><br>
@@ -186,6 +194,7 @@
<a href="#Pred_DemeEventNUniqueIndividualsMovedIntoTarget">Pred_DemeEventNUniqueIndividualsMovedIntoTarget</a><br>
<a href="#PredictNuLandscape">PredictNuLandscape</a><br>
<a href="#PredictWLandscape">PredictWLandscape</a><br>
+ <a href="#PrintAveNumTasks">PrintAveNumTasks</a><br>
<a href="#print_average_data">print_average_data</a><br>
<a href="#PrintAverageData">PrintAverageData</a><br>
<a href="#PrintAvgDemeTasksExeData">PrintAvgDemeTasksExeData</a><br>
@@ -197,6 +206,7 @@
<a href="#PrintCellData">PrintCellData</a><br>
<a href="#PrintCellVisitsData">PrintCellVisitsData</a><br>
<a href="#PrintCompetitionData">PrintCompetitionData</a><br>
+ <a href="#PrintConsensusData">PrintConsensusData</a><br>
<a href="#print_count_data">print_count_data</a><br>
<a href="#PrintCountData">PrintCountData</a><br>
<a href="#PrintCurrentMeanDemeDensity">PrintCurrentMeanDemeDensity</a><br>
@@ -287,13 +297,14 @@
<a href="#PrintMutationRateData">PrintMutationRateData</a><br>
<a href="#PrintNewReactionData">PrintNewReactionData</a><br>
<a href="#PrintNewTasksData">PrintNewTasksData</a><br>
+ <a href="#PrintNewTasksDataPlus">PrintNewTasksDataPlus</a><br>
<a href="#print_number_phenotypes">print_number_phenotypes</a><br>
<a href="#PrintNumOrgsInDeme">PrintNumOrgsInDeme</a><br>
<a href="#PrintNumOrgsKilledData">PrintNumOrgsKilledData</a><br>
+ <td valign="top">
<a href="#PrintOpinionsSetPerDeme">PrintOpinionsSetPerDeme</a><br>
<a href="#PrintParasiteData">PrintParasiteData</a><br>
<a href="#PrintPerDemeGenPerFounderData">PrintPerDemeGenPerFounderData</a><br>
- <td valign="top">
<a href="#PrintPerDemeReactionData">PrintPerDemeReactionData</a><br>
<a href="#PrintPerDemeTasksData">PrintPerDemeTasksData</a><br>
<a href="#PrintPerDemeTasksExeData">PrintPerDemeTasksExeData</a><br>
@@ -314,6 +325,7 @@
<a href="#PrintSenseData">PrintSenseData</a><br>
<a href="#PrintSenseExeData">PrintSenseExeData</a><br>
<a href="#PrintShadedAltruists">PrintShadedAltruists</a><br>
+ <a href="#PrintSimpleConsensusData">PrintSimpleConsensusData</a><br>
<a href="#PrintSleepData">PrintSleepData</a><br>
<a href="#print_species_abundance_histogram">print_species_abundance_histogram</a><br>
<a href="#PrintSpeciesAbundanceHistogram">PrintSpeciesAbundanceHistogram</a><br>
@@ -341,6 +353,7 @@
<a href="#PrintViableTasksData">PrintViableTasksData</a><br>
<a href="#RandomLandscape">RandomLandscape</a><br>
<a href="#rate_kill">rate_kill</a><br>
+ <a href="#ReplaceFromGermline">ReplaceFromGermline</a><br>
<a href="#replicate_demes">replicate_demes</a><br>
<a href="#ReplicateDemes">ReplicateDemes</a><br>
<a href="#reset_demes">reset_demes</a><br>
@@ -408,6 +421,7 @@
<a href="#ToggleFitnessValley">ToggleFitnessValley</a><br>
<a href="#ToggleRewardInstruction">ToggleRewardInstruction</a><br>
<a href="#TrackAllMessages">TrackAllMessages</a><br>
+ <a href="#UnitFitness">UnitFitness</a><br>
<a href="#VERBOSE">VERBOSE</a><br>
<a href="#zero_muts">zero_muts</a><br>
<a href="#ZeroMuts">ZeroMuts</a><br>
@@ -1048,7 +1062,7 @@
</li>
<li><p>
<strong><a name="AssignRandomCellData">AssignRandomCellData</a></strong>
- <i>No Arguments</i>
+ <i>[num_cells=deme_size]</i>
</p>
<p>
@@ -1182,6 +1196,20 @@
</p>
</li>
<li><p>
+ <strong><a name="CountMultipleOpinions">CountMultipleOpinions</a></strong>
+ </p>
+ <p>
+
+ </p>
+</li>
+<li><p>
+ <strong><a name="CountOpinions">CountOpinions</a></strong>
+ </p>
+ <p>
+
+ </p>
+</li>
+<li><p>
<strong><a name="DecayPoints">DecayPoints</a></strong>
</p>
<p>
@@ -1191,6 +1219,20 @@
</p>
</li>
<li><p>
+ <strong><a name="DemeBalanceTwoTasks">DemeBalanceTwoTasks</a></strong>
+ </p>
+ <p>
+
+ </p>
+</li>
+<li><p>
+ <strong><a name="DemeReactionDiversity">DemeReactionDiversity</a></strong>
+ </p>
+ <p>
+
+ </p>
+</li>
+<li><p>
<strong><a name="DemeResourceThresholdPredicate">DemeResourceThresholdPredicate</a></strong>
</p>
<p>
@@ -1230,6 +1272,20 @@
</p>
</li>
<li><p>
+ <strong><a name="DistributeData">DistributeData</a></strong>
+ </p>
+ <p>
+
+ </p>
+</li>
+<li><p>
+ <strong><a name="DistributeDataEfficiently">DistributeDataEfficiently</a></strong>
+ </p>
+ <p>
+
+ </p>
+</li>
+<li><p>
<strong><a name="DivideDemes">DivideDemes</a></strong>
<i>No arguments (yet!)</i>
</p>
@@ -1419,7 +1475,7 @@
</li>
<li><p>
<strong><a name="IteratedConsensus">IteratedConsensus</a></strong>
- <i>[int compete_period=100 [int replace_number=0]]</i>
+ <i>[int compete_period=100 [int replace_number=1 [int kill=1 [int restrict_range=1]]]]</i>
</p>
<p>
@@ -1555,6 +1611,14 @@
</p>
</li>
<li><p>
+ <strong><a name="KillWithinRadiusBelowResourceThreshold">KillWithinRadiusBelowResourceThreshold</a></strong>
+ <i>[int numradii=0, int radius=0, string resource name, double threshold=0]</i>
+ </p>
+ <p>
+
+ </p>
+</li>
+<li><p>
<strong><a name="MigrateDemes">MigrateDemes</a></strong>
<i><string resource name><double failure_percent></i>
</p>
@@ -1630,6 +1694,13 @@
</p>
</li>
<li><p>
+ <strong><a name="ReplaceFromGermline">ReplaceFromGermline</a></strong>
+ </p>
+ <p>
+
+ </p>
+</li>
+<li><p>
<strong><a name="replicate_demes">replicate_demes</a></strong>
<i>[string trigger=full_deme]</i>
</p>
@@ -1813,6 +1884,13 @@
</p>
</li>
<li><p>
+ <strong><a name="UnitFitness">UnitFitness</a></strong>
+ </p>
+ <p>
+
+ </p>
+</li>
+<li><p>
<strong><a name="zero_muts">zero_muts</a></strong>
<i>No Arguments</i>
</p>
@@ -1908,6 +1986,14 @@
</p>
</li>
<li><p>
+ <strong><a name="DumpGenotypeColorGrid">DumpGenotypeColorGrid</a></strong>
+ <i>[int num_colors=12] [string fname=""]</i>
+ </p>
+ <p>
+
+ </p>
+</li>
+<li><p>
<strong><a name="DumpGenotypeIDGrid">DumpGenotypeIDGrid</a></strong>
<i>[string fname=""]</i>
</p>
@@ -2028,6 +2114,14 @@
</p>
</li>
<li><p>
+ <strong><a name="PrintAveNumTasks">PrintAveNumTasks</a></strong>
+ <i>[string fname=""]</i>
+ </p>
+ <p>
+
+ </p>
+</li>
+<li><p>
<strong><a name="print_average_data">print_average_data</a></strong>
<i>[string fname="average.dat"]</i>
</p>
@@ -2142,6 +2236,13 @@
</p>
</li>
<li><p>
+ <strong><a name="PrintConsensusData">PrintConsensusData</a></strong>
+ </p>
+ <p>
+
+ </p>
+</li>
+<li><p>
<strong><a name="print_count_data">print_count_data</a></strong>
<i>[string fname="count.dat"]</i>
</p>
@@ -2948,6 +3049,14 @@
</p>
</li>
<li><p>
+ <strong><a name="PrintNewTasksDataPlus">PrintNewTasksDataPlus</a></strong>
+ <i>[string fname=" newtasksplus.dat "]</i>
+ </p>
+ <p>
+
+ </p>
+</li>
+<li><p>
<strong><a name="print_number_phenotypes">print_number_phenotypes</a></strong>
<i>[string fname="phenotype_count.dat"]</i>
</p>
@@ -3179,6 +3288,13 @@
</p>
</li>
<li><p>
+ <strong><a name="PrintSimpleConsensusData">PrintSimpleConsensusData</a></strong>
+ </p>
+ <p>
+
+ </p>
+</li>
+<li><p>
<strong><a name="PrintSleepData">PrintSleepData</a></strong>
<i>[string fname="sleep.dat"]</i>
</p>
Modified: development/documentation/environment.html
===================================================================
--- development/documentation/environment.html 2009-11-13 21:42:51 UTC (rev 3529)
+++ development/documentation/environment.html 2009-11-17 17:07:46 UTC (rev 3530)
@@ -562,9 +562,9 @@
<br /> <em>pow</em>: Multiply the current merit by 2<sup>bonus</sup>.
this is effectively multiplicative, but positive bonuses are
always beneficial, and negative bonuses are harmful.
- <br /> <em>enzyme</em>: Add bonus * resource / (resource + frac) to the current merit.
+ <br /> <em>enzyme</em>: Add bonus * resource / (resource + ksubm) to the current merit.
This is gives a Michaelis-Menten enzyme type reward where bonus is the K<sub>cat</sub>
- and frac is the K<sub>m</sub>. Does not work with unlimited resources.
+ and the K<sub>m</sub> is entered. Does not work with unlimited resources.
<br /> <em>energy</em>: Add the bonus energy to the organism's energy waiting to be applied buffer. Bonus energy can be applied on completion of a reaction, execution of the sleep/eat instruction, or when the organisms divides. See <a href="energy_model.html">Energy Model</a> documentation for more information.
</td>
<td>add</td>
@@ -640,6 +640,15 @@
default
</td>
</tr>
+<tr>
+ <td class="resall">ksubm</td>
+ <td>
+ K<sub>m</sub> for an enzyme reaction.
+ </td>
+ <td>
+ 0.0
+ </td>
+</tr>
</table>
<p> </p>
</div>
Modified: development/source/main/cEnvironment.cc
===================================================================
--- development/source/main/cEnvironment.cc 2009-11-13 21:42:51 UTC (rev 3529)
+++ development/source/main/cEnvironment.cc 2009-11-17 17:07:46 UTC (rev 3530)
@@ -206,6 +206,11 @@
if (in_frac > 1.0) in_frac = 1.0;
new_process->SetMaxFraction(in_frac);
}
+ else if (var_name == "ksubm") {
+ if (!AssertInputDouble(var_value, "ksubm", var_type)) return false;
+ double in_k_sub_m = var_value.AsDouble();
+ new_process->SetKsubM(in_k_sub_m);
+ }
else if (var_name == "product") {
cResource* test_resource = resource_lib.GetResource(var_value);
if (!AssertInputValid(test_resource, "product", var_type, var_value)) {
@@ -1375,7 +1380,8 @@
const int res_id = in_resource->GetID();
assert(cur_process->GetMaxFraction() != 0);
assert(resource_count[res_id] != 0);
- double reward = cur_process->GetValue() * resource_count[res_id] / (resource_count[res_id] + cur_process->GetMaxFraction());
+ // double reward = cur_process->GetValue() * resource_count[res_id] / (resource_count[res_id] + cur_process->GetMaxFraction());
+ double reward = cur_process->GetValue() * resource_count[res_id] / (resource_count[res_id] + cur_process->GetKsubM());
result.AddBonus( reward , reaction_id);
break;
}
Modified: development/source/main/cReactionProcess.h
===================================================================
--- development/source/main/cReactionProcess.h 2009-11-13 21:42:51 UTC (rev 3529)
+++ development/source/main/cReactionProcess.h 2009-11-17 17:07:46 UTC (rev 3530)
@@ -52,6 +52,7 @@
double max_number; // Max quantity of resource usable.
double min_number; // Minimum quantity of resource needed (otherwise 0)
double max_fraction; // Max fraction of avaiable resources useable.
+ double k_sub_m; // k sub m variable needed for enzyme reaction
cResource* product; // Output resource.
double conversion; // Conversion factor.
bool lethal; // Lethality of reaction
@@ -82,6 +83,7 @@
, max_number(1.0)
, min_number(0.0)
, max_fraction(1.0)
+ , k_sub_m(0.0)
, product(NULL)
, conversion(1.0)
, lethal(0)
@@ -104,6 +106,7 @@
double GetMaxNumber() const { return max_number; }
double GetMinNumber() const { return min_number; }
double GetMaxFraction() const { return max_fraction; }
+ double GetKsubM() const { return k_sub_m; }
cResource* GetProduct() const { return product; }
double GetConversion() const { return conversion; }
int GetInstID() const { return inst_id; }
@@ -124,6 +127,7 @@
void SetMaxNumber(double _in) { max_number = _in; }
void SetMinNumber(double _in) { min_number = _in; }
void SetMaxFraction(double _in) { max_fraction = _in; }
+ void SetKsubM(double _in) { k_sub_m = _in; }
void SetProduct(cResource* _in) { product = _in; }
void SetConversion(double _in) { conversion = _in; }
void SetInstID(int _in) { inst_id = _in; }
More information about the Avida-cvs
mailing list