Main Page   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members  

QuorumSensingNetworkMinimizableDirector.cpp

Go to the documentation of this file.
00001 // QuorumSensingNetworkMinimizableDirector.cpp: implementation of the CQuorumSensingNetworkMinimizableDirector class.
00002 //
00004 
00005 #include "QuorumSensingNetworkMinimizableDirector.h"
00006 
00008 // Construction/Destruction
00010 
00011 CQuorumSensingNetworkMinimizableDirector::CQuorumSensingNetworkMinimizableDirector(int plotornot)
00012 {
00013         // counter for experimet number
00014         int expt = -1;
00015         int min = -1;
00016         int connid = -1;
00017 
00018         // create networks,experiments,observers,movers,minimizables
00019         double maxSimTime = 720.0;
00020         double stepSize = 0.0001;
00021         double frequency = 1.0;
00022         int nCells = 1;
00023         double moveTol = 1.0e-06;
00024 
00025         //computer time cost
00026 //      m_dGammaSquared = 1.0e-7;
00027         m_dGammaSquared = 0.0;
00028         
00029         // flags for all minimizables
00030         bool rateFlag = true;
00031         bool chemFlag = false;
00032         bool logsFlag = false;
00033         double timeWeight = 1.0;
00034         double rateWeight = 0.0;
00035         double chemWeight = 0.0;
00036 
00037 /*      // expt. - Steady State 1
00038         expt++;
00039         rateFlag = false;
00040         chemFlag = true;
00041         _networkList.push_back(new CQuorumSensingNetwork());
00042         _experimentList.push_back(new Experiment(_networkList[expt],"SteadyState1"));
00043         // put data files here
00044         _experimentList[expt]->AddDataFileToList("../DataFiles/SteadyState1.dat");
00045         // mover
00046         _moverList.push_back(new CQualityControlCashKarpMover(frequency,stepSize,moveTol));
00047         // minimizable
00048         _minimizableList.push_back(new SingleNetworkMinimizable());
00049         // parameters
00050         _minimizableList[expt]->Initialize(_experimentList[expt],_moverList[expt],nCells,rateFlag,chemFlag,logsFlag,timeWeight,rateWeight,chemWeight);
00051         //_minimizableList[0]->GetConversionFactor(7)->SetFactorFixed(true);
00052         //_minimizableList[0]->GetConversionFactor(7)->SetFactorValue(100.0/100000.0);
00053         _minimizableList[expt]->SetRateConstantsWeight(0.0);
00054 
00055         // expt.- Steady State 2
00056         expt++;
00057         rateFlag = false;
00058         chemFlag = true;
00059         _networkList.push_back(new CQuorumSensingNetwork());
00060         _experimentList.push_back(new Experiment(_networkList[expt],"SteadyState2"));
00061         // put data files here
00062         _experimentList[expt]->AddDataFileToList("../DataFiles/SteadyState2.dat");
00063         // mover
00064         _moverList.push_back(new CQualityControlCashKarpMover(frequency,stepSize,moveTol));
00065         // minimizable
00066         _minimizableList.push_back(new SingleNetworkMinimizable());
00067         // parameters
00068         _minimizableList[expt]->Initialize(_experimentList[expt],_moverList[expt],nCells,rateFlag,chemFlag,logsFlag,timeWeight,rateWeight,chemWeight);
00069         //_minimizableList[0]->GetConversionFactor(7)->SetFactorFixed(true);
00070         //_minimizableList[0]->GetConversionFactor(7)->SetFactorValue(100.0/100000.0);
00071         _minimizableList[expt]->SetRateConstantsWeight(0.0);
00072 */
00073         // expt. 0 - Addition of 100 nM OOHL, traR present at time 0
00074         expt++;
00075         _networkList.push_back(new CQuorumSensingNetwork());
00076         _experimentList.push_back(new Experiment(_networkList[expt],"OOHL Present, Zhu 1999"));
00077         // put data files here
00078         _experimentList[expt]->AddDataFileToList("DataFiles/zhu99_f7c_2.dat");
00079         _experimentList[expt]->AddForcingFileToList("DataFiles/zhu99_f7c_2forcing.dat");
00080         // mover
00081         _moverList.push_back(new CQualityControlCashKarpMover(frequency,stepSize,moveTol));
00082         // minimizable
00083         min++;
00084         _minimizableList.push_back(new SingleNetworkMinimizable());
00085         // parameters
00086         _minimizableList[min]->Initialize(_experimentList[expt],_moverList[expt],nCells,rateFlag,chemFlag,logsFlag,timeWeight,rateWeight,chemWeight);
00087         //_minimizableList[0]->GetConversionFactor(7)->SetFactorFixed(true);
00088         //_minimizableList[0]->GetConversionFactor(7)->SetFactorValue(100.0/100000.0);
00089         _minimizableList[min]->SetRateConstantsWeight(0.0);
00090 
00091         // expt. 1 - No OOHL, traR present at time 0
00092         expt++;
00093         _networkList.push_back(new CQuorumSensingNetwork());
00094         _experimentList.push_back(new Experiment(_networkList[expt],"No OOHL, Zhu 1999"));
00095         // put data files here
00096         _experimentList[expt]->AddDataFileToList("DataFiles/zhu99_f7c_1.dat");
00097         _experimentList[expt]->AddForcingFileToList("DataFiles/zhu99_f7c_1forcing.dat");
00098         // mover and plotter
00099         _moverList.push_back(new CQualityControlCashKarpMover(frequency,stepSize,moveTol));
00100         // minimizable
00101         min++;
00102         _minimizableList.push_back(new SingleNetworkMinimizable());
00103         // parameters
00104         _minimizableList[min]->Initialize(_experimentList[expt],_moverList[expt],nCells,rateFlag,chemFlag,logsFlag,timeWeight,rateWeight,chemWeight);
00105         //_minimizableList[0]->GetConversionFactor(7)->SetFactorFixed(true);
00106         //_minimizableList[0]->GetConversionFactor(7)->SetFactorValue(100.0/100000.0);
00107         _minimizableList[min]->SetRateConstantsWeight(0.0);
00108 
00109         _experimentList.clear();
00110         _moverList.clear();
00111         _networkList.clear();
00112         expt = -1;
00113 
00114         // expt. 2 - No octopine, no OOHL, traA present at time 0
00115         expt++;
00116         _networkList.push_back(new CQuorumSensingNetwork());
00117         _experimentList.push_back(new Experiment(_networkList[expt],"No OOHL or octopine, Fuqua 1994"));
00118         // put data files here
00119         _experimentList[expt]->AddDataFileToList("DataFiles/fuqua94_t4_1.dat");
00120         // mover and plotter
00121         _moverList.push_back(new CQualityControlCashKarpMover(frequency,stepSize,moveTol));
00122 /*      // minimizable
00123         _minimizableList.push_back(new SingleNetworkMinimizable());
00124         // parameters
00125         _minimizableList[expt]->Initialize(_experimentList[expt],_moverList[expt],nCells,rateFlag,chemFlag,logsFlag,timeWeight,rateWeight,chemWeight);
00126         //_minimizableList[0]->GetConversionFactor(7)->SetFactorFixed(true);
00127         //_minimizableList[0]->GetConversionFactor(7)->SetFactorValue(100.0/100000.0);
00128         _minimizableList[expt]->SetRateConstantsWeight(0.0);
00129 */
00130         // expt. 3 - octopine but no OOHL, traA present at time 0
00131         expt++;
00132         _networkList.push_back(new CQuorumSensingNetwork());
00133         _experimentList.push_back(new Experiment(_networkList[expt], "octopine but no OOHL, Fuqua 1994"));
00134         // put data files here
00135         _experimentList[expt]->AddDataFileToList("DataFiles/fuqua94_t4_2.dat");
00136         // mover and plotter
00137         _moverList.push_back(new CQualityControlCashKarpMover(frequency,stepSize,moveTol));
00138 /*      // minimizable
00139         _minimizableList.push_back(new SingleNetworkMinimizable());
00140         // parameters
00141         _minimizableList[expt]->Initialize(_experimentList[expt],_moverList[expt],nCells,rateFlag,chemFlag,logsFlag,timeWeight,rateWeight,chemWeight);
00142         //_minimizableList[0]->GetConversionFactor(7)->SetFactorFixed(true);
00143         //_minimizableList[0]->GetConversionFactor(7)->SetFactorValue(100.0/100000.0);
00144         _minimizableList[expt]->SetRateConstantsWeight(0.0);
00145 */
00146         // expt. 4 - OOHL but no octopine, traA present at time 0
00147         expt++;
00148         _networkList.push_back(new CQuorumSensingNetwork());
00149         _experimentList.push_back(new Experiment(_networkList[expt], "OOHL but no octopine, Fuqua 1994"));
00150         // put data files here
00151         _experimentList[expt]->AddDataFileToList("DataFiles/fuqua94_t4_3.dat");
00152         // mover and plotter
00153         _moverList.push_back(new CQualityControlCashKarpMover(frequency,stepSize,moveTol));
00154 /*      // minimizable
00155         _minimizableList.push_back(new SingleNetworkMinimizable());
00156         // parameters
00157         _minimizableList[expt]->Initialize(_experimentList[expt],_moverList[expt],nCells,rateFlag,chemFlag,logsFlag,timeWeight,rateWeight,chemWeight);
00158         //_minimizableList[0]->GetConversionFactor(7)->SetFactorFixed(true);
00159         //_minimizableList[0]->GetConversionFactor(7)->SetFactorValue(100.0/100000.0);
00160         _minimizableList[expt]->SetRateConstantsWeight(0.0);
00161 */
00162         // expt. 5 - OOHL and octopine, traA present at time 0
00163         expt++;
00164         _networkList.push_back(new CQuorumSensingNetwork());
00165         _experimentList.push_back(new Experiment(_networkList[expt], "OOHL and octopine, Fuqua 1994"));
00166         // put data files here
00167         _experimentList[expt]->AddDataFileToList("DataFiles/fuqua94_t4_4.dat");
00168         // mover and plotter
00169         _moverList.push_back(new CQualityControlCashKarpMover(frequency,stepSize,moveTol));
00170 /*      // minimizable
00171         _minimizableList.push_back(new SingleNetworkMinimizable());
00172         // parameters
00173         _minimizableList[expt]->Initialize(_experimentList[expt],_moverList[expt],nCells,rateFlag,chemFlag,logsFlag,timeWeight,rateWeight,chemWeight);
00174         //_minimizableList[0]->GetConversionFactor(7)->SetFactorFixed(true);
00175         //_minimizableList[0]->GetConversionFactor(7)->SetFactorValue(100.0/100000.0);
00176         _minimizableList[expt]->SetRateConstantsWeight(0.0);
00177 */
00178 
00179         // minimizable
00180         min++;
00181         _minimizableList.push_back(new SharedBFactorNetworkMinimizable());
00182         // parameters
00183         _minimizableList[min]->Initialize(_experimentList,_moverList,nCells,rateFlag,chemFlag,logsFlag,timeWeight,rateWeight,chemWeight);
00184         //_minimizableList[0]->GetConversionFactor(7)->SetFactorFixed(true);
00185         //_minimizableList[0]->GetConversionFactor(7)->SetFactorValue(100.0/100000.0);
00186         _minimizableList[min]->SetRateConstantsWeight(0.0);
00187 
00188         _experimentList.clear();
00189         _moverList.clear();
00190         _networkList.clear();
00191         expt = -1;
00192 
00193         // expt. 2b - traR null mutant No octopine, no OOHL, traA present at time 0
00194         expt++;
00195         _networkList.push_back(new CQuorumSensingNetwork());
00196         _experimentList.push_back(new Experiment(_networkList[expt],"traR null mutant No OOHL or octopine, Fuqua 1994"));
00197         // put data files here
00198         _experimentList[expt]->AddDataFileToList("DataFiles/fuqua94_t4_5.dat");
00199         // mover and plotter
00200         _moverList.push_back(new CQualityControlCashKarpMover(frequency,stepSize,moveTol));
00201 /*      // minimizable
00202         _minimizableList.push_back(new SingleNetworkMinimizable());
00203         // parameters
00204         _minimizableList[expt]->Initialize(_experimentList[expt],_moverList[expt],nCells,rateFlag,chemFlag,logsFlag,timeWeight,rateWeight,chemWeight);
00205         //_minimizableList[0]->GetConversionFactor(7)->SetFactorFixed(true);
00206         //_minimizableList[0]->GetConversionFactor(7)->SetFactorValue(100.0/100000.0);
00207         _minimizableList[expt]->SetRateConstantsWeight(0.0);
00208 */
00209         // expt. 3b - traR null mutant octopine but no OOHL, traA present at time 0
00210         expt++;
00211         _networkList.push_back(new CQuorumSensingNetwork());
00212         _experimentList.push_back(new Experiment(_networkList[expt], "traR null mutant octopine but no OOHL, Fuqua 1994"));
00213         // put data files here
00214         _experimentList[expt]->AddDataFileToList("DataFiles/fuqua94_t4_6.dat");
00215         // mover and plotter
00216         _moverList.push_back(new CQualityControlCashKarpMover(frequency,stepSize,moveTol));
00217 /*      // minimizable
00218         _minimizableList.push_back(new SingleNetworkMinimizable());
00219         // parameters
00220         _minimizableList[expt]->Initialize(_experimentList[expt],_moverList[expt],nCells,rateFlag,chemFlag,logsFlag,timeWeight,rateWeight,chemWeight);
00221         //_minimizableList[0]->GetConversionFactor(7)->SetFactorFixed(true);
00222         //_minimizableList[0]->GetConversionFactor(7)->SetFactorValue(100.0/100000.0);
00223         _minimizableList[expt]->SetRateConstantsWeight(0.0);
00224 */
00225         // expt. 4b - traR null mutant OOHL but no octopine, traA present at time 0
00226         expt++;
00227         _networkList.push_back(new CQuorumSensingNetwork());
00228         _experimentList.push_back(new Experiment(_networkList[expt], "traR null mutant OOHL but no octopine, Fuqua 1994"));
00229         // put data files here
00230         _experimentList[expt]->AddDataFileToList("DataFiles/fuqua94_t4_7.dat");
00231         // mover and plotter
00232         _moverList.push_back(new CQualityControlCashKarpMover(frequency,stepSize,moveTol));
00233 /*      // minimizable
00234         _minimizableList.push_back(new SingleNetworkMinimizable());
00235         // parameters
00236         _minimizableList[expt]->Initialize(_experimentList[expt],_moverList[expt],nCells,rateFlag,chemFlag,logsFlag,timeWeight,rateWeight,chemWeight);
00237         //_minimizableList[0]->GetConversionFactor(7)->SetFactorFixed(true);
00238         //_minimizableList[0]->GetConversionFactor(7)->SetFactorValue(100.0/100000.0);
00239         _minimizableList[expt]->SetRateConstantsWeight(0.0);
00240 */
00241         // expt. 5b - traR null mutant OOHL and octopine, traA present at time 0
00242         expt++;
00243         _networkList.push_back(new CQuorumSensingNetwork());
00244         _experimentList.push_back(new Experiment(_networkList[expt], "traR null mutant OOHL and octopine, Fuqua 1994"));
00245         // put data files here
00246         _experimentList[expt]->AddDataFileToList("DataFiles/fuqua94_t4_8.dat");
00247         // mover and plotter
00248         _moverList.push_back(new CQualityControlCashKarpMover(frequency,stepSize,moveTol));
00249 /*      // minimizable
00250         _minimizableList.push_back(new SingleNetworkMinimizable());
00251         // parameters
00252         _minimizableList[expt]->Initialize(_experimentList[expt],_moverList[expt],nCells,rateFlag,chemFlag,logsFlag,timeWeight,rateWeight,chemWeight);
00253         //_minimizableList[0]->GetConversionFactor(7)->SetFactorFixed(true);
00254         //_minimizableList[0]->GetConversionFactor(7)->SetFactorValue(100.0/100000.0);
00255         _minimizableList[expt]->SetRateConstantsWeight(0.0);
00256 */
00257 
00258         // minimizable
00259         min++;
00260         _minimizableList.push_back(new SharedBFactorNetworkMinimizable());
00261         // parameters
00262         _minimizableList[min]->Initialize(_experimentList,_moverList,nCells,rateFlag,chemFlag,logsFlag,timeWeight,rateWeight,chemWeight);
00263         //_minimizableList[0]->GetConversionFactor(7)->SetFactorFixed(true);
00264         //_minimizableList[0]->GetConversionFactor(7)->SetFactorValue(100.0/100000.0);
00265         _minimizableList[min]->SetRateConstantsWeight(0.0);
00266 
00267         _experimentList.clear();
00268         _moverList.clear();
00269         _networkList.clear();
00270         expt = -1;
00271 
00272         // expt. 2c - occR null mutant No octopine, no OOHL, traA present at time 0
00273         expt++;
00274         _networkList.push_back(new CQuorumSensingNetwork());
00275         _experimentList.push_back(new Experiment(_networkList[expt],"occR null mutant No OOHL or octopine, Fuqua 1994"));
00276         // put data files here
00277         _experimentList[expt]->AddDataFileToList("DataFiles/fuqua94_t4_9.dat");
00278         // mover and plotter
00279         _moverList.push_back(new CQualityControlCashKarpMover(frequency,stepSize,moveTol));
00280 /*      // minimizable
00281         _minimizableList.push_back(new SingleNetworkMinimizable());
00282         // parameters
00283         _minimizableList[expt]->Initialize(_experimentList[expt],_moverList[expt],nCells,rateFlag,chemFlag,logsFlag,timeWeight,rateWeight,chemWeight);
00284         //_minimizableList[0]->GetConversionFactor(7)->SetFactorFixed(true);
00285         //_minimizableList[0]->GetConversionFactor(7)->SetFactorValue(100.0/100000.0);
00286         _minimizableList[expt]->SetRateConstantsWeight(0.0);
00287 */
00288         // expt. 3c - occR null mutant octopine but no OOHL, traA present at time 0
00289         expt++;
00290         _networkList.push_back(new CQuorumSensingNetwork());
00291         _experimentList.push_back(new Experiment(_networkList[expt], "occR null mutant octopine but no OOHL, Fuqua 1994"));
00292         // put data files here
00293         _experimentList[expt]->AddDataFileToList("DataFiles/fuqua94_t4_10.dat");
00294         // mover and plotter
00295         _moverList.push_back(new CQualityControlCashKarpMover(frequency,stepSize,moveTol));
00296 /*      // minimizable
00297         _minimizableList.push_back(new SingleNetworkMinimizable());
00298         // parameters
00299         _minimizableList[expt]->Initialize(_experimentList[expt],_moverList[expt],nCells,rateFlag,chemFlag,logsFlag,timeWeight,rateWeight,chemWeight);
00300         //_minimizableList[0]->GetConversionFactor(7)->SetFactorFixed(true);
00301         //_minimizableList[0]->GetConversionFactor(7)->SetFactorValue(100.0/100000.0);
00302         _minimizableList[expt]->SetRateConstantsWeight(0.0);
00303 */
00304         // expt. 4c - occR null mutant OOHL but no octopine, traA present at time 0
00305         expt++;
00306         _networkList.push_back(new CQuorumSensingNetwork());
00307         _experimentList.push_back(new Experiment(_networkList[expt], "occR null mutant OOHL but no octopine, Fuqua 1994"));
00308         // put data files here
00309         _experimentList[expt]->AddDataFileToList("DataFiles/fuqua94_t4_11.dat");
00310         // mover and plotter
00311         _moverList.push_back(new CQualityControlCashKarpMover(frequency,stepSize,moveTol));
00312 /*      // minimizable
00313         _minimizableList.push_back(new SingleNetworkMinimizable());
00314         // parameters
00315         _minimizableList[expt]->Initialize(_experimentList[expt],_moverList[expt],nCells,rateFlag,chemFlag,logsFlag,timeWeight,rateWeight,chemWeight);
00316         //_minimizableList[0]->GetConversionFactor(7)->SetFactorFixed(true);
00317         //_minimizableList[0]->GetConversionFactor(7)->SetFactorValue(100.0/100000.0);
00318         _minimizableList[expt]->SetRateConstantsWeight(0.0);
00319 */
00320         // expt. 5c - occR null mutant OOHL and octopine, traA present at time 0
00321         expt++;
00322         _networkList.push_back(new CQuorumSensingNetwork());
00323         _experimentList.push_back(new Experiment(_networkList[expt], "occR null mutant OOHL and octopine, Fuqua 1994"));
00324         // put data files here
00325         _experimentList[expt]->AddDataFileToList("DataFiles/fuqua94_t4_12.dat");
00326         // mover and plotter
00327         _moverList.push_back(new CQualityControlCashKarpMover(frequency,stepSize,moveTol));
00328 /*      // minimizable
00329         _minimizableList.push_back(new SingleNetworkMinimizable());
00330         // parameters
00331         _minimizableList[expt]->Initialize(_experimentList[expt],_moverList[expt],nCells,rateFlag,chemFlag,logsFlag,timeWeight,rateWeight,chemWeight);
00332         //_minimizableList[0]->GetConversionFactor(7)->SetFactorFixed(true);
00333         //_minimizableList[0]->GetConversionFactor(7)->SetFactorValue(100.0/100000.0);
00334         _minimizableList[expt]->SetRateConstantsWeight(0.0);
00335 */
00336         // minimizable
00337         min++;
00338         _minimizableList.push_back(new SharedBFactorNetworkMinimizable());
00339         // parameters
00340         _minimizableList[min]->Initialize(_experimentList,_moverList,nCells,rateFlag,chemFlag,logsFlag,timeWeight,rateWeight,chemWeight);
00341         //_minimizableList[0]->GetConversionFactor(7)->SetFactorFixed(true);
00342         //_minimizableList[0]->GetConversionFactor(7)->SetFactorValue(100.0/100000.0);
00343         _minimizableList[min]->SetRateConstantsWeight(0.0);
00344 
00345         _experimentList.clear();
00346         _moverList.clear();
00347         _networkList.clear();
00348         expt = -1;
00349 
00350         // expt. 6 - no octopine, traR-lacZ fusion
00351         expt++;
00352         _networkList.push_back(new CQuorumSensingNetwork());
00353         _experimentList.push_back(new Experiment(_networkList[expt], "no octopine, traR-lacZ fusion, Fuqua 1994"));
00354         // put data files here
00355         _experimentList[expt]->AddDataFileToList("DataFiles/fuqua94_t3_1.dat");
00356         // mover and plotter
00357         _moverList.push_back(new CQualityControlCashKarpMover(frequency,stepSize,moveTol));
00358 /*      // minimizable
00359         _minimizableList.push_back(new SingleNetworkMinimizable());
00360         // parameters
00361         _minimizableList[expt]->Initialize(_experimentList[expt],_moverList[expt],nCells,rateFlag,chemFlag,logsFlag,timeWeight,rateWeight,chemWeight);
00362         //_minimizableList[0]->GetConversionFactor(7)->SetFactorFixed(true);
00363         //_minimizableList[0]->GetConversionFactor(7)->SetFactorValue(100.0/100000.0);
00364         _minimizableList[expt]->SetRateConstantsWeight(0.0);
00365 */
00366         // expt. 7 - 400 ug/ml octopine, traR-lacZ fusion
00367         expt++;
00368         _networkList.push_back(new CQuorumSensingNetwork());
00369         _experimentList.push_back(new Experiment(_networkList[expt], "Octopine, traR-lacZ fusion, Fuqua 1994"));
00370         // put data files here
00371         _experimentList[expt]->AddDataFileToList("DataFiles/fuqua94_t3_2.dat");
00372         // mover and plotter
00373         _moverList.push_back(new CQualityControlCashKarpMover(frequency,stepSize,moveTol));
00374 /*      // minimizable
00375         _minimizableList.push_back(new SingleNetworkMinimizable());
00376         // parameters
00377         _minimizableList[expt]->Initialize(_experimentList[expt],_moverList[expt],nCells,rateFlag,chemFlag,logsFlag,timeWeight,rateWeight,chemWeight);
00378         //_minimizableList[0]->GetConversionFactor(7)->SetFactorFixed(true);
00379         //_minimizableList[0]->GetConversionFactor(7)->SetFactorValue(100.0/100000.0);
00380         _minimizableList[expt]->SetRateConstantsWeight(0.0);
00381 */
00382 
00383         // minimizable
00384         min++;
00385         _minimizableList.push_back(new SharedBFactorNetworkMinimizable());
00386         // parameters
00387         _minimizableList[min]->Initialize(_experimentList,_moverList,nCells,rateFlag,chemFlag,logsFlag,timeWeight,rateWeight,chemWeight);
00388         //_minimizableList[0]->GetConversionFactor(7)->SetFactorFixed(true);
00389         //_minimizableList[0]->GetConversionFactor(7)->SetFactorValue(100.0/100000.0);
00390         _minimizableList[min]->SetRateConstantsWeight(0.0);
00391 
00392         _experimentList.clear();
00393         _moverList.clear();
00394         _networkList.clear();
00395         expt = -1;
00396 
00397         // expt. 8 - no octopine, traR-lacZ fusion, no occR
00398         expt++;
00399         _networkList.push_back(new CQuorumSensingNetwork());
00400         _experimentList.push_back(new Experiment(_networkList[expt], "no octopine, no occR, traR-lacZ fusion, Fuqua 1994"));
00401         // put data files here
00402         _experimentList[expt]->AddDataFileToList("DataFiles/fuqua94_t3_3.dat");
00403         // mover and plotter
00404         _moverList.push_back(new CQualityControlCashKarpMover(frequency,stepSize,moveTol));
00405 /*      // minimizable
00406         _minimizableList.push_back(new SingleNetworkMinimizable());
00407         // parameters
00408         _minimizableList[expt]->Initialize(_experimentList[expt],_moverList[expt],nCells,rateFlag,chemFlag,logsFlag,timeWeight,rateWeight,chemWeight);
00409         //_minimizableList[0]->GetConversionFactor(7)->SetFactorFixed(true);
00410         //_minimizableList[0]->GetConversionFactor(7)->SetFactorValue(100.0/100000.0);
00411         _minimizableList[expt]->SetRateConstantsWeight(0.0);
00412 */
00413         // expt. 9 - 400ug/ml octopine, traR-lacZ fusion, no occR
00414         expt++;
00415         _networkList.push_back(new CQuorumSensingNetwork());
00416         _experimentList.push_back(new Experiment(_networkList[expt], "400 ug/ml octopine, no occR, traR-lacZ fusion, Fuqua 1994"));
00417         // put data files here
00418         _experimentList[expt]->AddDataFileToList("DataFiles/fuqua94_t3_4.dat");
00419         // mover and plotter
00420         _moverList.push_back(new CQualityControlCashKarpMover(frequency,stepSize,moveTol));
00421 /*      // minimizable
00422         _minimizableList.push_back(new SingleNetworkMinimizable());
00423         // parameters
00424         _minimizableList[expt]->Initialize(_experimentList[expt],_moverList[expt],nCells,rateFlag,chemFlag,logsFlag,timeWeight,rateWeight,chemWeight);
00425         //_minimizableList[0]->GetConversionFactor(7)->SetFactorFixed(true);
00426         //_minimizableList[0]->GetConversionFactor(7)->SetFactorValue(100.0/100000.0);
00427         _minimizableList[expt]->SetRateConstantsWeight(0.0);
00428 */
00429 
00430         // minimizable
00431         min++;
00432         _minimizableList.push_back(new SharedBFactorNetworkMinimizable());
00433         // parameters
00434         _minimizableList[min]->Initialize(_experimentList,_moverList,nCells,rateFlag,chemFlag,logsFlag,timeWeight,rateWeight,chemWeight);
00435         //_minimizableList[0]->GetConversionFactor(7)->SetFactorFixed(true);
00436         //_minimizableList[0]->GetConversionFactor(7)->SetFactorValue(100.0/100000.0);
00437         _minimizableList[min]->SetRateConstantsWeight(0.0);
00438 
00439         _experimentList.clear();
00440         _moverList.clear();
00441         _networkList.clear();
00442         expt = -1;
00443 
00444 /* Not using expts 10,11 because I'm not certain of the implementation of 
00445    multiple gene copies with only fused to a reporter -JJW 1/7/03
00446         // expt. 10 - no octopine, traR-lacZ fusion, traR multicopies
00447         expt++;
00448         _networkList.push_back(new CQuorumSensingNetwork());
00449         _experimentList.push_back(new Experiment(_networkList[expt], "no octopine, traR multipcopies, traR-lacZ fusion, Fuqua 1994"));
00450         // put data files here
00451         _experimentList[expt]->AddDataFileToList("../DataFiles/fuqua94_t3_5.dat");
00452         // mover and plotter
00453         _moverList.push_back(new CQualityControlCashKarpMover(frequency,stepSize,moveTol));
00454         // minimizable
00455         _minimizableList.push_back(new SingleNetworkMinimizable());
00456         // parameters
00457         _minimizableList[expt]->Initialize(_experimentList[expt],_moverList[expt],nCells,rateFlag,chemFlag,logsFlag,timeWeight,rateWeight,chemWeight);
00458         //_minimizableList[0]->GetConversionFactor(7)->SetFactorFixed(true);
00459         //_minimizableList[0]->GetConversionFactor(7)->SetFactorValue(100.0/100000.0);
00460         _minimizableList[expt]->SetRateConstantsWeight(0.0);
00461 
00462         // expt. 11 - 400ug/ml octopine, traR-lacZ fusion, traR multipcopies
00463         expt++;
00464         _networkList.push_back(new CQuorumSensingNetwork());
00465         _experimentList.push_back(new Experiment(_networkList[expt], "400 ug/ml octopine, traR multicopies, traR-lacZ fusion, Fuqua 1994"));
00466         // put data files here
00467         _experimentList[expt]->AddDataFileToList("../DataFiles/fuqua94_t3_6.dat");
00468         // mover and plotter
00469         _moverList.push_back(new CQualityControlCashKarpMover(frequency,stepSize,moveTol));
00470         // minimizable
00471         _minimizableList.push_back(new SingleNetworkMinimizable());
00472         // parameters
00473         _minimizableList[expt]->Initialize(_experimentList[expt],_moverList[expt],nCells,rateFlag,chemFlag,logsFlag,timeWeight,rateWeight,chemWeight);
00474         //_minimizableList[0]->GetConversionFactor(7)->SetFactorFixed(true);
00475         //_minimizableList[0]->GetConversionFactor(7)->SetFactorValue(100.0/100000.0);
00476         _minimizableList[expt]->SetRateConstantsWeight(0.0);
00477 */
00478         // expt. 12 - 0.1 nM OOHL, traI-lacZ fusion
00479         expt++;
00480         _networkList.push_back(new CQuorumSensingNetwork());
00481         _experimentList.push_back(new Experiment(_networkList[expt], "0.1 nM OOHL, traI-lacZ fusion, Zhu 1998"));
00482         // put data files here
00483         _experimentList[expt]->AddDataFileToList("DataFiles/zhu98_f2_1.dat");
00484         // mover and plotter
00485         _moverList.push_back(new CQualityControlCashKarpMover(frequency,stepSize,moveTol));
00486 /*      // minimizable
00487         _minimizableList.push_back(new SingleNetworkMinimizable());
00488         // parameters
00489         _minimizableList[expt]->Initialize(_experimentList[expt],_moverList[expt],nCells,rateFlag,chemFlag,logsFlag,timeWeight,rateWeight,chemWeight);
00490 //      _minimizableList[expt]->GetConversionFactor(32)->SetFactorFixed(true);
00491 //      _minimizableList[expt]->GetConversionFactor(32)->SetFactorValue(1.0);
00492         _minimizableList[expt]->SetRateConstantsWeight(0.0);
00493 */
00494         // expt. 13 - 0.2 nM OOHL, traI-lacZ fusion
00495         expt++;
00496         _networkList.push_back(new CQuorumSensingNetwork());
00497         _experimentList.push_back(new Experiment(_networkList[expt], "0.2 nM OOHL, traI-lacZ fusion, Zhu 1998"));
00498         // put data files here
00499         _experimentList[expt]->AddDataFileToList("DataFiles/zhu98_f2_2.dat");
00500         // mover and plotter
00501         _moverList.push_back(new CQualityControlCashKarpMover(frequency,stepSize,moveTol));
00502 /*      // minimizable
00503         _minimizableList.push_back(new SingleNetworkMinimizable());
00504         // parameters
00505         _minimizableList[expt]->Initialize(_experimentList[expt],_moverList[expt],nCells,rateFlag,chemFlag,logsFlag,timeWeight,rateWeight,chemWeight);
00506 //      _minimizableList[expt]->GetConversionFactor(32)->SetFactorFixed(true);
00507 //      _minimizableList[expt]->GetConversionFactor(32)->SetFactorValue(1.0);
00508         _minimizableList[expt]->SetRateConstantsWeight(0.0);
00509 */
00510         // expt. 14 - 1.0 nM OOHL, traI-lacZ fusion
00511         expt++;
00512         _networkList.push_back(new CQuorumSensingNetwork());
00513         _experimentList.push_back(new Experiment(_networkList[expt], "1.0 nM OOHL, traI-lacZ fusion, Zhu 1998"));
00514         // put data files here
00515         _experimentList[expt]->AddDataFileToList("DataFiles/zhu98_f2_3.dat");
00516         // mover and plotter
00517         _moverList.push_back(new CQualityControlCashKarpMover(frequency,stepSize,moveTol));
00518 /*      // minimizable
00519         _minimizableList.push_back(new SingleNetworkMinimizable());
00520         // parameters
00521         _minimizableList[expt]->Initialize(_experimentList[expt],_moverList[expt],nCells,rateFlag,chemFlag,logsFlag,timeWeight,rateWeight,chemWeight);
00522 //      _minimizableList[expt]->GetConversionFactor(32)->SetFactorFixed(true);
00523 //      _minimizableList[expt]->GetConversionFactor(32)->SetFactorValue(1.0);
00524         _minimizableList[expt]->SetRateConstantsWeight(0.0);
00525 */
00526         // expt. 15 - 2.0 nM OOHL, traI-lacZ fusion
00527         expt++;
00528         _networkList.push_back(new CQuorumSensingNetwork());
00529         _experimentList.push_back(new Experiment(_networkList[expt], "2.0 nM OOHL, traI-lacZ fusion, Zhu 1998"));
00530         // put data files here
00531         _experimentList[expt]->AddDataFileToList("DataFiles/zhu98_f2_4.dat");
00532         // mover and plotter
00533         _moverList.push_back(new CQualityControlCashKarpMover(frequency,stepSize,moveTol));
00534 /*      // minimizable
00535         _minimizableList.push_back(new SingleNetworkMinimizable());
00536         // parameters
00537         _minimizableList[expt]->Initialize(_experimentList[expt],_moverList[expt],nCells,rateFlag,chemFlag,logsFlag,timeWeight,rateWeight,chemWeight);
00538 //      _minimizableList[expt]->GetConversionFactor(32)->SetFactorFixed(true);
00539 //      _minimizableList[expt]->GetConversionFactor(32)->SetFactorValue(1.0);
00540         _minimizableList[expt]->SetRateConstantsWeight(0.0);
00541 */
00542         // expt. 16 - 10.0 nM OOHL, traI-lacZ fusion
00543         expt++;
00544         _networkList.push_back(new CQuorumSensingNetwork());
00545         _experimentList.push_back(new Experiment(_networkList[expt], "10.0 nM OOHL, traI-lacZ fusion, Zhu 1998"));
00546         // put data files here
00547         _experimentList[expt]->AddDataFileToList("DataFiles/zhu98_f2_5.dat");
00548         // mover and plotter
00549         _moverList.push_back(new CQualityControlCashKarpMover(frequency,stepSize,moveTol));
00550 /*      // minimizable
00551         _minimizableList.push_back(new SingleNetworkMinimizable());
00552         // parameters
00553         _minimizableList[expt]->Initialize(_experimentList[expt],_moverList[expt],nCells,rateFlag,chemFlag,logsFlag,timeWeight,rateWeight,chemWeight);
00554 //      _minimizableList[expt]->GetConversionFactor(32)->SetFactorFixed(true);
00555 //      _minimizableList[expt]->GetConversionFactor(32)->SetFactorValue(1.0);
00556         _minimizableList[expt]->SetRateConstantsWeight(0.0);
00557 */
00558         // expt. 17 - 20.0 nM OOHL, traI-lacZ fusion
00559         expt++;
00560         _networkList.push_back(new CQuorumSensingNetwork());
00561         _experimentList.push_back(new Experiment(_networkList[expt], "20.0 nM OOHL, traI-lacZ fusion, Zhu 1998"));
00562         // put data files here
00563         _experimentList[expt]->AddDataFileToList("DataFiles/zhu98_f2_6.dat");
00564         // mover and plotter
00565         _moverList.push_back(new CQualityControlCashKarpMover(frequency,stepSize,moveTol));
00566 /*      // minimizable
00567         _minimizableList.push_back(new SingleNetworkMinimizable());
00568         // parameters
00569         _minimizableList[expt]->Initialize(_experimentList[expt],_moverList[expt],nCells,rateFlag,chemFlag,logsFlag,timeWeight,rateWeight,chemWeight);
00570 //      _minimizableList[expt]->GetConversionFactor(32)->SetFactorFixed(true);
00571 //      _minimizableList[expt]->GetConversionFactor(32)->SetFactorValue(1.0);
00572         _minimizableList[expt]->SetRateConstantsWeight(0.0);
00573 */
00574         // expt. 18 - 100.0 nM OOHL, traI-lacZ fusion
00575         expt++;
00576         _networkList.push_back(new CQuorumSensingNetwork());
00577         _experimentList.push_back(new Experiment(_networkList[expt], "100.0 nM OOHL, traI-lacZ fusion, Zhu 1998"));
00578         // put data files here
00579         _experimentList[expt]->AddDataFileToList("DataFiles/zhu98_f2_7.dat");
00580         // mover and plotter
00581         _moverList.push_back(new CQualityControlCashKarpMover(frequency,stepSize,moveTol));
00582 /*      // minimizable
00583         _minimizableList.push_back(new SingleNetworkMinimizable());
00584         // parameters
00585         _minimizableList[expt]->Initialize(_experimentList[expt],_moverList[expt],nCells,rateFlag,chemFlag,logsFlag,timeWeight,rateWeight,chemWeight);
00586 //      _minimizableList[expt]->GetConversionFactor(32)->SetFactorFixed(true);
00587 //      _minimizableList[expt]->GetConversionFactor(32)->SetFactorValue(1.0);
00588         _minimizableList[expt]->SetRateConstantsWeight(0.0);
00589 */
00590         // expt. 19 - 200.0 nM OOHL, traI-lacZ fusion
00591         expt++;
00592         _networkList.push_back(new CQuorumSensingNetwork());
00593         _experimentList.push_back(new Experiment(_networkList[expt], "200.0 nM OOHL, traI-lacZ fusion, Zhu 1998"));
00594         // put data files here
00595         _experimentList[expt]->AddDataFileToList("DataFiles/zhu98_f2_8.dat");
00596         // mover and plotter
00597         _moverList.push_back(new CQualityControlCashKarpMover(frequency,stepSize,moveTol));
00598 /*      // minimizable
00599         _minimizableList.push_back(new SingleNetworkMinimizable());
00600         // parameters
00601         _minimizableList[expt]->Initialize(_experimentList[expt],_moverList[expt],nCells,rateFlag,chemFlag,logsFlag,timeWeight,rateWeight,chemWeight);
00602 //      _minimizableList[expt]->GetConversionFactor(32)->SetFactorFixed(true);
00603 //      _minimizableList[expt]->GetConversionFactor(32)->SetFactorValue(1.0);
00604         _minimizableList[expt]->SetRateConstantsWeight(0.0);
00605 */
00606         // expt. 20 - 1000.0 nM OOHL, traI-lacZ fusion
00607         expt++;
00608         _networkList.push_back(new CQuorumSensingNetwork());
00609         _experimentList.push_back(new Experiment(_networkList[expt], "1000.0 nM OOHL, traI-lacZ fusion, Zhu 1998"));
00610         // put data files here
00611         _experimentList[expt]->AddDataFileToList("DataFiles/zhu98_f2_9.dat");
00612         // mover and plotter
00613         _moverList.push_back(new CQualityControlCashKarpMover(frequency,stepSize,moveTol));
00614 /*      // minimizable
00615         _minimizableList.push_back(new SingleNetworkMinimizable());
00616         // parameters
00617         _minimizableList[expt]->Initialize(_experimentList[expt],_moverList[expt],nCells,rateFlag,chemFlag,logsFlag,timeWeight,rateWeight,chemWeight);
00618 //      _minimizableList[expt]->GetConversionFactor(32)->SetFactorFixed(true);
00619 //      _minimizableList[expt]->GetConversionFactor(32)->SetFactorValue(1.0);
00620         _minimizableList[expt]->SetRateConstantsWeight(0.0);
00621 */
00622         // expt. 21 - 2000.0 nM OOHL, traI-lacZ fusion
00623         expt++;
00624         _networkList.push_back(new CQuorumSensingNetwork());
00625         _experimentList.push_back(new Experiment(_networkList[expt], "2000.0 nM OOHL, traI-lacZ fusion, Zhu 1998"));
00626         // put data files here
00627         _experimentList[expt]->AddDataFileToList("DataFiles/zhu98_f2_10.dat");
00628         // mover and plotter
00629         _moverList.push_back(new CQualityControlCashKarpMover(frequency,stepSize,moveTol));
00630 /*      // minimizable
00631         _minimizableList.push_back(new SingleNetworkMinimizable());
00632         // parameters
00633         _minimizableList[expt]->Initialize(_experimentList[expt],_moverList[expt],nCells,rateFlag,chemFlag,logsFlag,timeWeight,rateWeight,chemWeight);
00634 //      _minimizableList[expt]->GetConversionFactor(32)->SetFactorFixed(true);
00635 //      _minimizableList[expt]->GetConversionFactor(32)->SetFactorValue(1.0);
00636         _minimizableList[expt]->SetRateConstantsWeight(0.0);
00637 */
00638         // expt. 22 - 10000.0 nM OOHL, traI-lacZ fusion
00639         expt++;
00640         _networkList.push_back(new CQuorumSensingNetwork());
00641         _experimentList.push_back(new Experiment(_networkList[expt], "10000.0 nM OOHL, traI-lacZ fusion, Zhu 1998"));
00642         // put data files here
00643         _experimentList[expt]->AddDataFileToList("DataFiles/zhu98_f2_11.dat");
00644         // mover and plotter
00645         _moverList.push_back(new CQualityControlCashKarpMover(frequency,stepSize,moveTol));
00646 /*      // minimizable
00647         _minimizableList.push_back(new SingleNetworkMinimizable());
00648         // parameters
00649         _minimizableList[expt]->Initialize(_experimentList[expt],_moverList[expt],nCells,rateFlag,chemFlag,logsFlag,timeWeight,rateWeight,chemWeight);
00650 //      _minimizableList[expt]->GetConversionFactor(32)->SetFactorFixed(true);
00651 //      _minimizableList[expt]->GetConversionFactor(32)->SetFactorValue(1.0);
00652         _minimizableList[expt]->SetRateConstantsWeight(0.0);
00653 */
00654 
00655         // minimizable
00656         min++;
00657         _minimizableList.push_back(new SharedBFactorNetworkMinimizable());
00658         // parameters
00659         _minimizableList[min]->Initialize(_experimentList,_moverList,nCells,rateFlag,chemFlag,logsFlag,timeWeight,rateWeight,chemWeight);
00660 //      _minimizableList[expt]->GetConversionFactor(32)->SetFactorFixed(true);
00661 //      _minimizableList[expt]->GetConversionFactor(32)->SetFactorValue(1.0);
00662         _minimizableList[expt]->SetRateConstantsWeight(0.0);
00663 
00664 /*      // expt. 23 - no octopine, WT, Conjugal Transfer Efficiency
00665         expt++;
00666         _networkList.push_back(new CQuorumSensingNetwork());
00667         _experimentList.push_back(new Experiment(_networkList[expt], "No octopine, WT, Conjugal transfer efficiency, Fuqua 1995"));
00668         // put data files here
00669         _experimentList[expt]->AddDataFileToList("../DataFiles/fuqua95_t2_1.dat");
00670         // mover and plotter
00671         _moverList.push_back(new CQualityControlCashKarpMover(frequency,stepSize,moveTol));
00672         // minimizable
00673         _minimizableList.push_back(new SingleNetworkMinimizable());
00674         // parameters
00675         _minimizableList[expt]->Initialize(_experimentList[expt],_moverList[expt],nCells,rateFlag,chemFlag,logsFlag,timeWeight,rateWeight,chemWeight);
00676         _minimizableList[expt]->GetConversionFactor(38)->SetFactorFixed(true);
00677         _minimizableList[expt]->GetConversionFactor(38)->SetFactorValue(1.0);
00678         _minimizableList[expt]->SetRateConstantsWeight(0.0);
00679 
00680         // expt. 24 - 2 mg/ml octopine, WT, Conjugal Transfer Efficiency
00681         expt++;
00682         _networkList.push_back(new CQuorumSensingNetwork());
00683         _experimentList.push_back(new Experiment(_networkList[expt], "2 mg/ml octopine, WT, Conjugal transfer efficiency, Fuqua 1995"));
00684         // put data files here
00685         _experimentList[expt]->AddDataFileToList("../DataFiles/fuqua95_t2_2.dat");
00686         // mover and plotter
00687         _moverList.push_back(new CQualityControlCashKarpMover(frequency,stepSize,moveTol));
00688         // minimizable
00689         _minimizableList.push_back(new SingleNetworkMinimizable());
00690         // parameters
00691         _minimizableList[expt]->Initialize(_experimentList[expt],_moverList[expt],nCells,rateFlag,chemFlag,logsFlag,timeWeight,rateWeight,chemWeight);
00692         _minimizableList[expt]->GetConversionFactor(38)->SetFactorFixed(true);
00693         _minimizableList[expt]->GetConversionFactor(38)->SetFactorValue(1.0);
00694         _minimizableList[expt]->SetRateConstantsWeight(0.0);
00695 
00696         // expt. 25 - no octopine, traM null mutant, Conjugal Transfer Efficiency
00697         expt++;
00698         _networkList.push_back(new CQuorumSensingNetwork());
00699         _experimentList.push_back(new Experiment(_networkList[expt], "No octopine, traM null mutant, Conjugal transfer efficiency, Fuqua 1995"));
00700         // put data files here
00701         _experimentList[expt]->AddDataFileToList("../DataFiles/fuqua95_t2_3.dat");
00702         // mover and plotter
00703         _moverList.push_back(new CQualityControlCashKarpMover(frequency,stepSize,moveTol));
00704         // minimizable
00705         _minimizableList.push_back(new SingleNetworkMinimizable());
00706         // parameters
00707         _minimizableList[expt]->Initialize(_experimentList[expt],_moverList[expt],nCells,rateFlag,chemFlag,logsFlag,timeWeight,rateWeight,chemWeight);
00708         _minimizableList[expt]->GetConversionFactor(38)->SetFactorFixed(true);
00709         _minimizableList[expt]->GetConversionFactor(38)->SetFactorValue(1.0);
00710         _minimizableList[expt]->SetRateConstantsWeight(0.0);
00711 
00712     // expt. 26 - 2 mg/ml octopine, traM null mutant, Conjugal Transfer Efficiency
00713         expt++;
00714         _networkList.push_back(new CQuorumSensingNetwork());
00715         _experimentList.push_back(new Experiment(_networkList[expt], "2 mg/ml octopine, traM null mutant, Conjugal transfer efficiency, Fuqua 1995"));
00716         // put data files here
00717         _experimentList[expt]->AddDataFileToList("../DataFiles/fuqua95_t2_4.dat");
00718         // mover and plotter
00719         _moverList.push_back(new CQualityControlCashKarpMover(frequency,stepSize,moveTol));
00720         // minimizable
00721         _minimizableList.push_back(new SingleNetworkMinimizable());
00722         // parameters
00723         _minimizableList[expt]->Initialize(_experimentList[expt],_moverList[expt],nCells,rateFlag,chemFlag,logsFlag,timeWeight,rateWeight,chemWeight);
00724         _minimizableList[expt]->GetConversionFactor(38)->SetFactorFixed(true);
00725         _minimizableList[expt]->GetConversionFactor(38)->SetFactorValue(1.0);
00726         _minimizableList[expt]->SetRateConstantsWeight(0.0);
00727 */
00728 
00729         if (plotornot == 1) {
00730                 cout << "setting up plots\n";
00731 //Plot Commands
00732                 min = -1;
00733 
00734 /*      //expt steadystate1
00735         expt++;
00736         _plotterList.push_back(new GnuPlotterTimeSeriesObserver());
00737         _plotterList[expt]->SetTitle("SteadyState1");
00738         _minimizableList[expt]->Attach(_plotterList[expt]);
00739 
00740         //expt steadystate2
00741         expt++;
00742         _plotterList.push_back(new GnuPlotterTimeSeriesObserver());
00743         _plotterList[expt]->SetTitle("SteadyState2");
00744         _minimizableList[expt]->Attach(_plotterList[expt]);
00745 */
00746                 //expt 0
00747                 min++;
00748                 _plotterList.push_back(new GnuPlotterTimeSeriesObserver());
00749                 _plotterList[min]->SetTitle("OOHL Present:Zhu 1999:ODE");
00750                 _minimizableList[min]->Attach(_plotterList[min]);
00751                 
00752                 //expt 1
00753                 min++;
00754                 _plotterList.push_back(new GnuPlotterTimeSeriesObserver());
00755                 _plotterList[min]->SetTitle("No OOHL:Zhu 1999:ODE");
00756                 _minimizableList[min]->Attach(_plotterList[min]);
00757                 
00758 /*              //expt 2
00759                 expt++;
00760                 _plotterList.push_back(new GnuPlotterTimeSeriesObserver());
00761                 _plotterList[expt]->SetTitle("No OOHL or octopine:Fuqua 1994:ODE");
00762                 _minimizableList[expt]->Attach(_plotterList[expt]);
00763                 
00764                 //expt 3
00765                 expt++;
00766                 _plotterList.push_back(new GnuPlotterTimeSeriesObserver());
00767                 _plotterList[expt]->SetTitle("octopine but no OOHL:Fuqua 1994:ODE");
00768                 _minimizableList[expt]->Attach(_plotterList[expt]);
00769                 
00770                 //expt 4
00771                 expt++;
00772                 _plotterList.push_back(new GnuPlotterTimeSeriesObserver());
00773                 _plotterList[expt]->SetTitle("OOHL but no octopine:Fuqua 1994:ODE");
00774                 _minimizableList[expt]->Attach(_plotterList[expt]);
00775                 
00776                 //expt 5
00777                 expt++;
00778                 _plotterList.push_back(new GnuPlotterTimeSeriesObserver());
00779                 _plotterList[expt]->SetTitle("OOHL and octopine:Fuqua 1994:ODE");
00780                 _minimizableList[expt]->Attach(_plotterList[expt]);
00781 */
00782 
00783                 //expts2-5
00784                 min++;
00785                 _plotterList.push_back(new GnuPlotterTimeSeriesSharedBFactorObserver());
00786                 _plotterList[min]->SetTitle("With and Without OOHL and octopine:Fuqua 1994:ODE");
00787                 _minimizableList[min]->Attach(_plotterList[min]);
00788         
00789 /*              //expt 2b
00790                 expt++;
00791                 _plotterList.push_back(new GnuPlotterTimeSeriesObserver());
00792                 _plotterList[expt]->SetTitle("traR null mutant No OOHL or octopine:Fuqua 1994:ODE");
00793                 _minimizableList[expt]->Attach(_plotterList[expt]);
00794                 
00795                 //expt 3b
00796                 expt++;
00797                 _plotterList.push_back(new GnuPlotterTimeSeriesObserver());
00798                 _plotterList[expt]->SetTitle("traR null mutant octopine but no OOHL:Fuqua 1994:ODE");
00799                 _minimizableList[expt]->Attach(_plotterList[expt]);
00800                 
00801                 //expt 4b
00802                 expt++;
00803                 _plotterList.push_back(new GnuPlotterTimeSeriesObserver());
00804                 _plotterList[expt]->SetTitle("traR null mutant OOHL but no octopine:Fuqua 1994:ODE");
00805                 _minimizableList[expt]->Attach(_plotterList[expt]);
00806                 
00807                 //expt 5b
00808                 expt++;
00809                 _plotterList.push_back(new GnuPlotterTimeSeriesObserver());
00810                 _plotterList[expt]->SetTitle("traR null mutant OOHL and octopine:Fuqua 1994:ODE");
00811                 _minimizableList[expt]->Attach(_plotterList[expt]);
00812 */
00813 
00814                 //expts2b-5b
00815                 min++;
00816                 _plotterList.push_back(new GnuPlotterTimeSeriesSharedBFactorObserver());
00817                 _plotterList[min]->SetTitle("traR null mutant With and Without OOHL and octopine:Fuqua 1994:ODE");
00818                 _minimizableList[min]->Attach(_plotterList[min]);
00819                 
00820 /*              //expt 2c
00821                 expt++;
00822                 _plotterList.push_back(new GnuPlotterTimeSeriesObserver());
00823                 _plotterList[expt]->SetTitle("occR null mutant No OOHL or octopine:Fuqua 1994:ODE");
00824                 _minimizableList[expt]->Attach(_plotterList[expt]);
00825                 
00826                 //expt 3c
00827                 expt++;
00828                 _plotterList.push_back(new GnuPlotterTimeSeriesObserver());
00829                 _plotterList[expt]->SetTitle("occR null mutant octopine but no OOHL:Fuqua 1994:ODE");
00830                 _minimizableList[expt]->Attach(_plotterList[expt]);
00831                 
00832                 //expt 4c
00833                 expt++;
00834                 _plotterList.push_back(new GnuPlotterTimeSeriesObserver());
00835                 _plotterList[expt]->SetTitle("occR null mutant OOHL but no octopine:Fuqua 1994:ODE");
00836                 _minimizableList[expt]->Attach(_plotterList[expt]);
00837                 
00838                 //expt 5c
00839                 expt++;
00840                 _plotterList.push_back(new GnuPlotterTimeSeriesObserver());
00841                 _plotterList[expt]->SetTitle("occR null mutant OOHL and octopine:Fuqua 1994:ODE");
00842                 _minimizableList[expt]->Attach(_plotterList[expt]);
00843 */
00844 
00845                 //expts2c-5c
00846                 min++;
00847                 _plotterList.push_back(new GnuPlotterTimeSeriesSharedBFactorObserver());
00848                 _plotterList[min]->SetTitle("occR null mutant With and Without OOHL and octopine:Fuqua 1994:ODE");
00849                 _minimizableList[min]->Attach(_plotterList[min]);
00850                 
00851 /*              //expt 6
00852                 expt++;
00853                 _plotterList.push_back(new GnuPlotterTimeSeriesObserver());
00854                 _plotterList[expt]->SetTitle("No octopine, traR-lacZ fusion:Fuqua 1994:ODE");
00855                 _minimizableList[expt]->Attach(_plotterList[expt]);
00856 
00857                 //expt 7
00858                 expt++;
00859                 _plotterList.push_back(new GnuPlotterTimeSeriesObserver());
00860                 _plotterList[expt]->SetTitle("octopine, traR-lacZ fusion:Fuqua 1994:ODE");
00861                 _minimizableList[expt]->Attach(_plotterList[expt]);
00862 */
00863                 //expts6-7
00864                 min++;
00865                 _plotterList.push_back(new GnuPlotterTimeSeriesSharedBFactorObserver());
00866                 _plotterList[min]->SetTitle("With and Without octopine, traR-lacZ:Fuqua 1994:ODE");
00867                 _minimizableList[min]->Attach(_plotterList[min]);
00868 
00869         
00870 /*              //expt 8
00871                 expt++;
00872                 _plotterList.push_back(new GnuPlotterTimeSeriesObserver());
00873                 _plotterList[expt]->SetTitle("no octopine, no occR, traR-lacZ fusion:Fuqua 1994:ODE");
00874                 _minimizableList[expt]->Attach(_plotterList[expt]);
00875                 
00876                 //expt 9
00877                 expt++;
00878                 _plotterList.push_back(new GnuPlotterTimeSeriesObserver());
00879                 _plotterList[expt]->SetTitle("400 ug/ml octopine, no occR, traR-lacZ fusion:Fuqua 1994:ODE");
00880                 _minimizableList[expt]->Attach(_plotterList[expt]);
00881 */      
00882                 //expts8-9
00883                 min++;
00884                 _plotterList.push_back(new GnuPlotterTimeSeriesSharedBFactorObserver());
00885                 _plotterList[min]->SetTitle("With and Without octopine, no occR, traR-lacZ:Fuqua 1994:ODE");
00886                 _minimizableList[min]->Attach(_plotterList[min]);
00887 
00888 /* see above for why 10,11 are commented out
00889                 //expt 10
00890                 expt++;
00891                 _plotterList.push_back(new GnuPlotterTimeSeriesObserver());
00892                 _plotterList[expt]->SetTitle("No octopine, traR multicopies, traR-lacZ fusion:Fuqua 1994:ODE");
00893                 _minimizableList[expt]->Attach(_plotterList[expt]);
00894 
00895                 //expt 11
00896                 expt++;
00897                 _plotterList.push_back(new GnuPlotterTimeSeriesObserver());
00898                 _plotterList[expt]->SetTitle("octopine, traR multicopies, traR-lacZ fusion:Fuqua 1994:ODE");
00899                 _minimizableList[expt]->Attach(_plotterList[expt]);
00900 */
00901 /*              //expt 12
00902                 expt++;
00903                 _plotterList.push_back(new GnuPlotterTimeSeriesObserver());
00904                 _plotterList[expt]->SetTitle("0.1 nM OOHL, traI-lacZ fusion:Zhu 1998:ODE");
00905                 _minimizableList[expt]->Attach(_plotterList[expt]);
00906                 
00907                 //expt 13
00908                 expt++;
00909                 _plotterList.push_back(new GnuPlotterTimeSeriesObserver());
00910                 _plotterList[expt]->SetTitle("0.2 nM OOHL, traI-lacZ fusion:Zhu 1998:ODE");
00911                 _minimizableList[expt]->Attach(_plotterList[expt]);
00912                 
00913                 //expt 14
00914                 expt++;
00915                 _plotterList.push_back(new GnuPlotterTimeSeriesObserver());
00916                 _plotterList[expt]->SetTitle("1.0 nM OOHL, traI-lacZ fusion:Zhu 1998:ODE");
00917                 _minimizableList[expt]->Attach(_plotterList[expt]);
00918                 
00919                 //expt 15
00920                 expt++;
00921                 _plotterList.push_back(new GnuPlotterTimeSeriesObserver());
00922                 _plotterList[expt]->SetTitle("2.0 nM OOHL, traI-lacZ fusion:Zhu 1998:ODE");
00923                 _minimizableList[expt]->Attach(_plotterList[expt]);
00924                 
00925                 //expt 16
00926                 expt++;
00927                 _plotterList.push_back(new GnuPlotterTimeSeriesObserver());
00928                 _plotterList[expt]->SetTitle("10.0 nM OOHL, traI-lacZ fusion:Zhu 1998:ODE");
00929                 _minimizableList[expt]->Attach(_plotterList[expt]);
00930                 
00931                 //expt 17
00932                 expt++;
00933                 _plotterList.push_back(new GnuPlotterTimeSeriesObserver());
00934                 _plotterList[expt]->SetTitle("20.0 nM OOHL, traI-lacZ fusion:Zhu 1998:ODE");
00935                 _minimizableList[expt]->Attach(_plotterList[expt]);
00936                 
00937                 //expt 18
00938                 expt++;
00939                 _plotterList.push_back(new GnuPlotterTimeSeriesObserver());
00940                 _plotterList[expt]->SetTitle("100.0 nM OOHL, traI-lacZ fusion:Zhu 1998:ODE");
00941                 _minimizableList[expt]->Attach(_plotterList[expt]);
00942                 
00943                 //expt 19
00944                 expt++;
00945                 _plotterList.push_back(new GnuPlotterTimeSeriesObserver());
00946                 _plotterList[expt]->SetTitle("200.0 nM OOHL, traI-lacZ fusion:Zhu 1998:ODE");
00947                 _minimizableList[expt]->Attach(_plotterList[expt]);
00948                 
00949                 //expt 20
00950                 expt++;
00951                 _plotterList.push_back(new GnuPlotterTimeSeriesObserver());
00952                 _plotterList[expt]->SetTitle("1000.0 nM OOHL, traI-lacZ fusion:Zhu 1998:ODE");
00953                 _minimizableList[expt]->Attach(_plotterList[expt]);
00954                 
00955                 //expt 21
00956                 expt++;
00957                 _plotterList.push_back(new GnuPlotterTimeSeriesObserver());
00958                 _plotterList[expt]->SetTitle("2000.0 nM OOHL, traI-lacZ fusion:Zhu 1998:ODE");
00959                 _minimizableList[expt]->Attach(_plotterList[expt]);
00960                 
00961                 //expt 22
00962                 expt++;
00963                 _plotterList.push_back(new GnuPlotterTimeSeriesObserver());
00964                 _plotterList[expt]->SetTitle("10000.0 nM OOHL, traI-lacZ fusion:Zhu 1998:ODE");
00965                 _minimizableList[expt]->Attach(_plotterList[expt]);
00966 */
00967 
00968                 //expts12-22
00969                 min++;
00970                 _plotterList.push_back(new GnuPlotterTimeSeriesSharedBFactorObserver());
00971                 _plotterList[min]->SetTitle("0.1 nM - 10000.0 nM OOHL, traI-lacZ:Zhu 1998:ODE");
00972                 _minimizableList[min]->Attach(_plotterList[min]);
00973 
00974 /*      //expt 23
00975         expt++;
00976         _plotterList.push_back(new GnuPlotterTimeSeriesObserver());
00977         _plotterList[expt]->SetTitle("No octopine, WT, Conjugal transfer efficiency, Fuqua 1995:ODE");
00978         _minimizableList[expt]->Attach(_plotterList[expt]);
00979 
00980         //expt 24
00981         expt++;
00982         _plotterList.push_back(new GnuPlotterTimeSeriesObserver());
00983         _plotterList[expt]->SetTitle("2 mg/ml octopine, WT, Conjugal transfer efficiency, Fuqua 1995:ODE");
00984         _minimizableList[expt]->Attach(_plotterList[expt]);
00985 
00986         //expt 25
00987         expt++;
00988         _plotterList.push_back(new GnuPlotterTimeSeriesObserver());
00989         _plotterList[expt]->SetTitle("No octopine, traM null mutant, Conjugal transfer efficiency, Fuqua 1995:ODE");
00990         _minimizableList[expt]->Attach(_plotterList[expt]);
00991 
00992         //expt 26
00993         expt++;
00994         _plotterList.push_back(new GnuPlotterTimeSeriesObserver());
00995         _plotterList[expt]->SetTitle("2 mg/ml octopine, traM null mutant, Conjugal transfer efficiency, Fuqua 1995:ODE");
00996         _minimizableList[expt]->Attach(_plotterList[expt]);
00997 */
00998         } //end if plotornot
00999 
01000         // allocate the master residuals list
01001         int masterResidualsSize = 0;
01002         for(int i = 0; i < _minimizableList.size(); i++)
01003         {
01004                 int subRes = _minimizableList[i]->GetNResiduals();
01005                 masterResidualsSize += subRes;
01006                 cout << subRes << " residuals in minimizable " << i << endl;
01007         }
01008         if(m_dGammaSquared > 0.0)
01009         {
01010                 masterResidualsSize += 1;
01011         }
01012         Allocate(masterResidualsSize);
01013 
01014         cout << "Master Residuals size : " << masterResidualsSize << endl;
01015 
01016         // define the experiments
01017         DefineExperiments();
01018 
01019 }
01020 
01021 CQuorumSensingNetworkMinimizableDirector::~CQuorumSensingNetworkMinimizableDirector()
01022 {
01023         for(int i = 0; i < _plotterList.size(); i++)
01024         {
01025                 _minimizableList[i]->Detach(_plotterList[i]);
01026                 delete _plotterList[i];
01027         }
01028 }
01029 
01030 void CQuorumSensingNetworkMinimizableDirector::DefineExperiments()
01031 {       
01032         int expt = -1;
01033         int min = -1;
01034 
01035 /*      // Steady State 1
01036         expt++;
01037         _minimizableList[expt]->GetExperiment()->GetReactionNetwork()->ChemicalReset();
01038 
01039         // Steady State 2
01040         expt++;
01041         _minimizableList[expt]->GetExperiment()->GetReactionNetwork()->ChemicalReset();
01042 */
01043         // OOHL present -> 200 molecules of BoundtraR
01044         min++;
01045 //      _minimizableList[expt]->GetExperiment()->GetReactionNetwork()->GetChemical(13)->SetInitialAmount(200.0);
01046 //      _minimizableList[expt]->GetExperiment()->GetReactionNetwork()->RemoveReaction(5);
01047 //      _minimizableList[expt]->GetExperiment()->GetReactionNetwork()->RemoveReaction(1);
01048         _minimizableList[min]->GetExperiment()->GetReactionNetwork()->GetChemical(1)->SetInitialAmount(10.6e07);
01049         _minimizableList[min]->GetExperiment()->GetReactionNetwork()->ChemicalReset();
01050 
01051         // No OOHL -> 100 molecules of FreetraR
01052         min++;
01053 //      _minimizableList[expt]->GetExperiment()->GetReactionNetwork()->GetChemical(12)->SetInitialAmount(100.0);
01054 //      _minimizableList[expt]->GetExperiment()->GetReactionNetwork()->RemoveReaction(5);
01055 //      _minimizableList[expt]->GetExperiment()->GetReactionNetwork()->RemoveReaction(1);
01056         _minimizableList[min]->GetExperiment()->GetReactionNetwork()->ChemicalReset();
01057 
01058         // no octopine no OOHL ->
01059         min++;
01060         expt++;
01061 //      _minimizableList[expt]->GetExperiment()->GetReactionNetwork()->RemoveReaction(45);
01062         _minimizableList[min]->GetExperiment(expt)->GetReactionNetwork()->RemoveReaction(41);
01063 //      _minimizableList[expt]->GetExperiment()->GetReactionNetwork()->RemoveReaction(8);
01064         _minimizableList[min]->GetExperiment(expt)->GetReactionNetwork()->ChemicalReset();
01065 
01066         // octopine but No OOHL -> 
01067         expt++;
01068         _minimizableList[min]->GetExperiment(expt)->GetReactionNetwork()->GetChemical(0)->SetInitialAmount(5.0e07);
01069 //      _minimizableList[expt]->GetExperiment()->GetReactionNetwork()->RemoveReaction(45);
01070         _minimizableList[min]->GetExperiment(expt)->GetReactionNetwork()->RemoveReaction(41);
01071 //      _minimizableList[expt]->GetExperiment()->GetReactionNetwork()->RemoveReaction(8);
01072         _minimizableList[min]->GetExperiment(expt)->GetReactionNetwork()->ChemicalReset();
01073         
01074         // OOHL but No octopine -> 
01075         expt++;
01076         _minimizableList[min]->GetExperiment(expt)->GetReactionNetwork()->GetChemical(1)->SetInitialAmount(5.3e04);
01077 //      _minimizableList[expt]->GetExperiment()->GetReactionNetwork()->RemoveReaction(45);
01078         _minimizableList[min]->GetExperiment(expt)->GetReactionNetwork()->RemoveReaction(41);
01079 //      _minimizableList[expt]->GetExperiment()->GetReactionNetwork()->RemoveReaction(8);
01080         _minimizableList[min]->GetExperiment(expt)->GetReactionNetwork()->ChemicalReset();
01081         
01082         // OOHL and octopine -> 
01083         expt++;
01084         _minimizableList[min]->GetExperiment(expt)->GetReactionNetwork()->GetChemical(0)->SetInitialAmount(5.0e07);
01085         _minimizableList[min]->GetExperiment(expt)->GetReactionNetwork()->GetChemical(1)->SetInitialAmount(5.3e04);
01086 //      _minimizableList[expt]->GetExperiment()->GetReactionNetwork()->RemoveReaction(45);
01087         _minimizableList[min]->GetExperiment(expt)->GetReactionNetwork()->RemoveReaction(41);
01088 //      _minimizableList[expt]->GetExperiment()->GetReactionNetwork()->RemoveReaction(8);
01089         _minimizableList[min]->GetExperiment(expt)->GetReactionNetwork()->ChemicalReset();
01090 
01091         expt = -1;
01092         //traR null mutant no octopine no OOHL ->
01093         min++;
01094         expt++;
01095         _minimizableList[min]->GetExperiment(expt)->GetReactionNetwork()->RemoveReaction(41);
01096         _minimizableList[min]->GetExperiment(expt)->GetReactionNetwork()->RemoveReaction(1);
01097         _minimizableList[min]->GetExperiment(expt)->GetReactionNetwork()->RemoveReaction(0);
01098         _minimizableList[min]->GetExperiment(expt)->GetReactionNetwork()->GetChemical(12)->SetInitialAmount(0.0);
01099         _minimizableList[min]->GetExperiment(expt)->GetReactionNetwork()->GetChemical(11)->SetInitialAmount(0.0);
01100         _minimizableList[min]->GetExperiment(expt)->GetReactionNetwork()->GetChemical(8)->SetInitialAmount(0.0);
01101         _minimizableList[min]->GetExperiment(expt)->GetReactionNetwork()->ChemicalReset();
01102 
01103         // traR null mutant octopine but No OOHL -> 
01104         expt++;
01105         _minimizableList[min]->GetExperiment(expt)->GetReactionNetwork()->GetChemical(0)->SetInitialAmount(5.0e07);
01106         _minimizableList[min]->GetExperiment(expt)->GetReactionNetwork()->RemoveReaction(41);
01107         _minimizableList[min]->GetExperiment(expt)->GetReactionNetwork()->RemoveReaction(1);
01108         _minimizableList[min]->GetExperiment(expt)->GetReactionNetwork()->RemoveReaction(0);
01109         _minimizableList[min]->GetExperiment(expt)->GetReactionNetwork()->GetChemical(12)->SetInitialAmount(0.0);
01110         _minimizableList[min]->GetExperiment(expt)->GetReactionNetwork()->GetChemical(11)->SetInitialAmount(0.0);
01111         _minimizableList[min]->GetExperiment(expt)->GetReactionNetwork()->GetChemical(8)->SetInitialAmount(0.0);
01112         _minimizableList[min]->GetExperiment(expt)->GetReactionNetwork()->ChemicalReset();
01113         
01114         // traR null mutant OOHL but No octopine -> 
01115         expt++;
01116         _minimizableList[min]->GetExperiment(expt)->GetReactionNetwork()->GetChemical(1)->SetInitialAmount(5.3e04);
01117         _minimizableList[min]->GetExperiment(expt)->GetReactionNetwork()->RemoveReaction(41);
01118         _minimizableList[min]->GetExperiment(expt)->GetReactionNetwork()->RemoveReaction(1);
01119         _minimizableList[min]->GetExperiment(expt)->GetReactionNetwork()->RemoveReaction(0);
01120         _minimizableList[min]->GetExperiment(expt)->GetReactionNetwork()->GetChemical(12)->SetInitialAmount(0.0);
01121         _minimizableList[min]->GetExperiment(expt)->GetReactionNetwork()->GetChemical(11)->SetInitialAmount(0.0);
01122         _minimizableList[min]->GetExperiment(expt)->GetReactionNetwork()->GetChemical(8)->SetInitialAmount(0.0);
01123         _minimizableList[min]->GetExperiment(expt)->GetReactionNetwork()->ChemicalReset();
01124         
01125         // traR null mutant OOHL and octopine -> 
01126         expt++;
01127         _minimizableList[min]->GetExperiment(expt)->GetReactionNetwork()->GetChemical(0)->SetInitialAmount(5.0e07);
01128         _minimizableList[min]->GetExperiment(expt)->GetReactionNetwork()->GetChemical(1)->SetInitialAmount(5.3e04);
01129         _minimizableList[min]->GetExperiment(expt)->GetReactionNetwork()->RemoveReaction(41);
01130         _minimizableList[min]->GetExperiment(expt)->GetReactionNetwork()->RemoveReaction(1);
01131         _minimizableList[min]->GetExperiment(expt)->GetReactionNetwork()->RemoveReaction(0);
01132         _minimizableList[min]->GetExperiment(expt)->GetReactionNetwork()->GetChemical(12)->SetInitialAmount(0.0);
01133         _minimizableList[min]->GetExperiment(expt)->GetReactionNetwork()->GetChemical(11)->SetInitialAmount(0.0);
01134         _minimizableList[min]->GetExperiment(expt)->GetReactionNetwork()->GetChemical(8)->SetInitialAmount(0.0);
01135         _minimizableList[min]->GetExperiment(expt)->GetReactionNetwork()->ChemicalReset();
01136 
01137         expt = -1;
01138         //occR null mutant no octopine no OOHL ->
01139         min++;
01140         expt++;
01141         _minimizableList[min]->GetExperiment(expt)->GetReactionNetwork()->RemoveReaction(41);
01142         _minimizableList[min]->GetExperiment(expt)->GetReactionNetwork()->RemoveReaction(1);
01143         _minimizableList[min]->GetExperiment(expt)->GetReactionNetwork()->GetChemical(8)->SetInitialAmount(0.0);
01144         _minimizableList[min]->GetExperiment(expt)->GetReactionNetwork()->ChemicalReset();
01145 
01146         //occR null mutant octopine but No OOHL -> 
01147         expt++;
01148         _minimizableList[min]->GetExperiment(expt)->GetReactionNetwork()->GetChemical(0)->SetInitialAmount(5.0e07);
01149         _minimizableList[min]->GetExperiment(expt)->GetReactionNetwork()->RemoveReaction(41);
01150         _minimizableList[min]->GetExperiment(expt)->GetReactionNetwork()->RemoveReaction(1);
01151         _minimizableList[min]->GetExperiment(expt)->GetReactionNetwork()->GetChemical(8)->SetInitialAmount(0.0);
01152         _minimizableList[min]->GetExperiment(expt)->GetReactionNetwork()->ChemicalReset();
01153         
01154         //occR null mutant OOHL but No octopine -> 
01155         expt++;
01156         _minimizableList[min]->GetExperiment(expt)->GetReactionNetwork()->GetChemical(1)->SetInitialAmount(5.3e04);
01157         _minimizableList[min]->GetExperiment(expt)->GetReactionNetwork()->RemoveReaction(41);
01158         _minimizableList[min]->GetExperiment(expt)->GetReactionNetwork()->RemoveReaction(1);
01159         _minimizableList[min]->GetExperiment(expt)->GetReactionNetwork()->GetChemical(8)->SetInitialAmount(0.0);
01160         _minimizableList[min]->GetExperiment(expt)->GetReactionNetwork()->ChemicalReset();
01161         
01162         //occR null mutant OOHL and octopine -> 
01163         expt++;
01164         _minimizableList[min]->GetExperiment(expt)->GetReactionNetwork()->GetChemical(0)->SetInitialAmount(5.0e07);
01165         _minimizableList[min]->GetExperiment(expt)->GetReactionNetwork()->GetChemical(1)->SetInitialAmount(5.3e04);
01166         _minimizableList[min]->GetExperiment(expt)->GetReactionNetwork()->RemoveReaction(41);
01167         _minimizableList[min]->GetExperiment(expt)->GetReactionNetwork()->RemoveReaction(1);
01168         _minimizableList[min]->GetExperiment(expt)->GetReactionNetwork()->GetChemical(8)->SetInitialAmount(0.0);
01169         _minimizableList[min]->GetExperiment(expt)->GetReactionNetwork()->ChemicalReset();
01170 
01171         expt = -1;
01172         // no octopine, traR-lacZ fusion -> 
01173         min++;
01174         expt++;
01175         _minimizableList[min]->GetExperiment(expt)->GetReactionNetwork()->RemoveReaction(7);
01176         _minimizableList[min]->GetExperiment(expt)->GetReactionNetwork()->RemoveReaction(6);
01177         _minimizableList[min]->GetExperiment(expt)->GetReactionNetwork()->ChemicalReset();
01178 
01179         //400ug/ml octopine, traR-lacZ fusion -> 
01180         expt++;
01181         _minimizableList[min]->GetExperiment(expt)->GetReactionNetwork()->GetChemical(0)->SetInitialAmount(1.0e7);
01182         _minimizableList[min]->GetExperiment(expt)->GetReactionNetwork()->RemoveReaction(7);
01183         _minimizableList[min]->GetExperiment(expt)->GetReactionNetwork()->RemoveReaction(6);
01184         _minimizableList[min]->GetExperiment(expt)->GetReactionNetwork()->ChemicalReset();
01185 
01186         expt = -1;
01187         // no octopine, no occR, traR-lacZ fusion -> 
01188         min++;
01189         expt++;
01190         _minimizableList[min]->GetExperiment(expt)->GetReactionNetwork()->RemoveReaction(7);
01191         _minimizableList[min]->GetExperiment(expt)->GetReactionNetwork()->RemoveReaction(6);
01192         _minimizableList[min]->GetExperiment(expt)->GetReactionNetwork()->RemoveReaction(1);
01193         _minimizableList[min]->GetExperiment(expt)->GetReactionNetwork()->ChemicalReset();
01194 
01195         // 400 ug/ml octopine, no occR, traR-lacZ fusion -> 
01196         expt++;
01197         _minimizableList[min]->GetExperiment(expt)->GetReactionNetwork()->GetChemical(0)->SetInitialAmount(1.0e7);
01198         _minimizableList[min]->GetExperiment(expt)->GetReactionNetwork()->RemoveReaction(7);
01199         _minimizableList[min]->GetExperiment(expt)->GetReactionNetwork()->RemoveReaction(6);
01200         _minimizableList[min]->GetExperiment(expt)->GetReactionNetwork()->RemoveReaction(1);
01201         _minimizableList[min]->GetExperiment(expt)->GetReactionNetwork()->ChemicalReset();
01202 
01203 /* see above for why 10,11 are commented out
01204         // no octopine, traR multicopies, traR-lacZ fusion -> 
01205         expt++;
01206         _minimizableList[expt]->GetExperiment()->GetReactionNetwork()->RemoveReaction(7);
01207         _minimizableList[expt]->GetExperiment()->GetReactionNetwork()->RemoveReaction(6);
01208         _minimizableList[expt]->GetExperiment()->GetReactionNetwork()->GetChemical(8)->SetInitialAmount(5.0);
01209         _minimizableList[expt]->GetExperiment()->GetReactionNetwork()->ChemicalReset();
01210 
01211         //400ug/ml octopine, traR multicopies, traR-lacZ fusion -> 
01212         expt++;
01213         _minimizableList[expt]->GetExperiment()->GetReactionNetwork()->GetChemical(0)->SetInitialAmount(1.0e7);
01214         _minimizableList[expt]->GetExperiment()->GetReactionNetwork()->RemoveReaction(7);
01215         _minimizableList[expt]->GetExperiment()->GetReactionNetwork()->RemoveReaction(6);
01216         _minimizableList[expt]->GetExperiment()->GetReactionNetwork()->GetChemical(8)->SetInitialAmount(5.0);
01217         _minimizableList[expt]->GetExperiment()->GetReactionNetwork()->ChemicalReset();
01218 */
01219 
01220         expt = -1;
01221         // 0.1nM OOHL, traI-lacZ fusion -> 
01222         min++;
01223         expt++;
01224         _minimizableList[min]->GetExperiment(expt)->GetReactionNetwork()->GetChemical(0)->SetInitialAmount(1.8e11);
01225         _minimizableList[min]->GetExperiment(expt)->GetReactionNetwork()->GetChemical(1)->SetInitialAmount(1.1e04);
01226         _minimizableList[min]->GetExperiment(expt)->GetReactionNetwork()->RemoveReaction(19);
01227         _minimizableList[min]->GetExperiment(expt)->GetReactionNetwork()->RemoveReaction(18);
01228         _minimizableList[min]->GetExperiment(expt)->GetReactionNetwork()->ChemicalReset();
01229 
01230         // 0.2nM OOHL, traI-lacZ fusion -> 
01231         expt++;
01232         _minimizableList[min]->GetExperiment(expt)->GetReactionNetwork()->GetChemical(0)->SetInitialAmount(1.8e11);
01233         _minimizableList[min]->GetExperiment(expt)->GetReactionNetwork()->GetChemical(1)->SetInitialAmount(5.5e04);
01234         _minimizableList[min]->GetExperiment(expt)->GetReactionNetwork()->RemoveReaction(19);
01235         _minimizableList[min]->GetExperiment(expt)->GetReactionNetwork()->RemoveReaction(18);
01236         _minimizableList[min]->GetExperiment(expt)->GetReactionNetwork()->ChemicalReset();
01237 
01238         // 1.0nM OOHL, traI-lacZ fusion -> 
01239         expt++;
01240         _minimizableList[min]->GetExperiment(expt)->GetReactionNetwork()->GetChemical(0)->SetInitialAmount(1.8e11);
01241         _minimizableList[min]->GetExperiment(expt)->GetReactionNetwork()->GetChemical(1)->SetInitialAmount(1.1e05);
01242         _minimizableList[min]->GetExperiment(expt)->GetReactionNetwork()->RemoveReaction(19);
01243         _minimizableList[min]->GetExperiment(expt)->GetReactionNetwork()->RemoveReaction(18);
01244         _minimizableList[min]->GetExperiment(expt)->GetReactionNetwork()->ChemicalReset();
01245 
01246         // 2.0nM OOHL, traI-lacZ fusion -> 
01247         expt++;
01248         _minimizableList[min]->GetExperiment(expt)->GetReactionNetwork()->GetChemical(0)->SetInitialAmount(1.8e11);
01249         _minimizableList[min]->GetExperiment(expt)->GetReactionNetwork()->GetChemical(1)->SetInitialAmount(5.5e05);
01250         _minimizableList[min]->GetExperiment(expt)->GetReactionNetwork()->RemoveReaction(19);
01251         _minimizableList[min]->GetExperiment(expt)->GetReactionNetwork()->RemoveReaction(18);
01252         _minimizableList[min]->GetExperiment(expt)->GetReactionNetwork()->ChemicalReset();
01253 
01254         // 10.0nM OOHL, traI-lacZ fusion -> 
01255         expt++;
01256         _minimizableList[min]->GetExperiment(expt)->GetReactionNetwork()->GetChemical(0)->SetInitialAmount(1.8e11);
01257         _minimizableList[min]->GetExperiment(expt)->GetReactionNetwork()->GetChemical(1)->SetInitialAmount(1.1e06);
01258         _minimizableList[min]->GetExperiment(expt)->GetReactionNetwork()->RemoveReaction(19);
01259         _minimizableList[min]->GetExperiment(expt)->GetReactionNetwork()->RemoveReaction(18);
01260         _minimizableList[min]->GetExperiment(expt)->GetReactionNetwork()->ChemicalReset();
01261 
01262         // 20.0nM OOHL, traI-lacZ fusion -> 
01263         expt++;
01264         _minimizableList[min]->GetExperiment(expt)->GetReactionNetwork()->GetChemical(0)->SetInitialAmount(1.8e11);
01265         _minimizableList[min]->GetExperiment(expt)->GetReactionNetwork()->GetChemical(1)->SetInitialAmount(5.5e06);
01266         _minimizableList[min]->GetExperiment(expt)->GetReactionNetwork()->RemoveReaction(19);
01267         _minimizableList[min]->GetExperiment(expt)->GetReactionNetwork()->RemoveReaction(18);
01268         _minimizableList[min]->GetExperiment(expt)->GetReactionNetwork()->ChemicalReset();
01269 
01270         // 100.0nM OOHL, traI-lacZ fusion -> 
01271         expt++;
01272         _minimizableList[min]->GetExperiment(expt)->GetReactionNetwork()->GetChemical(0)->SetInitialAmount(1.8e11);
01273         _minimizableList[min]->GetExperiment(expt)->GetReactionNetwork()->GetChemical(1)->SetInitialAmount(1.1e07);
01274         _minimizableList[min]->GetExperiment(expt)->GetReactionNetwork()->RemoveReaction(19);
01275         _minimizableList[min]->GetExperiment(expt)->GetReactionNetwork()->RemoveReaction(18);
01276         _minimizableList[min]->GetExperiment(expt)->GetReactionNetwork()->ChemicalReset();
01277 
01278         // 200.0nM OOHL, traI-lacZ fusion -> 
01279         expt++;
01280         _minimizableList[min]->GetExperiment(expt)->GetReactionNetwork()->GetChemical(0)->SetInitialAmount(1.8e11);
01281         _minimizableList[min]->GetExperiment(expt)->GetReactionNetwork()->GetChemical(1)->SetInitialAmount(5.5e07);
01282         _minimizableList[min]->GetExperiment(expt)->GetReactionNetwork()->RemoveReaction(19);
01283         _minimizableList[min]->GetExperiment(expt)->GetReactionNetwork()->RemoveReaction(18);
01284         _minimizableList[min]->GetExperiment(expt)->GetReactionNetwork()->ChemicalReset();
01285 
01286         // 1000.0nM OOHL, traI-lacZ fusion -> 
01287         expt++;
01288         _minimizableList[min]->GetExperiment(expt)->GetReactionNetwork()->GetChemical(0)->SetInitialAmount(1.8e11);
01289         _minimizableList[min]->GetExperiment(expt)->GetReactionNetwork()->GetChemical(1)->SetInitialAmount(1.1e08);
01290         _minimizableList[min]->GetExperiment(expt)->GetReactionNetwork()->RemoveReaction(19);
01291         _minimizableList[min]->GetExperiment(expt)->GetReactionNetwork()->RemoveReaction(18);
01292         _minimizableList[min]->GetExperiment(expt)->GetReactionNetwork()->ChemicalReset();
01293 
01294         // 2000.0nM OOHL, traI-lacZ fusion -> 
01295         expt++;
01296         _minimizableList[min]->GetExperiment(expt)->GetReactionNetwork()->GetChemical(0)->SetInitialAmount(1.8e11);
01297         _minimizableList[min]->GetExperiment(expt)->GetReactionNetwork()->GetChemical(1)->SetInitialAmount(5.5e08);
01298         _minimizableList[min]->GetExperiment(expt)->GetReactionNetwork()->RemoveReaction(19);
01299         _minimizableList[min]->GetExperiment(expt)->GetReactionNetwork()->RemoveReaction(18);
01300         _minimizableList[min]->GetExperiment(expt)->GetReactionNetwork()->ChemicalReset();
01301 
01302         // 10000.0nM OOHL, traI-lacZ fusion -> 
01303         expt++;
01304         _minimizableList[min]->GetExperiment(expt)->GetReactionNetwork()->GetChemical(0)->SetInitialAmount(1.8e11);
01305         _minimizableList[min]->GetExperiment(expt)->GetReactionNetwork()->GetChemical(1)->SetInitialAmount(1.1e09);
01306         _minimizableList[min]->GetExperiment(expt)->GetReactionNetwork()->RemoveReaction(19);
01307         _minimizableList[min]->GetExperiment(expt)->GetReactionNetwork()->RemoveReaction(18);
01308         _minimizableList[min]->GetExperiment(expt)->GetReactionNetwork()->ChemicalReset();
01309 
01310 /*      //No octopine, WT, Conjugal transfer efficiency ->
01311         expt++;
01312         _minimizableList[expt]->GetExperiment()->GetReactionNetwork()->ChemicalReset();
01313 
01314         //2 mg/ml octopine, WT, Conjugal transfer efficiency ->
01315         expt++;
01316         _minimizableList[expt]->GetExperiment()->GetReactionNetwork()->GetChemical(0)->SetInitialAmount(9.0e11);
01317         _minimizableList[expt]->GetExperiment()->GetReactionNetwork()->ChemicalReset();
01318 
01319         //No octopine, traM null mutant, Conjugal transfer efficiency ->
01320         expt++;
01321         _minimizableList[expt]->GetExperiment()->GetReactionNetwork()->GetChemical(19)->SetInitialAmount(0.0);
01322         _minimizableList[expt]->GetExperiment()->GetReactionNetwork()->GetChemical(18)->SetInitialAmount(0.0);
01323         _minimizableList[expt]->GetExperiment()->GetReactionNetwork()->RemoveReaction(21);
01324         _minimizableList[expt]->GetExperiment()->GetReactionNetwork()->RemoveReaction(20);
01325         _minimizableList[expt]->GetExperiment()->GetReactionNetwork()->RemoveReaction(19);
01326         _minimizableList[expt]->GetExperiment()->GetReactionNetwork()->RemoveReaction(10);
01327         _minimizableList[expt]->GetExperiment()->GetReactionNetwork()->ChemicalReset();
01328 
01329         //2 mg/ml octopine, traM null mutant, Conjugal transfer efficiency ->
01330         expt++;
01331         _minimizableList[expt]->GetExperiment()->GetReactionNetwork()->GetChemical(0)->SetInitialAmount(9.0e11);
01332         _minimizableList[expt]->GetExperiment()->GetReactionNetwork()->GetChemical(19)->SetInitialAmount(0.0);
01333         _minimizableList[expt]->GetExperiment()->GetReactionNetwork()->GetChemical(18)->SetInitialAmount(0.0);
01334         _minimizableList[expt]->GetExperiment()->GetReactionNetwork()->RemoveReaction(21);
01335         _minimizableList[expt]->GetExperiment()->GetReactionNetwork()->RemoveReaction(20);
01336         _minimizableList[expt]->GetExperiment()->GetReactionNetwork()->RemoveReaction(19);
01337         _minimizableList[expt]->GetExperiment()->GetReactionNetwork()->RemoveReaction(10);
01338         _minimizableList[expt]->GetExperiment()->GetReactionNetwork()->ChemicalReset();
01339 */
01340   }
01341 
01342 double CQuorumSensingNetworkMinimizableDirector::GetParameter(int parIndex)
01343 {
01344         // for this director, everyone has the same parameters so any set 
01345         // can be returned
01346         return _minimizableList[0]->GetParameter(parIndex);
01347 }
01348 
01349 int CQuorumSensingNetworkMinimizableDirector::GetNParameters()
01350 {
01351         // ditto as for GetParameters()
01352         return _minimizableList[0]->GetNParameters();
01353 }

Generated on Mon Nov 3 09:38:10 2003 by doxygen1.2.14 written by Dimitri van Heesch, © 1997-2002