Latex-算法伪代码 - 严二姨的文章 - 知乎
https://zhuanlan.zhihu.com/p/266241159
写作开头导入相应的包:
\usepackage{algorithm}
\usepackage{algorithmicx}
\usepackage{algpseudocode} % 如果不想在算法伪代码模块中显示 end for 和 end while,则使用 %\usepackage[noend]{algpseudocode}
对应伪代码部分进行写作:
\begin{algorithm}
%\textsl{}\setstretch{1.8}
\renewcommand{\algorithmicrequire}{\textbf{Input:}} %将require转化为Input
\renewcommand{\algorithmicensure}{\textbf{Output:}} %将ensure转化为Output
\caption{STVMD based on STFT}
\label{alg1}
\begin{algorithmic}[1]
\STATE Initialization:$\left\{ {s_{k,t}^1} \right\},\left\{ {\omega _{k,t}^1} \right\},\lambda _t^1,n \leftarrow 0$
\STATE ${s_{r,t}}\left( \omega \right) = \int_0^{ + \infty } {
{s_r}\left( \tau \right){w_h}\left( {t - \tau } \right)} \exp \left( {j\omega \tau } \right)d\tau $ (via STFT)
\REPEAT
\STATE $n \leftarrow n + 1$
\STATE Update $ s_{k,t}^{n + 1} $ based on Equation~(\ref{eqn_8})
\STATE Update $\omega _{k,t}^{n + 1}$ based on Equation~(\ref{eqn_9})
\STATE Update $\lambda _t^{n + 1} $ based on Equation~(\ref{eqn_10})
\UNTIL $\sum\limits_{k=1}^P {
{
{\left\| {s_{k,t}^{n + 1}\left( \omega \right) - s_{k,t}^n\left( \omega \right)} \right\|_2^2} \mathord{\left/
{\vphantom {
{\left\| {s_{k,t}^{n + 1}\left( \omega \right) - s_{k,t}^n\left( \omega \right)} \right\|_2^2} {\left\| {s_{k,t}^n\left( \omega \right)} \right\|_2^2}}} \right.
\kern-\nulldelimiterspace} {\left\| {s_{k,t}^n\left( \omega \right)} \right\|_2^2}}} < \varepsilon $
\STATE Update ${s_k}\left( t \right)$ based on Equation~(\ref{eqn_11_12}) (via ISTFT)
\ENSURE decomposed modes $ \left\{ {
{s_k}\left( t \right)} \right\}$, $\left\{ {
{\omega _k}\left( t \right)} \right\}$
\end{algorithmic}
\end{algorithm}