我希望能够将 R 语法中的公式写成方程式,即我希望做这样的事情:
\begin{requation}
time ~ (poly(I(1/nprocs), 2) + poly(ndoms, 2) + poly(nDOF, 2))^3
\end{requation}
而方程将是与普通方程式一起编号其内容将是带有 的简单文本\texttt{}
。因此,我不需要环境中的数学模式。
你知道该怎么做吗?
编辑
我尝试过这样的事情
\newenvironment{requation}
{%
\VerbatimEnvironment
\begin{Verbatim}
}
{
\end{Verbatim}
\refstepcounter{equation}\hfill(\theequation)}
唯一的问题是,在这种情况下,后面有一个\end{Verbatim}
我不想要的换行符——有没有可能摆脱它?
答案1
这是一个简单的方法,无需定义新的环境或使用任何额外的包就可以获得你想要的东西:
\documentclass{article}
\begin{document}
\begin{equation}
\verb"time ~ (poly(I(1/nprocs), 2) + poly(ndoms, 2) + poly(nDOF, 2))^3"
\end{equation}
\end{document}
请注意,方程式编号已被推到下面一行;这是因为您给出的 R 代码作为示例相当长,而默认文本宽度不是那么宽。
\verb
如果您使用该shortvrb
包,则可以避免输入位。
\documentclass{article}
\usepackage{shortvrb}\MakeShortVerb{"}
\begin{document}
\begin{equation}
"time ~ (poly(I(1/nprocs), 2) + poly(ndoms, 2) + poly(nDOF, 2))^3"
\end{equation}
\end{document}
但这会对文档的其余部分产生影响,并且您可能很难找到不属于 R 语法的短动词字符。第一种解决方案的优点是,您可以根据需要每次更改字符:
\documentclass{article}
\begin{document}
\begin{equation}
\verb|time ~ (poly(I(1/nprocs), 2) + poly(ndoms, 2) + poly(nDOF, 2))^3|
\end{equation}
\end{document}
在所有情况下,逐字位必须全部位于一行上。