我是 Latex 的新手,正在使用教授发来的文档中的一些内容。
我正在尝试在正在撰写的论文中定义某些内容。以下是我所得到的:
\documentclass[11pt]{amsart}
\usepackage{amssymb,latexsym,amsmath,amsthm,enumitem,hyperref}
\usepackage{graphics,graphicx,multicol,tikz,pgfplots,tkz-
euclide,relsize,framed}
\usetikzlibrary{calc}
\tikzset{fontscale/.style = {font=\relsize{#1}}}
\setlength{\topmargin}{-0.750in}
\setlength{\textheight}{9.5in}
\setlength{\textwidth}{6.5in}
\setlength{\oddsidemargin}{0in}
\setlength{\evensidemargin}{0in}
\allowdisplaybreaks
\renewcommand{\labelenumi}{(\alph{enumi})}
\renewcommand{\labelenumii}{\roman{enumii}.}
\setlength\arraycolsep{2pt}
\begin{document}
\section{Important Definitions and Theorems}
\subsection{Definition [Sparsity]}
The \emph{sparsity} of $x \in \mathbb{R}^n$ is defined by
\begin{equation}
\norm{x}_{0} = card{k \in {1, 2, . . . , n} : x_k \neq 0}
\end{equation}
\end{document}
但是,当我运行这个程序时,我得到了一个未定义的控制序列错误,我不确定这意味着什么或者如何修复它,因此我来寻求你的帮助。谢谢!
答案1
该命令\norm
默认未定义。定义它的常用方法是使用mathtools
和\DeclarPairedDelimiter
,以便\norm
可以调用
\norm{x}
\norm[\big]{x}
\norm[\Big]{x}
\norm[\bigg]{x}
\norm[\Bigg]{x}
\norm*{x}
其中带有可选参数的调用手动设置分隔符的大小;-form*
使用自动可扩展的分隔符(请谨慎使用)。
\documentclass[11pt]{amsart}
% load here other needed packages
\usepackage{amssymb,mathtools}
% set up for the document
\setlength{\textheight}{9.5in}
\setlength{\textwidth}{6.5in}
\calclayout % <--- this is the proper way in amsart
% personal commands
\DeclarePairedDelimiter{\norm}{\lVert}{\rVert}
\DeclareMathOperator{\card}{card}
% theorem like environments
\newtheorem{theorem}{Theorem}[section]
\theoremstyle{definition}
\newtheorem{definition}[theorem]{Definition}
\begin{document}
\section{Important Definitions and Theorems}
\begin{definition}[Sparsity]
The \emph{sparsity} of $x \in \mathbb{R}^n$ is defined by
\begin{equation}
\norm{x}_{0} = \card\bigl\{k \in \{1, 2, \dots, n\} : x_k \neq 0\bigr\}
\end{equation}
\end{definition}
\end{document}
我没有滥用,而是
\subsection
为定理和定义定义了适当的环境(添加您需要的其他环境)。我还为基数定义了一个运算符名称。
用于界定集合定义的括号应该是
\{
和\}
。由于嵌套集,我使用了
\big
外括号(它是可选的)。...
应该\dots
。无需猜测页面参数的适当值,只需设置所需的文本高度和宽度,然后发出
\calclayout
(适当的命令amsart
)来设置其他参数。
答案2
添加此定义(基于 \mathtools(的扩展amsmath
))效果很好。我定义了一个\znorm
命令,该命令在其星号版本中延伸到其参数的大小。或者,您可以使用可选参数之一来微调范数符号的大小\big, \Big, \bigg, \Bigg
。
graphics
无关:如果您加载,则无需加载graphicx
:后者会为您完成。同样,amsmath
如果您加载,则无需加载mathtools
。
\documentclass[11pt]{amsart}
\usepackage{amssymb,mathtools,amsthm,enumitem,hyperref}
\usepackage{graphicx,multicol,tikz,pgfplots,tkz-euclide,relsize,framed}
\usetikzlibrary{calc}
\tikzset{fontscale/.style = {font=\relsize{#1}}}
\setlength{\topmargin}{-0.750in}
\setlength{\textheight}{9.5in}
\setlength{\textwidth}{6.5in}
\setlength{\oddsidemargin}{0in}
\setlength{\evensidemargin}{0in}
\allowdisplaybreaks
\renewcommand{\labelenumi}{(\alph{enumi})}
\renewcommand{\labelenumii}{\roman{enumii}.}
\setlength\arraycolsep{2pt}
\DeclarePairedDelimiterXPP\znorm[1]{}\lVert\rVert{_0}{#1}
\DeclareMathOperator{\card}{card}
\begin{document}
\section{Important Definitions and Theorems}
\subsection{Definition [Sparsity]}
The \emph{sparsity} of $x \in \mathbb{R}^n$ is defined by
\begin{equation}
\znorm{x}=\card\bigl\{k \in \{1, 2, . . . , n\} : x_k \neq 0\bigr\}\qquad \znorm*{\frac{x}{a}}
\end{equation}
\end{document}