# Variable Step Block Hybrid Method for Stiff Chemical Kinetics Problems
## 4 Implementation of the 3-Point VSHBM and Selection of Step Size
### Implementation of the 3-Point VSHBM
\begin{bmatrix}1-\alpha_{1,1}h\Big{(}\frac{\partial f_{n+1}}{\partial y _{n+1}}\Big{)}&\sigma_{2,1}-\alpha_{1,1}h\Big{(}\frac{\partial f_{n+1}}{ \partial y_{n+2}}\Big{)}&\sigma_{\frac{5}{2},1}-\alpha_{1,1}h\bigg{(}\frac{ \partial f_{n+1}}{\partial y_{n+\frac{5}{2}}}\Big{)}&\sigma_{3,1}-\alpha_{1,1 }h\Big{(}\frac{\partial f_{n+1}}{\partial y_{n+3}}\Big{)}\\ \sigma_{1,2}-\alpha_{2,2}h\Big{(}\frac{\partial f_{n+2}}{\partial y_{n+1}} \Big{)}&1-\alpha_{2,2}h\Big{(}\frac{\partial f_{n+2}}{\partial y_{n+2}}\Big{)}& \sigma_{\frac{5}{2},2}-\alpha_{2,2}h\Big{(}\frac{\partial f_{n+2}}{\partial y_{ n+\frac{5}{2}}}\Big{)}&\sigma_{3,2}-\alpha_{2,2}h\Big{(}\frac{\partial f_{n+2}}{ \partial y_{n+3}}\Big{)}\\ \sigma_{1,\frac{5}{2}}-\alpha_{\frac{5}{2},\frac{5}{2}}h\bigg{(}\frac{\partial f _{n+\frac{5}{2}}}{\partial y_{n+1}}\Big{)}&\sigma_{2,\frac{5}{2}}-\alpha_{ \frac{5}{2},\frac{5}{2}}h\bigg{(}\frac{\partial f_{n+\frac{5}{2}}}{\partial y_{ n+2}}\Big{)}&1-\alpha_{\frac{5}{2},\frac{5}{2}}h\bigg{(}\frac{\partial f _{n+\frac{5}{2}}}{\partial y_{n+\frac{5}{2}}}\bigg{)}&\sigma_{3,\frac{5}{2}}- \alpha_{\frac{5}{2},\frac{5}{2}}h\bigg{(}\frac{\partial f_{n+\frac{5}{2}}}{ \partial y_{n+3}}\bigg{)}\\ \sigma_{1,3}-\alpha_{3,3}h\Big{(}\frac{\partial f_{n+3}}{\partial y_{n+1}} \Big{)}&\sigma_{2,3}-\alpha_{3,3}h\Big{(}\frac{\partial f_{n+3}}{\partial y_{ n+2}}\Big{)}&\sigma_{\frac{5}{2},3}-\alpha_{3,3}h\bigg{(}\frac{\partial f_{n+3}}{ \partial y_{n+\frac{5}{2}}}\Big{)}&1-\alpha_{3,3}h\Big{(}\frac{\partial f_{n+3}}{ \partial y_{n+3}}\Big{)}\\ \end{bmatrix} \]  
and  
\[\hat{B}=\begin{bmatrix}-y_{n+1}^{(i)}+\sigma_{2,1}y_{n+2}^{(i)}+\sigma_{\frac{5 }{2},1}y_{n+\frac{5}{2}}^{(i)}+\sigma_{3,1}y_{n+3}^{(i)}+\alpha_{1,1}hf_{n+1}^ {(i)}+\psi_{1}\\ \sigma_{1,2}y_{n+1}^{(i)}-y_{n+2}^{(i)}+\sigma_{\frac{5}{2},2}y_{n+\frac{5}{2}}^ {(i)}+\sigma_{3,2}y_{n+3}^{(i)}+\alpha_{2,2}hf_{n+2}^{(i)}+\psi_{2}\\ \sigma_{1,\frac{5}{2}}y_{n+1}^{(i)}+\sigma_{2,\frac{5}{2}}y_{n+2}^{(i)}-y_{n+ \frac{5}{2}}^{(i)}+\sigma_{3,\frac{5}{2}}y_{n+3}^{(i)}+\alpha_{\frac{5}{2}, \frac{5}{2}}hf_{n+\frac{5}  
To ensure efficiency, a full Jacobian evaluation is only performed after a step failure, as part of the implementation of the method [17]. To reduce the computational time, a few strategies are presented below for minimizing the Jacobian evaluation. 1. When a successful step occurs, a new step size will be determined. This new step size be either increased (\(r=\frac{10}{19}\)) or remain as in the previous step size (\(r=1\)). Each time the step size \(h\) is increased, the new matrix Equations (24) and (25) are evaluated. If the step size \(h\) remains as (\(r=1\)), there will be no calculations of new matrices \(\hat{A}\) and \(\hat{B}\). Hence, it will skip the Jacobian evaluation process and the previous matrices \(\hat{A}\) and \(\hat{B}\) will be used to solve \(Y_{n+1,n+2,n+\frac{5}{2},n+3}^{(i+1)}\). This process is called partial Jacobian evaluation. 2. When a failure step occurs, the next step size will be half of the previous step size (\(r=2\)). Here the matrices \(\hat{A}\) and \(\hat{B}\) need to be updated with the new evaluations of the Jacobian matrix. This process is called full Jacobian evaluation.