14 std::vector<double>
T,
p;
23 this->p.push_back(
p0);
29 this->T.push_back(
Secant(
this,
T0, 0.001 *
T0, 1e-10, 100));
44 if (this->rho_guess < 0)
57 double rlnT = 0.1, rlnp = 0.1;
58 T = exp(
lnT + rlnT * cos(t));
59 p = exp(
lnp + rlnp * sin(t));
62 void trace(std::vector<double>&
T, std::vector<double>&
p) {
64 for (
int i = 0; i < 1000; ++i) {
66 this->lnT = log(this->T[this->T.size() - 1]);
67 this->lnp = log(this->p[this->p.size() - 1]);
71 this->
TPcoords(t, this->lnT, this->lnp, T2, P2);
72 this->T.push_back(T2);
73 this->p.push_back(P2);
74 if (this->T[this->T.size() - 1] < this->AS->keyed_output(
iT_triple)
75 || this->p[this->p.size() - 1] > 1000 * this->AS->keyed_output(
iP_critical)) {
78 }
catch (std::exception&) {