29 OneDim(std::vector<Domain1D*> domains);
49 int solve(doublereal* x0, doublereal* x1,
int loglevel);
61 size_t domainIndex(std::string name);
82 return m_dom[i]->loc();
130 doublereal
ssnorm(doublereal* x, doublereal* r);
141 bool transient()
const {
142 return (m_rdt != 0.0);
147 return (m_rdt == 0.0);
169 void eval(
size_t j,
double* x,
double* r, doublereal
rdt=-1.0,
184 double timeStep(
int nsteps,
double dt,
double* x,
185 double* r,
int loglevel);
195 void save(std::string fname, std::string
id, std::string desc, doublereal* sol);
198 void setMinTimeStep(doublereal tmin) {
201 void setMaxTimeStep(doublereal tmax) {
204 void setTimeStepFactor(doublereal tfactor) {
207 void setJacAge(
int ss_age,
int ts_age=-1) {
208 m_ss_jac_age = ss_age;
210 m_ts_jac_age = ts_age;
212 m_ts_jac_age = m_ss_jac_age;
219 void evalSSJacobian(doublereal* x, doublereal* xnew);
223 doublereal m_tfactor;
237 std::vector<Domain1D*> m_dom, m_connect, m_bulk;
240 std::vector<size_t> m_nvars;
241 std::vector<size_t> m_loc;
244 doublereal m_solve_time;
247 int m_ss_jac_age, m_ts_jac_age;
253 doublereal m_evaltime;
254 std::vector<size_t> m_gridpts;