325 lines
12 KiB
TeX
325 lines
12 KiB
TeX
%%
|
||
%% This is file `examples/hitbook/chinese/hithesis.sty',
|
||
%% generated with the docstrip utility.
|
||
%%
|
||
%% The original source files were:
|
||
%%
|
||
%% hithesis.dtx (with options: `hithesis-style')
|
||
%%
|
||
%% This is a generated file.
|
||
%%
|
||
%% Copyright (C) 2017-2025 by Chu Yanshuo <yanshuoc@gmail.com>
|
||
%%
|
||
%% This file may be distributed and/or modified under the
|
||
%% conditions of the LaTeX Project Public License, either version 1.3a
|
||
%% 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.3a or later is part of all distributions of LaTeX
|
||
%% version 2004/10/01 or later.
|
||
%%
|
||
%% To produce the documentation run the original source files ending with `.dtx'
|
||
%% through LaTeX.
|
||
%%
|
||
\ProvidesPackage{hithesis}
|
||
[0000/00/00 v3.1e Harbin Institute of Technology Thesis Template]
|
||
|
||
\RequirePackage{xeCJKfntef}
|
||
|
||
\RequirePackage{siunitx}
|
||
\sisetup{group-minimum-digits=4, group-separator= \hspace{0.25em}}
|
||
\sisetup{detect-weight,detect-mode,detect-family}
|
||
|
||
\RequirePackage{bm}
|
||
\RequirePackage{mathrsfs}
|
||
\RequirePackage{xcolor}
|
||
|
||
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||
|
||
\definecolor{colorzero}{rgb}{0, 0, 0}
|
||
\definecolor{colorone}{rgb}{1, 0, 0}
|
||
\definecolor{colortwo}{rgb}{0, 0, 1}
|
||
\definecolor{colorthree}{rgb}{0, 1, 0}
|
||
\RequirePackage{rotating}
|
||
|
||
\RequirePackage[algoruled,linesnumbered,algochapter]{algorithm2e}
|
||
\SetAlCapSty{}
|
||
\newcommand{\foocaption}[1]{ \def\@algocf@pre@plainruled{\hrule height1.5pt depth0pt\kern\interspacetitleruled #1 \kern\interspacealgoruled\hrule height1pt depth0pt\kern\interspacetitleruled} }
|
||
\def\@algocf@post@ruled{\kern\interspacealgoruled\hrule height1.5pt\relax}%
|
||
|
||
\newcommand{\algoenname}{Algo.} %算法英文标题
|
||
\newfloatlist[chapter]{algoen}{aen}{\listalgoenname}{\algoenname}
|
||
\newfixedcaption{\algoencaption}{algoen}
|
||
\renewcommand{\thealgoen}{\thechapter-\arabic{algocf}}
|
||
\renewcommand{\@cftmakeaentitle}{\chapter*{\listalgoenname\@mkboth{\listalgoenname}{\listalgoenname}}
|
||
}
|
||
\renewcommand{\algorithmcfname}{算法}
|
||
\setlength\AlCapSkip{1.2ex}
|
||
\SetAlgoSkip{1pt}
|
||
\renewcommand{\algocf@captiontext}[2]{\wuhao#1\algocf@typo~\AlCapFnt{}#2} % text of caption
|
||
\expandafter\ifx\csname algocf@within\endcsname\relax% if \algocf@within doesn't exist
|
||
\renewcommand\thealgocf{\@arabic\c@algocf} % and the way it is printed
|
||
\else% else
|
||
\renewcommand\thealgocf{\csname the\algocf@within\endcsname-\@arabic\c@algocf}
|
||
\fi
|
||
\renewcommand{\algocf@makecaption}[2]{%中英文双标题一定多于一行,因此去掉单行时的判断,并将\parbox中标题设置为居中
|
||
\addtolength{\hsize}{\algomargin}%
|
||
\sbox\@tempboxa{\algocf@captiontext{#1}{#2}}%
|
||
\hskip .5\algomargin%
|
||
\parbox[t]{\hsize}{\centering\algocf@captiontext{#1}{#2}}%
|
||
\addtolength{\hsize}{-\algomargin}%
|
||
}
|
||
\newcommand{\AlgoBiCaption}[2]{%直接取出自定义的中英文标题条目加入到真正的\caption 中
|
||
\caption[#1]{\protect\setlength{\baselineskip}{1.5em}#1 \protect \\ Algo.\thealgocf~#2} % \algoencaption{#2}
|
||
\addcontentsline{aen}{algoen}{\protect\numberline{\thealgoen}{#2}}
|
||
}
|
||
|
||
\RequirePackage{listings}
|
||
\lstset{
|
||
columns=flexible,
|
||
breaklines=true
|
||
}
|
||
|
||
|
||
|
||
\newacronym{etssbp}{TSSBP}{Tree-structured Stick-breaking process}
|
||
\newacronym{etse}{TSE}{Taylor Series Expansion}
|
||
\newacronym{esvm}{SVM}{Support Vector Machine}
|
||
\newacronym{eml}{ML}{Machine Learning}
|
||
\newacronym{eco}{CO}{Convex Optimization}
|
||
|
||
\newacronym{tssbp}{树结构折筷过程}{树结构折筷过程(Tree-structured Stick-breaking process)}
|
||
\def\gtssbp{\gls{tssbp}\sindex[china]{shu!树结构折筷过程}\sindex[english]{Tree-structured Stick-breaking process}}
|
||
\newacronym[shortplural=SCNAs,longplural={体细胞拷贝数变异(Somatic copy number alternation,SCNA)}]{scna}{SCNA}{体细胞拷贝数变异(Somatic copy number alternation,SCNA)}
|
||
\def\gscna{\gls{scna}\sindex[china]{ti!体细胞拷贝数变异}\sindex[english]{Somatic copy number alternation}\ignorespaces}
|
||
\def\gscnas{\glspl{scna}\sindex[china]{ti!体细胞拷贝数变异}\sindex[english]{Somatic copy number alternation}\ignorespaces}
|
||
|
||
\usepackage{tikz}
|
||
|
||
\tikzstyle{maternal}= [colorone]
|
||
\tikzstyle{paternal}= [colortwo]
|
||
\tikzstyle{variant}= [colorthree!80!colorzero]
|
||
\tikzstyle{reference}= [colorzero]
|
||
|
||
\tikzstyle{aallele}= [colorzero,rotate=90]
|
||
\tikzstyle{ballele}= [colorthree!80!colorzero,rotate=90]
|
||
|
||
\tikzstyle{refseg}= [colorzero,draw=colorzero, opacity=0.2]
|
||
\tikzstyle{mseg}= [colorone,draw=colorone, opacity=0.2]
|
||
\tikzstyle{pseg}= [colortwo,draw=colortwo, opacity=0.2]
|
||
\tikzstyle{vseg}= [colorthree!80!colorzero,draw=colorthree!80!colorzero, opacity=0.6]
|
||
|
||
\tikzstyle{bncell}= [draw=colorzero,opacity=0.2,line width=2pt, rounded corners=1pt]
|
||
\tikzstyle{btcell}= [draw=colorone,opacity=0.6, line width=2pt, rounded corners=1pt]
|
||
|
||
\tikzstyle{tncell}= [colorzero,opacity=0.9]
|
||
\tikzstyle{ttcell}= [colorone,opacity=0.6]
|
||
\tikzstyle{tscell}= [colorzero]
|
||
\tikzstyle{refcell}= [colorzero]
|
||
|
||
\tikzstyle{evolve}= [->,draw=colortwo,opacity=0.3,line width=1.5pt]
|
||
\tikzstyle{fakeevolve}= [->,draw=colorzero,opacity=0.3,line width=1.5pt]
|
||
|
||
\tikzstyle{refline}= [dashed,draw=colorzero,line width=1pt]
|
||
\tikzstyle{tnline}= [dashed,draw=colorzero,opacity=0.3,line width=1pt]
|
||
|
||
\newcommand{\gseg}[9]{%
|
||
\pgfmathsetmacro{\sstartx}{#1}
|
||
\pgfmathsetmacro{\slengx}{#2}
|
||
\pgfmathsetmacro{\sy}{#3}
|
||
\pgfmathsetmacro{\sdy}{#4}
|
||
\pgfmathsetmacro{\sdx}{#5}
|
||
\pgfmathsetmacro{\sdxh}{#7}
|
||
\pgfmathsetmacro{\sdxt}{#8}
|
||
\fill[#6](\sstartx,\sy)--(\sstartx-\sdx,\sy+\sdy)--
|
||
(\slengx+\sstartx+1.5-\sdx,\sy+\sdy)--(\slengx+\sstartx+1.5,\sy)--
|
||
(\slengx+\sstartx+1.5-\sdx,\sy-\sdy)--(\sstartx-\sdx,\sy-\sdy)--cycle;
|
||
\draw[#9] (\sstartx-\sdxh,\sy) -- (\sstartx, \sy);
|
||
\draw[#9] (\slengx+\sstartx+1.5, \sy) -- (\slengx+\sstartx+1.5+\sdxt,\sy);
|
||
}
|
||
\newcommand{\gsegr}[9]{%
|
||
\pgfmathsetmacro{\sstartx}{#1}
|
||
\pgfmathsetmacro{\slengx}{#2}
|
||
\pgfmathsetmacro{\sy}{#3}
|
||
\pgfmathsetmacro{\sdy}{#4}
|
||
\pgfmathsetmacro{\sdx}{#5}
|
||
\pgfmathsetmacro{\sdxh}{#7}
|
||
\pgfmathsetmacro{\sdxt}{#8}
|
||
\fill[#6](\sstartx-0.5,\sy)--(\sstartx+\sdx-0.5,\sy+\sdy)--
|
||
(\slengx+\sstartx+1.5+\sdx-0.5,\sy+\sdy)--(\slengx+\sstartx+1.5-0.5,\sy)--
|
||
(\slengx+\sstartx+1.5+\sdx-0.5,\sy-\sdy)--(\sstartx+\sdx-0.5,\sy-\sdy)--cycle;
|
||
\draw[#9] (\sstartx-\sdxh-0.5,\sy) -- (\sstartx-0.5, \sy);
|
||
\draw[#9] (\slengx+\sstartx+1.5-0.5, \sy) -- (\slengx+\sstartx+1.5+\sdxt-0.5,\sy);
|
||
}
|
||
|
||
\newcommand{\rcell}[2]{%
|
||
\pgfmathsetmacro{\x}{#1}
|
||
\pgfmathsetmacro{\y}{#2}
|
||
%\node at (\x+10, \y) {Reference};
|
||
\draw (\x+1,\y) node[aallele]{A};
|
||
\draw (\x+2,\y) node[aallele]{C};
|
||
\draw (\x+3,\y) node[aallele]{T};
|
||
\draw (\x+4,\y) node[aallele]{C};
|
||
\gseg{\x}{4}{\y}{0.2}{0.5}{refseg}{1.5}{1}{reference};
|
||
}
|
||
|
||
\newcommand{\ncell}[2]{%
|
||
\pgfmathsetmacro{\x}{#1}
|
||
\pgfmathsetmacro{\y}{#2}
|
||
%\node [maternal] at (\x+8, \y) {M};
|
||
%\node [paternal] at (\x+8, \y-0.5) {P};
|
||
\draw[bncell](\x-2,\y+0.5)--(\x+7,\y+0.5)--
|
||
(\x+7,\y-1)--(\x-2,\y-1)--cycle;
|
||
\draw (\x+1,\y) node[aallele]{A};
|
||
\draw (\x+2,\y) node[ballele]{G};
|
||
\draw (\x+3,\y) node[aallele]{T};
|
||
\draw (\x+4,\y) node[aallele]{C};
|
||
\gseg{\x}{4}{\y}{0.2}{0.5}{mseg}{1.5}{1}{maternal};
|
||
\draw (\x+1,\y-0.5) node[ballele]{T};
|
||
\draw (\x+2,\y-0.5) node[aallele]{C};
|
||
\draw (\x+3,\y-0.5) node[aallele]{T};
|
||
\draw (\x+4,\y-0.5) node[ballele]{A};
|
||
\gseg{\x}{4}{\y-0.5}{0.2}{0.5}{pseg}{1.5}{1}{paternal};
|
||
}
|
||
|
||
\newcommand{\tcellone}[2]{%
|
||
\pgfmathsetmacro{\x}{#1}
|
||
\pgfmathsetmacro{\y}{#2}
|
||
%\node [maternal] at (\x+8, \y) {M};
|
||
%\node [maternal] at (\x+8, \y-0.5) {M};
|
||
%\node [paternal] at (\x+8, \y-1) {P};
|
||
\draw[btcell](\x-2,\y+0.5)--(\x+7,\y+0.5)--
|
||
(\x+7,\y-1.5)--(\x-2,\y-1.5)--cycle;
|
||
\draw (\x+1,\y) node[aallele]{A};
|
||
\draw (\x+2,\y) node[ballele]{G};
|
||
\draw (\x+3,\y) node[aallele]{T};
|
||
\draw (\x+4,\y) node[aallele]{C};
|
||
\gseg{\x}{4}{\y}{0.2}{0.5}{mseg}{1.5}{1}{maternal};
|
||
\draw (\x+1,\y-0.5) node[aallele]{A};
|
||
\draw (\x+2,\y-0.5) node[ballele]{G};
|
||
\draw (\x+3,\y-0.5) node[aallele]{T};
|
||
\draw (\x+4,\y-0.5) node[aallele]{C};
|
||
\gseg{\x}{4}{\y-0.5}{0.2}{0.5}{mseg}{1.5}{1}{maternal};
|
||
\draw (\x+1,\y-1) node[ballele]{T};
|
||
\draw (\x+2,\y-1) node[aallele]{C};
|
||
\draw (\x+3,\y-1) node[aallele]{T};
|
||
\draw (\x+4,\y-1) node[ballele]{A};
|
||
\gseg{\x}{4}{\y-1}{0.2}{0.5}{pseg}{1.5}{1}{paternal};
|
||
}
|
||
|
||
\newcommand{\tcellthree}[2]{%
|
||
\pgfmathsetmacro{\x}{#1}
|
||
\pgfmathsetmacro{\y}{#2}
|
||
%\node [maternal] at (\x+12, \y) {M};
|
||
%\node [paternal] at (\x+12, \y-0.5) {P};
|
||
\draw[btcell](\x-2,\y+0.5)--(\x+11,\y+0.5)--
|
||
(\x+11,\y-1)--(\x-2,\y-1)--cycle;
|
||
\draw (\x+1,\y) node[aallele]{A};
|
||
\draw (\x+2,\y) node[ballele]{G};
|
||
\gseg{\x}{2}{\y}{0.2}{0.5}{mseg}{1.5}{0}{maternal};
|
||
\gseg{\x+4}{0}{\y}{0.2}{0.5}{vseg}{0.5}{0.5}{variant};
|
||
\draw (\x+7,\y) node[aallele]{T};
|
||
\draw (\x+8,\y) node[aallele]{C};
|
||
\gseg{\x+6}{2}{\y}{0.2}{0.5}{mseg}{0}{1}{maternal};
|
||
\draw (\x+1,\y-0.5) node[ballele]{T};
|
||
\draw (\x+2,\y-0.5) node[aallele]{C};
|
||
\draw (\x+3,\y-0.5) node[aallele]{T};
|
||
\draw (\x+4,\y-0.5) node[ballele]{A};
|
||
\gseg{\x}{4}{\y-0.5}{0.2}{0.5}{pseg}{1.5}{1}{paternal};
|
||
}
|
||
|
||
\newcommand{\tcellfour}[2]{%
|
||
\pgfmathsetmacro{\x}{#1}
|
||
\pgfmathsetmacro{\y}{#2}
|
||
%\node [maternal] at (\x+18, \y) {M};
|
||
%\node [paternal] at (\x+18, \y-0.5) {P};
|
||
\draw[btcell](\x-2,\y+0.5)--(\x+15,\y+0.5)--
|
||
(\x+15,\y-1)--(\x-2,\y-1)--cycle;
|
||
\draw (\x+1,\y) node[aallele]{A};
|
||
\draw (\x+2,\y) node[ballele]{G};
|
||
\gseg{\x}{2}{\y}{0.2}{0.5}{mseg}{1.5}{0}{maternal};
|
||
\gseg{\x+4}{0}{\y}{0.2}{0.5}{vseg}{0.5}{0.5}{variant};
|
||
\draw (\x+7,\y) node[aallele]{T};
|
||
\gseg{\x+6}{1}{\y}{0.2}{0.5}{mseg}{0}{0}{maternal};
|
||
\gseg{\x+9}{0}{\y}{0.2}{0.5}{vseg}{0.5}{0.5}{variant};
|
||
\draw (\x+12,\y) node[aallele]{C};
|
||
\gseg{\x+11}{1}{\y}{0.2}{0.5}{mseg}{0}{1}{maternal};
|
||
\draw (\x+1,\y-0.5) node[ballele]{T};
|
||
\draw (\x+2,\y-0.5) node[aallele]{C};
|
||
\draw (\x+3,\y-0.5) node[aallele]{T};
|
||
\draw (\x+4,\y-0.5) node[ballele]{A};
|
||
\gseg{\x}{4}{\y-0.5}{0.2}{0.5}{pseg}{1.5}{1}{paternal};
|
||
}
|
||
|
||
\newcommand{\tcelltwo}[2]{%
|
||
\pgfmathsetmacro{\x}{#1}
|
||
\pgfmathsetmacro{\y}{#2}
|
||
%\node [maternal] at (\x+8, \y) {M};
|
||
%\node [maternal] at (\x+8, \y-0.5) {M};
|
||
%\node [paternal] at (\x+8, \y-1) {P};
|
||
\draw[btcell](\x-2,\y+0.5)--(\x+7,\y+0.5)--
|
||
(\x+7,\y-1.5)--(\x-2,\y-1.5)--cycle;
|
||
\draw (\x+1,\y) node[aallele]{A};
|
||
\draw (\x+2,\y) node[ballele]{G};
|
||
\draw (\x+3,\y) node[aallele]{T};
|
||
\draw (\x+4,\y) node[aallele]{C};
|
||
\gseg{\x}{4}{\y}{0.2}{0.5}{mseg}{1.5}{1}{maternal};
|
||
\draw (\x+1,\y-0.5) node[aallele]{A};
|
||
\draw (\x+2,\y-0.5) node[ballele]{G};
|
||
\draw (\x+3,\y-0.5) node[aallele]{T};
|
||
\draw (\x+4,\y-0.5) node[ballele]{G};
|
||
\gseg{\x}{4}{\y-0.5}{0.2}{0.5}{mseg}{1.5}{1}{maternal};
|
||
\draw (\x+1,\y-1) node[ballele]{T};
|
||
\draw (\x+2,\y-1) node[aallele]{C};
|
||
\draw (\x+3,\y-1) node[aallele]{T};
|
||
\draw (\x+4,\y-1) node[ballele]{A};
|
||
\gseg{\x}{4}{\y-1}{0.2}{0.5}{pseg}{1.5}{1}{paternal};
|
||
}
|
||
|
||
\newcommand{\tcellfive}[2]{%
|
||
\pgfmathsetmacro{\x}{#1}
|
||
\pgfmathsetmacro{\y}{#2}
|
||
%\node [maternal] at (\x+8, \y) {M};
|
||
%\node [maternal] at (\x+8, \y-0.5) {M};
|
||
%\node [paternal] at (\x+8, \y-1) {P};
|
||
\draw[btcell](\x-2,\y+0.5)--(\x+9.5,\y+0.5)--
|
||
(\x+9.5,\y-1.5)--(\x-2,\y-1.5)--cycle;
|
||
\draw (\x+1,\y) node[aallele]{A};
|
||
\draw (\x+2,\y) node[ballele]{G};
|
||
\draw (\x+3,\y) node[aallele]{T};
|
||
\draw (\x+4,\y) node[aallele]{C};
|
||
\gseg{\x}{4}{\y}{0.2}{0.5}{mseg}{1.5}{1}{maternal};
|
||
\draw (\x+1,\y-0.5) node[aallele]{A};
|
||
\draw (\x+2,\y-0.5) node[ballele]{G};
|
||
\draw (\x+3,\y-0.5) node[aallele]{T};
|
||
\draw (\x+4,\y-0.5) node[aallele]{C};
|
||
\gseg{\x}{4}{\y-0.5}{0.2}{0.5}{mseg}{1.5}{1}{maternal};
|
||
\draw (\x+1,\y-1) node[ballele]{T};
|
||
\gseg{\x}{1}{\y-1}{0.2}{0.5}{pseg}{1.5}{0}{paternal};
|
||
\draw (\x+4.5,\y-1) node[ballele]{A};
|
||
\draw (\x+5.5,\y-1) node[aallele]{T};
|
||
\draw (\x+6.5,\y-1) node[aallele]{C};
|
||
\gsegr{\x+3.5}{3}{\y-1}{0.2}{0.5}{pseg}{0.5}{1.5}{paternal};
|
||
}
|
||
|
||
\newcommand{\theVector}[1]{\bm{#1}}
|
||
\newcommand{\theMatrix}[1]{\mathbb{#1}}
|
||
\newcommand{\theSet}[1]{\mathcal{#1}}
|
||
\newcommand{\theDirected}[1]{{\overrightarrow{#1}}}
|
||
\newcommand{\theUndirected}[1]{{\overline{#1}}}
|
||
\newcommand{\theNetwork}[1]{\mathscr{#1}}
|
||
\newcommand{\theNode}[1]{{\text{#1}}}
|
||
\newcommand{\theDirectedEdge}[2]{{\overrightarrow{{#1}{#2}}}}
|
||
\newcommand{\theUndirectedEdge}[2]{{\overline{{#1}{#2}}}}
|
||
|
||
\def\cmd#1{\cs{\expandafter\cmd@to@cs\string#1}}
|
||
\def\cmd@to@cs#1#2{\char\number`#2\relax}
|
||
\DeclareRobustCommand\cs[1]{\texttt{\char`\\#1}}
|
||
|
||
\endinput
|
||
%%
|
||
%% End of file `examples/hitbook/chinese/hithesis.sty'.
|