VariableSecond & Coupleable::coupledSecond(const std::string & var_name, unsigned int comp) { coupledCallback(var_name, false); if (_nodal) mooseError("Nodal variables do not have second derivatives"); MooseVariable * var = getVar(var_name, comp); return (_c_is_implicit) ? var->secondSln() : var->secondSlnOlder(); }
const VariableSecond & Coupleable::coupledSecond(const std::string & var_name, unsigned int comp) { if (!isCoupled(var_name)) // Return default 0 return _default_second; coupledCallback(var_name, false); if (_nodal) mooseError("Nodal variables do not have second derivatives"); MooseVariable * var = getVar(var_name, comp); if (!_coupleable_neighbor) return (_c_is_implicit) ? var->secondSln() : var->secondSlnOlder(); else return (_c_is_implicit) ? var->secondSlnNeighbor() : var->secondSlnOlderNeighbor(); }