62 topLabel->setText(
"");
79 for (; it != end; ++it)
85 mpTblMetabolites->setItem(i, 2,
new QTableWidgetItem(QString::number((*it)->getConcentration())));
86 mpTblMetabolites->setItem(i, 3,
new QTableWidgetItem(QString::number((*it)->getValue())));
87 mpTblMetabolites->setItem(i, 4,
new QTableWidgetItem(QString::number((*it)->getConcentrationRate())));
88 mpTblMetabolites->setItem(i, 5,
new QTableWidgetItem(QString::number((*it)->getRate())));
89 mpTblMetabolites->setItem(i, 6,
new QTableWidgetItem(QString::number((*it)->getTransitionTime())));
94 mpTblMetabolites->setRowCount(i);
95 mpTblMetabolites->resizeColumnsToContents();
96 mpTblMetabolites->resizeRowsToContents();
107 for (; it != end; ++it)
110 mpTblCompartments->setItem(i, 0,
new QTableWidgetItem(
FROM_UTF8((*it)->getObjectName())));
112 mpTblCompartments->setItem(i, 2,
new QTableWidgetItem(QString::number((*it)->getValue())));
113 mpTblCompartments->setItem(i, 3,
new QTableWidgetItem(QString::number((*it)->getRate())));
117 mpTblCompartments->setRowCount(i);
118 mpTblCompartments->resizeColumnsToContents();
119 mpTblCompartments->resizeRowsToContents();
131 for (; it != end; ++it)
133 mpTblReactions->setItem(i, 0,
new QTableWidgetItem(
FROM_UTF8((*it)->getObjectName())));
134 mpTblReactions->setItem(i, 1,
new QTableWidgetItem(QString::number((*it)->getFlux())));
135 mpTblReactions->setItem(i, 2,
new QTableWidgetItem(QString::number((*it)->getParticleFlux())));
141 mpTblReactions->resizeColumnsToContents();
142 mpTblReactions->resizeRowsToContents();
153 for (; it != end; ++it)
156 mpTblModelValues->setItem(i, 0,
new QTableWidgetItem(
FROM_UTF8((*it)->getObjectName())));
158 mpTblModelValues->setItem(i, 2,
new QTableWidgetItem(QString::number((*it)->getValue())));
159 mpTblModelValues->setItem(i, 3,
new QTableWidgetItem(QString::number((*it)->getRate())));
163 mpTblModelValues->setRowCount(i);
164 mpTblModelValues->resizeColumnsToContents();
165 mpTblModelValues->resizeRowsToContents();
173 mpJacobianAnnotationWidget->setColorCoding(tcs);
174 mpJacobianAnnotationWidget->setColorScalingAutomatic(
true);
175 mpJacobianAnnotationWidget->setLegendEnabled(
false);
176 mpJacobianAnnotationWidget->setArrayAnnotation(JacAnn);
182 size_t i, imax = eigen_i.
size();
183 tableEigenValues->setRowCount((
int) imax);
185 for (i = 0; i < imax; ++i)
187 tableEigenValues->setItem((
int) i, 0,
new QTableWidgetItem(QString::number(eigen_r[i])));
188 tableEigenValues->setItem((
int) i, 1,
new QTableWidgetItem(QString::number(eigen_i[i])));
191 tableEigenValues->resizeColumnsToContents();
192 tableEigenValues->resizeRowsToContents();
199 mpJacobianXAnnotationWidget->setColorCoding(tcs);
200 mpJacobianXAnnotationWidget->setColorScalingAutomatic(
true);
201 mpJacobianXAnnotationWidget->setLegendEnabled(
false);
202 mpJacobianXAnnotationWidget->setArrayAnnotation(JacXAnn);
208 imax = eigen_iX.
size();
209 tableEigenValuesX->setRowCount((
int) imax);
211 for (i = 0; i < imax; ++i)
213 tableEigenValuesX->setItem((
int) i, 0,
new QTableWidgetItem(QString::number(eigen_rX[i])));
214 tableEigenValuesX->setItem((
int) i, 1,
new QTableWidgetItem(QString::number(eigen_iX[i])));
217 tableEigenValuesX->resizeColumnsToContents();
218 tableEigenValuesX->resizeRowsToContents();
221 stabilityTextEdit->setReadOnly(
true);
223 std::ostringstream ss;
226 stabilityTextEdit->setText(
FROM_UTF8(ss.str()));
239 if (!TimeUnits.isEmpty())
240 TimeUnits =
"\n(" + TimeUnits +
")";
244 if (!FrequencyUnits.isEmpty())
245 FrequencyUnits =
"\n(" + FrequencyUnits +
")";
249 if (!ConcentrationUnits.isEmpty())
250 ConcentrationUnits =
"\n(" + ConcentrationUnits +
")";
254 if (!ConcentrationRateUnits.isEmpty())
255 ConcentrationRateUnits =
"\n(" + ConcentrationRateUnits +
")";
259 if (!VolumeUnits.isEmpty())
260 VolumeUnits =
"\n(" + VolumeUnits +
")";
264 if (!VolumeRateUnits.isEmpty())
265 VolumeRateUnits =
"\n(" + VolumeRateUnits +
")";
269 if (!QuantityRateUnits.isEmpty())
270 QuantityRateUnits =
"\n(" + QuantityRateUnits +
")";
272 mpTblCompartments->horizontalHeaderItem(2)->setText(
"Volume" + VolumeUnits);
273 mpTblCompartments->horizontalHeaderItem(3)->setText(
"Rate" + VolumeRateUnits);
275 mpTblMetabolites->horizontalHeaderItem(2)->setText(
"Concentration" + ConcentrationUnits);
276 mpTblMetabolites->horizontalHeaderItem(3)->setText(
"Particle Numbers");
277 mpTblMetabolites->horizontalHeaderItem(4)->setText(
"Rate" + ConcentrationRateUnits);
278 mpTblMetabolites->horizontalHeaderItem(5)->setText(
"Rate" + FrequencyUnits);
279 mpTblMetabolites->horizontalHeaderItem(6)->setText(
"Transition Time" + TimeUnits);
281 mpTblReactions->horizontalHeaderItem(1)->setText(
"Flux" + QuantityRateUnits);
282 mpTblReactions->horizontalHeaderItem(2)->setText(
"Particle Flux" + FrequencyUnits);
303 topLabel->setText(
"A steady state with given resolution was found.");
305 topLabel->setText(
"No steady state with given resolution was found!");
307 topLabel->setText(
"An equilibrium steady state (zero fluxes) was found.");
309 topLabel->setText(
"An invalid steady state (negative concentrations) was found.");
311 topLabel->setText(
"A steady state with given resolution couldn't be found.");
324 int Last = mpTabWidget->count() - 1;
332 mpTabWidget->setTabEnabled(Last - 3,
true);
333 mpTabWidget->setTabEnabled(Last - 2,
true);
334 mpTabWidget->setTabEnabled(Last - 1,
true);
341 mpTabWidget->setTabEnabled(Last - 3,
false);
342 mpTabWidget->setTabEnabled(Last - 2,
false);
343 mpTabWidget->setTabEnabled(Last - 1,
false);
349 mpTabWidget->setTabEnabled(Last,
true);
358 mpTabWidget->setTabEnabled(Last,
false);
366 topLabel->setText(
"No result available, please execute the steady-state task.");
368 mpTblMetabolites->setRowCount(0);
369 mpTblCompartments->setRowCount(0);
370 mpTblModelValues->setRowCount(0);
371 mpTblReactions->setRowCount(0);
373 mpJacobianAnnotationWidget->setArrayAnnotation(NULL);
374 mpJacobianXAnnotationWidget->setArrayAnnotation(NULL);
376 tableEigenValues->setRowCount(0);
377 tableEigenValuesX->setRowCount(0);
379 stabilityTextEdit->setText(
"");
380 protocolTextEdit->setText(
"");
391 mpTblMetabolites->showColumn(2);
392 mpTblMetabolites->hideColumn(3);
393 mpTblMetabolites->showColumn(4);
394 mpTblMetabolites->hideColumn(5);
395 mpTblReactions->showColumn(1);
396 mpTblReactions->hideColumn(2);
400 mpTblMetabolites->hideColumn(2);
401 mpTblMetabolites->showColumn(3);
402 mpTblMetabolites->hideColumn(4);
403 mpTblMetabolites->showColumn(5);
404 mpTblReactions->hideColumn(1);
405 mpTblReactions->showColumn(2);
414 const std::string & )
const CSteadyStateMethod::ReturnCode & getResult() const
const CArrayAnnotation * getJacobianAnnotated() const
CCopasiProblem * getProblem()
std::string getTimeUnitsDisplayString() const
static const std::string StatusName[]
const CCopasiVector< CMetab > & getMetabolites() const
std::string getConcentrationRateUnitsDisplayString() const
std::string getFrequencyUnitsDisplayString() const
const CCopasiVectorN< CModelValue > & getModelValues() const
virtual size_t size() const
void updateNonSimulatedValues(void)
void updateSimulatedValues(const bool &updateMoieties)
std::string getQuantityRateUnitsDisplayString() const
std::string getVolumeRateUnitsDisplayString() const
bool isStabilityAnalysisRequested() const
const CState * getState() const
const CArrayAnnotation * getJacobianXAnnotated() const
const CVector< C_FLOAT64 > & getI() const
const CEigen & getEigenValues() const
std::string getMethodLog() const
std::string getVolumeUnitsDisplayString() const
void setState(const CState &state)
static CCopasiVector< CCopasiDataModel > * getDatamodelList()
std::string getChemEqString(bool expanded) const
const CVector< C_FLOAT64 > & getR() const
std::string getConcentrationUnitsDisplayString() const
CCopasiVectorNS< CCompartment > & getCompartments()
CCopasiMethod * getMethod()
const CEigen & getEigenValuesReduced() const
CCopasiVectorNS< CReaction > & getReactions()
bool isJacobianRequested() const