내용에 관계없이 특정 목록 목록의 불완전한 \iffalse

내용에 관계없이 특정 목록 목록의 불완전한 \iffalse

특정 줄에서 다음과 같은 오류를 발생시키는 LaTeX 코드가 있습니다.

  • Incomplete \iffalse; all text was ignored after line 140.
  • Forbidden control sequence found while scanning text of \write.140번째 줄에서

그런 다음 문서 끝 부분에:

  • Argument of \@gobble has an extra }. \end{document}
  • Missing } inserted. \end{document}
  • 등.

다음 코드에서는 오류가 발생했습니다(라인 140이 y[ row[i] ] += ...에 있음 \section{COO Kernel}).

\documentclass[11pt,oneside,czech,american]{book}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[a4paper]{geometry}
\geometry{verbose,tmargin=4cm,bmargin=3cm,lmargin=3cm,rmargin=2cm,headheight=0.8cm,headsep=1cm,footskip=0.5cm}
\pagestyle{headings}
\setcounter{secnumdepth}{3}
\usepackage{url}
\usepackage{listings}
\usepackage{textcomp}
\usepackage{amsmath}
\usepackage{xcolor}

\makeatletter

\newenvironment{lyxlist}[1]
{\begin{list}{}
{\settowidth{\labelwidth}{#1}
 \setlength{\leftmargin}{\labelwidth}
 \addtolength{\leftmargin}{\labelsep}
 \renewcommand{\makelabel}[1]{##1\hfil}}}
{\end{list}}
\usepackage[varg]{txfonts}
\usepackage{indentfirst}

\clubpenalty=9500

\widowpenalty=9500

\hyphenation{CDFA HARDI HiPPIES IKEM InterTrack MEGIDDO MIMD MPFA DICOM ASCLEPIOS MedInria}

\definecolor{light-gray}{gray}{0.95}
\newcommand{\code}[1]{\colorbox{light-gray}{\texttt{#1}}}

\definecolor{listinggray}{gray}{0.9}
\definecolor{lbcolor}{rgb}{0.9,0.9,0.9}
\definecolor{Darkgreen}{rgb}{0.0, 0.2, 0.13}
\lstset{
    backgroundcolor=\color{lbcolor},
    tabsize=4,    
    language=[GNU]C++,
    basicstyle=\scriptsize,
    upquote=true,
    aboveskip={0.001\baselineskip},
    columns=fixed,
    showstringspaces=false,
    extendedchars=false,
    breaklines=true,
    prebreak = \raisebox{0ex}[0ex][0ex]{\ensuremath{\hookleftarrow}},
    frame=single,
    numbers=left,
    showtabs=false,
    showspaces=false,
    showstringspaces=false,
    identifierstyle=\ttfamily,
    keywordstyle=\color[rgb]{0,0,1},
    commentstyle=\color[rgb]{0.026,0.112,0.095},
    stringstyle=\color[rgb]{0.627,0.126,0.941},
    numberstyle=\color[rgb]{0.205, 0.142, 0.73},
}
\lstset{
    backgroundcolor=\color{lbcolor},
    tabsize=4,
    language=C++,
    captionpos=b,
    tabsize=3,
    frame=lines,
    numbers=left,
    numberstyle=\tiny,
    numbersep=5pt,
    breaklines=true,
    showstringspaces=false,
    basicstyle=\footnotesize,
    keywordstyle=\color[rgb]{0,0,1},
    commentstyle=\color{Darkgreen},
    stringstyle=\color{red},
}
\lstset{
    morekeywords={__global__},
    alsoletter={.},
    morekeywords={blockDim.x},
    morekeywords={blockIdx.x},
    morekeywords={threadIdx.x}
}

\usepackage{babel}
\begin{document}
\tableofcontents{}

\chapter*{Implementation/Kernels of formats}

\addcontentsline{toc}{chapter}{Implementation/Kernels of formats}

\setcounter{chapter}{3}
\setcounter{section}{0}

\section{DIAG Kernel}

\begin{lstlisting}[caption= SpMV pseudocode using DIAG format for storing a matrix from \textit{Efficient sparse matrix-vector multiplication on CUDA} \cite{Bell-Garland}.]
__global__ void
spmv_dia_kernel ( const int num_rows,
                        const int num_cols,
                        const int num_diags,
                        const int   * offsets,
                        const float * data,
                        const float * x,
                                float * y )
{
    int row = blockDim.x * blockIdx.x + threadIdx.x;
    if ( row < num_rows ){
          float dot = 0;

          for ( int n = 0; n < num_diags; n++ ){
                  int col = row + offsets[ n ];
                  float val = data[ num_rows * n + row ];

                  if ( col >= 0 && col < num_cols )
                        dot += val * x[ col ];
          }

          y[ row ] += dot;
    }
}
\end{lstlisting}
\label{Code:Diagonal-matrix-example}

\section{COO Kernel}

\begin{lstlisting}[caption= SpMV pseudocode using COO format for storing a matrix \cite{Parallel-Uppsala}.]
__global__ void
spmv_coo_kernel ( const int num_non_zero_elements,
                       const float * data,
                       const int   * row,
                       const int   * col,
                       const float * x,
                               float * y )
{
    int i = blockDim.x * blockIdx.x + threadIdx.x;
    if ( row < num_non_zero_elements )
          y[ row[i] ] += data[i] * x[ col[i] ];
}
\end{lstlisting}

\section{ELL Oriented Kernels}

\subsection{ELL Kernel}

\begin{lstlisting}[caption = SpMV pseudocode using ELL format for storing a matrix from \textit{Efficient sparse matrix-vector multiplication on CUDA} \cite{Bell-Garland}.]
__global__ void
spmv_ell_kernel ( const int num_rows,
                       const int num_cols,
                       const int num_cols_per_row,
                       const int   * indices,
                       const float * data,
                       const float * x,
                            float * y )
{
    int row = blockDim.x * blockIdx.x + threadIdx.x;

    if( row < num_rows ){
         float dot = 0;

         for ( int n = 0; n < num_cols_per_row; n++ ){
                int col = indices[ num_rows * n + row ];
                float val = data[ num_rows * n + row ];

                 if ( val != 0 )
                       dot += val * x[ col ];
         }

         y[ row ] += dot;
    }
}
\end{lstlisting}

\begin{thebibliography}{1}
\bibitem{Bell-Garland}N Bell, M. Garland: \emph{Efficient sparse matrix-vector multiplication on CUDA}. NVIDIA Technical Report NVR-2008-004, NVIDIA Corporation, 1-32, 2008.

\bibitem{Parallel-Uppsala}D. Lukarski: \emph{Sparse Matrix-Vector Multiplication and Matrix Formats}. Parallel Algorithms for Scientific Computing, Uppsala University, 2013. \url{https://www.it.uu.se/education/phd_studies/phd_courses/pasc/lecture-1}
\end{thebibliography}

\end{document}

bibitem철자 오류가 없는 것 같음에도 불구하고 어떤 이유로 s에 대한 인용이 정의되지 않았습니다.

오류를 발생시킨 변경 사항을 롤백하는 경우에도 문서를 올바르게 컴파일하려면 .aux.toc파일을 삭제해야 합니다.

나는 꽤 멍청한 설립자입니다.

추신: 서문은 교수가 모든 학생이 사용할 수 있도록 템플릿으로 만든 것입니다. 나는 그것에 간섭하지 말라고 들었습니다.

[편집]: 제안된 대로 최소한의 동일한 오류 출력 예제를 만들었습니다.

[편집]: 로그 파일을 추가했습니다.

[편집]: 답변에 필요하지 않기 때문에 GitHub 링크, 전체 프로젝트 링크 및 로그 파일 링크를 제거했습니다. 나는 그것들을 한 곳에 넣을 것이다별도의 폴더누구든지 보고 싶어하면 삭제하지 않을 것입니다. 어떤 이유로든 링크가 깨질 경우 알려주세요. 해당 파일의 백업도 보관할 예정이므로 어떻게든 갱신하겠습니다.

답변1

이 문제에 대한 해결책은 @UlrikeFischer가 말한 것처럼 사용자 및 관리자 모드에서 MiKTeX를 업데이트하는 것이었습니다.

tex 시스템을 업데이트하세요. 가장 중요한 것은 목록 패키지입니다. 최신 버전에서는 다시 작동합니다. (사용자 및 관리자 모드에서 업데이트를 확인하세요).

답변을 도용한 것에 대해 사과드립니다. 답변으로 댓글을 작성하도록 요청하여 더 이상 스팸을 보내지 않고 이 해결된 질문을 종료하고 싶습니다.

귀하의 답변을 수락하고 싶으시면 언제든지 답변해 주시면 수락해 드리겠습니다.

관련 정보