Added an init() check to setTemperature().
This commit is contained in:
parent
737c4aa49b
commit
f36a5c4863
2 changed files with 7 additions and 64 deletions
|
|
@ -729,66 +729,6 @@ namespace Cantera {
|
|||
throw CanteraError("MultiPhase::equilibrate",
|
||||
"No convergence for T");
|
||||
}
|
||||
|
||||
// else if (XY == SP) {
|
||||
// if (loglevel > 0) {
|
||||
// addLogEntry("problem type","fixed S,P");
|
||||
// }
|
||||
// doublereal dt = 1.0e3;
|
||||
// doublereal s0 = entropy();
|
||||
// int n;
|
||||
// bool start = true;
|
||||
// doublereal ferr, snow, serr, tnew;
|
||||
// for (n = 0; n < maxiter; n++) {
|
||||
// e = new MultiPhaseEquil(this, start);
|
||||
// ferr = 0.1;
|
||||
// start = false;
|
||||
// if (fabs(dt) < 1.0) ferr = err;
|
||||
// if (loglevel > 1) {
|
||||
// beginLogGroup("iteration "+int2str(n));
|
||||
// }
|
||||
// try {
|
||||
// error = e->equilibrate(TP, ferr, maxsteps, loglevel-1);
|
||||
// snow = entropy();
|
||||
// tnew = exp(0.5*(s0 - snow)/cp())*temperature();
|
||||
// serr = fabs((s0 - snow)/s0);
|
||||
// if (loglevel > 1) {
|
||||
// addLogEntry("T",fp2str(temperature()));
|
||||
// addLogEntry("S rel error",fp2str(serr));
|
||||
// endLogGroup();
|
||||
// }
|
||||
// if (serr < err) {
|
||||
// if (loglevel > 0) {
|
||||
// addLogEntry("T iterations",int2str(n));
|
||||
// addLogEntry("Final T",fp2str(temperature()));
|
||||
// addLogEntry("S rel error",fp2str(serr));
|
||||
// }
|
||||
// goto done;
|
||||
// }
|
||||
// setTemperature(tnew);
|
||||
// }
|
||||
// catch (CanteraError err) {
|
||||
// delete e;
|
||||
// if (!strt) {
|
||||
// if (loglevel > 0)
|
||||
// addLogEntry("no convergence",
|
||||
// "setting strt to True");
|
||||
// strt = true;
|
||||
// }
|
||||
// else {
|
||||
// tnew = 0.5*(m_temp + Thigh);
|
||||
// setTemperature(tnew);
|
||||
// if (loglevel > 0)
|
||||
// addLogEntry("no convergence",
|
||||
// "trying T = "+fp2str(m_temp));
|
||||
// }
|
||||
// }
|
||||
// endLogGroup();
|
||||
// }
|
||||
// if (loglevel > 0) write_logfile("equil_err.html");
|
||||
// throw CanteraError("MultiPhase::equilibrate",
|
||||
// "No convergence for T");
|
||||
// }
|
||||
else if (XY == TV) {
|
||||
addLogEntry("problem type","fixed T, V");
|
||||
// doublereal dt = 1.0e3;
|
||||
|
|
@ -863,6 +803,12 @@ done:
|
|||
}
|
||||
#endif
|
||||
|
||||
void MultiPhase::setTemperature(const doublereal T) {
|
||||
if (!m_init) init();
|
||||
m_temp = T;
|
||||
updatePhases();
|
||||
}
|
||||
|
||||
// Name of element \a m.
|
||||
std::string MultiPhase::elementName(int m) const {
|
||||
return m_enames[m];
|
||||
|
|
|
|||
|
|
@ -317,10 +317,7 @@ namespace Cantera {
|
|||
/*!
|
||||
* @param T value of the temperature (Kelvin)
|
||||
*/
|
||||
void setTemperature(doublereal T) {
|
||||
m_temp = T;
|
||||
updatePhases();
|
||||
}
|
||||
void setTemperature(const doublereal T);
|
||||
|
||||
/// Pressure [Pa].
|
||||
doublereal pressure() const {
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue