| 1786 | ******************************************************************/ |
| 1787 | |
| 1788 | static void CVSetTqBDF(CVodeMem cv_mem, real hsum, real alpha0, |
| 1789 | real alpha0_hat, real xi_inv, real xistar_inv) |
| 1790 | { |
| 1791 | real A1, A2, A3, A4, A5, A6; |
| 1792 | real C, CPrime, CPrimePrime; |
| 1793 | |
| 1794 | A1 = ONE - alpha0_hat + alpha0; |
| 1795 | A2 = ONE + q * A1; |
| 1796 | tq[2] = ABS(alpha0 * (A2 / A1)); |
| 1797 | tq[5] = ABS((A2) / (l[q] * xi_inv/xistar_inv)); |
| 1798 | if (qwait == 1) { |
| 1799 | C = xistar_inv / l[q]; |
| 1800 | A3 = alpha0 + ONE / q; |
| 1801 | A4 = alpha0_hat + xi_inv; |
| 1802 | CPrime = A3 / (ONE - A4 + A3); |
| 1803 | tq[1] = ABS(CPrime / C); |
| 1804 | hsum += tau[q]; |
| 1805 | xi_inv = h / hsum; |
| 1806 | A5 = alpha0 - (ONE / (q+1)); |
| 1807 | A6 = alpha0_hat - xi_inv; |
| 1808 | CPrimePrime = A2 / (ONE - A6 + A5); |
| 1809 | tq[3] = ABS(CPrimePrime * xi_inv * (q+2) * A5); |
| 1810 | } |
| 1811 | tq[4] = CORTES * tq[2]; |
| 1812 | } |
| 1813 | |
| 1814 | /****************** CVnls ***************************************** |
| 1815 | |