Fast multiplication, determinants, and inverses of arrowhead and diagonal-plus-rank-one matrices over associative fields

Extracted source text ยท arXiv 2212.10966

\documentclass[preprint]{elsarticle}

\usepackage{amssymb}
\usepackage{amsfonts}
\usepackage{amsmath}
\usepackage{graphicx}
\usepackage{amsthm}
\usepackage{algorithm}
\usepackage{epic}

\setcounter{MaxMatrixCols}{10}

\newtheorem{rem}{Remark}
\newenvironment{remark}{\begin{rem}\rm}{\end{rem}}
\newtheorem{exmpl}{Example}
\newenvironment{example}{\begin{exmpl}\rm}{\end{exmpl}}
\newtheorem{theorem}{Theorem}
\newtheorem{corollary}{Corollary}
\newtheorem{lemma}{Lemma}
\def\sign{\mathop{\mathrm{sign}}}
\def\diag{\mathop{\mathrm{diag}}}
\renewcommand{\blacksquare}{\quad \square}

\begin{document}

\begin{frontmatter}

\title{Fast multiplication, determinants, and inverses of arrowhead and diagonal-plus-rank-one matrices over associative fields} 
\author[FESB]{N.\ Jakov\v{c}evi\'{c} Stor\corref{c1}}
\ead{nevena@fesb.hr}
\author[FESB]{I.\ Slapni\v{c}ar}
\ead{ivan.slapnicar@fesb.hr} 


\cortext[c1]{Corresponding author}

\address[FESB]{Faculty of Electrical Engineering, Mechanical Engineering and
Naval Architecture, University of Split, Rudjera Bo\v{s}kovi\'{c}a
32, 21000 Split, Croatia}


\begin{abstract}
The article considers arrowhead and diagonal-plus-rank-one matrices  in  $\mathbb{F}^{n\times n}$ where $\mathbb{F}\in\{\mathbb{R},\mathbb{C},\mathbb{H}\}$.
$\mathbb{H}$  is a non-commutative field of quaternions. We give unified formulas for fast matrix-vector multiplications, determinants, and inverses for considered matrices. The formulas are unified in the sense that the same formula holds in both, commutative and noncommutative algebras. Each formula requires $O(n)$ arithmetic operations. Most of the formulas hold for block matrices, as well.
\end{abstract}

\begin{highlights}
\item Fast $O(n)$ formulas.
\item Matrix elements are real or complex numbers, quaternions, or block matrices.
\item Same formulas for all types of matrix entries.
\item Code and examples on GitHub.
\end{highlights}

\begin{keyword}
diagonal-plus-rank-one matrix, arrowhead matrix, inverse, determinant, quaternions, block matrix

\MSC 15B99, 65F99, 15-04
\end{keyword}


\end{frontmatter}

\section{Introduction and definitions}


Arrowhead matrices and diagonal-plus-rank-one matrices arise in many applications and computations with such matrices are parts of many important linear algebra algorithms (for details see \cite{GV96, NEG14, JSB15}). We give unified formulas for matrix-vector multiplications, determinants, and inverses for both types of matrices having elements in commutative and noncommutative associative algebras. Our results complement and extend the existing results in the literature. 

All matrices are in $\mathbb{F}^{n\times n}$ where $\mathbb{F}\in\{\mathbb{R},\mathbb{C},\mathbb{H}\}$, where $\mathbb{H}$ is a non-commutative field of quaternions. Each formula requires $O(n)$ arithmetic operations.

In Section 1, we give basic definitions. In section 2, we give formulas for the multiplication of vectors with both types of matrices. In Section 3, we give formulas for determinants, and in Section 4, we give formulas for inverses of both types of matrices. In Section 5, we explain how the formulas apply to block matrices. Discussion and conclusions are in Section 6.


\subsection{Quaternions}

{\em Quaternions} are a non-commutative associative number system that extends complex numbers, introduced by Hamilton \cite{Ham53, Ham66}. For {\em basic quaternions} $\mathbf {i}$, 
$\mathbf {j}$, and $\mathbf {k}$, the quaternions have the form
%
$$q=a+b\ \mathbf {i} +c\ \mathbf {j} +d\ \mathbf {k},\quad a,b,c,d, \in \mathbb{R}.$$
%
The {\em multiplication table} of basic quaternions is the following:
%
$$\begin{array}{c|ccc}
\times & \mathbf {i} & \mathbf {j} & \mathbf {k} \\ \hline
\mathbf {i} & -1 & \mathbf {k} & -\mathbf {j} \\
\mathbf {j} & -\mathbf {k} & -1 & \mathbf {i} \\
\mathbf {k} & \mathbf {j} & -\mathbf {i} & -1
\end{array}$$
%
{\em Conjugation} is given by 
%
$$\bar q=a-b\ \mathbf {i} -c\ \mathbf {j} -d\ \mathbf {k}.$$
%
Then, 
%
$$\bar q q=q\bar q=|q|^2=a^2+b^2+c^2+d^2.$$
%
%Also 
%
%$$\operatorname{real} (q)= \frac{q+\bar q}{2}=a, \quad
%\operatorname{imag} (q)= \frac{q-\bar q}{2}.$$
%
Let $f(x)$ be a complex analytic function. The value $f(q)$, where $q\in\mathbb{H}$, is computed by evaluating the extension of $f$ to the quaternions at $q$ (see \cite{Sud79}). 
%In particular, 
%
%$$\sqrt{q}=\pm \left(\sqrt {\frac {\|q\|+a}{2}} + \frac {\operatorname{imag} (q)}{\|\operatorname{imag}(q)\|} \sqrt {\frac %{\|q\|-a}{2}}\right).$$
%
All of the above is implemented in the Julia \cite{Julia} package Quaternions.jl \cite{Quaternions}.

%Quaternions $p$ and $q$ are {\em similar} if 
%%
%$$\exists x \quad \textrm{s. t.}\quad p=x^{-1} q x,$$
%%
%which is if and only if
%%
%$$\operatorname{real}(p)=\operatorname{real}(q)\quad \textrm{and}\quad  
%\|p\|=\|q\|.$$
%
%The {\em  standard form} of the quaternion $q$ is the (unique) similar quaternion $q_s$:
%%
%$$
%q_s=x^{-1} qx =a + \hat b\,  \mathbf{i},\quad \|x\|=1,\quad \hat b \geq 0,$$
%%
%where the quaternion $x$ is computed as follows:
%%
%\begin{itemize}
%\item if $c=d=0$, then $x=1$ if $b>0$ and $x=-\mathbf{j}$ otherwise.
%\item if $c^2+d^2>0$, then $x=\hat x/\|\hat x\|$, where $\hat x=\| \operatorname{imag}(q)\|+b-d\,\mathbf{j}+c\,\mathbf{k}$.
%\end{itemize}

Quaternions are {\em homomorphic} to $\mathbb{C}^{2\times 2}$:
%
$$
q\to \begin{bmatrix}a+b\,\mathbf{i} & c+d\, \mathbf{i}\\-c+d\, \mathbf{i} & a-b\, \mathbf{i}\end{bmatrix}\equiv C(q),$$
%
with eigenvalues $q_s$ and $\bar q_s$.
%,  and $\mathbb{C}$ is homomorphic to $\mathbb{R}^{2\times 2}$:
%%
%$$a+b\, \mathbf{i} \to \begin{bmatrix} a & b \\ -b & a\end{bmatrix}.$$


\subsection{Arrowhead and DPR1 matrices}

Let $\star$ denote the transpose of a real matrix, the conjugate transpose (adjoint) of a complex or quaternionic matrix, and the conjugate of a scalar.

The {\em arrowhead matrix} (Arrow) is a matrix of the form
%
$$
A=\begin{bmatrix} D & u \\v^\star & \alpha \end{bmatrix}\equiv \operatorname{Arrow}(D,u,v,\alpha),$$
%
where  $D$ is a diagonal matrix with diagonal elements $d_i\equiv D_{ii}$, $\operatorname{diag}(D),u, v \in\mathbb{F}^{n-1}$, and $\alpha\in\mathbb{F}$, or any symmetric permutation of such matrix. 
%If $\operatorname{diag}(D)\in\mathbb{R}^{n-1}$, $u\in\mathbb{F}^{n-1}$, and $\alpha\in\mathbb{R}$, then $\operatorname{Arrow}(D,u,u,\alpha)$ is Hermitian.

The {\em diagonal-plus-rank-one matrix} (DPR1) is a matrix of the form 
%
$$A=\Delta+x \rho y^\star\equiv \operatorname{DPR1}(\Delta,x,y,\rho),$$
%
where  $\Delta$ is diagonal matrix with diagonal elements $\delta_i=\Delta_{ii}$, $\operatorname{diag}(\Delta),x, y \in\mathbb{F}^{n}$, and $\rho \in \mathbb{F}$. 
%If $\operatorname{diag}(\Delta)\in\mathbb{R}^{n}$, $x\in\mathbb{F}^{n}$, and $\rho \in \mathbb{R}$, then 
%$\operatorname{DPR1}(\Delta,x,x,\rho)$ is Hermitian.


\section{Matrix-vector multiplication}

\begin{lemma} \label{lemma0} 
%
Let $A=\operatorname{Arrow}(D,u,v,\alpha)$ be an arrowhead matrix with the tip at position $A_{ii}=\alpha$, and let $z$ be a vector. Then $w=Az$, where
%
$$
\begin{aligned}
w_j&=d_jz_j+u_jz_i, \quad i=1,2,\cdots,i-1\\
% y_i&=\sum_{j=1}^{i-1}\bar v_j x_j+\alpha x_i +\sum_{j=i}^{n-1}\bar v_j x_{j+1}\\
w_i&=v_{1:i-1}^\star z_{1:i-1} +\alpha z_i + v_{i:n-1}^\star z_{i+1:n} \\
w_j&=u_{j-1}z_i+d_{j-1}z_j,\quad j=i+1,i+2,\cdots,n.
\end{aligned}$$
Further, let $A=\operatorname{DPR1}(\Delta,x,y,\rho)$ be a DPR1 matrix and let $\beta=\rho(y^\star x) \equiv \rho (y\cdot x)$. Then $w=Az$, where
%
$$
w_i=\delta_i z_i+x_i\beta,\quad i=1,2,\cdots,n.$$
%
\end{lemma}

\proof The formulas follow by direct multiplication. \qed

%The conjugation of vectors and matrices is interpreted componentwise. 
%Let $A=\operatorname{Arrow}(D,u,v,\alpha)$. The {\em adjoint} is given by $A^\star=\operatorname{Arrow}(\bar D, v,u,\bar \alpha)$, and the {\em transpose} is given by $A^T=\operatorname{Arrow}(D,\bar v,\bar u,\alpha)$. 
%
%Let $A=\operatorname{DPR1}(\Delta,x,y,\rho)$. The {\em adjoint} is given by $A^\star=\operatorname{DPR1}(\bar \Delta, y,x,\bar \rho)$. The transpose of a DPR1 matrix of quaternions is not a DPR1 matrix. 

\section{Determinants}

Determinants are computed using two basic facts:
the determinant of the triangular matrix is a product of diagonal elements ordered from the first to the last, and
the determinant of the product is the product of determinants.

If $\mathbb{F}\in \{\mathbb{R},\mathbb{C}\}$, we have the following lemmas.

%then we can use a standard definition 
%
%$$\det(A)=\prod_{\pi\in \Pi} (-1)^{p(\pi)} a_{1\pi_1} a_{2\pi_2}\cdots a_{n\pi_n},$$
%
%where $\Pi$ is the set of all permutations and $p(\pi)$ is the parity of $\pi$.


\begin{lemma} \label{lemma1} 
Let $A=\operatorname{Arrow}(D,u,v,\alpha)$ be an arrowhead matrix. If all $d_i\neq 0$, the determinant of $A$ is equal to
%
\begin{equation}
\det(A)= (\prod_i d_i)(\alpha-v^\star D^{-1}u). \label{da1}
\end{equation}
If $d_i=0$, then 
%
\begin{equation} \label{da2}
\det(A)=-\bigg(\prod_{j=1}^{i-1}d_j\bigg)\cdot  v_i^\star 
\cdot \bigg(\prod_{j=i+1}^{n-1}d_j\bigg)\cdot  u_i.
\end{equation}
\end{lemma}

\proof The proof is modeled after Proposition 2.8.3, Fact 2.14.2 and Fact 2.16.2 from \cite{Ber09}.
The formula (\ref{da1}) follows from the factorization
%
$$
\begin{bmatrix} D & u  \\ v^\star & \alpha \end{bmatrix} 
=\begin{bmatrix} D & 0 \\ 0  & 1 \end{bmatrix}
\begin{bmatrix} I & 0 \\ v^\star & 1 \end{bmatrix}
\begin{bmatrix} I & D^{-1} u \\ 0 & \alpha - v^\star D^{-1} u \end{bmatrix}.
$$
%
The formula (\ref{da2}) is the only non-zero term in the standard expansion of the determinant of the matrix
%
$$
D=\begin{bmatrix}D_1 & 0 & 0 & u_1 \\ 0 & 0 & 0 & u_i \\ 0 & 0 & D_2 & u_2 \\
v_1^\star & v_i^\star & v_2^\star & \alpha \end{bmatrix}.$$ 
\qed 

\begin{lemma} \label{lemma2} 
Let $A=\operatorname{DPR1}(\Delta,x,y,\rho)$ be a DPR1 matrix. If all $\delta_i\neq 0$, the determinant of $A$ is equal to
%
\begin{equation} \label{dd1}
\det(A)=(\prod_i \delta_i)(1+y^\star \Delta^{-1}x\rho).
\end{equation}
%
If $\delta_i=0$, then 
%
\begin{equation} \label{dd2}
\det(A)=(\prod_{j=1}^{i-1} \delta_j) y_i^\star (\prod_{j=i+1}^n \delta_j)x_i \rho.
\end{equation}
\end{lemma}

\proof The proof is modeled after Fact 12.16.3 and Fact 12.16.4 from \cite{Ber09}.
The formula (\ref{dd1}) follows from the factorizations
%
$$
\Delta+x\rho y^\star=\Delta (I+\Delta^{-1}x\rho y^\star)$$
%
and
%
$$
\begin{bmatrix} I & 0\\ d^\star & 1 \end{bmatrix} 
\begin{bmatrix} I+cd^\star & c \\ 0 & 1\end{bmatrix} 
\begin{bmatrix} I & 0 \\ -d^\star & 1\end{bmatrix}= 
\begin{bmatrix} I & c \\ 0 & 1+d^\star c\end{bmatrix}.$$
% 
The formula (\ref{dd2}) follows from Fact 2.14.2 from \cite{Ber09}.
\qed

\subsection{Matrices of quaternions}
The determinant of the matrix of quaternions can be defined using a determinant of its corresponding homomorphic complex matrix. For matrices of quaternions, the determinant is not well defined due to non-commutativity. However, the Study determinant, $|\det(A)|$, is well defined (see \cite{Asl96}). Therefore, after computing the respective determinant using the formulas from Lemma \ref{lemma1} and Lemma \ref{lemma2}, it suffices to compute the absolute value. 

\section{Inverses}

% Let $\dagger$ denote the inverse of a scalar and the pseudo-inverse of a matrix.

\begin{lemma} \label{lemma3}

Let $A=\operatorname{Arrow}(D,u,v,\alpha)$ be a non-singular arrowhead matrix with the 
tip at the position $A_{ii}=\alpha$ and let $P$ be the permutation matrix of the permutation $p=(1,2,\cdots,i-1,n,i,i+1,\cdots,n-1)$.
If all $d_j\neq 0$, the inverse of $A$ is a DPR1 matrix
\begin{equation} \label{ia1}
A^{-1} =\operatorname{DPR1}(\Delta,x,y,\rho)=\Delta+x\rho y^\star,
\end{equation}
where
$$
\Delta=P\begin{bmatrix}D^{-1} & 0\\ 0 & 0\end{bmatrix}P^T,
\ x=P\begin{bmatrix}D^{-1}u \\-1\end{bmatrix},\
y=P\begin{bmatrix}D^{-\star}v \\-1\end{bmatrix},\
\rho=(\alpha-v^\star D^{-1} u)^{-1}.
$$
If $d_j=0$, the inverse of $A$ is an arrowhead matrix with the tip of the arrow at position $(j,j)$ and zero at position $A_{ii}$ (the tip and the zero on the shaft change places). In particular, let $\hat P$ be the permutation matrix of the permutation
$\hat p=(1,2,\cdots,j-1,n,j,j+1,\cdots,n-1)$. Partition $D$, $u$ and $v$ as
$$
D=\begin{bmatrix}D_1 & 0 & 0 \\ 0 & 0 & 0 \\ 0 & 0 & D_2\end{bmatrix},\quad
u=\begin{bmatrix} u_1 \\ u_j \\u_2\end{bmatrix},\quad
v=\begin{bmatrix} v_1 \\ v_j \\v_2\end{bmatrix}.
$$
Then 
\begin{equation} \label{ia2} 
A^{-1}=P\begin{bmatrix} \hat D & \hat u\\ \hat v^\star & \hat \alpha \end{bmatrix}P^T,
\end{equation}
where
\begin{align*}
\hat D&=\begin{bmatrix}D_1^{-1} & 0 & 0 \\ 0 & D_2^{-1} & 0 \\ 0 & 0 & 0\end{bmatrix},\quad
\hat u= \begin{bmatrix}-D_1^{-1}u_1 \\ -D_2^{-1}u_2\\ 1 \end{bmatrix} u_j^{-1},\quad
\hat v= \begin{bmatrix}-D_1^{-\star}v_1 \\ -D_2^{-\star}v_2\\ 1\end{bmatrix}v_j^{-1},\\
\hat \alpha&=v_j^{-\star}\left(-\alpha +v_1^\star D_1^{-1} u_1+v_2^\star D_2^{-1}u_2\right) u_j^{-1}.
\end{align*}
\end{lemma}
\proof  The formula (\ref{ia1}) follows by multiplication. The formula (\ref{ia2}) is similar to the one from Section 2 of \cite{JSB15}. \qed


\begin{lemma} \label{lemma4}
Let $A=\operatorname{DPR1}(\Delta,x,y,\rho)$ be a non-singular DPR1 matrix. 
If all $\delta_j\neq 0$, the inverse of $A$ is a DPR1 matrix
%
\begin{equation} \label{id1} 
A^{-1} =\operatorname{DPR1}(\hat \Delta,\hat x,\hat y,\hat \rho)=\hat\Delta+\hat x\hat \rho \hat y^\star,
\end{equation}
where
$$
\hat \Delta=\Delta^{-1},\quad
\quad \hat x=\Delta^{-1}x,\quad
\hat y=\Delta^{-\star}y,\quad
\hat \rho=-\rho(I+y^\star \Delta^{-1} x\rho)^{-1}.
$$
If $\delta_j=0$, the inverse of $A$ is an arrowhead matrix with the tip of the arrow at position $(j,j)$.
In particular, let $P$ be the permutation matrix of the permutation
$p=(1,2,\cdots,j-1,n,j,j+1,\cdots,n-1)$.
Partition $\Delta$, $x$ and $y$ as
$$
\Delta=\begin{bmatrix}\Delta_1 & 0 & 0 \\ 0 & 0 & 0 \\ 0 & 0 & \Delta_2\end{bmatrix},\quad
x=\begin{bmatrix} x_1 \\ x_j \\x_2\end{bmatrix},\quad
y=\begin{bmatrix} y_1 \\ y_j \\y_2\end{bmatrix}.
$$
Then, 
\begin{equation} \label{id2} 
A^{-1} =P\begin{bmatrix} D & u \\ v^T & \alpha \end{bmatrix}P^T,
\end{equation}
where
\begin{align*}
D&=\begin{bmatrix} \Delta_1^{-1} & 0\\ 0 &\Delta_2^{-1}\end{bmatrix},\quad
u= \begin{bmatrix}-\Delta_1^{-1}x_1 \\ -\Delta_2^{-1}x_2\end{bmatrix} x_j^{-1},\quad
v= \begin{bmatrix}-\Delta_1^{-\star}y_1 \\ -\Delta_2^{-\star}y_2\end{bmatrix}y_j^{-1},\\
\alpha&=y_j^{-\star}\left(\rho^{-1} +y_1^\star \Delta_1^{-1} x_1+y_2^\star \Delta_2^{-1}x_2\right) x_j^{-1}.
\end{align*}
\end{lemma}
\proof The formula (\ref{id1}) follows form fact 2.16.3 of \cite{Ber09}. The formula (\ref{id2}) is similar to the one from Section 2 of \cite{JSB15b}. \qed

\section{Block matrices}

If elements of the matrices are themselves matrices in $\mathbb{F}^{k\times k}$ where 
$\mathbb{F}\in\{\mathbb{R},\mathbb{C},\mathbb{H}\}$, the above formulas can be used as follows.

If, in Lemma \ref{lemma0}, the elements of the vector $z$ satisfy $z_i\in\mathbb{F}^{k\times k}$, $i=1,\ldots,n$, the formulas hold directly and yield a block vector $w$.

The formulas (\ref{da1})-(\ref{dd2}) from Lemmas \ref{lemma1} and \ref{lemma2} return a matrix in $\mathbb{F}^{k\times k}$, so one more step is required -- computing the determinant of this matrix.

The formulas for inverses (\ref{ia1})-(\ref{id2}) from Lemmas \ref{lemma3} and \ref{lemma4} return the corresponding block matrices provided all inverses within formulas are well defined. It is clearly possible that a block arrowhead or DPR1 matrix
is non-singular even if some of the blocks involved in formulas (\ref{ia1})-(\ref{id2}) are singular. However, in such cases, the respective inverses do not have the structure required by the formulas, % (\ref{ia1})-(\ref{id2}), 
so the formulas cannot be applied.


\section{Discussion and conclusion}

We have derived formulas for basic matrix functions of arrowhead and diagonal-plus-rank-one matrices whose elements are real numbers, complex numbers, or quaternions. Each formula requires $O(n)$ arithmetic operations, so they are optimal. 
Each formula is unified in the sense that the same formula is used for any type of matrix element, including block matrices.
When the formulas are applied to matrices of quaternions or block matrices, due to non-commutativity, the operations must be executed exactly in the order specified.

Our results complement and extend the existing results in the literature, like \cite{NEG14, Ber09, GV96, Asl96}.

The code, written in the programing language Julia \cite{Julia}, along with examples, is available on GitHub \cite{Inverses}. The code relies on the Julia's polymorphism (or multiple dispatch) feature. 

\section*{Funding} This work has been fully supported by Croatian Science Foundation under the project IP-2020-02-2240. 

%\section*{References}
\begin{thebibliography}{99}

\bibitem{GV96} G.H.~Golub and C.F.~Van Loan, \emph{Matrix Computations},
The John Hopkins University Press, Baltimore, 4th ed. (2013).

\bibitem{NEG14} H.S.~Najafi, S.A.~Edalatpanah, and G.A.~Gravvanis, An efficient method for computing the inverse of arrowhead matrices, Applied Mathematics Letters, 33 (2014) 1--5. https://doi.org/10.1016/j.aml.2014.02.010

\bibitem{JSB15} N.~Jakov\v{c}evi\'{c} Stor, I.~Slapni\v{c}ar and J.L.~Barlow, 
{Accurate eigenvalue decomposition of real symmetric arrowhead matrices and applications}, 
Lin.~Alg.~Appl., 464 (2015) 62--89. https://doi.org/10.1016/j.laa.2013.10.007

\bibitem{Ham53} Sir W.R.~Hamilton, \emph{Lectures on Quaternions}, Hodges and Smith, Dublin, (1853). 

\bibitem{Ham66} Sir W.R.~Hamilton, \emph{Elements of Quaternions}, W.E. Hamilton, Ed., Longmans, Green, and Co., London, (1866).

\bibitem{Sud79} A.~Sudbery, Quaternionic analysis, Mathematical Proc. of the Cambridge Philosophical Society, 85(2) (1979) 199--225. https://doi.org/10.1017/S0305004100055638

\bibitem{Julia} The Julia Language. Available online: {http://julialang.org/} (accessed 10 December 2022).

\bibitem{Quaternions} Quaternions.jl. Available online:
https://github.com/JuliaGeometry/Quaternions.jl (accessed 10 December 2022).

\bibitem{Ber09} D.S.~Bernstein, \emph{Matrix Mathematics},
Princeton University Press, (2009).

\bibitem{Asl96} H.~Aslaksen, {Quaternionic determinants}, The Mathematical Intelligencer, 18 (1996) 57--65. https://doi.org/10.1007/BF03024312

\bibitem{JSB15b} N.~Jakov\v{c}evi\'{c} Stor, I.~Slapni\v{c}ar and J.L.~Barlow, 
{Forward stable eigenvalue decomposition of rank-one modifications of diagonal matrices}, 
Lin.~Alg.~Appl., 487 (2015) 301--315. https://doi.org/10.1016/j.laa.2015.09.025

\bibitem{Inverses} Fast.jl. Available online: {https://github.com/ivanslapnicar/MANAA/src/Fast.jl} (accessed 21 December 2022).

\end{thebibliography}

\end{document}

%% 
%% Copyright 2007-2020 Elsevier Ltd
%% 
%% This file is part of the 'Elsarticle Bundle'.
%% ---------------------------------------------
%% 
%% It may be distributed under the conditions of the LaTeX Project Public
%% License, either version 1.2 of this license or (at your option) any
%% later version.  The latest version of this license is in
%%    http://www.latex-project.org/lppl.txt
%% and version 1.2 or later is part of all distributions of LaTeX
%% version 1999/12/01 or later.
%% 
%% The list of all files belonging to the 'Elsarticle Bundle' is
%% given in the file `manifest.txt'.
%%
%% $Id: elsdoc.tex 192 2020-11-23 11:14:41Z rishi $
%%
\documentclass[a4paper,12pt]{article}

\usepackage[xcolor,qtwo]{rvdtx}
\usepackage{multicol}
\usepackage{color}
\usepackage{xspace}
\usepackage{pdfwidgets}
\usepackage{enumerate}

\def\ttdefault{cmtt}

\headsep4pc

\makeatletter
\def\bs{\expandafter\@gobble\string\\}
\def\lb{\expandafter\@gobble\string\{}
\def\rb{\expandafter\@gobble\string\}}
\def\@pdfauthor{C.V.Radhakrishnan}
\def\@pdftitle{elsarticle.cls -- A documentation}
\def\@pdfsubject{Document formatting with elsarticle.cls}
\def\@pdfkeywords{LaTeX, Elsevier Ltd, document class}
\def\file#1{\textsf{#1}\xspace}

%\def\LastPage{19}

\DeclareRobustCommand{\LaTeX}{L\kern-.26em%
        {\sbox\z@ T%
         \vbox to\ht\z@{\hbox{\check@mathfonts
           \fontsize\sf@size\z@
           \math@fontsfalse\selectfont
          A\,}%
         \vss}%
        }%
     \kern-.15em%
    \TeX}
\makeatother

\def\figurename{Clip}

\setcounter{tocdepth}{1}

\begin{document}

\def\testa{This is a specimen document. }
\def\testc{\testa\testa\testa\testa}
\def\testb{\testc\testc\testc\testc\testc}
\long\def\test{\testb\par\testb\par\testb\par}

\pinclude{\copy\contbox\printSq{\LastPage}}

\title{elsarticle.cls -- A better way to format your document}

\author{Elsevier Ltd}
\contact{elsarticle@stmdocs.in}

\version{3.3}
\date{\today}
\maketitle

\section{Introduction}

\file{elsarticle.cls} is a thoroughly re-written document class
for formatting \LaTeX{} submissions to Elsevier journals.
The class uses the environments and commands defined in \LaTeX{} kernel
without any change in the signature so that clashes with other
contributed \LaTeX{} packages such as \file{hyperref.sty},
\file{preview-latex.sty}, etc., will be minimal.
\file{elsarticle.cls} is primarily built upon the default
\file{article.cls}.  This class depends on the following packages
for its proper functioning:

\begin{enumerate}
\item \file{natbib.sty} for citation processing;
\item \file{geometry.sty} for margin settings;
\item \file{fleqn.clo} for left aligned equations;
\item \file{graphicx.sty} for graphics inclusion;
\item \file{txfonts.sty} optional font package, if the document is to
  be formatted with Times and compatible math fonts;
\item \file{hyperref.sty} optional packages if hyperlinking is
  required in the document;
%*%
\item \file{endfloat.sty} optional packages if floats to be placed at
 end of the PDF.
\end{enumerate}

All the above packages (except some optional packages) are part of any
standard \LaTeX{} installation. Therefore, the users need not be
bothered about downloading any extra packages.  Furthermore, users are
free to make use of \textsc{ams} math packages such as
\file{amsmath.sty}, \file{amsthm.sty}, \file{amssymb.sty},
\file{amsfonts.sty}, etc., if they want to.  All these packages work in
tandem with \file{elsarticle.cls} without any problems.

\section{Major Differences}

Following are the major differences between \file{elsarticle.cls}
and its predecessor package, \file{elsart.cls}:

\begin{enumerate}[\textbullet]
\item \file{elsarticle.cls} is built upon \file{article.cls}
while \file{elsart.cls} is not. \file{elsart.cls} redefines
many of the commands in the \LaTeX{} classes/kernel, which can
possibly cause surprising clashes with other contributed
\LaTeX{} packages;

\item provides preprint document formatting by default, and
optionally formats the document as per the final
style of models $1+$, $3+$ and $5+$ of Elsevier journals;

\item some easier ways for formatting \verb+list+ and
\verb+theorem+ environments are provided while people can still
use \file{amsthm.sty} package;

\item \file{natbib.sty} is the main citation processing package
  which can comprehensively handle all kinds of citations and
works perfectly with \file{hyperref.sty} in combination with
\file{hypernat.sty};

\item long title pages are processed correctly in preprint and
  final formats.

\end{enumerate}

\section{Installation}

The package is available at author resources page at Elsevier
(\url{http://www.elsevier.com/locate/latex}).
It can also be found in any of the nodes of the Comprehensive
\TeX{} Archive Network (\textsc{ctan}), one of the primary nodes
being
\url{http://tug.ctan.org/tex-archive/macros/latex/contrib/elsarticle/}.
Please download the \file{elsarticle.dtx} which is a composite
class with documentation and \file{elsarticle.ins} which is the
\LaTeX{} installer file. When we compile the
\file{elsarticle.ins} with \LaTeX{} it provides the class file,
\file{elsarticle.cls} by
stripping off all the documentation from the \verb+*.dtx+ file.
The class may be moved or copied to a place, usually,
\verb+$TEXMF/tex/latex/elsevier/+, %$%%%%%%%%%%%%%%%%%%%%%%%%%%%%
or a folder which will be read                   
by \LaTeX{} during document compilation.  The \TeX{} file
database needs updation after moving/copying class file.  Usually,
we use commands like \verb+mktexlsr+ or \verb+texhash+ depending
upon the distribution and operating system.


\section{Usage}\label{sec:usage}
The class should be loaded with the command:

\begin{vquote}
 \documentclass[<options>]{elsarticle}
\end{vquote}

\noindent where the \verb+options+ can be the following:


\begin{description}

\item [{\tt\color{verbcolor} preprint}]  default option which format the
  document for submission to Elsevier journals.

\item [{\tt\color{verbcolor} review}]  similar to the \verb+preprint+
option, but increases the baselineskip to facilitate easier review
process.

\item [{\tt\color{verbcolor} 1p}]  formats the article to the look and
feel of the final format of model 1+ journals. This is always single
column style.

\item [{\tt\color{verbcolor} 3p}] formats the article to the look and
feel of the final format of model 3+ journals. If the journal is a two
column model, use \verb+twocolumn+ option in combination.

\item [{\tt\color{verbcolor} 5p}] formats for model 5+ journals. This
is always of two column style.

\item [{\tt\color{verbcolor} authoryear}] author-year citation style of
\file{natbib.sty}. If you want to add extra options of
\file{natbib.sty}, you may use the options as comma delimited strings
as arguments to \verb+\biboptions+ command. An example would be:
\end{description}

\begin{vquote}
 \biboptions{longnamesfirst,angle,semicolon}
\end{vquote}

\begin{description}
\item [{\tt\color{verbcolor} number}] numbered citation style. Extra options
  can be loaded with\linebreak \verb+\biboptions+ command.

\item [{\tt\color{verbcolor} sort\&compress}] sorts and compresses the
numbered citations. For example, citation [1,2,3] will become [1--3].

\item [{\tt\color{verbcolor} longtitle}] if front matter is unusually long, use
  this option to split the title page across pages with the correct
placement of title and author footnotes in the first page.

\item [{\tt\color{verbcolor} times}] loads \file{txfonts.sty}, if
available in the system to use Times and compatible math fonts.

%*%
\item [{\tt\color{verbcolor} reversenotenum}] Use alphabets as
author--affiliation linking labels and use numbers for author
footnotes. By default, numbers will be used as author--affiliation
linking labels and alphabets for author footnotes. 

\item [{\tt\color{verbcolor} lefttitle}] To move title and
author/affiliation block to flushleft. \verb+centertitle+ is the
default option which produces center alignment.

\item [{\tt\color{verbcolor} endfloat}] To place all floats at the end
of the document.

\item [{\tt\color{verbcolor} nonatbib}] To unload natbib.sty.
%*%

\item [{\tt\color{verbcolor} doubleblind}] To hide author name, 
affiliation, email address etc. for double blind refereeing purpose.
%*%

\item[] All options of \file{article.cls} can be used with this
  document class.

\item[] The default options loaded are \verb+a4paper+, \verb+10pt+,
  \verb+oneside+, \verb+onecolumn+ and \verb+preprint+.

\end{description}

\section{Frontmatter}

There are two types of frontmatter coding:
\begin{enumerate}[(1)]
\item each author is
connected to an affiliation with a footnote marker; hence all
authors are grouped together and affiliations follow;
\pagebreak
\item authors of same affiliations are grouped together and the
relevant affiliation follows this group. 
\end{enumerate}

An example of coding the first type is provided below.

\begin{vquote}
 \title{This is a specimen title\tnoteref{t1,t2}}
 \tnotetext[t1]{This document is the results of the research
    project funded by the National Science Foundation.}
 \tnotetext[t2]{The second title footnote which is a longer 
    text matter to fill through the whole text width and 
    overflow into another line in the footnotes area of the 
    first page.}
\end{vquote}

\begin{vquote}
\author[1]{Jos Migchielsen\corref{cor1}%
  \fnref{fn1}}
\ead{J.Migchielsen@elsevier.com}

\author[2]{CV Radhakrishnan\fnref{fn2}}
\ead{cvr@sayahna.org}

\author[3]{CV Rajagopal\fnref{fn1,fn3}}
\ead[url]{www.stmdocs.in}

 \cortext[cor1]{Corresponding author}
 \fntext[fn1]{This is the first author footnote.}
 \fntext[fn2]{Another author footnote, this is a very long 
   footnote and it should be a really long footnote. But this 
   footnote is not yet sufficiently long enough to make two 
   lines of footnote text.}
 \fntext[fn3]{Yet another author footnote.}

 \affiliation[1]{organization={Elsevier B.V.}, 
                 addressline={Radarweg 29},
                 postcode={1043 NX}, 
                 city={Amsterdam}, 
                 country={The Netherlands}}

 \affiliation[2]{organization={Sayahna Foundation},
                 addressline={JWRA 34, Jagathy}, 
                 city={Trivandrum}
                 postcode={695014}, 
                 country={India}}
\end{vquote}

\begin{vquote}

 \affiliation[3]{organization={STM Document Engineering 
                               Pvt Ltd.},
                 addressline={Mepukada, Malayinkil}, 
                 city={Trivandrum}
                 postcode={695571}, 
                 country={India}}
\end{vquote}

The output of the above \TeX{} source is given in Clips~\ref{clip1} and
\ref{clip2}. The header portion or title area is given in
Clip~\ref{clip1} and the footer area is given in Clip~\ref{clip2}.

\def\rulecolor{blue!70}
\src{Header of the title page.}
\includeclip{1}{130 612 477 707}{1psingleauthorgroup.pdf}%%{elstest-1p.pdf}%single author group
\def\rulecolor{orange}

\def\rulecolor{blue!70}
\src{Footer of the title page.}
\includeclip{1}{93 135 499 255}{1pseperateaug.pdf}%%{elstest-1p.pdf}%single author group
\def\rulecolor{orange}

Most of the commands such as \verb+\title+, \verb+\author+,
\verb+\affiliation+ are self explanatory.  Various components are
linked to each other by a label--reference mechanism; for
instance, title footnote is linked to the title with a footnote
mark generated by referring to the \verb+\label+ string of
the \verb=\tnotetext=.  We have used similar commands
such as \verb=\tnoteref= (to link title note to title);
\verb=\corref= (to link corresponding author text to
corresponding author); \verb=\fnref= (to link footnote text to
the relevant author names).  \TeX{} needs two compilations to
resolve the footnote marks in the preamble part.  
Given below are the syntax of various note marks and note texts.


\begin{vquote}
  \tnoteref{<label(s)>}
  \corref{<label(s)>}
  \fnref{<label(s)>}
  \tnotetext[<label>]{<title note text>}
  \cortext[<label>]{<corresponding author note text>}
  \fntext[<label>]{<author footnote text>}
\end{vquote}

\noindent where \verb=<label(s)>= can be either one or more comma
delimited label strings. The optional arguments to the
\verb=\author= command holds the ref label(s) of the address(es)
to which the author is affiliated while each \verb=\affiliation=
command can have an optional argument of a label. In the same
manner, \verb=\tnotetext=, \verb=\fntext=, \verb=\cortext= will
have optional arguments as their respective labels and note text
as their mandatory argument.

The following example code provides the markup of the second type
of author-affiliation.

\begin{vquote}
\author{Jos Migchielsen\corref{cor1}%
  \fnref{fn1}}
\ead{J.Migchielsen@elsevier.com}
 \affiliation[1]{organization={Elsevier B.V.}, 
                 addressline={Radarweg 29},
                 postcode={1043 NX}, 
                 city={Amsterdam}, 
                 country={The Netherlands}}

\author{CV Radhakrishnan\fnref{fn2}}
\ead{cvr@sayahna.org}
 \affiliation[2]{organization={Sayahna Foundation},
                 addressline={JWRA 34, Jagathy}, 
                 city={Trivandrum}
                 postcode={695014}, 
                 country={India}}

\author{CV Rajagopal\fnref{fn1,fn3}}
\ead[url]{www.stmdocs.in}
 \affiliation[3]{organization={STM Document Engineering 
                               Pvt Ltd.},
                 addressline={Mepukada, Malayinkil}, 
                 city={Trivandrum}
                 postcode={695571}, 
                 country={India}}
\end{vquote}

\vspace*{-.5pc}

\begin{vquote}
\cortext[cor1]{Corresponding author}
\fntext[fn1]{This is the first author footnote.}
\fntext[fn2]{Another author footnote, this is a very long 
  footnote and it should be a really long footnote. But this 
  footnote is not yet sufficiently long enough to make two lines 
  of footnote text.}
\end{vquote}

The output of the above \TeX{} source is given in Clip~\ref{clip3}.

\def\rulecolor{blue!70}
\src{Header of the title page..}
\includeclip{1}{119 563 468 709}{1pseperateaug.pdf}%%{elstest-1p.pdf}%seperate author groups
\def\rulecolor{orange}
%\pagebreak

Clip~\ref{clip4} shows the output after giving \verb+doubleblind+ class option. 

\def\rulecolor{blue!70}
\src{Double blind article}
\includeclip{1}{124 567 477 670}{elstest-1pdoubleblind.pdf}%%{elstest-1p.pdf}%single author group%%doubleblind
\def\rulecolor{orange}

\vspace*{-.5pc}
The frontmatter part has further environments such as abstracts and
keywords.  These can be marked up in the following manner:

\begin{vquote}
 \begin{abstract}
  In this work we demonstrate the formation of a new type of 
  polariton on the interface between a ....
 \end{abstract}
\end{vquote} 

\vspace*{-.5pc}
\begin{vquote}
 \begin{keyword}
  quadruple exiton \sep polariton \sep WGM
 \end{keyword}
\end{vquote}

\noindent Each keyword shall be separated by a \verb+\sep+ command.
\textsc{msc} classifications shall be provided in 
the keyword environment with the commands
\verb+\MSC+. \verb+\MSC+ accepts an optional
argument to accommodate future revisions.
eg., \verb=\MSC[2008]=. The default is 2000.\looseness=-1

\subsection{New page}
Sometimes you may need to give a page-break and start a new page after
title, author or abstract. Following commands can be used for this
purpose.

\begin{vquote}
  \newpageafter{title}
  \newpageafter{author}
  \newpageafter{abstract}
\end{vquote}


\begin{itemize}
\leftskip-2pc
\item [] {\tt\color{verbcolor} \verb+\newpageafter{title}+} typeset the title alone on one page.

\item [] {\tt\color{verbcolor} \verb+\newpageafter{author}+}  typeset the title
and author details on one page.

\item [] {\tt\color{verbcolor} \verb+\newpageafter{abstract}+}
typeset the title,
author details and abstract \& keywords one one page.

\end{itemize}

\section{Floats}
{Figures} may be included using the command, \verb+\includegraphics+ in
combination with or without its several options to further control
graphic. \verb+\includegraphics+ is provided by \file{graphic[s,x].sty}
which is part of any standard \LaTeX{} distribution.
\file{graphicx.sty} is loaded by default. \LaTeX{} accepts figures in
the postscript format while pdf\LaTeX{} accepts \file{*.pdf},
\file{*.mps} (metapost), \file{*.jpg} and \file{*.png} formats. 
pdf\LaTeX{} does not accept graphic files in the postscript format. 

The \verb+table+ environment is handy for marking up tabular
material. If users want to use \file{multirow.sty},
\file{array.sty}, etc., to fine control/enhance the tables, they
are welcome to load any package of their choice and
\file{elsarticle.cls} will work in combination with all loaded
packages.

\section[Theorem and ...]{Theorem and theorem like environments}

\file{elsarticle.cls} provides a few shortcuts to format theorems and
theorem-like environments with ease. In all commands the options that
are used with the \verb+\newtheorem+ command will work exactly in the same
manner. \file{elsarticle.cls} provides three commands to format theorem or
theorem-like environments: 

\begin{vquote}
 \newtheorem{thm}{Theorem}
 \newtheorem{lem}[thm]{Lemma}
 \newdefinition{rmk}{Remark}
 \newproof{pf}{Proof}
 \newproof{pot}{Proof of Theorem \ref{thm2}}
\end{vquote}

The \verb+\newtheorem+ command formats a
theorem in \LaTeX's default style with italicized font, bold font
for theorem heading and theorem number at the right hand side of the
theorem heading.  It also optionally accepts an argument which
will be printed as an extra heading in parentheses. 

\begin{vquote}
  \begin{thm} 
   For system (8), consensus can be achieved with 
   $\|T_{\omega z}$
   ...
     \begin{eqnarray}\label{10}
     ....
     \end{eqnarray}
  \end{thm}
\end{vquote}  

Clip~\ref{clip5} will show you how some text enclosed between the
above code\goodbreak \noindent looks like:

\vspace*{6pt}
\def\rulecolor{blue!70}
\src{{\ttfamily\color{verbcolor}\bs newtheorem}}
\includeclip{2}{1 1 453 120}{jfigs.pdf}
\def\rulecolor{orange}

The \verb+\newdefinition+ command is the same in
all respects as its\linebreak \verb+\newtheorem+ counterpart except that
the font shape is roman instead of italic.  Both
\verb+\newdefinition+ and \verb+\newtheorem+ commands
automatically define counters for the environments defined.

\vspace*{6pt}
\def\rulecolor{blue!70}
\src{{\ttfamily\color{verbcolor}\bs newdefinition}}
\includeclip{1}{1 1 453 105}{jfigs.pdf}
\def\rulecolor{orange}

The \verb+\newproof+ command defines proof environments with
upright font shape.  No counters are defined. 

\vspace*{6pt}
\def\rulecolor{blue!70}
\src{{\ttfamily\color{verbcolor}\bs newproof}}
\includeclip{3}{1 1 453 65}{jfigs.pdf}
\def\rulecolor{orange}

Users can also make use of \verb+amsthm.sty+ which will override
all the default definitions described above.

\section[Enumerated ...]{Enumerated and Itemized Lists}
\file{elsarticle.cls} provides an extended list processing macros
which makes the usage a bit more user friendly than the default
\LaTeX{} list macros.   With an optional argument to the
\verb+\begin{enumerate}+ command, you can change the list counter
type and its attributes.

\begin{vquote}
 \begin{enumerate}[1.]
 \item The enumerate environment starts with an optional
   argument `1.', so that the item counter will be suffixed
   by a period.
 \item You can use `a)' for alphabetical counter and '(i)' for
   roman counter.
  \begin{enumerate}[a)]
    \item Another level of list with alphabetical counter.
    \item One more item before we start another.
\end{vquote}

\def\rulecolor{blue!70}
\src{List -- Enumerate}
\includeclip{4}{1 1 453 185}{jfigs.pdf}
\def\rulecolor{orange}

Further, the enhanced list environment allows one to prefix a
string like `step' to all the item numbers.  

\begin{vquote}
 \begin{enumerate}[Step 1.]
  \item This is the first step of the example list.
  \item Obviously this is the second step.
  \item The final step to wind up this example.
 \end{enumerate}
\end{vquote}

\def\rulecolor{blue!70}
\src{List -- enhanced}
\includeclip{5}{1 1 313 83}{jfigs.pdf}
\def\rulecolor{orange}


\section{Cross-references}
In electronic publications, articles may be internally
hyperlinked. Hyperlinks are generated from proper
cross-references in the article.  For example, the words
\textcolor{black!80}{Fig.~1} will never be more than simple text,
whereas the proper cross-reference \verb+\ref{tiger}+ may be
turned into a hyperlink to the figure itself:
\textcolor{blue}{Fig.~1}.  In the same way,
the words \textcolor{blue}{Ref.~[1]} will fail to turn into a
hyperlink; the proper cross-reference is \verb+\cite{Knuth96}+.
Cross-referencing is possible in \LaTeX{} for sections,
subsections, formulae, figures, tables, and literature
references.

\section[Mathematical ...]{Mathematical symbols and formulae}

Many physical/mathematical sciences authors require more
mathematical symbols than the few that are provided in standard
\LaTeX. A useful package for additional symbols is the
\file{amssymb} package, developed by the American Mathematical
Society. This package includes such oft-used symbols as
$\lesssim$ (\verb+\lesssim+), $\gtrsim$ (\verb+\gtrsim+)  or 
$\hbar$ (\verb+\hbar+). Note that your \TeX{}
system should have the \file{msam} and \file{msbm} fonts installed. If
you need only a few symbols, such as $\Box$ (\verb+\Box+), you might try the
package \file{latexsym}.

Another point which would require authors' attention is the
breaking up of long equations.  When you use
\file{elsarticle.cls} for formatting your submissions in the 
\verb+preprint+ mode, the document is formatted in single column
style with a text width of 384pt or 5.3in.  When this document is
formatted for final print and if the journal happens to be a double column
journal, the text width will be reduced to 224pt at for 3+
double column and 5+ journals respectively. All the nifty 
fine-tuning in equation breaking done by the author goes to waste in
such cases.  Therefore, authors are requested to check this
problem by typesetting their submissions in final format as well
just to see if their equations are broken at appropriate places,
by changing appropriate options in the document class loading
command, which is explained in section~\ref{sec:usage},
\nameref{sec:usage}. This allows authors to fix any equation breaking
problem before submission for publication.
\file{elsarticle.cls} supports formatting the author submission
in different types of final format.  This is further discussed in
section \ref{sec:final}, \nameref{sec:final}.

\enlargethispage*{\baselineskip}

\subsection*{Displayed equations and double column journals}

Many Elsevier journals print their text in two columns. Since
the preprint layout uses a larger line width than such columns,
the formulae are too wide for the line width in print. Here is an
example of an equation  (see equation 6) which is perfect in a
single column preprint format:

In normal course, articles are prepared and submitted in single column
format even if the final printed article will come in a double column
format journal. Here the problem is that when the article is typeset by
the typesetters for paginating and fit within the single column width,
they have to break the lengthy equations and align them properly. Even
if most of the tasks in preparing your proof is automated, the equation
breaking and aligning requires manual judgement, hence this task is manual.
When there comes a manual operation that area is error prone. Author
needs to check that equation pretty well. 

However if authors themselves break the equation to the single column
width typesetters need not want to touch these area and the proof authors
get will be without any errors.

%\bigskip
\setlength\Sep{6pt}
\src{See equation (6)}
\def\rulecolor{blue!70}
%\includeclip{<page>}{l b scale }{file.pdf}
\includeclip{4}{105 500 500 700}{1psingleauthorgroup.pdf}
\def\rulecolor{orange}
                 	
\noindent When this document is typeset for publication in a
model 3+ journal with double columns, the equation will overlap
the second column text matter if the equation is not broken at
the appropriate location.

\vspace*{6pt}
\def\rulecolor{blue!70}
\src{See equation (6) overprints into second column}
\includeclip{3}{59 421 532 635}{elstest-3pd.pdf}
\def\rulecolor{orange}
\vspace*{6pt}

\noindent The typesetter will try to break the equation which
need not necessarily be to the liking of the author or as it
happens, typesetter's break point may be semantically incorrect.
Therefore, authors may check their submissions for the incidence
of such long equations and break the equations at the correct
places so that the final typeset copy will be as they wish.

\section{Bibliography}

Three bibliographic style files (\verb+*.bst+) are provided ---
\file{elsarticle-num.bst}, \file{elsarticle-num-names.bst} and
\file{elsarticle-harv.bst} --- the first one can be used for the
numbered scheme, second one for numbered with new options of 
\file{natbib.sty}. The third one is for the author year
scheme.

In \LaTeX{} literature, references are listed in the
\verb+thebibliography+ environment.  Each reference is a
\verb+\bibitem+ and each \verb+\bibitem+ is identified by a label,
by which it can be cited in the text:

\verb+\bibitem[Elson et al.(1996)]{ESG96}+ is cited as
\verb+\citet{ESG96}+. 

\noindent In connection with cross-referencing and
possible future hyperlinking it is not a good idea to collect
more that one literature item in one \verb+\bibitem+.  The
so-called Harvard or author-year style of referencing is enabled
by the \LaTeX{} package \file{natbib}. With this package the
literature can be cited as follows:

\begin{enumerate}[\textbullet]
\item Parenthetical: \verb+\citep{WB96}+ produces (Wettig \& Brown, 1996).
\item Textual: \verb+\citet{ESG96}+ produces Elson et al. (1996).
\item An affix and part of a reference:
\verb+\citep[e.g.][Ch. 2]{Gea97}+ produces (e.g. Governato et
al., 1997, Ch. 2).
\end{enumerate}

In the numbered scheme of citation, \verb+\cite{<label>}+ is used,
since \verb+\citep+ or \verb+\citet+ has no relevance in the numbered
scheme.  \file{natbib} package is loaded by \file{elsarticle} with
\verb+numbers+ as default option.  You can change this to author-year
or harvard scheme by adding option \verb+authoryear+ in the class
loading command.  If you want to use more options of the \file{natbib}
package, you can do so with the \verb+\biboptions+ command, which is
described in the section \ref{sec:usage}, \nameref{sec:usage}.  For
details of various options of the \file{natbib} package, please take a
look at the \file{natbib} documentation, which is part of any standard
\LaTeX{} installation.

In addition to the above standard \verb+.bst+ files, there are 10
journal-specific \verb+.bst+ files also available.
Instruction for using these \verb+.bst+ files can be found at 
\href{http://support.stmdocs.in/wiki/index.php?title=Model-wise_bibliographic_style_files}
{http://support.stmdocs.in}

\section[Graphical ...]{Graphical abstract and highlights}
A template for adding graphical abstract and highlights are available
now. This will appear as the first two pages of the PDF before the
article content begins.

\pagebreak
Please refer below to see how to code them.

\begin{vquote}
....
....

\end{abstract}

%%Graphical abstract
\begin{graphicalabstract}
%\includegraphics{grabs}
\end{graphicalabstract}

%%Research highlights
\begin{highlights}
\item Research highlight 1
\item Research highlight 2
\end{highlights}

\begin{keyword}
%% keywords here, in the form: keyword \sep keyword
....
....
\end{vquote}

\section{Final print}\label{sec:final}

The authors can format their submission to the page size and margins
of their preferred journal.  \file{elsarticle} provides four
class options for the same. But it does not mean that using these
options you can emulate the exact page layout of the final print copy. 


\lmrgn=3em
\begin{description}
\item [\texttt{1p}:] $1+$ journals with a text area of
384pt $\times$ 562pt or 13.5cm $\times$ 19.75cm or 5.3in $\times$
7.78in, single column style only.

\item [\texttt{3p}:] $3+$ journals with a text area of 468pt
$\times$ 622pt or 16.45cm $\times$ 21.9cm or 6.5in $\times$
8.6in, single column style.

\item [\texttt{twocolumn}:] should be used along with 3p option if the
journal is $3+$ with the same text area as above, but double column
style. 

\item [\texttt{5p}:] $5+$ with text area of 522pt $\times$
682pt or 18.35cm $\times$ 24cm or 7.22in $\times$ 9.45in,
double column style only.
\end{description}

Following pages have the clippings of different parts of
the title page of different journal models typeset in final
format.

Model $1+$ and $3+$  will have the same look and
feel in the typeset copy when presented in this document. That is
also the case with the double column $3+$ and $5+$ journal article
pages. The only difference will be wider text width of
higher models.  Here are the specimen single and double column journal 
pages.

%Therefore we will look at the
%different portions of a typical single column journal page and
%that of a double column article in the final format.


\begin{comment}
\begin{center}
\hypertarget{bsc}{}
\hyperlink{sc}{
{\bf [Specimen single column article -- Click here]}
}


\hypertarget{bsc}{}
\hyperlink{dc}{
{\bf [Specimen double column article -- Click here]}
}
\end{center}
\end{comment}

\vspace*{-.5pc}

\enlargethispage*{\baselineskip}

\src{}\hypertarget{sc}{}
\def\rulecolor{blue!70}
\hyperlink{bsc}{\includeclip{1}{88 120 514 724}{elstest-1p.pdf}}
\def\rulecolor{orange}

\src{}\hypertarget{dc}{}
\def\rulecolor{blue!70}
\hyperlink{bsc}{\includeclip{1}{27 61 562 758}{elstest-5p.pdf}}
\def\rulecolor{orange}

~\hfill $\Box$

\end{document}


%% 
%% Copyright 2007-2020 Elsevier Ltd
%% 
%% This file is part of the 'Elsarticle Bundle'.
%% ---------------------------------------------
%% 
%% It may be distributed under the conditions of the LaTeX Project Public
%% License, either version 1.2 of this license or (at your option) any
%% later version.  The latest version of this license is in
%%    http://www.latex-project.org/lppl.txt
%% and version 1.2 or later is part of all distributions of LaTeX
%% version 1999/12/01 or later.
%% 
%% The list of all files belonging to the 'Elsarticle Bundle' is
%% given in the file `manifest.txt'.
%% 
%% Template article for Elsevier's document class `elsarticle'
%% with harvard style bibliographic references

\documentclass[preprint,12pt,authoryear]{elsarticle}

%% Use the option review to obtain double line spacing
%% \documentclass[authoryear,preprint,review,12pt]{elsarticle}

%% Use the options 1p,twocolumn; 3p; 3p,twocolumn; 5p; or 5p,twocolumn
%% for a journal layout:
%% \documentclass[final,1p,times,authoryear]{elsarticle}
%% \documentclass[final,1p,times,twocolumn,authoryear]{elsarticle}
%% \documentclass[final,3p,times,authoryear]{elsarticle}
%% \documentclass[final,3p,times,twocolumn,authoryear]{elsarticle}
%% \documentclass[final,5p,times,authoryear]{elsarticle}
%% \documentclass[final,5p,times,twocolumn,authoryear]{elsarticle}

%% For including figures, graphicx.sty has been loaded in
%% elsarticle.cls. If you prefer to use the old commands
%% please give \usepackage{epsfig}

%% The amssymb package provides various useful mathematical symbols
\usepackage{amssymb}
%% The amsthm package provides extended theorem environments
%% \usepackage{amsthm}

%% The lineno packages adds line numbers. Start line numbering with
%% \begin{linenumbers}, end it with \end{linenumbers}. Or switch it on
%% for the whole article with \linenumbers.
%% \usepackage{lineno}

\journal{Nuclear Physics B}

\begin{document}

\begin{frontmatter}

%% Title, authors and addresses

%% use the tnoteref command within \title for footnotes;
%% use the tnotetext command for theassociated footnote;
%% use the fnref command within \author or \affiliation for footnotes;
%% use the fntext command for theassociated footnote;
%% use the corref command within \author for corresponding author footnotes;
%% use the cortext command for theassociated footnote;
%% use the ead command for the email address,
%% and the form \ead[url] for the home page:
%% \title{Title\tnoteref{label1}}
%% \tnotetext[label1]{}
%% \author{Name\corref{cor1}\fnref{label2}}
%% \ead{email address}
%% \ead[url]{home page}
%% \fntext[label2]{}
%% \cortext[cor1]{}
%% \affiliation{organization={},
%%            addressline={}, 
%%            city={},
%%            postcode={}, 
%%            state={},
%%            country={}}
%% \fntext[label3]{}

\title{}

%% use optional labels to link authors explicitly to addresses:
%% \author[label1,label2]{}
%% \affiliation[label1]{organization={},
%%             addressline={},
%%             city={},
%%             postcode={},
%%             state={},
%%             country={}}
%%
%% \affiliation[label2]{organization={},
%%             addressline={},
%%             city={},
%%             postcode={},
%%             state={},
%%             country={}}

\author{}

\affiliation{organization={},%Department and Organization
            addressline={}, 
            city={},
            postcode={}, 
            state={},
            country={}}

\begin{abstract}
%% Text of abstract

\end{abstract}

%%Graphical abstract
\begin{graphicalabstract}
%\includegraphics{grabs}
\end{graphicalabstract}

%%Research highlights
\begin{highlights}
\item Research highlight 1
\item Research highlight 2
\end{highlights}

\begin{keyword}
%% keywords here, in the form: keyword \sep keyword

%% PACS codes here, in the form: \PACS code \sep code

%% MSC codes here, in the form: \MSC code \sep code
%% or \MSC[2008] code \sep code (2000 is the default)

\end{keyword}

\end{frontmatter}

%% \linenumbers

%% main text
\section{}
\label{}

%% The Appendices part is started with the command \appendix;
%% appendix sections are then done as normal sections
%% \appendix

%% \section{}
%% \label{}

%% If you have bibdatabase file and want bibtex to generate the
%% bibitems, please use
%%
%%  \bibliographystyle{elsarticle-harv} 
%%  \bibliography{<your bibdatabase>}

%% else use the following coding to input the bibitems directly in the
%% TeX file.

\begin{thebibliography}{00}

%% \bibitem[Author(year)]{label}
%% Text of bibliographic item

\bibitem[ ()]{}

\end{thebibliography}
\end{document}

\endinput
%%
%% End of file `elsarticle-template-harv.tex'.

%% 
%% Copyright 2007-2020 Elsevier Ltd
%% 
%% This file is part of the 'Elsarticle Bundle'.
%% ---------------------------------------------
%% 
%% It may be distributed under the conditions of the LaTeX Project Public
%% License, either version 1.2 of this license or (at your option) any
%% later version.  The latest version of this license is in
%%    http://www.latex-project.org/lppl.txt
%% and version 1.2 or later is part of all distributions of LaTeX
%% version 1999/12/01 or later.
%% 
%% The list of all files belonging to the 'Elsarticle Bundle' is
%% given in the file `manifest.txt'.
%% 
%% Template article for Elsevier's document class `elsarticle'
%% with harvard style bibliographic references

\documentclass[preprint,12pt]{elsarticle}

%% Use the option review to obtain double line spacing
%% \documentclass[preprint,review,12pt]{elsarticle}

%% Use the options 1p,twocolumn; 3p; 3p,twocolumn; 5p; or 5p,twocolumn
%% for a journal layout:
%% \documentclass[final,1p,times]{elsarticle}
%% \documentclass[final,1p,times,twocolumn]{elsarticle}
%% \documentclass[final,3p,times]{elsarticle}
%% \documentclass[final,3p,times,twocolumn]{elsarticle}
%% \documentclass[final,5p,times]{elsarticle}
%% \documentclass[final,5p,times,twocolumn]{elsarticle}

%% For including figures, graphicx.sty has been loaded in
%% elsarticle.cls. If you prefer to use the old commands
%% please give \usepackage{epsfig}

%% The amssymb package provides various useful mathematical symbols
\usepackage{amssymb}
%% The amsthm package provides extended theorem environments
%% \usepackage{amsthm}

%% The lineno packages adds line numbers. Start line numbering with
%% \begin{linenumbers}, end it with \end{linenumbers}. Or switch it on
%% for the whole article with \linenumbers.
%% \usepackage{lineno}

\journal{Nuclear Physics B}

\begin{document}

\begin{frontmatter}

%% Title, authors and addresses

%% use the tnoteref command within \title for footnotes;
%% use the tnotetext command for theassociated footnote;
%% use the fnref command within \author or \address for footnotes;
%% use the fntext command for theassociated footnote;
%% use the corref command within \author for corresponding author footnotes;
%% use the cortext command for theassociated footnote;
%% use the ead command for the email address,
%% and the form \ead[url] for the home page:
%% \title{Title\tnoteref{label1}}
%% \tnotetext[label1]{}
%% \author{Name\corref{cor1}\fnref{label2}}
%% \ead{email address}
%% \ead[url]{home page}
%% \fntext[label2]{}
%% \cortext[cor1]{}
%% \affiliation{organization={},
%%             addressline={},
%%             city={},
%%             postcode={},
%%             state={},
%%             country={}}
%% \fntext[label3]{}

\title{}

%% use optional labels to link authors explicitly to addresses:
%% \author[label1,label2]{}
%% \affiliation[label1]{organization={},
%%             addressline={},
%%             city={},
%%             postcode={},
%%             state={},
%%             country={}}
%%
%% \affiliation[label2]{organization={},
%%             addressline={},
%%             city={},
%%             postcode={},
%%             state={},
%%             country={}}

\author{}

\affiliation{organization={},%Department and Organization
            addressline={}, 
            city={},
            postcode={}, 
            state={},
            country={}}

\begin{abstract}
%% Text of abstract

\end{abstract}

%%Graphical abstract
\begin{graphicalabstract}
%\includegraphics{grabs}
\end{graphicalabstract}

%%Research highlights
\begin{highlights}
\item Research highlight 1
\item Research highlight 2
\end{highlights}

\begin{keyword}
%% keywords here, in the form: keyword \sep keyword

%% PACS codes here, in the form: \PACS code \sep code

%% MSC codes here, in the form: \MSC code \sep code
%% or \MSC[2008] code \sep code (2000 is the default)

\end{keyword}

\end{frontmatter}

%% \linenumbers

%% main text
\section{}
\label{}

%% The Appendices part is started with the command \appendix;
%% appendix sections are then done as normal sections
%% \appendix

%% \section{}
%% \label{}

%% For citations use: 
%%       \citet{<label>} ==> Jones et al. [21]
%%       \citep{<label>} ==> [21]
%%

%% If you have bibdatabase file and want bibtex to generate the
%% bibitems, please use
%%
%%  \bibliographystyle{elsarticle-num-names} 
%%  \bibliography{<your bibdatabase>}

%% else use the following coding to input the bibitems directly in the
%% TeX file.

\begin{thebibliography}{00}

%% \bibitem[Author(year)]{label}
%% Text of bibliographic item

\bibitem[ ()]{}

\end{thebibliography}
\end{document}

\endinput
%%
%% End of file `elsarticle-template-num-names.tex'.

%% 
%% Copyright 2007-2020 Elsevier Ltd
%% 
%% This file is part of the 'Elsarticle Bundle'.
%% ---------------------------------------------
%% 
%% It may be distributed under the conditions of the LaTeX Project Public
%% License, either version 1.2 of this license or (at your option) any
%% later version.  The latest version of this license is in
%%    http://www.latex-project.org/lppl.txt
%% and version 1.2 or later is part of all distributions of LaTeX
%% version 1999/12/01 or later.
%% 
%% The list of all files belonging to the 'Elsarticle Bundle' is
%% given in the file `manifest.txt'.
%% 

%% Template article for Elsevier's document class `elsarticle'
%% with numbered style bibliographic references
%% SP 2008/03/01
%%
%% 
%%
%% $Id: elsarticle-template-num.tex 190 2020-11-23 11:12:32Z rishi $
%%
%%
\documentclass[preprint,12pt]{elsarticle}

%% Use the option review to obtain double line spacing
%% \documentclass[authoryear,preprint,review,12pt]{elsarticle}

%% Use the options 1p,twocolumn; 3p; 3p,twocolumn; 5p; or 5p,twocolumn
%% for a journal layout:
%% \documentclass[final,1p,times]{elsarticle}
%% \documentclass[final,1p,times,twocolumn]{elsarticle}
%% \documentclass[final,3p,times]{elsarticle}
%% \documentclass[final,3p,times,twocolumn]{elsarticle}
%% \documentclass[final,5p,times]{elsarticle}
%% \documentclass[final,5p,times,twocolumn]{elsarticle}

%% For including figures, graphicx.sty has been loaded in
%% elsarticle.cls. If you prefer to use the old commands
%% please give \usepackage{epsfig}

%% The amssymb package provides various useful mathematical symbols
\usepackage{amssymb}
%% The amsthm package provides extended theorem environments
%% \usepackage{amsthm}

%% The lineno packages adds line numbers. Start line numbering with
%% \begin{linenumbers}, end it with \end{linenumbers}. Or switch it on
%% for the whole article with \linenumbers.
%% \usepackage{lineno}

\journal{Nuclear Physics B}

\begin{document}

\begin{frontmatter}

%% Title, authors and addresses

%% use the tnoteref command within \title for footnotes;
%% use the tnotetext command for theassociated footnote;
%% use the fnref command within \author or \address for footnotes;
%% use the fntext command for theassociated footnote;
%% use the corref command within \author for corresponding author footnotes;
%% use the cortext command for theassociated footnote;
%% use the ead command for the email address,
%% and the form \ead[url] for the home page:
%% \title{Title\tnoteref{label1}}
%% \tnotetext[label1]{}
%% \author{Name\corref{cor1}\fnref{label2}}
%% \ead{email address}
%% \ead[url]{home page}
%% \fntext[label2]{}
%% \cortext[cor1]{}
%% \affiliation{organization={},
%%             addressline={},
%%             city={},
%%             postcode={},
%%             state={},
%%             country={}}
%% \fntext[label3]{}

\title{}

%% use optional labels to link authors explicitly to addresses:
%% \author[label1,label2]{}
%% \affiliation[label1]{organization={},
%%             addressline={},
%%             city={},
%%             postcode={},
%%             state={},
%%             country={}}
%%
%% \affiliation[label2]{organization={},
%%             addressline={},
%%             city={},
%%             postcode={},
%%             state={},
%%             country={}}

\author{}

\affiliation{organization={},%Department and Organization
            addressline={}, 
            city={},
            postcode={}, 
            state={},
            country={}}

\begin{abstract}
%% Text of abstract

\end{abstract}

%%Graphical abstract
\begin{graphicalabstract}
%\includegraphics{grabs}
\end{graphicalabstract}

%%Research highlights
\begin{highlights}
\item Research highlight 1
\item Research highlight 2
\end{highlights}

\begin{keyword}
%% keywords here, in the form: keyword \sep keyword

%% PACS codes here, in the form: \PACS code \sep code

%% MSC codes here, in the form: \MSC code \sep code
%% or \MSC[2008] code \sep code (2000 is the default)

\end{keyword}

\end{frontmatter}

%% \linenumbers

%% main text
\section{}
\label{}

%% The Appendices part is started with the command \appendix;
%% appendix sections are then done as normal sections
%% \appendix

%% \section{}
%% \label{}

%% If you have bibdatabase file and want bibtex to generate the
%% bibitems, please use
%%
%%  \bibliographystyle{elsarticle-num} 
%%  \bibliography{<your bibdatabase>}

%% else use the following coding to input the bibitems directly in the
%% TeX file.

\begin{thebibliography}{00}

%% \bibitem{label}
%% Text of bibliographic item

\bibitem{}

\end{thebibliography}
\end{document}
\endinput
%%
%% End of file `elsarticle-template-num.tex'.