├── README.md ├── ctex-fontset-local.def ├── data ├── abstract.tex ├── achievements.tex ├── acknowledgement.tex ├── appendixA.tex ├── appendixB.tex ├── chapter01.tex ├── chapter02.tex ├── chapter03.tex ├── chapter04.tex ├── chapter05.tex ├── chapter06.tex ├── cover.tex └── references.tex ├── figures └── logo │ ├── ujs.pdf │ ├── ujs.tif │ └── ujslogo.pdf ├── fonts ├── FandolHei-Bold.otf ├── FandolSong-Bold.otf ├── simfang.ttf ├── simhei.ttf ├── simkai.ttf ├── simsun.ttc ├── times.ttf ├── timesbd.ttf ├── timesbi.ttf └── timesi.ttf ├── gbt7714-2005-numerical.bst ├── main.pdf ├── main.tex ├── reference.bib ├── ujsthesis.cls └── 博士模板.doc /README.md: -------------------------------------------------------------------------------- 1 | # 使用说明 2 | --- 3 | # *使用本模板前,请先和导师确认是否可以使用Latex,部分导师只接受Word排版;注意:Latex转Word会存在问题,请慎重! 4 | --- 5 | # UJS_Phdthesis-20240124修订说明(By [Chen Xiaotian](https://github.com/xtc-chen)) 6 | --- 7 | + 修复了高版本texlive中newtx宏报错问题,原来的模板中newtx宏包和Times New Roman字体冲突,目前选择了其他字体进行替换;具体命令可以在cls文件中查看。 8 | + 根据部分同学的要求在目录前增加了表目录和图目录;如不需要可以删除。 9 | + 部分同学有附录的需求,所以在文章的最后加入了附录A和附录B;如不需要可以删除。 10 | 11 | # 江苏大学博士研究生学位论文LaTeX模板 12 | --- 13 | > ### 非官方版本,不保证能够完全满足最终论文提交等要求,已经尽力完善! 14 | 15 | 本项目为[江苏大学](https://www.ujs.edu.cn/)**博士**研究生学位论文UJS_phdthesis模板,论文样式参考[2022年4月江苏大学研究生院发布的博士学论模板](https://yjsy.ujs.edu.cn/info/1273/13655.htm)。 16 | >[2025年1月江苏大学研究生院发布最新的博士学论模板,本人还未进行对比,如果有明显区别,请联系我!](https://yjsy.ujs.edu.cn/info/1277/30735.htm) 17 | 18 | 19 | 本项目基于[ctexbook](https://ctan.org/pkg/ctex),以及前人的基础进行修改。 20 | 21 | # 文件列表及说明 22 | --- 23 | ``` 24 | UJS_Phdthesis 25 | |- ujsthesis.cls // LaTeX宏模板文件 26 | |- main.tex // LaTeX主模板 27 | |- main.pdf // LaTeX模板 28 | |- reference.bib // LaTeX模板中的参考文献文件 29 | |- gbt7714-2005-numerical.bst // 国标参考文献BibTeX样式文件2005版 30 | |- figures // 论文图片文件夹 31 | |- figures/logo // 江苏大学logo文件 32 | |- data // 每一章的tex文件 33 | |- fonts // 字体文件夹 34 | ``` 35 | 36 | # 我的编译环境 37 | + Windows11 38 | + Texstudio 4.7.2 39 | + Texlive2023(2023以下版本皆可;如有CTex,需卸载后再装Texlive) 40 | + 采用xelatex编译 41 | 42 | # 已知问题汇总 43 | --- 44 | + Q:已有同学使用了较高版本的Texlive2022进行编译。会出现找不到字体的错误,原因是后续的texlive中newtx宏包有点不太一样。 45 | 46 | A: 2024年01月23日,在各位同学的反馈和帮助下已经顺利解决了newtx宏包的冲突问题,具体修订记录在cls文件可以查看;目前在texlive2023上已经可以正常编译。 47 | 48 | + Q:可以使用在线编译吗? 49 | 50 | A: 本人没有尝试过在线编译,有同学尝试过[Texpage](https://www.texpage.com/) 编译,貌似效果还不错。个人建议还是本地编译比较稳妥,且编译速度快。 51 | 52 | + Q:引用文献的BibTeX文件可以从哪里获取? 53 | 54 | A:几乎任何学术文献库都会提供BibTeX格式的引用数据。在引用量不大的情况下,可以去百度学术或者谷歌学术进行导出。 55 | 56 | + Q:什么样的图片可以插入? 57 | 58 | A:主流格式如:png .jpg都支持。建议保存为.pdf格式,编译速度会加快,且.pdf为矢量图格式,排版更好看。 59 | 60 | + Q:Latex的表格怎么弄? 61 | 62 | A:可以尝试使用Latex表格在线制作:https://www.latex-tables.com/ or https://www.tablesgenerator.com/ 63 | 64 | # 建议及问题反馈 65 | --- 66 | + E-mai: chenxtphil@163.com 67 | 68 | # QQ交流群:667981632 69 | 70 | # 致谢 71 | --- 72 | 感谢[Haixing Hu](https://github.com/Haixing-Hu)提供的2005版参考文献著录BibTeX样式[GBT7714-2005](https://github.com/Haixing-Hu/GBT7714-2005-BibTeX-Style),为本项目LaTeX模板的形成提供了很大的帮助。 73 | 74 | # 最后 75 | --- 76 | + UJS_phdthesis是为了帮助江苏大学博士毕业生撰写毕业论文而编写的LaTeX论文模板(博士论文工作量大、公式多)。但其前提是用户已经能处理一般的LaTeX文档,并对BibTeX有一定了解,如果你从来没有接触过LaTeX,建议先学习相关基础知识。磨刀不误砍柴工,一定的基础有助你更好地使用模板。 77 | + 由于个人水平有限,虽然现在的这个版本基本上满足了学校的要求,但难免存在不足之处,欢迎大家积极反馈,更希望江苏大学LaTeX爱好者能一同完善此模板,让更多同学受益。愿此模板能够让大家喜欢并给予大家帮助! 78 | + 修改不易,如果能帮助到大家,欢迎打赏,谢谢! 79 | 80 | Your Image Description 81 | 82 | *** 83 | 84 | By [Chen Xiaotian](https://github.com/xtc-chen) 85 | -------------------------------------------------------------------------------- /ctex-fontset-local.def: -------------------------------------------------------------------------------- 1 | \ProvidesExplFile{ctex-fontset-local.def}{\ExplFileDate}{2.4.14}{\ExplFileDescription} 2 | 3 | 4 | \setmainfont[ 5 | Path = fonts/, 6 | BoldFont = timesbd.ttf, 7 | ItalicFont = timesi.ttf, 8 | BoldItalicFont = timesbi.ttf 9 | ]{times.ttf} 10 | 11 | 12 | \setCJKmainfont[ 13 | Path = fonts/, 14 | BoldFont = simhei.ttf, 15 | ItalicFont = simkai.ttf 16 | ]{simsun.ttc} 17 | \setCJKsansfont[Path = fonts/]{simhei.ttf} 18 | \setCJKmonofont[Path = fonts/]{simfang.ttf} 19 | 20 | 21 | \setCJKfamilyfont {zhsong} [Path = fonts/, BoldFont = FandolSong-Bold.otf] {simsun.ttc} 22 | \setCJKfamilyfont {zhhei} [Path = fonts/, BoldFont = FandolHei-Bold.otf] {simhei.ttf} 23 | \setCJKfamilyfont {zhfs} [Path = fonts/] {simfang.ttf} 24 | \setCJKfamilyfont {zhkai} [Path = fonts/] {simkai.ttf} 25 | 26 | \NewDocumentCommand \songti {} {\CJKfamily {zhsong}} 27 | \NewDocumentCommand \heiti {} {\CJKfamily {zhhei}} 28 | \NewDocumentCommand \fangsong {} {\CJKfamily {zhfs}} 29 | \NewDocumentCommand \kaishu {} {\CJKfamily {zhkai}} 30 | 31 | \newcommand{\mycite}[1]{\scalebox{1.4}[1.4]{\raisebox{-0.65ex}{\cite{#1}}}} 32 | 33 | 34 | \def\cblue{\textcolor{blue}}%black 35 | \def\cred{\textcolor{red}} 36 | 37 | \def\tr{\text{tr}} 38 | \def\col{\text{col}} 39 | \def\diag{\text{diag}} -------------------------------------------------------------------------------- /data/abstract.tex: -------------------------------------------------------------------------------- 1 | \setlength{\headheight}{13pt} 2 | \cabstract{ 3 | 4 | }%中文摘要内容 5 | \ckeywords{ 6 | 7 | }%中文摘要关键词 8 | 9 | \eabstract{ 10 | 11 | }%英文摘要内容 12 | \ekeywords{ 13 | 14 | 15 | }%英文摘要关键词 16 | 17 | \makeabstract{} 18 | -------------------------------------------------------------------------------- /data/achievements.tex: -------------------------------------------------------------------------------- 1 | \achievements{ 2 | 1.在学期间发表的学术论文及其他科研成果 3 | 学术论文应为已正式发表和已有正式录用函的论文,其他科研成果主要包括科研获奖、申请专利、出版专著及在学期间参加的科研项目等,应分类后按时间顺序列出。 4 | 5 | \begin{enumerate}[label={[\arabic*]}] 6 | \item 7 | \item 8 | \item 9 | \end{enumerate} 10 | } 11 | -------------------------------------------------------------------------------- /data/acknowledgement.tex: -------------------------------------------------------------------------------- 1 | \acknowledgement{ 2 | 3 | } 4 | 5 | 6 | -------------------------------------------------------------------------------- /data/appendixA.tex: -------------------------------------------------------------------------------- 1 | \appendixA{ 2 | \section{附录要求} 3 | 如果要修改,请去ujsthesis.cls文件,查找附录A和附录B这两个关键词,修改为需要的标题。 4 | 5 | 1.学位论文的附录部分 6 | 附录部分作为学位论文主体的补充项目,并不是必须的。主要包括: 7 | 8 | (1) 正文内过分冗长的公式推导; 9 | 10 | (2) 为他人阅读方便所需辅助性数学工具或重复性的图、表; 11 | 12 | (3) 由于过分冗长而不宜在正文中出现的计算机程序清单。 13 | 14 | 附录的序号编排按附录A,附录B…编排,附录(例如附录B)内的顺序可按B.1,B.1.1,B.1.1.1的规律编排,其内图表按:图B1,图B2,表B1,表B2的规律编排。 15 | 16 | 附录可以单独装订,单独编排页码,封面上需注明论文正本的名称、作者等内容。如果附录与论文正本装在一起,则与正文连续编排页码。 17 | \begin{equation} 18 | \left(\begin{array}{l} 19 | x \\ 20 | y \\ 21 | \end{array}\right)=f\left[\left\{\begin{array}{l} 22 | \xi \\ 23 | \eta \\ 24 | \end{array}\right\}\right] 25 | \end{equation} 26 | 27 | \begin{figure}[!ht] 28 | \centering 29 | {\includegraphics[scale=0.1]{Figures/logo/ujslogo.pdf}} 30 | \bicaption{江苏大学}{Jiangsu University} 31 | \label{Jiangsu University1} 32 | \end{figure} 33 | 34 | \begin{table}[h] 35 | \centering 36 | \renewcommand{\arraystretch}{1.5} %调整段落行距 37 | \setlength{\tabcolsep}{15pt} %调整宽度 38 | \caption{Parameters of flux weakening of the three motors HPM} 39 | \begin{tabular}{cccc} 40 | \toprule[1.5pt] 41 | 参数 & 永磁同步电机 I & 永磁同步电机 II & 永磁同步电机 III \\ \midrule[0.75pt] 42 | 初始转矩 \(T_{ini}\) & 27.7Nm & 12.8Nm & 8.6Nm\\ 43 | 初始转矩 \(T_{ini}\) & 27.7Nm & 12.8Nm & 8.6Nm \\ \bottomrule[1.5pt] 44 | \end{tabular} 45 | \end{table} 46 | 47 | 48 | } 49 | -------------------------------------------------------------------------------- /data/appendixB.tex: -------------------------------------------------------------------------------- 1 | \appendixB{ 2 | 如果要修改,请去ujsthesis.cls文件,查找附录A和附录B这两个关键词,修改为需要的标题。 3 | 4 | 1.学位论文的页码编排 5 | 学位论文依次按照中文题名页、英文题名页、论文独创性声明、论文版权使用授权书、中文摘要、英文摘要、目录、图表清单(必要时)、注释表(必要时)、引言(或绪论)、正文、结论、参考文献、致谢、在学期间发表的学术论文及其他科研成果、附录(必要时)的顺序编排。中文摘要页至注释表页用大写罗马数字连续编排页码;引言(或绪论)页至附录页用阿拉伯数字连续编排页码。页码位于页脚外侧。 6 | 学位论文的页眉从中文摘要开始,采用五号宋体字居中书写,奇数页写“江苏大学博(或硕)士学位论文”,偶数页写学位论文的题目。 7 | 8 | 2.学位论文的排版打印与装订 9 | 学位论文以A4(210×297mm)纸页面排版,双面打印。每一页的上方(天头)和左侧应分别留边25mm以上,下方(地脚)和右侧(切口)应分别留边20mm以上,用学校统一印制的学位论文封面装订成册。 10 | 本要求由研究生院负责解释。 11 | \begin{equation} 12 | \left(\begin{array}{l} 13 | x \\ 14 | y \\ 15 | \end{array}\right)=f\left[\left\{\begin{array}{l} 16 | \xi \\ 17 | \eta \\ 18 | \end{array}\right\}\right] 19 | \end{equation} 20 | 21 | \begin{figure}[!ht] 22 | \centering 23 | {\includegraphics[scale=0.1]{Figures/logo/ujslogo.pdf}} 24 | \bicaption{江苏大学}{Jiangsu University} 25 | \label{Jiangsu University2} 26 | \end{figure} 27 | 28 | 29 | \begin{table}[h] 30 | \centering 31 | \renewcommand{\arraystretch}{1.5} %调整段落行距 32 | \setlength{\tabcolsep}{15pt} %调整宽度 33 | \caption{Parameters of flux weakening of the three motors HPM} 34 | \begin{tabular}{cccc} 35 | \toprule[1.5pt] 36 | 参数 & 永磁同步电机 I & 永磁同步电机 II & 永磁同步电机 III \\ \midrule[0.75pt] 37 | 初始转矩 \(T_{ini}\) & 27.7Nm & 12.8Nm & 8.6Nm\\ 38 | 初始转矩 \(T_{ini}\) & 27.7Nm & 12.8Nm & 8.6Nm \\ \bottomrule[1.5pt] 39 | \end{tabular} 40 | \end{table} 41 | } 42 | -------------------------------------------------------------------------------- /data/chapter01.tex: -------------------------------------------------------------------------------- 1 | \chapter{绪论} 2 | 3 | \section{图表} 4 | \subsection{图} 5 | 图应有图号、图题及必要的说明,图中标注一律用英文,图文说明用中文。图应具有“自明性”,即只看图、图题而不阅读正文,就可以理解图意。切忌与表重复。图位于文中表述之后。 6 | 7 | 图号由“图”和阿拉伯数字组成,阿拉伯数字由前后两部分组成,中间用“.”号分开,前部分数字表示图所在章的序号,后部分数字表示图在该章的序号。例如:“图4.3”,它表示第四章第三个图。 8 | 9 | 图题采用中英文对照,中文用5号楷体,英文用5号字。图题置于图号之后,图号及图题置于图下方居中位置。 10 | 11 | 引用图应在图题右上角标出文献来源。 12 | 13 | 曲线图的纵横坐标必须标注“量、标准规定符号、单位”,此三者只有在不必要标明(如无量纲等)的情况下方可省略。坐标上标注的量的符号和缩略词必须与正文中一致。 14 | 15 | 照片图要求主题和主要显示部分的轮廓鲜明,便于制版。如用放大缩小的复制品,必须清晰,反差适中。照片上要有表示目的物尺寸的标度。 16 | 17 | 绘图必须工整、清楚、规范,其中机械零件图按机械制图规格要求,示意图应能清楚反映图示内容。 18 | 19 | \begin{figure}[!ht] 20 | \centering 21 | {\includegraphics[scale=0.1]{Figures/logo/ujslogo.pdf}} 22 | \bicaption{江苏大学}{Jiangsu University} 23 | \label{Jiangsu University} 24 | \end{figure} 25 | 26 | \subsection{表} 27 | 28 | 表应有表号、表题或必要的说明,表也应有“自明性”。表的编排尽可能按内容(或测试项目)由左至右横排、数据依序竖排的格式安排,表的各栏应标明量纲、单位或标准规定的符号,只有在无必要的情况下方可省略。表内不宜用“同上”、“同左”、“‥”或类似的词及符号,表内空白表示“无此项”或“未测”。 29 | 30 | 表号的编写方法与图号相同,例如“表2.6”,它表示第二章第六个表。 31 | 32 | 表题置于表号之后,表号及表题置于表上方居中位置。 33 | 34 | 如某个表需要转页接排,在随后的各页上要重复表号,表号后跟表题(可省略)或跟“(续)”,如表1.2(续)。续表均要重复表的编排。 35 | 图、表若需注释,用“(注:……)”(五号楷体)表示,放在相应图或表格下方。 36 | 37 | \begin{table*}[!ht] 38 | \centering 39 | \bicaption{文献中A处的百分比误差}{Percentage error at A} \label{rotationalframe} 40 | \scalebox{0.55}{ 41 | \begin{tabular}{lccccccccccc} 42 | \toprule[1.5pt] 43 | Load & \multicolumn{2}{c}{$\delta_{p}=\delta_{q}=\delta_{r}=0$} & & \multicolumn{2}{c}{$\delta_{p}=1.0$} & & \multicolumn{2}{c}{$\delta_{q}=2.0$} & & \multicolumn{2}{c}{$\delta_{r}=3.0$} \tabularnewline 44 | \cline{2-3} \cline{5-6} \cline{8-9} \cline{11-12} 45 | & AAAAAAAA & BBBBBBBB & & AAAAAAAA & BBBBBBBB & & AAAAAAAA & BBBBBBBB & & AAAAAAAA & BBBBBBBB \rule{0pt}{15pt} \tabularnewline 46 | \midrule[0.75pt] 47 | 0 & -2 & −2 & & -3 & -3 & & −4 & −4 & & −5 & −5 \tabularnewline 48 | \bottomrule[1.5pt] 49 | \end{tabular}} 50 | \end{table*} 51 | 52 | \begin{table}[h] 53 | \centering 54 | \renewcommand{\arraystretch}{1.5} %调整段落行距 55 | \setlength{\tabcolsep}{15pt} %调整宽度 56 | \bicaption{HPM}{Parameters of flux weakening of the three motors HPM} 57 | \begin{tabular}{cccc} 58 | \toprule[1.5pt] 59 | 参数 & 永磁同步电机 I & 永磁同步电机 II & 永磁同步电机 III \\ \midrule[0.75pt] 60 | 初始转矩 \(T_{ini}\) & 27.7Nm & 12.8Nm & 8.6Nm\\ 61 | 初始转矩 \(T_{ini}\) & 27.7Nm & 12.8Nm & 8.6Nm \\ \bottomrule[1.5pt] 62 | \end{tabular} 63 | \end{table} 64 | 65 | 66 | \subsection{公式} 67 | 公式书写应在文中另起一行,较长的公式尽可能在等号处回行,或者在“+”、“-”等符号处回行。公式中分数线的横线长短要分清,主要的横线应与等号取平。公式后应注明序号,该序号按章顺序编排,用括弧括起来写在右边行末,其间不加虚线。不得使用“*”等其它符号标记公式序号。 68 | 例如 69 | 70 | \begin{equation}\label{transformation} 71 | \left(\begin{array}{l} 72 | x \\ 73 | y \\ 74 | \end{array}\right)=f\left[\left\{\begin{array}{l} 75 | \xi \\ 76 | \eta \\ 77 | \end{array}\right\}\right] 78 | \end{equation} 79 | 80 | \begin{align} 81 | \label{eq:error1} 82 | \hatvpsi_k(n) &= \vpsi_k(n) - \vw^\star(n) \\ 83 | \label{eq:error2} 84 | \hatvw_k(n) &= \vw_k(n) - \vw^\star(n) 85 | \end{align} 86 | 87 | 88 | \begin{equation}\label{test} 89 | I=\frac VR 90 | \end{equation} 91 | 92 | 引用此公式时用式\eqref{test}。 93 | 94 | \subsection{算法} 95 | 96 | 算法\cite{cottrell2009} 97 | \begin{enumerate} 98 | \item[1.] 99 | \item[2.] 100 | \item[3.] 101 | \end{enumerate} 102 | 103 | 104 | \begin{algorithm}[!ht] 105 | \caption{算法流程图名字} %算法的名字 106 | \label{algorithm} 107 | \begin{algorithmic}[!h] 108 | \State {\textbf{初始化:}} % \State 后写一般语句 109 | \For{ $n=1,2,\ldots,N$,} % For 语句,需要和EndFor对应 110 | \State {\textbf{开始步骤:}}  111 | \For{每个节点 $k=1,2,\ldots,K$,} % For 语句,需要和EndFor对应 112 | \EndFor 113 | \State {\textbf{合并步骤:}}  114 | \For{每个节点 $k=1,2,\ldots,K$,} % For 语句,需要和EndFor对应 115 | \State{ $(n+1) $} 116 | \EndFor 117 | \EndFor 118 | \end{algorithmic} 119 | \end{algorithm} 120 | 121 | \begin{remark} 122 | 全部 123 | 都是 124 | 注释 125 | \end{remark} 126 | 127 | \begin{prof} 128 | 全部 129 | 都是 130 | 证明 131 | \end{prof} 132 | \begin{theorem} 133 | 全部 134 | 都是 135 | 定理 136 | \end{theorem} 137 | \begin{lemma} 138 | 全部 139 | 都是 140 | 引理 141 | \end{lemma} 142 | \begin{axiom} 143 | 全部 144 | 都是 145 | 公理 146 | \end{axiom} 147 | \begin{proposition} 148 | 全部 149 | 都是 150 | 命题 151 | \end{proposition} 152 | \begin{definition} 153 | 全部 154 | 都是 155 | 定义 156 | \end{definition} 157 | \begin{assumption} 158 | 全部 159 | 都是 160 | 假设 161 | \end{assumption} 162 | 163 | \begin{corollary} 164 | 全部 165 | 都是 166 | 推论 167 | \end{corollary} 168 | \begin{exercise} 169 | 全部 170 | 都是 171 | 练习 172 | \end{exercise} 173 | 174 | \begin{problem} 175 | 全部 176 | 都是 177 | 问题 178 | \end{problem} 179 | \begin{conjecture} 180 | 全部 181 | 都是 182 | 猜想 183 | \end{conjecture} 184 | 185 | 186 | 187 | -------------------------------------------------------------------------------- /data/chapter02.tex: -------------------------------------------------------------------------------- 1 | \chapter{} 2 | 3 | \section{} 4 | 5 | \subsection{} 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /data/chapter03.tex: -------------------------------------------------------------------------------- 1 | 2 | \chapter{} 3 | 4 | 5 | \section{} 6 | 7 | 8 | 9 | \subsection{} 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /data/chapter04.tex: -------------------------------------------------------------------------------- 1 | \chapter{} 2 | 3 | 4 | \section{引言} 5 | 6 | \begin{enumerate} 7 | \item[1.] 8 | \item[2.] 9 | \item[3.] 10 | \end{enumerate} 11 | 12 | 13 | \subsection{} 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | -------------------------------------------------------------------------------- /data/chapter05.tex: -------------------------------------------------------------------------------- 1 | \chapter{} 2 | 3 | \section{} 4 | -------------------------------------------------------------------------------- /data/chapter06.tex: -------------------------------------------------------------------------------- 1 | \chapter{总结与展望} 2 | %\label{cha:总结与展望} 3 | \section{总结} 4 | \section{展望} 5 | 6 | 学位论文的撰写应本着严谨求实的科学态度,凡有引用他人成果之处,均应按论文中所引用的顺序列于论文结论后,不得放在各章之后。在论文正文中引用了参考文献的部位,须用上标标注[参考文献序号]。 7 | 8 | 引用文献的作者不超过3位时须全部列出,超过时列前3位,后加“等”字或“et al.”。参考文献的著录内容应齐全,应符合《文后参考文献著录规则》(GB/T7714-2005)。几种主要参考文献著录表的格式为: 9 | 10 | 连续出版物:[序号]作者.文题.刊名,年,卷号(期号):起~止页码. 11 | 12 | 专 译 著:[序号]作者.书名(译者).出版地:出版者,出版年:起~止页码. 13 | 14 | 论 文 集:[序号]作者.文题.编者,文集名,出版地:出版者,出版年:起~止页码. 15 | 16 | 学位论文:[序号]姓名.文题,[××学位论文].授予单位所在地:授予单位,授予年. 17 | 18 | 专 利:[序号]申请者.专利名,国名,专利文献种类,专利号,出版日期. 19 | 20 | 技术标准:[序号]发布单位,技术标准代号,技术标准名称,出版地:出版者,出版日期. 21 | -------------------------------------------------------------------------------- /data/cover.tex: -------------------------------------------------------------------------------- 1 | \ctitle{多元******的构建及其分离/分析环境水样中****的研究} 2 | \etitle{RESEARCH ON THE CONSTRUCTION ******* ON THE SEPARATION AND ANALYSIS OF ANTIBIOTIC RESIDUES IN ****} 3 | \classnumber{**} %分类号 4 | \classified{***} %密级 5 | \udc{****} %UDC 6 | \thesisnumber{10299******} %编号 7 | \advisor{倪} %导师姓名 8 | \jobtitle{教授} %导师职称 9 | \englishadvisor{Prof. Liang Ni} %导师英文 10 | \author{朱} %作者姓名 11 | \englishauthor{zhu} %作者英文姓名 12 | \degree{博士} 13 | \major{环境科学与工程} 14 | \englishmajor{Environmental science and engineering} 15 | \defensedate{2022年4月11号} 16 | \defenseenglishdate{April,2022} 17 | \institutiondate{江苏大学\quad 2022年4月12号} 18 | \submissiondate{2022年4月13号} 19 | 20 | \maketitle{} 21 | %\myemptypage %\myemptypage表示空白页,在打印稿时插入空白页,方便双面打印 22 | \makeeninnertitle{} 23 | %\myemptypage %\myemptypage表示空白页,在打印稿时插入空白页,方便双面打印 24 | \makeright{} 25 | %\myemptypage %\myemptypage表示空白页,在打印稿时插入空白页,方便双面打印 26 | -------------------------------------------------------------------------------- /data/references.tex: -------------------------------------------------------------------------------- 1 | {\zihao{5} % 设置5号字体 2 | \bibliographystyle{gbt7714-2005-numerical} % 使用GB/T7714 3 | \phantomsection{} % 可以避免PDF标签超链接不正确的现象 4 | \addcontentsline{toc}{chapter}{\bibname} % 将参考文献添加到目录中 5 | \setstretch{1.15} % 设置参考文献内部的间距 6 | \setlength{\bibsep}{0ex} % 设置参考文献之间的间距 7 | \bibliography{reference}} % 通过reference.bib文件添加参考书目 8 | -------------------------------------------------------------------------------- /figures/logo/ujs.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xtc-chen/UJS_Phdthesis/84e53a66289142f62d057cc70a26f32fabbac486/figures/logo/ujs.pdf -------------------------------------------------------------------------------- /figures/logo/ujs.tif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xtc-chen/UJS_Phdthesis/84e53a66289142f62d057cc70a26f32fabbac486/figures/logo/ujs.tif -------------------------------------------------------------------------------- /figures/logo/ujslogo.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xtc-chen/UJS_Phdthesis/84e53a66289142f62d057cc70a26f32fabbac486/figures/logo/ujslogo.pdf -------------------------------------------------------------------------------- /fonts/FandolHei-Bold.otf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xtc-chen/UJS_Phdthesis/84e53a66289142f62d057cc70a26f32fabbac486/fonts/FandolHei-Bold.otf -------------------------------------------------------------------------------- /fonts/FandolSong-Bold.otf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xtc-chen/UJS_Phdthesis/84e53a66289142f62d057cc70a26f32fabbac486/fonts/FandolSong-Bold.otf -------------------------------------------------------------------------------- /fonts/simfang.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xtc-chen/UJS_Phdthesis/84e53a66289142f62d057cc70a26f32fabbac486/fonts/simfang.ttf -------------------------------------------------------------------------------- /fonts/simhei.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xtc-chen/UJS_Phdthesis/84e53a66289142f62d057cc70a26f32fabbac486/fonts/simhei.ttf -------------------------------------------------------------------------------- /fonts/simkai.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xtc-chen/UJS_Phdthesis/84e53a66289142f62d057cc70a26f32fabbac486/fonts/simkai.ttf -------------------------------------------------------------------------------- /fonts/simsun.ttc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xtc-chen/UJS_Phdthesis/84e53a66289142f62d057cc70a26f32fabbac486/fonts/simsun.ttc -------------------------------------------------------------------------------- /fonts/times.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xtc-chen/UJS_Phdthesis/84e53a66289142f62d057cc70a26f32fabbac486/fonts/times.ttf -------------------------------------------------------------------------------- /fonts/timesbd.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xtc-chen/UJS_Phdthesis/84e53a66289142f62d057cc70a26f32fabbac486/fonts/timesbd.ttf -------------------------------------------------------------------------------- /fonts/timesbi.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xtc-chen/UJS_Phdthesis/84e53a66289142f62d057cc70a26f32fabbac486/fonts/timesbi.ttf -------------------------------------------------------------------------------- /fonts/timesi.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xtc-chen/UJS_Phdthesis/84e53a66289142f62d057cc70a26f32fabbac486/fonts/timesi.ttf -------------------------------------------------------------------------------- /gbt7714-2005-numerical.bst: -------------------------------------------------------------------------------- 1 | %% 2 | %% This is file `gbt7714-2005-numerical.bst', 3 | %% generated with the docstrip utility. 4 | %% 5 | %% The original source files were: 6 | %% 7 | %% gbt7714.dtx (with options: `2005,numerical') 8 | %% ------------------------------------------------------------------- 9 | %% GB/T 7714 BibTeX Style 10 | %% https://github.com/zepinglee/gbt7714-bibtex-style 11 | %% Version: 2022/03/21 v2.1.4 12 | %% ------------------------------------------------------------------- 13 | %% Copyright (C) 2016--2022 by Zeping Lee 14 | %% ------------------------------------------------------------------- 15 | %% This file may be distributed and/or modified under the 16 | %% conditions of the LaTeX Project Public License, either version 1.3c 17 | %% of this license or (at your option) any later version. 18 | %% The latest version of this license is in 19 | %% https://www.latex-project.org/lppl.txt 20 | %% and version 1.3c or later is part of all distributions of LaTeX 21 | %% version 2008 or later. 22 | %% ------------------------------------------------------------------- 23 | INTEGERS { 24 | citation.et.al.min 25 | citation.et.al.use.first 26 | bibliography.et.al.min 27 | bibliography.et.al.use.first 28 | uppercase.name 29 | terms.in.macro 30 | year.after.author 31 | period.after.author 32 | italic.book.title 33 | sentence.case.title 34 | link.title 35 | title.in.journal 36 | show.patent.country 37 | show.mark 38 | space.before.mark 39 | show.medium.type 40 | short.journal 41 | italic.journal 42 | bold.journal.volume 43 | show.missing.address.publisher 44 | space.before.pages 45 | only.start.page 46 | wave.dash.in.pages 47 | show.urldate 48 | show.url 49 | show.doi 50 | show.preprint 51 | show.note 52 | show.english.translation 53 | end.with.period 54 | } 55 | 56 | STRINGS { 57 | component.part.label 58 | } 59 | 60 | FUNCTION {load.config} 61 | { 62 | #2 'citation.et.al.min := 63 | #1 'citation.et.al.use.first := 64 | #4 'bibliography.et.al.min := 65 | #3 'bibliography.et.al.use.first := 66 | #0 'uppercase.name := 67 | #0 'terms.in.macro := 68 | #0 'year.after.author := 69 | #1 'period.after.author := 70 | #0 'italic.book.title := 71 | #1 'sentence.case.title := 72 | #0 'link.title := 73 | #1 'title.in.journal := 74 | #1 'show.patent.country := 75 | #1 'show.mark := 76 | #0 'space.before.mark := 77 | #1 'show.medium.type := 78 | "slash" 'component.part.label := 79 | #0 'short.journal := 80 | #0 'italic.journal := 81 | #0 'bold.journal.volume := 82 | #0 'show.missing.address.publisher := 83 | #1 'space.before.pages := 84 | #0 'only.start.page := 85 | #0 'wave.dash.in.pages := 86 | #1 'show.urldate := 87 | #1 'show.url := 88 | #0 'show.doi := 89 | #1 'show.preprint := 90 | #0 'show.note := 91 | #0 'show.english.translation := 92 | #1 'end.with.period := 93 | } 94 | 95 | ENTRY 96 | { address 97 | archivePrefix 98 | author 99 | booktitle 100 | date 101 | doi 102 | edition 103 | editor 104 | eprint 105 | eprinttype 106 | entrysubtype 107 | howpublished 108 | institution 109 | journal 110 | journaltitle 111 | key 112 | langid 113 | language 114 | location 115 | mark 116 | medium 117 | note 118 | number 119 | organization 120 | pages 121 | publisher 122 | school 123 | series 124 | shortjournal 125 | title 126 | translation 127 | translator 128 | url 129 | urldate 130 | volume 131 | year 132 | } 133 | { entry.lang entry.is.electronic is.pure.electronic entry.numbered } 134 | { label extra.label sort.label short.label short.list entry.mark entry.url } 135 | 136 | INTEGERS { output.state before.all mid.sentence after.sentence after.block after.slash } 137 | 138 | INTEGERS { lang.zh lang.ja lang.en lang.ru lang.other } 139 | 140 | INTEGERS { charptr len } 141 | 142 | FUNCTION {init.state.consts} 143 | { #0 'before.all := 144 | #1 'mid.sentence := 145 | #2 'after.sentence := 146 | #3 'after.block := 147 | #4 'after.slash := 148 | #3 'lang.zh := 149 | #4 'lang.ja := 150 | #1 'lang.en := 151 | #2 'lang.ru := 152 | #0 'lang.other := 153 | } 154 | 155 | FUNCTION {bbl.anonymous} 156 | { entry.lang lang.zh = 157 | { "佚名" } 158 | { "Anon" } 159 | if$ 160 | } 161 | 162 | FUNCTION {bbl.space} 163 | { entry.lang lang.zh = 164 | { "\ " } 165 | { " " } 166 | if$ 167 | } 168 | 169 | FUNCTION {bbl.and} 170 | { "" } 171 | 172 | FUNCTION {bbl.et.al} 173 | { entry.lang lang.zh = 174 | { "等" } 175 | { entry.lang lang.ja = 176 | { "他" } 177 | { entry.lang lang.ru = 178 | { "идр" } 179 | { "et~al." } 180 | if$ 181 | } 182 | if$ 183 | } 184 | if$ 185 | } 186 | 187 | FUNCTION {citation.and} 188 | { terms.in.macro 189 | { "{\biband}" } 190 | 'bbl.and 191 | if$ 192 | } 193 | 194 | FUNCTION {citation.et.al} 195 | { terms.in.macro 196 | { "{\bibetal}" } 197 | 'bbl.et.al 198 | if$ 199 | } 200 | 201 | FUNCTION {bbl.colon} { ": " } 202 | 203 | FUNCTION {bbl.pages.colon} 204 | { space.before.pages 205 | { ": " } 206 | { ":\allowbreak " } 207 | if$ 208 | } 209 | 210 | FUNCTION {bbl.wide.space} { "\ " } 211 | 212 | FUNCTION {bbl.slash} { "//\allowbreak " } 213 | 214 | FUNCTION {bbl.sine.loco} 215 | { entry.lang lang.zh = 216 | { "[出版地不详]" } 217 | { "[S.l.]" } 218 | if$ 219 | } 220 | 221 | FUNCTION {bbl.sine.nomine} 222 | { entry.lang lang.zh = 223 | { "[出版者不详]" } 224 | { "[s.n.]" } 225 | if$ 226 | } 227 | 228 | FUNCTION {bbl.sine.loco.sine.nomine} 229 | { entry.lang lang.zh = 230 | { "[出版地不详: 出版者不详]" } 231 | { "[S.l.: s.n.]" } 232 | if$ 233 | } 234 | 235 | FUNCTION {not} 236 | { { #0 } 237 | { #1 } 238 | if$ 239 | } 240 | 241 | FUNCTION {and} 242 | { 'skip$ 243 | { pop$ #0 } 244 | if$ 245 | } 246 | 247 | FUNCTION {or} 248 | { { pop$ #1 } 249 | 'skip$ 250 | if$ 251 | } 252 | 253 | STRINGS { x y } 254 | 255 | FUNCTION {contains} 256 | { 'y := 257 | 'x := 258 | y text.length$ 'len := 259 | x text.length$ len - #1 + 'charptr := 260 | { charptr #0 > 261 | x charptr len substring$ y = not 262 | and 263 | } 264 | { charptr #1 - 'charptr := } 265 | while$ 266 | charptr #0 > 267 | } 268 | 269 | STRINGS { s t } 270 | 271 | FUNCTION {output.nonnull} 272 | { 's := 273 | output.state mid.sentence = 274 | { ", " * write$ } 275 | { output.state after.block = 276 | { add.period$ write$ 277 | newline$ 278 | "\newblock " write$ 279 | } 280 | { output.state before.all = 281 | 'write$ 282 | { output.state after.slash = 283 | { bbl.slash * write$ 284 | newline$ 285 | } 286 | { add.period$ " " * write$ } 287 | if$ 288 | } 289 | if$ 290 | } 291 | if$ 292 | mid.sentence 'output.state := 293 | } 294 | if$ 295 | s 296 | } 297 | 298 | FUNCTION {output} 299 | { duplicate$ empty$ 300 | 'pop$ 301 | 'output.nonnull 302 | if$ 303 | } 304 | 305 | FUNCTION {output.after} 306 | { 't := 307 | duplicate$ empty$ 308 | 'pop$ 309 | { 's := 310 | output.state mid.sentence = 311 | { t * write$ } 312 | { output.state after.block = 313 | { add.period$ write$ 314 | newline$ 315 | "\newblock " write$ 316 | } 317 | { output.state before.all = 318 | 'write$ 319 | { output.state after.slash = 320 | { bbl.slash * write$ } 321 | { add.period$ " " * write$ } 322 | if$ 323 | } 324 | if$ 325 | } 326 | if$ 327 | mid.sentence 'output.state := 328 | } 329 | if$ 330 | s 331 | } 332 | if$ 333 | } 334 | 335 | FUNCTION {output.check} 336 | { 't := 337 | duplicate$ empty$ 338 | { pop$ "empty " t * " in " * cite$ * warning$ } 339 | 'output.nonnull 340 | if$ 341 | } 342 | 343 | FUNCTION {fin.entry} 344 | { end.with.period 345 | 'add.period$ 346 | 'skip$ 347 | if$ 348 | write$ 349 | show.english.translation entry.lang lang.zh = and 350 | { ")" 351 | write$ 352 | } 353 | 'skip$ 354 | if$ 355 | newline$ 356 | } 357 | 358 | FUNCTION {new.block} 359 | { output.state before.all = 360 | 'skip$ 361 | { output.state after.slash = 362 | 'skip$ 363 | { after.block 'output.state := } 364 | if$ 365 | } 366 | if$ 367 | } 368 | 369 | FUNCTION {new.sentence} 370 | { output.state after.block = 371 | 'skip$ 372 | { output.state before.all = 373 | 'skip$ 374 | { output.state after.slash = 375 | 'skip$ 376 | { after.sentence 'output.state := } 377 | if$ 378 | } 379 | if$ 380 | } 381 | if$ 382 | } 383 | 384 | FUNCTION {new.slash} 385 | { output.state before.all = 386 | 'skip$ 387 | { component.part.label "slash" = 388 | { after.slash 'output.state := } 389 | { new.block 390 | component.part.label "in" = 391 | { entry.lang lang.en = 392 | { "In: " output 393 | write$ 394 | "" 395 | before.all 'output.state := 396 | } 397 | 'skip$ 398 | if$ 399 | } 400 | 'skip$ 401 | if$ 402 | } 403 | if$ 404 | } 405 | if$ 406 | } 407 | 408 | FUNCTION {new.block.checka} 409 | { empty$ 410 | 'skip$ 411 | 'new.block 412 | if$ 413 | } 414 | 415 | FUNCTION {new.block.checkb} 416 | { empty$ 417 | swap$ empty$ 418 | and 419 | 'skip$ 420 | 'new.block 421 | if$ 422 | } 423 | 424 | FUNCTION {new.sentence.checka} 425 | { empty$ 426 | 'skip$ 427 | 'new.sentence 428 | if$ 429 | } 430 | 431 | FUNCTION {new.sentence.checkb} 432 | { empty$ 433 | swap$ empty$ 434 | and 435 | 'skip$ 436 | 'new.sentence 437 | if$ 438 | } 439 | 440 | FUNCTION {field.or.null} 441 | { duplicate$ empty$ 442 | { pop$ "" } 443 | 'skip$ 444 | if$ 445 | } 446 | 447 | FUNCTION {emphasize} 448 | { duplicate$ empty$ 449 | { pop$ "" } 450 | { "\emph{" swap$ * "}" * } 451 | if$ 452 | } 453 | 454 | FUNCTION {format.btitle} 455 | { italic.book.title 456 | entry.lang lang.en = and 457 | 'emphasize 458 | 'skip$ 459 | if$ 460 | } 461 | 462 | INTEGERS { byte second.byte } 463 | 464 | INTEGERS { char.lang tmp.lang } 465 | 466 | STRINGS { tmp.str } 467 | 468 | FUNCTION {get.str.lang} 469 | { 'tmp.str := 470 | lang.other 'tmp.lang := 471 | #1 'charptr := 472 | tmp.str text.length$ #1 + 'len := 473 | { charptr len < } 474 | { tmp.str charptr #1 substring$ chr.to.int$ 'byte := 475 | byte #128 < 476 | { charptr #1 + 'charptr := 477 | byte #64 > byte #91 < and byte #96 > byte #123 < and or 478 | { lang.en 'char.lang := } 479 | { lang.other 'char.lang := } 480 | if$ 481 | } 482 | { tmp.str charptr #1 + #1 substring$ chr.to.int$ 'second.byte := 483 | byte #224 < 484 | { charptr #2 + 'charptr := 485 | byte #207 > byte #212 < and 486 | byte #212 = second.byte #176 < and or 487 | { lang.ru 'char.lang := } 488 | { lang.other 'char.lang := } 489 | if$ 490 | } 491 | { byte #240 < 492 | { charptr #3 + 'charptr := 493 | byte #227 > byte #234 < and 494 | { lang.zh 'char.lang := } 495 | { byte #227 = 496 | { second.byte #143 > 497 | { lang.zh 'char.lang := } 498 | { second.byte #128 > second.byte #132 < and 499 | { lang.ja 'char.lang := } 500 | { lang.other 'char.lang := } 501 | if$ 502 | } 503 | if$ 504 | } 505 | { byte #239 = 506 | second.byte #163 > second.byte #172 < and and 507 | { lang.zh 'char.lang := } 508 | { lang.other 'char.lang := } 509 | if$ 510 | } 511 | if$ 512 | } 513 | if$ 514 | } 515 | { charptr #4 + 'charptr := 516 | byte #240 = second.byte #159 > and 517 | { lang.zh 'char.lang := } 518 | { lang.other 'char.lang := } 519 | if$ 520 | } 521 | if$ 522 | } 523 | if$ 524 | } 525 | if$ 526 | char.lang tmp.lang > 527 | { char.lang 'tmp.lang := } 528 | 'skip$ 529 | if$ 530 | } 531 | while$ 532 | tmp.lang 533 | } 534 | 535 | FUNCTION {check.entry.lang} 536 | { author field.or.null 537 | title field.or.null * 538 | get.str.lang 539 | } 540 | 541 | STRINGS { entry.langid } 542 | 543 | FUNCTION {set.entry.lang} 544 | { "" 'entry.langid := 545 | language empty$ not 546 | { language 'entry.langid := } 547 | 'skip$ 548 | if$ 549 | langid empty$ not 550 | { langid 'entry.langid := } 551 | 'skip$ 552 | if$ 553 | entry.langid empty$ 554 | { check.entry.lang } 555 | { entry.langid "english" = entry.langid "american" = or entry.langid "british" = or 556 | { lang.en } 557 | { entry.langid "chinese" = 558 | { lang.zh } 559 | { entry.langid "japanese" = 560 | { lang.ja } 561 | { entry.langid "russian" = 562 | { lang.ru } 563 | { check.entry.lang } 564 | if$ 565 | } 566 | if$ 567 | } 568 | if$ 569 | } 570 | if$ 571 | } 572 | if$ 573 | 'entry.lang := 574 | } 575 | 576 | FUNCTION {set.entry.numbered} 577 | { type$ "patent" = 578 | type$ "standard" = or 579 | type$ "techreport" = or 580 | { #1 'entry.numbered := } 581 | { #0 'entry.numbered := } 582 | if$ 583 | } 584 | 585 | INTEGERS { nameptr namesleft numnames name.lang } 586 | 587 | FUNCTION {format.name} 588 | { "{vv~}{ll}{, jj}{, ff}" format.name$ 't := 589 | t "others" = 590 | { bbl.et.al } 591 | { t get.str.lang 'name.lang := 592 | name.lang lang.en = 593 | { t #1 "{vv~}{ll}{ f{~}}" format.name$ 594 | uppercase.name 595 | { "u" change.case$ } 596 | 'skip$ 597 | if$ 598 | t #1 "{, jj}" format.name$ * 599 | } 600 | { t #1 "{ll}{ff}" format.name$ } 601 | if$ 602 | } 603 | if$ 604 | } 605 | 606 | FUNCTION {format.names} 607 | { 's := 608 | #1 'nameptr := 609 | s num.names$ 'numnames := 610 | "" 611 | numnames 'namesleft := 612 | { namesleft #0 > } 613 | { s nameptr format.name bbl.et.al = 614 | numnames bibliography.et.al.min #1 - > nameptr bibliography.et.al.use.first > and or 615 | { ", " * 616 | bbl.et.al * 617 | #1 'namesleft := 618 | } 619 | { nameptr #1 > 620 | { namesleft #1 = bbl.and "" = not and 621 | { bbl.and * } 622 | { ", " * } 623 | if$ 624 | } 625 | 'skip$ 626 | if$ 627 | s nameptr format.name * 628 | } 629 | if$ 630 | nameptr #1 + 'nameptr := 631 | namesleft #1 - 'namesleft := 632 | } 633 | while$ 634 | } 635 | 636 | FUNCTION {format.key} 637 | { empty$ 638 | { key field.or.null } 639 | { "" } 640 | if$ 641 | } 642 | 643 | FUNCTION {format.authors} 644 | { author empty$ not 645 | { author format.names } 646 | { "empty author in " cite$ * warning$ 647 | "" 648 | } 649 | if$ 650 | } 651 | 652 | FUNCTION {format.editors} 653 | { editor empty$ 654 | { "" } 655 | { editor format.names } 656 | if$ 657 | } 658 | 659 | FUNCTION {format.translators} 660 | { translator empty$ 661 | { "" } 662 | { translator format.names 663 | entry.lang lang.zh = 664 | { translator num.names$ #3 > 665 | { "译" * } 666 | { ", 译" * } 667 | if$ 668 | } 669 | 'skip$ 670 | if$ 671 | } 672 | if$ 673 | } 674 | 675 | FUNCTION {format.full.names} 676 | {'s := 677 | #1 'nameptr := 678 | s num.names$ 'numnames := 679 | numnames 'namesleft := 680 | { namesleft #0 > } 681 | { s nameptr "{vv~}{ll}{, jj}{, ff}" format.name$ 't := 682 | t get.str.lang 'name.lang := 683 | name.lang lang.en = 684 | { t #1 "{vv~}{ll}" format.name$ 't := } 685 | { t #1 "{ll}{ff}" format.name$ 't := } 686 | if$ 687 | nameptr #1 > 688 | { 689 | namesleft #1 > 690 | { ", " * t * } 691 | { 692 | numnames #2 > 693 | { "," * } 694 | 'skip$ 695 | if$ 696 | t "others" = 697 | { " et~al." * } 698 | { " and " * t * } 699 | if$ 700 | } 701 | if$ 702 | } 703 | 't 704 | if$ 705 | nameptr #1 + 'nameptr := 706 | namesleft #1 - 'namesleft := 707 | } 708 | while$ 709 | } 710 | 711 | FUNCTION {author.editor.full} 712 | { author empty$ 713 | { editor empty$ 714 | { "" } 715 | { editor format.full.names } 716 | if$ 717 | } 718 | { author format.full.names } 719 | if$ 720 | } 721 | 722 | FUNCTION {author.full} 723 | { author empty$ 724 | { "" } 725 | { author format.full.names } 726 | if$ 727 | } 728 | 729 | FUNCTION {editor.full} 730 | { editor empty$ 731 | { "" } 732 | { editor format.full.names } 733 | if$ 734 | } 735 | 736 | FUNCTION {make.full.names} 737 | { type$ "book" = 738 | type$ "inbook" = 739 | or 740 | 'author.editor.full 741 | { type$ "collection" = 742 | type$ "proceedings" = 743 | or 744 | 'editor.full 745 | 'author.full 746 | if$ 747 | } 748 | if$ 749 | } 750 | 751 | FUNCTION {output.bibitem} 752 | { newline$ 753 | "\bibitem[" write$ 754 | label ")" * 755 | make.full.names duplicate$ short.list = 756 | { pop$ } 757 | { duplicate$ "]" contains 758 | { "{" swap$ * "}" * } 759 | 'skip$ 760 | if$ 761 | * 762 | } 763 | if$ 764 | "]{" * write$ 765 | cite$ write$ 766 | "}" write$ 767 | newline$ 768 | "" 769 | before.all 'output.state := 770 | } 771 | 772 | FUNCTION {change.sentence.case} 773 | { entry.lang lang.en = 774 | { "t" change.case$ } 775 | 'skip$ 776 | if$ 777 | } 778 | 779 | FUNCTION {add.link} 780 | { url empty$ not 781 | { "\href{" url * "}{" * swap$ * "}" * } 782 | { doi empty$ not 783 | { "\href{https://doi.org/" doi * "}{" * swap$ * "}" * } 784 | 'skip$ 785 | if$ 786 | } 787 | if$ 788 | } 789 | 790 | FUNCTION {format.title} 791 | { title empty$ 792 | { "" } 793 | { title 794 | sentence.case.title 795 | 'change.sentence.case 796 | 'skip$ 797 | if$ 798 | entry.numbered number empty$ not and 799 | { bbl.colon * 800 | type$ "patent" = show.patent.country and 801 | { address empty$ not 802 | { address * ", " * } 803 | { location empty$ not 804 | { location * ", " * } 805 | { entry.lang lang.zh = 806 | { "中国" * ", " * } 807 | 'skip$ 808 | if$ 809 | } 810 | if$ 811 | } 812 | if$ 813 | } 814 | 'skip$ 815 | if$ 816 | number * 817 | } 818 | 'skip$ 819 | if$ 820 | link.title 821 | 'add.link 822 | 'skip$ 823 | if$ 824 | } 825 | if$ 826 | } 827 | 828 | FUNCTION {tie.or.space.connect} 829 | { duplicate$ text.length$ #3 < 830 | { "~" } 831 | { " " } 832 | if$ 833 | swap$ * * 834 | } 835 | 836 | FUNCTION {either.or.check} 837 | { empty$ 838 | 'pop$ 839 | { "can't use both " swap$ * " fields in " * cite$ * warning$ } 840 | if$ 841 | } 842 | 843 | FUNCTION {is.digit} 844 | { duplicate$ empty$ 845 | { pop$ #0 } 846 | { chr.to.int$ 847 | duplicate$ "0" chr.to.int$ < 848 | { pop$ #0 } 849 | { "9" chr.to.int$ > 850 | { #0 } 851 | { #1 } 852 | if$ 853 | } 854 | if$ 855 | } 856 | if$ 857 | } 858 | 859 | FUNCTION {is.number} 860 | { 's := 861 | s empty$ 862 | { #0 } 863 | { s text.length$ 'charptr := 864 | { charptr #0 > 865 | s charptr #1 substring$ is.digit 866 | and 867 | } 868 | { charptr #1 - 'charptr := } 869 | while$ 870 | charptr not 871 | } 872 | if$ 873 | } 874 | 875 | FUNCTION {format.volume} 876 | { volume empty$ not 877 | { volume is.number 878 | { entry.lang lang.zh = 879 | { "第 " volume * " 卷" * } 880 | { "volume" volume tie.or.space.connect } 881 | if$ 882 | } 883 | { volume } 884 | if$ 885 | } 886 | { "" } 887 | if$ 888 | } 889 | 890 | FUNCTION {format.number} 891 | { number empty$ not 892 | { number is.number 893 | { entry.lang lang.zh = 894 | { "第 " number * " 册" * } 895 | { "number" number tie.or.space.connect } 896 | if$ 897 | } 898 | { number } 899 | if$ 900 | } 901 | { "" } 902 | if$ 903 | } 904 | 905 | FUNCTION {format.volume.number} 906 | { volume empty$ not 907 | { format.volume } 908 | { format.number } 909 | if$ 910 | } 911 | 912 | FUNCTION {format.title.vol.num} 913 | { title 914 | sentence.case.title 915 | 'change.sentence.case 916 | 'skip$ 917 | if$ 918 | entry.numbered 919 | { number empty$ not 920 | { bbl.colon * number * } 921 | 'skip$ 922 | if$ 923 | } 924 | { format.volume.number 's := 925 | s empty$ not 926 | { bbl.colon * s * } 927 | 'skip$ 928 | if$ 929 | } 930 | if$ 931 | } 932 | 933 | FUNCTION {format.series.vol.num.title} 934 | { format.volume.number 's := 935 | series empty$ not 936 | { series 937 | sentence.case.title 938 | 'change.sentence.case 939 | 'skip$ 940 | if$ 941 | entry.numbered 942 | { bbl.wide.space * } 943 | { bbl.colon * 944 | s empty$ not 945 | { s * bbl.wide.space * } 946 | 'skip$ 947 | if$ 948 | } 949 | if$ 950 | title * 951 | sentence.case.title 952 | 'change.sentence.case 953 | 'skip$ 954 | if$ 955 | entry.numbered number empty$ not and 956 | { bbl.colon * number * } 957 | 'skip$ 958 | if$ 959 | } 960 | { format.title.vol.num } 961 | if$ 962 | format.btitle 963 | link.title 964 | 'add.link 965 | 'skip$ 966 | if$ 967 | } 968 | 969 | FUNCTION {format.booktitle.vol.num} 970 | { booktitle 971 | entry.numbered 972 | 'skip$ 973 | { format.volume.number 's := 974 | s empty$ not 975 | { bbl.colon * s * } 976 | 'skip$ 977 | if$ 978 | } 979 | if$ 980 | } 981 | 982 | FUNCTION {format.series.vol.num.booktitle} 983 | { format.volume.number 's := 984 | series empty$ not 985 | { series bbl.colon * 986 | entry.numbered not s empty$ not and 987 | { s * bbl.wide.space * } 988 | 'skip$ 989 | if$ 990 | booktitle * 991 | } 992 | { format.booktitle.vol.num } 993 | if$ 994 | format.btitle 995 | } 996 | 997 | FUNCTION {remove.period} 998 | { 't := 999 | "" 's := 1000 | { t empty$ not } 1001 | { t #1 #1 substring$ 'tmp.str := 1002 | tmp.str "." = not 1003 | { s tmp.str * 's := } 1004 | 'skip$ 1005 | if$ 1006 | t #2 global.max$ substring$ 't := 1007 | } 1008 | while$ 1009 | s 1010 | } 1011 | 1012 | FUNCTION {abbreviate} 1013 | { remove.period 1014 | 't := 1015 | t "l" change.case$ 's := 1016 | "" 1017 | s "physical review letters" = 1018 | { "Phys Rev Lett" } 1019 | 'skip$ 1020 | if$ 1021 | 's := 1022 | s empty$ 1023 | { t } 1024 | { pop$ s } 1025 | if$ 1026 | } 1027 | 1028 | FUNCTION {get.journal.title} 1029 | { short.journal 1030 | { shortjournal empty$ not 1031 | { shortjournal } 1032 | { journal empty$ not 1033 | { journal abbreviate } 1034 | { journaltitle empty$ not 1035 | { journaltitle abbreviate } 1036 | { "" } 1037 | if$ 1038 | } 1039 | if$ 1040 | } 1041 | if$ 1042 | } 1043 | { journal empty$ not 1044 | { journal } 1045 | { journaltitle empty$ not 1046 | { journaltitle } 1047 | { shortjournal empty$ not 1048 | { shortjournal } 1049 | { "" } 1050 | if$ 1051 | } 1052 | if$ 1053 | } 1054 | if$ 1055 | } 1056 | if$ 1057 | } 1058 | 1059 | FUNCTION {check.arxiv.preprint} 1060 | { #1 #5 substring$ "l" change.case$ "arxiv" = 1061 | { #1 } 1062 | { #0 } 1063 | if$ 1064 | } 1065 | 1066 | FUNCTION {format.journal} 1067 | { get.journal.title 1068 | duplicate$ empty$ not 1069 | { italic.journal entry.lang lang.en = and 1070 | 'emphasize 1071 | 'skip$ 1072 | if$ 1073 | } 1074 | 'skip$ 1075 | if$ 1076 | } 1077 | 1078 | FUNCTION {set.entry.mark} 1079 | { entry.mark empty$ not 1080 | 'pop$ 1081 | { mark empty$ not 1082 | { pop$ mark 'entry.mark := } 1083 | { 'entry.mark := } 1084 | if$ 1085 | } 1086 | if$ 1087 | } 1088 | 1089 | FUNCTION {format.mark} 1090 | { show.mark 1091 | { entry.mark 1092 | show.medium.type 1093 | { medium empty$ not 1094 | { "/" * medium * } 1095 | { entry.is.electronic 1096 | { "/OL" * } 1097 | 'skip$ 1098 | if$ 1099 | } 1100 | if$ 1101 | } 1102 | 'skip$ 1103 | if$ 1104 | 'entry.mark := 1105 | space.before.mark 1106 | { " " } 1107 | { "\allowbreak" } 1108 | if$ 1109 | "[" * entry.mark * "]" * 1110 | } 1111 | { "" } 1112 | if$ 1113 | } 1114 | 1115 | FUNCTION {num.to.ordinal} 1116 | { duplicate$ text.length$ 'charptr := 1117 | duplicate$ charptr #1 substring$ 's := 1118 | s "1" = 1119 | { "st" * } 1120 | { s "2" = 1121 | { "nd" * } 1122 | { s "3" = 1123 | { "rd" * } 1124 | { "th" * } 1125 | if$ 1126 | } 1127 | if$ 1128 | } 1129 | if$ 1130 | } 1131 | 1132 | FUNCTION {format.edition} 1133 | { edition empty$ 1134 | { "" } 1135 | { edition is.number 1136 | { edition "1" = not 1137 | { entry.lang lang.zh = 1138 | { edition " 版" * } 1139 | { edition num.to.ordinal " ed." * } 1140 | if$ 1141 | } 1142 | 'skip$ 1143 | if$ 1144 | } 1145 | { entry.lang lang.en = 1146 | { edition change.sentence.case 's := 1147 | s "Revised" = s "Revised edition" = or 1148 | { "Rev. ed." } 1149 | { s " ed." * } 1150 | if$ 1151 | } 1152 | { edition } 1153 | if$ 1154 | } 1155 | if$ 1156 | } 1157 | if$ 1158 | } 1159 | 1160 | FUNCTION {format.publisher} 1161 | { publisher empty$ not 1162 | { publisher } 1163 | { school empty$ not 1164 | { school } 1165 | { organization empty$ not 1166 | { organization } 1167 | { institution empty$ not 1168 | { institution } 1169 | { "" } 1170 | if$ 1171 | } 1172 | if$ 1173 | } 1174 | if$ 1175 | } 1176 | if$ 1177 | } 1178 | 1179 | FUNCTION {format.address.publisher} 1180 | { address empty$ not 1181 | { address } 1182 | { location empty$ not 1183 | { location } 1184 | { "" } 1185 | if$ 1186 | } 1187 | if$ 1188 | duplicate$ empty$ not 1189 | { format.publisher empty$ not 1190 | { bbl.colon * format.publisher * } 1191 | { entry.is.electronic not show.missing.address.publisher and 1192 | { bbl.colon * bbl.sine.nomine * } 1193 | 'skip$ 1194 | if$ 1195 | } 1196 | if$ 1197 | } 1198 | { pop$ 1199 | entry.is.electronic not show.missing.address.publisher and 1200 | { format.publisher empty$ not 1201 | { bbl.sine.loco bbl.colon * format.publisher * } 1202 | { bbl.sine.loco.sine.nomine } 1203 | if$ 1204 | } 1205 | { format.publisher empty$ not 1206 | { format.publisher } 1207 | { "" } 1208 | if$ 1209 | } 1210 | if$ 1211 | } 1212 | if$ 1213 | } 1214 | 1215 | FUNCTION {extract.before.dash} 1216 | { duplicate$ empty$ 1217 | { pop$ "" } 1218 | { 's := 1219 | #1 'charptr := 1220 | s text.length$ #1 + 'len := 1221 | { charptr len < 1222 | s charptr #1 substring$ "-" = not 1223 | and 1224 | } 1225 | { charptr #1 + 'charptr := } 1226 | while$ 1227 | s #1 charptr #1 - substring$ 1228 | } 1229 | if$ 1230 | } 1231 | 1232 | FUNCTION {extract.after.dash} 1233 | { duplicate$ empty$ 1234 | { pop$ "" } 1235 | { 's := 1236 | #1 'charptr := 1237 | s text.length$ #1 + 'len := 1238 | { charptr len < 1239 | s charptr #1 substring$ "-" = not 1240 | and 1241 | } 1242 | { charptr #1 + 'charptr := } 1243 | while$ 1244 | { charptr len < 1245 | s charptr #1 substring$ "-" = 1246 | and 1247 | } 1248 | { charptr #1 + 'charptr := } 1249 | while$ 1250 | s charptr global.max$ substring$ 1251 | } 1252 | if$ 1253 | } 1254 | 1255 | FUNCTION {extract.before.slash} 1256 | { duplicate$ empty$ 1257 | { pop$ "" } 1258 | { 's := 1259 | #1 'charptr := 1260 | s text.length$ #1 + 'len := 1261 | { charptr len < 1262 | s charptr #1 substring$ "/" = not 1263 | and 1264 | } 1265 | { charptr #1 + 'charptr := } 1266 | while$ 1267 | s #1 charptr #1 - substring$ 1268 | } 1269 | if$ 1270 | } 1271 | 1272 | FUNCTION {extract.after.slash} 1273 | { duplicate$ empty$ 1274 | { pop$ "" } 1275 | { 's := 1276 | #1 'charptr := 1277 | s text.length$ #1 + 'len := 1278 | { charptr len < 1279 | s charptr #1 substring$ "-" = not 1280 | and 1281 | s charptr #1 substring$ "/" = not 1282 | and 1283 | } 1284 | { charptr #1 + 'charptr := } 1285 | while$ 1286 | { charptr len < 1287 | s charptr #1 substring$ "-" = 1288 | s charptr #1 substring$ "/" = 1289 | or 1290 | and 1291 | } 1292 | { charptr #1 + 'charptr := } 1293 | while$ 1294 | s charptr global.max$ substring$ 1295 | } 1296 | if$ 1297 | } 1298 | 1299 | FUNCTION {format.year} 1300 | { year empty$ not 1301 | { year extract.before.slash extra.label * } 1302 | { date empty$ not 1303 | { date extract.before.dash extra.label * } 1304 | { "empty year in " cite$ * warning$ 1305 | urldate empty$ not 1306 | { "[" urldate extract.before.dash * extra.label * "]" * } 1307 | { "" } 1308 | if$ 1309 | } 1310 | if$ 1311 | } 1312 | if$ 1313 | } 1314 | 1315 | FUNCTION {format.periodical.year} 1316 | { year empty$ not 1317 | { year extract.before.slash 1318 | "--" * 1319 | year extract.after.slash 1320 | duplicate$ empty$ 1321 | 'pop$ 1322 | { * } 1323 | if$ 1324 | } 1325 | { date empty$ not 1326 | { date extract.before.dash } 1327 | { "empty year in " cite$ * warning$ 1328 | urldate empty$ not 1329 | { "[" urldate extract.before.dash * "]" * } 1330 | { "" } 1331 | if$ 1332 | } 1333 | if$ 1334 | } 1335 | if$ 1336 | } 1337 | 1338 | FUNCTION {format.date} 1339 | { date empty$ not 1340 | { type$ "patent" = type$ "newspaper" = or 1341 | { date } 1342 | { entrysubtype empty$ not 1343 | { type$ "article" = entrysubtype "newspaper" = and 1344 | { date } 1345 | { format.year } 1346 | if$ 1347 | } 1348 | { format.year } 1349 | if$ 1350 | } 1351 | if$ 1352 | } 1353 | { year empty$ not 1354 | { format.year } 1355 | { "" } 1356 | if$ 1357 | } 1358 | if$ 1359 | } 1360 | 1361 | FUNCTION {format.editdate} 1362 | { date empty$ not 1363 | { "\allowbreak(" date * ")" * } 1364 | { "" } 1365 | if$ 1366 | } 1367 | 1368 | FUNCTION {format.urldate} 1369 | { show.urldate show.url and entry.url empty$ not and 1370 | is.pure.electronic or 1371 | urldate empty$ not and 1372 | { "\allowbreak[" urldate * "]" * } 1373 | { "" } 1374 | if$ 1375 | } 1376 | 1377 | FUNCTION {hyphenate} 1378 | { 't := 1379 | "" 1380 | { t empty$ not } 1381 | { t #1 #1 substring$ "-" = 1382 | { wave.dash.in.pages 1383 | { "~" * } 1384 | { "-" * } 1385 | if$ 1386 | { t #1 #1 substring$ "-" = } 1387 | { t #2 global.max$ substring$ 't := } 1388 | while$ 1389 | } 1390 | { t #1 #1 substring$ * 1391 | t #2 global.max$ substring$ 't := 1392 | } 1393 | if$ 1394 | } 1395 | while$ 1396 | } 1397 | 1398 | FUNCTION {format.pages} 1399 | { pages empty$ 1400 | { "" } 1401 | { pages hyphenate } 1402 | if$ 1403 | } 1404 | 1405 | FUNCTION {format.extracted.pages} 1406 | { pages empty$ 1407 | { "" } 1408 | { pages 1409 | only.start.page 1410 | 'extract.before.dash 1411 | 'hyphenate 1412 | if$ 1413 | } 1414 | if$ 1415 | } 1416 | 1417 | FUNCTION {format.journal.volume} 1418 | { volume empty$ not 1419 | { bold.journal.volume 1420 | { "\textbf{" volume * "}" * } 1421 | { volume } 1422 | if$ 1423 | } 1424 | { "" } 1425 | if$ 1426 | } 1427 | 1428 | FUNCTION {format.journal.number} 1429 | { number empty$ not 1430 | { "\allowbreak (" number * ")" * } 1431 | { "" } 1432 | if$ 1433 | } 1434 | 1435 | FUNCTION {format.journal.pages} 1436 | { pages empty$ 1437 | { "" } 1438 | { format.extracted.pages } 1439 | if$ 1440 | } 1441 | 1442 | FUNCTION {format.periodical.year.volume.number} 1443 | { year empty$ not 1444 | { year extract.before.slash } 1445 | { "empty year in periodical " cite$ * warning$ } 1446 | if$ 1447 | volume empty$ not 1448 | { ", " * volume extract.before.dash * } 1449 | 'skip$ 1450 | if$ 1451 | number empty$ not 1452 | { "\allowbreak (" * number extract.before.dash * ")" * } 1453 | 'skip$ 1454 | if$ 1455 | "--" * 1456 | year extract.after.slash empty$ 1457 | volume extract.after.dash empty$ and 1458 | number extract.after.dash empty$ and not 1459 | { year extract.after.slash empty$ not 1460 | { year extract.after.slash * } 1461 | { year extract.before.slash * } 1462 | if$ 1463 | volume empty$ not 1464 | { ", " * volume extract.after.dash * } 1465 | 'skip$ 1466 | if$ 1467 | number empty$ not 1468 | { "\allowbreak (" * number extract.after.dash * ")" * } 1469 | 'skip$ 1470 | if$ 1471 | } 1472 | 'skip$ 1473 | if$ 1474 | } 1475 | 1476 | FUNCTION {check.url} 1477 | { url empty$ not 1478 | { "\url{" url * "}" * 'entry.url := 1479 | #1 'entry.is.electronic := 1480 | } 1481 | { howpublished empty$ not 1482 | { howpublished #1 #5 substring$ "\url{" = 1483 | { howpublished 'entry.url := 1484 | #1 'entry.is.electronic := 1485 | } 1486 | 'skip$ 1487 | if$ 1488 | } 1489 | { note empty$ not 1490 | { note #1 #5 substring$ "\url{" = 1491 | { note 'entry.url := 1492 | #1 'entry.is.electronic := 1493 | } 1494 | 'skip$ 1495 | if$ 1496 | } 1497 | 'skip$ 1498 | if$ 1499 | } 1500 | if$ 1501 | } 1502 | if$ 1503 | } 1504 | 1505 | FUNCTION {output.url} 1506 | { show.url is.pure.electronic or 1507 | entry.url empty$ not and 1508 | { new.block 1509 | entry.url output 1510 | } 1511 | 'skip$ 1512 | if$ 1513 | } 1514 | 1515 | FUNCTION {check.doi} 1516 | { doi empty$ not 1517 | { #1 'entry.is.electronic := } 1518 | 'skip$ 1519 | if$ 1520 | } 1521 | 1522 | FUNCTION {is.in.url} 1523 | { 's := 1524 | s empty$ 1525 | { #1 } 1526 | { entry.url empty$ 1527 | { #0 } 1528 | { s text.length$ 'len := 1529 | entry.url text.length$ 'charptr := 1530 | { entry.url charptr len substring$ s = not 1531 | charptr #0 > 1532 | and 1533 | } 1534 | { charptr #1 - 'charptr := } 1535 | while$ 1536 | charptr 1537 | } 1538 | if$ 1539 | } 1540 | if$ 1541 | } 1542 | 1543 | FUNCTION {format.doi} 1544 | { "" 1545 | doi empty$ not 1546 | { "" 's := 1547 | doi 't := 1548 | #0 'numnames := 1549 | { t empty$ not} 1550 | { t #1 #1 substring$ 'tmp.str := 1551 | tmp.str "," = tmp.str " " = or t #2 #1 substring$ empty$ or 1552 | { t #2 #1 substring$ empty$ 1553 | { s tmp.str * 's := } 1554 | 'skip$ 1555 | if$ 1556 | s empty$ s is.in.url or 1557 | 'skip$ 1558 | { numnames #1 + 'numnames := 1559 | numnames #1 > 1560 | { ", " * } 1561 | { "DOI: " * } 1562 | if$ 1563 | "\doi{" s * "}" * * 1564 | } 1565 | if$ 1566 | "" 's := 1567 | } 1568 | { s tmp.str * 's := } 1569 | if$ 1570 | t #2 global.max$ substring$ 't := 1571 | } 1572 | while$ 1573 | } 1574 | 'skip$ 1575 | if$ 1576 | } 1577 | 1578 | FUNCTION {output.doi} 1579 | { doi empty$ not show.doi and 1580 | show.english.translation entry.lang lang.zh = and not and 1581 | { new.block 1582 | format.doi output 1583 | } 1584 | 'skip$ 1585 | if$ 1586 | } 1587 | 1588 | FUNCTION {check.electronic} 1589 | { "" 'entry.url := 1590 | #0 'entry.is.electronic := 1591 | 'check.doi 1592 | 'skip$ 1593 | if$ 1594 | 'check.url 1595 | 'skip$ 1596 | if$ 1597 | medium empty$ not 1598 | { medium "MT" = medium "DK" = or medium "CD" = or medium "OL" = or 1599 | { #1 'entry.is.electronic := } 1600 | 'skip$ 1601 | if$ 1602 | } 1603 | 'skip$ 1604 | if$ 1605 | } 1606 | 1607 | FUNCTION {format.eprint} 1608 | { archivePrefix empty$ not 1609 | { archivePrefix } 1610 | { eprinttype empty$ not 1611 | { archivePrefix } 1612 | { "" } 1613 | if$ 1614 | } 1615 | if$ 1616 | 's := 1617 | s empty$ not 1618 | { s ": \eprint{" * 1619 | url empty$ not 1620 | { url } 1621 | { "https://" s "l" change.case$ * ".org/abs/" * eprint * } 1622 | if$ 1623 | * "}{" * 1624 | eprint * "}" * 1625 | } 1626 | { eprint } 1627 | if$ 1628 | } 1629 | 1630 | FUNCTION {output.eprint} 1631 | { show.preprint eprint empty$ not and 1632 | { new.block 1633 | format.eprint output 1634 | } 1635 | 'skip$ 1636 | if$ 1637 | } 1638 | 1639 | FUNCTION {format.note} 1640 | { note empty$ not show.note and 1641 | { note } 1642 | { "" } 1643 | if$ 1644 | } 1645 | 1646 | FUNCTION {output.translation} 1647 | { show.english.translation entry.lang lang.zh = and 1648 | { translation empty$ not 1649 | { translation } 1650 | { "[English translation missing!]" } 1651 | if$ 1652 | " (in Chinese)" * output 1653 | write$ 1654 | format.doi duplicate$ empty$ not 1655 | { newline$ 1656 | write$ 1657 | } 1658 | 'pop$ 1659 | if$ 1660 | " \\" write$ 1661 | newline$ 1662 | "(" write$ 1663 | "" 1664 | before.all 'output.state := 1665 | } 1666 | 'skip$ 1667 | if$ 1668 | } 1669 | 1670 | FUNCTION {empty.misc.check} 1671 | { author empty$ title empty$ 1672 | year empty$ 1673 | and and 1674 | key empty$ not and 1675 | { "all relevant fields are empty in " cite$ * warning$ } 1676 | 'skip$ 1677 | if$ 1678 | } 1679 | 1680 | FUNCTION {monograph} 1681 | { output.bibitem 1682 | output.translation 1683 | author empty$ not 1684 | { format.authors } 1685 | { editor empty$ not 1686 | { format.editors } 1687 | { "empty author and editor in " cite$ * warning$ 1688 | "" 1689 | } 1690 | if$ 1691 | } 1692 | if$ 1693 | output 1694 | year.after.author 1695 | { period.after.author 1696 | 'new.sentence 1697 | 'skip$ 1698 | if$ 1699 | format.year "year" output.check 1700 | } 1701 | 'skip$ 1702 | if$ 1703 | new.block 1704 | format.series.vol.num.title "title" output.check 1705 | "M" set.entry.mark 1706 | format.mark "" output.after 1707 | new.block 1708 | format.translators output 1709 | new.sentence 1710 | format.edition output 1711 | new.block 1712 | format.address.publisher output 1713 | year.after.author not 1714 | { format.year "year" output.check } 1715 | 'skip$ 1716 | if$ 1717 | format.pages bbl.pages.colon output.after 1718 | format.urldate "" output.after 1719 | output.url 1720 | output.doi 1721 | new.block 1722 | format.note output 1723 | fin.entry 1724 | } 1725 | 1726 | FUNCTION {incollection} 1727 | { output.bibitem 1728 | output.translation 1729 | format.authors output 1730 | author format.key output 1731 | year.after.author 1732 | { period.after.author 1733 | 'new.sentence 1734 | 'skip$ 1735 | if$ 1736 | format.year "year" output.check 1737 | } 1738 | 'skip$ 1739 | if$ 1740 | new.block 1741 | format.title "title" output.check 1742 | "M" set.entry.mark 1743 | format.mark "" output.after 1744 | new.block 1745 | format.translators output 1746 | new.slash 1747 | format.editors output 1748 | new.block 1749 | format.series.vol.num.booktitle "booktitle" output.check 1750 | new.block 1751 | format.edition output 1752 | new.block 1753 | format.address.publisher output 1754 | year.after.author not 1755 | { format.year "year" output.check } 1756 | 'skip$ 1757 | if$ 1758 | format.extracted.pages bbl.pages.colon output.after 1759 | format.urldate "" output.after 1760 | output.url 1761 | output.doi 1762 | new.block 1763 | format.note output 1764 | fin.entry 1765 | } 1766 | 1767 | FUNCTION {periodical} 1768 | { output.bibitem 1769 | output.translation 1770 | format.authors output 1771 | author format.key output 1772 | year.after.author 1773 | { period.after.author 1774 | 'new.sentence 1775 | 'skip$ 1776 | if$ 1777 | format.year "year" output.check 1778 | } 1779 | 'skip$ 1780 | if$ 1781 | new.block 1782 | format.title "title" output.check 1783 | "J" set.entry.mark 1784 | format.mark "" output.after 1785 | new.block 1786 | format.periodical.year.volume.number output 1787 | new.block 1788 | format.address.publisher output 1789 | year.after.author not 1790 | { format.periodical.year "year" output.check } 1791 | 'skip$ 1792 | if$ 1793 | format.urldate "" output.after 1794 | output.url 1795 | output.doi 1796 | new.block 1797 | format.note output 1798 | fin.entry 1799 | } 1800 | 1801 | FUNCTION {journal.article} 1802 | { output.bibitem 1803 | output.translation 1804 | format.authors output 1805 | author format.key output 1806 | year.after.author 1807 | { period.after.author 1808 | 'new.sentence 1809 | 'skip$ 1810 | if$ 1811 | format.year "year" output.check 1812 | } 1813 | 'skip$ 1814 | if$ 1815 | new.block 1816 | title.in.journal 1817 | { format.title "title" output.check 1818 | entrysubtype empty$ not 1819 | { 1820 | entrysubtype "newspaper" = 1821 | { "N" set.entry.mark } 1822 | { "J" set.entry.mark } 1823 | if$ 1824 | } 1825 | { "J" set.entry.mark } 1826 | if$ 1827 | format.mark "" output.after 1828 | new.block 1829 | } 1830 | 'skip$ 1831 | if$ 1832 | format.journal "journal" output.check 1833 | year.after.author not 1834 | { format.date "year" output.check } 1835 | 'skip$ 1836 | if$ 1837 | format.journal.volume output 1838 | format.journal.number "" output.after 1839 | format.journal.pages bbl.pages.colon output.after 1840 | format.urldate "" output.after 1841 | output.url 1842 | output.doi 1843 | new.block 1844 | format.note output 1845 | fin.entry 1846 | } 1847 | 1848 | FUNCTION {patent} 1849 | { output.bibitem 1850 | output.translation 1851 | format.authors output 1852 | author format.key output 1853 | year.after.author 1854 | { period.after.author 1855 | 'new.sentence 1856 | 'skip$ 1857 | if$ 1858 | format.year "year" output.check 1859 | } 1860 | 'skip$ 1861 | if$ 1862 | new.block 1863 | format.title "title" output.check 1864 | "P" set.entry.mark 1865 | format.mark "" output.after 1866 | new.block 1867 | format.date "year" output.check 1868 | format.urldate "" output.after 1869 | output.url 1870 | output.doi 1871 | new.block 1872 | format.note output 1873 | fin.entry 1874 | } 1875 | 1876 | FUNCTION {electronic} 1877 | { #1 #1 check.electronic 1878 | #1 'entry.is.electronic := 1879 | #1 'is.pure.electronic := 1880 | output.bibitem 1881 | output.translation 1882 | format.authors output 1883 | author format.key output 1884 | year.after.author 1885 | { period.after.author 1886 | 'new.sentence 1887 | 'skip$ 1888 | if$ 1889 | format.year "year" output.check 1890 | } 1891 | 'skip$ 1892 | if$ 1893 | new.block 1894 | format.series.vol.num.title "title" output.check 1895 | "EB" set.entry.mark 1896 | format.mark "" output.after 1897 | new.block 1898 | format.address.publisher output 1899 | year.after.author not 1900 | { date empty$ 1901 | { format.date output } 1902 | 'skip$ 1903 | if$ 1904 | } 1905 | 'skip$ 1906 | if$ 1907 | format.pages bbl.pages.colon output.after 1908 | format.editdate "" output.after 1909 | format.urldate "" output.after 1910 | output.url 1911 | output.doi 1912 | new.block 1913 | format.note output 1914 | fin.entry 1915 | } 1916 | 1917 | FUNCTION {preprint} 1918 | { output.bibitem 1919 | output.translation 1920 | author empty$ not 1921 | { format.authors } 1922 | { editor empty$ not 1923 | { format.editors } 1924 | { "empty author and editor in " cite$ * warning$ 1925 | "" 1926 | } 1927 | if$ 1928 | } 1929 | if$ 1930 | output 1931 | year.after.author 1932 | { period.after.author 1933 | 'new.sentence 1934 | 'skip$ 1935 | if$ 1936 | format.year "year" output.check 1937 | } 1938 | 'skip$ 1939 | if$ 1940 | new.block 1941 | title.in.journal 1942 | { format.series.vol.num.title "title" output.check 1943 | "Z" set.entry.mark 1944 | format.mark "" output.after 1945 | new.block 1946 | } 1947 | 'skip$ 1948 | if$ 1949 | format.translators output 1950 | new.sentence 1951 | format.edition output 1952 | new.block 1953 | year.after.author not 1954 | { date empty$ 1955 | { format.date output } 1956 | 'skip$ 1957 | if$ 1958 | } 1959 | 'skip$ 1960 | if$ 1961 | format.pages bbl.pages.colon output.after 1962 | format.editdate "" output.after 1963 | format.urldate "" output.after 1964 | output.eprint 1965 | output.url 1966 | new.block 1967 | format.note output 1968 | fin.entry 1969 | } 1970 | 1971 | FUNCTION {misc} 1972 | { get.journal.title 1973 | duplicate$ empty$ not 1974 | { check.arxiv.preprint 1975 | 'preprint 1976 | 'journal.article 1977 | if$ 1978 | } 1979 | { pop$ 1980 | booktitle empty$ not 1981 | 'incollection 1982 | { publisher empty$ not 1983 | 'monograph 1984 | { eprint empty$ not archivePrefix empty$ not or 1985 | 'preprint 1986 | { entry.is.electronic 1987 | 'electronic 1988 | { 1989 | "M" set.entry.mark 1990 | monograph 1991 | } 1992 | if$ 1993 | } 1994 | if$ 1995 | } 1996 | if$ 1997 | } 1998 | if$ 1999 | } 2000 | if$ 2001 | empty.misc.check 2002 | } 2003 | 2004 | FUNCTION {archive} 2005 | { "A" set.entry.mark 2006 | misc 2007 | } 2008 | 2009 | FUNCTION {article} { misc } 2010 | 2011 | FUNCTION {book} { monograph } 2012 | 2013 | FUNCTION {booklet} { book } 2014 | 2015 | FUNCTION {collection} 2016 | { "G" set.entry.mark 2017 | monograph 2018 | } 2019 | 2020 | FUNCTION {database} 2021 | { "DB" set.entry.mark 2022 | electronic 2023 | } 2024 | 2025 | FUNCTION {dataset} 2026 | { "DS" set.entry.mark 2027 | electronic 2028 | } 2029 | 2030 | FUNCTION {inbook} { book } 2031 | 2032 | FUNCTION {inproceedings} 2033 | { "C" set.entry.mark 2034 | incollection 2035 | } 2036 | 2037 | FUNCTION {conference} { inproceedings } 2038 | 2039 | FUNCTION {legislation} { archive } 2040 | 2041 | FUNCTION {map} 2042 | { "CM" set.entry.mark 2043 | misc 2044 | } 2045 | 2046 | FUNCTION {manual} { monograph } 2047 | 2048 | FUNCTION {mastersthesis} 2049 | { "D" set.entry.mark 2050 | monograph 2051 | } 2052 | 2053 | FUNCTION {newspaper} 2054 | { "N" set.entry.mark 2055 | article 2056 | } 2057 | 2058 | FUNCTION {online} 2059 | { "EB" set.entry.mark 2060 | electronic 2061 | } 2062 | 2063 | FUNCTION {phdthesis} { mastersthesis } 2064 | 2065 | FUNCTION {proceedings} 2066 | { "C" set.entry.mark 2067 | monograph 2068 | } 2069 | 2070 | FUNCTION {software} 2071 | { "CP" set.entry.mark 2072 | electronic 2073 | } 2074 | 2075 | FUNCTION {standard} 2076 | { "S" set.entry.mark 2077 | misc 2078 | } 2079 | 2080 | FUNCTION {techreport} 2081 | { "R" set.entry.mark 2082 | misc 2083 | } 2084 | 2085 | FUNCTION {unpublished} { misc } 2086 | 2087 | FUNCTION {default.type} { misc } 2088 | 2089 | MACRO {jan} {"January"} 2090 | 2091 | MACRO {feb} {"February"} 2092 | 2093 | MACRO {mar} {"March"} 2094 | 2095 | MACRO {apr} {"April"} 2096 | 2097 | MACRO {may} {"May"} 2098 | 2099 | MACRO {jun} {"June"} 2100 | 2101 | MACRO {jul} {"July"} 2102 | 2103 | MACRO {aug} {"August"} 2104 | 2105 | MACRO {sep} {"September"} 2106 | 2107 | MACRO {oct} {"October"} 2108 | 2109 | MACRO {nov} {"November"} 2110 | 2111 | MACRO {dec} {"December"} 2112 | 2113 | MACRO {acmcs} {"ACM Computing Surveys"} 2114 | 2115 | MACRO {acta} {"Acta Informatica"} 2116 | 2117 | MACRO {cacm} {"Communications of the ACM"} 2118 | 2119 | MACRO {ibmjrd} {"IBM Journal of Research and Development"} 2120 | 2121 | MACRO {ibmsj} {"IBM Systems Journal"} 2122 | 2123 | MACRO {ieeese} {"IEEE Transactions on Software Engineering"} 2124 | 2125 | MACRO {ieeetc} {"IEEE Transactions on Computers"} 2126 | 2127 | MACRO {ieeetcad} 2128 | {"IEEE Transactions on Computer-Aided Design of Integrated Circuits"} 2129 | 2130 | MACRO {ipl} {"Information Processing Letters"} 2131 | 2132 | MACRO {jacm} {"Journal of the ACM"} 2133 | 2134 | MACRO {jcss} {"Journal of Computer and System Sciences"} 2135 | 2136 | MACRO {scp} {"Science of Computer Programming"} 2137 | 2138 | MACRO {sicomp} {"SIAM Journal on Computing"} 2139 | 2140 | MACRO {tocs} {"ACM Transactions on Computer Systems"} 2141 | 2142 | MACRO {tods} {"ACM Transactions on Database Systems"} 2143 | 2144 | MACRO {tog} {"ACM Transactions on Graphics"} 2145 | 2146 | MACRO {toms} {"ACM Transactions on Mathematical Software"} 2147 | 2148 | MACRO {toois} {"ACM Transactions on Office Information Systems"} 2149 | 2150 | MACRO {toplas} {"ACM Transactions on Programming Languages and Systems"} 2151 | 2152 | MACRO {tcs} {"Theoretical Computer Science"} 2153 | 2154 | FUNCTION {sortify} 2155 | { purify$ 2156 | "l" change.case$ 2157 | } 2158 | 2159 | FUNCTION {chop.word} 2160 | { 's := 2161 | 'len := 2162 | s #1 len substring$ = 2163 | { s len #1 + global.max$ substring$ } 2164 | 's 2165 | if$ 2166 | } 2167 | 2168 | FUNCTION {format.lab.name} 2169 | { "{vv~}{ll}{, jj}{, ff}" format.name$ 't := 2170 | t "others" = 2171 | { citation.et.al } 2172 | { t get.str.lang 'name.lang := 2173 | name.lang lang.zh = name.lang lang.ja = or 2174 | { t #1 "{ll}{ff}" format.name$ } 2175 | { t #1 "{vv~}{ll}" format.name$ } 2176 | if$ 2177 | } 2178 | if$ 2179 | } 2180 | 2181 | FUNCTION {format.lab.names} 2182 | { 's := 2183 | s #1 format.lab.name 'short.label := 2184 | #1 'nameptr := 2185 | s num.names$ 'numnames := 2186 | "" 2187 | numnames 'namesleft := 2188 | { namesleft #0 > } 2189 | { s nameptr format.lab.name citation.et.al = 2190 | numnames citation.et.al.min #1 - > nameptr citation.et.al.use.first > and or 2191 | { bbl.space * 2192 | citation.et.al * 2193 | #1 'namesleft := 2194 | } 2195 | { nameptr #1 > 2196 | { namesleft #1 = citation.and "" = not and 2197 | { citation.and * } 2198 | { ", " * } 2199 | if$ 2200 | } 2201 | 'skip$ 2202 | if$ 2203 | s nameptr format.lab.name * 2204 | } 2205 | if$ 2206 | nameptr #1 + 'nameptr := 2207 | namesleft #1 - 'namesleft := 2208 | } 2209 | while$ 2210 | } 2211 | 2212 | FUNCTION {author.key.label} 2213 | { author empty$ 2214 | { key empty$ 2215 | { cite$ #1 #3 substring$ } 2216 | 'key 2217 | if$ 2218 | } 2219 | { author format.lab.names } 2220 | if$ 2221 | } 2222 | 2223 | FUNCTION {author.editor.key.label} 2224 | { author empty$ 2225 | { editor empty$ 2226 | { key empty$ 2227 | { cite$ #1 #3 substring$ } 2228 | 'key 2229 | if$ 2230 | } 2231 | { editor format.lab.names } 2232 | if$ 2233 | } 2234 | { author format.lab.names } 2235 | if$ 2236 | } 2237 | 2238 | FUNCTION {author.key.organization.label} 2239 | { author empty$ 2240 | { key empty$ 2241 | { organization empty$ 2242 | { cite$ #1 #3 substring$ } 2243 | { "The " #4 organization chop.word #3 text.prefix$ } 2244 | if$ 2245 | } 2246 | 'key 2247 | if$ 2248 | } 2249 | { author format.lab.names } 2250 | if$ 2251 | } 2252 | 2253 | FUNCTION {editor.key.organization.label} 2254 | { editor empty$ 2255 | { key empty$ 2256 | { organization empty$ 2257 | { cite$ #1 #3 substring$ } 2258 | { "The " #4 organization chop.word #3 text.prefix$ } 2259 | if$ 2260 | } 2261 | 'key 2262 | if$ 2263 | } 2264 | { editor format.lab.names } 2265 | if$ 2266 | } 2267 | 2268 | FUNCTION {calc.short.authors} 2269 | { "" 'short.label := 2270 | type$ "book" = 2271 | type$ "inbook" = 2272 | or 2273 | 'author.editor.key.label 2274 | { type$ "collection" = 2275 | type$ "proceedings" = 2276 | or 2277 | { editor empty$ not 2278 | 'editor.key.organization.label 2279 | 'author.key.organization.label 2280 | if$ 2281 | } 2282 | 'author.key.label 2283 | if$ 2284 | } 2285 | if$ 2286 | 'short.list := 2287 | short.label empty$ 2288 | { short.list 'short.label := } 2289 | 'skip$ 2290 | if$ 2291 | } 2292 | 2293 | FUNCTION {calc.label} 2294 | { calc.short.authors 2295 | short.list "]" contains 2296 | { "{" short.list * "}" * } 2297 | { short.list } 2298 | if$ 2299 | "(" 2300 | * 2301 | format.year duplicate$ empty$ 2302 | short.list key field.or.null = or 2303 | { pop$ "" } 2304 | 'skip$ 2305 | if$ 2306 | duplicate$ "]" contains 2307 | { "{" swap$ * "}" * } 2308 | 'skip$ 2309 | if$ 2310 | * 2311 | 'label := 2312 | short.label 2313 | "(" 2314 | * 2315 | format.year duplicate$ empty$ 2316 | short.list key field.or.null = or 2317 | { pop$ "" } 2318 | 'skip$ 2319 | if$ 2320 | * 2321 | 'short.label := 2322 | } 2323 | 2324 | INTEGERS { seq.num } 2325 | 2326 | FUNCTION {init.seq} 2327 | { #0 'seq.num :=} 2328 | 2329 | FUNCTION {int.to.fix} 2330 | { "000000000" swap$ int.to.str$ * 2331 | #-1 #10 substring$ 2332 | } 2333 | 2334 | FUNCTION {presort} 2335 | { set.entry.lang 2336 | set.entry.numbered 2337 | show.url show.doi check.electronic 2338 | #0 'is.pure.electronic := 2339 | calc.label 2340 | label sortify 2341 | " " 2342 | * 2343 | seq.num #1 + 'seq.num := 2344 | seq.num int.to.fix 2345 | 'sort.label := 2346 | sort.label * 2347 | #1 entry.max$ substring$ 2348 | 'sort.key$ := 2349 | } 2350 | 2351 | STRINGS { longest.label last.label next.extra last.extra.label } 2352 | 2353 | INTEGERS { longest.label.width number.label } 2354 | 2355 | FUNCTION {initialize.longest.label} 2356 | { "" 'longest.label := 2357 | #0 int.to.chr$ 'last.label := 2358 | "" 'next.extra := 2359 | #0 'longest.label.width := 2360 | #0 'number.label := 2361 | "" 'last.extra.label := 2362 | } 2363 | 2364 | FUNCTION {forward.pass} 2365 | { 2366 | number.label #1 + 'number.label := 2367 | } 2368 | 2369 | FUNCTION {reverse.pass} 2370 | { 2371 | label extra.label * 'label := 2372 | } 2373 | 2374 | FUNCTION {bib.sort.order} 2375 | { sort.label 'sort.key$ := 2376 | } 2377 | 2378 | FUNCTION {begin.bib} 2379 | { preamble$ empty$ 2380 | 'skip$ 2381 | { preamble$ write$ newline$ } 2382 | if$ 2383 | "\begin{thebibliography}{" number.label int.to.str$ * "}" * 2384 | write$ newline$ 2385 | terms.in.macro 2386 | { "\providecommand{\biband}{和}" 2387 | write$ newline$ 2388 | "\providecommand{\bibetal}{等}" 2389 | write$ newline$ 2390 | } 2391 | 'skip$ 2392 | if$ 2393 | "\providecommand{\natexlab}[1]{#1}" 2394 | write$ newline$ 2395 | "\providecommand{\url}[1]{#1}" 2396 | write$ newline$ 2397 | "\expandafter\ifx\csname urlstyle\endcsname\relax\else" 2398 | write$ newline$ 2399 | " \urlstyle{same}\fi" 2400 | write$ newline$ 2401 | "\expandafter\ifx\csname href\endcsname\relax" 2402 | write$ newline$ 2403 | " \DeclareUrlCommand\doi{\urlstyle{rm}}" 2404 | write$ newline$ 2405 | " \def\eprint#1#2{#2}" 2406 | write$ newline$ 2407 | "\else" 2408 | write$ newline$ 2409 | " \def\doi#1{\href{https://doi.org/#1}{\nolinkurl{#1}}}" 2410 | write$ newline$ 2411 | " \let\eprint\href" 2412 | write$ newline$ 2413 | "\fi" 2414 | write$ newline$ 2415 | } 2416 | 2417 | FUNCTION {end.bib} 2418 | { newline$ 2419 | "\end{thebibliography}" write$ newline$ 2420 | } 2421 | 2422 | READ 2423 | 2424 | EXECUTE {init.state.consts} 2425 | 2426 | EXECUTE {load.config} 2427 | 2428 | EXECUTE {init.seq} 2429 | 2430 | ITERATE {presort} 2431 | 2432 | SORT 2433 | 2434 | EXECUTE {initialize.longest.label} 2435 | 2436 | ITERATE {forward.pass} 2437 | 2438 | REVERSE {reverse.pass} 2439 | 2440 | ITERATE {bib.sort.order} 2441 | 2442 | SORT 2443 | 2444 | EXECUTE {begin.bib} 2445 | 2446 | ITERATE {call.type$} 2447 | 2448 | EXECUTE {end.bib} 2449 | -------------------------------------------------------------------------------- /main.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xtc-chen/UJS_Phdthesis/84e53a66289142f62d057cc70a26f32fabbac486/main.pdf -------------------------------------------------------------------------------- /main.tex: -------------------------------------------------------------------------------- 1 | % !TEX program = xelatex 2 | \documentclass{ujsthesis} 3 | 4 | \begin{document} 5 | 6 | \frontmatter % 论文前置部分 7 | \input{data/cover.tex} % 封面 8 | \input{data/abstract.tex} % 摘要 9 | \tableofcontents % 目录 10 | 11 | \renewcommand{\listfigurename}{插图目录} % 图目录,如不需要请注释 12 | \listoffigures 13 | \renewcommand{\listtablename}{表目录} % 表目录,如不需要请注释 14 | \listoftables 15 | 16 | \mainmatter{} % 论文主体部分 17 | \input{data/chapter01.tex} % 第一章内容 18 | \input{data/chapter02.tex} % 第二章内容 19 | \input{data/chapter03.tex} % 第三章内容 20 | \input{data/chapter04.tex} % 第四章内容 21 | \input{data/chapter05.tex} % 第五章内容 22 | \input{data/chapter06.tex} % 第六章内容 23 | 24 | \backmatter{} % 论文附录部分 25 | \input{data/references.tex} % 参考文献 26 | \input{data/acknowledgement.tex} % 致谢 27 | \input{data/achievements.tex} % 科研成果 28 | \input{data/appendixA.tex} % 附录A 29 | \input{data/appendixB.tex} % 附录B 30 | 31 | \end{document} -------------------------------------------------------------------------------- /reference.bib: -------------------------------------------------------------------------------- 1 | 2 | @book{cottrell2009, 3 | title={Isogeometric analysis: toward integration of CAD and FEA}, 4 | author={Cottrell, J Austin and Hughes, Thomas JR and Bazilevs, Yuri}, 5 | year={2009}, 6 | publisher={John Wiley \& Sons} 7 | } -------------------------------------------------------------------------------- /ujsthesis.cls: -------------------------------------------------------------------------------- 1 | \NeedsTeXFormat{LaTeX2e} 2 | \ProvidesClass{ujsthesis}[2022/07/07 v0.1 Jiangsu University Thesis Template] 3 | 4 | \LoadClass[ 5 | openany, % 新一章左右页都可以开始 6 | fontset = local, % 使用自定义字体 7 | zihao = -4, % 正文小四号字体 8 | linespread = 1.7 % 对应word里的1.5倍行距 9 | ]{ctexbook} 10 | 11 | %20240121修改补充,支持texlive2023 12 | % 添加 amssymb 宏包 13 | \RequirePackage{amssymb} 14 | % 添加 ulem 宏包 15 | \RequirePackage{ulem} 16 | 17 | \RequirePackage{geometry} % 页面设置宏包 18 | \RequirePackage{fancyhdr} % 页眉页脚设置宏包 19 | \RequirePackage{graphicx} % 插图宏包 20 | \RequirePackage{caption} % 图表标题宏包 21 | \RequirePackage[tbtags]{amsmath} % 数学公式宏包,多行公式编号在最后一行 22 | \RequirePackage{amsthm} % 定理环境宏包 23 | %\RequirePackage{newtxmath} % 公式字体设置宏包,需要在数学宏包后加载 24 | %\usepackage{newtxtext,newtxmath} 25 | 26 | %20240121修改补充,支持texlive2023,将公式风格改为新罗马字体 27 | \setmainfont{XITS} 28 | \usepackage{unicode-math} % 需要 unicode-math 宏包 29 | \setmathfont{XITS Math} 30 | 31 | % \setmainfont{TeX Gyre Termes} 32 | % \usepackage{unicode-math} % 需要 unicode-math 宏包 33 | % \setmathfont{TeX Gyre Termes Math} 34 | 35 | %\usepackage{newpxtext,newpxmath} 36 | \RequirePackage{titletoc} % 目录设置宏包 37 | \RequirePackage[super,square,comma,sort&compress]{natbib} % 参考文献设置宏包 38 | \RequirePackage{hyperref} % 超链接宏包 39 | \RequirePackage{setspace} % 行间距设置宏包 40 | \RequirePackage{enumitem} % 自定义列表宏包 41 | \RequirePackage{booktabs} % 表格宏包,方便画三线表 42 | \RequirePackage{diagbox} % 斜线表头宏包 43 | \RequirePackage{multirow} 44 | \RequirePackage{algpseudocode,algorithm,algorithmicx} % 算法宏包 45 | \RequirePackage{subfigure} 46 | \usepackage{color} 47 | \usepackage{mathrsfs} 48 | \usepackage{xeCJK} 49 | \usepackage{threeparttable} 50 | \usepackage{float} 51 | \usepackage[justification=centering]{caption} 52 | \usepackage{bicaption} 53 | \captionsetup[figure][bi-second]{name=Fig.} %设置图的英文编号前缀 54 | \captionsetup[table][bi-second]{name=Tab.} %设置表的英文编号前缀 55 | \usepackage{makecell} 56 | \usepackage{cancel} 57 | \usepackage[list=off]{bicaption} %消除图标目录的英文标题 58 | \setCJKmainfont{SimSun}[AutoFakeBold,ItalicFont=KaiTi] 59 | \newcommand{\zhongsong}{\CJKfontspec{STZhongsong}} 60 | \usepackage{tikz} 61 | \newcommand*{\circled}[1]{\lower.7ex\hbox{\tikz\draw (0pt, 0pt)% 62 | circle (.5em) node {\makebox[1em][c]{\small #1}};}} 63 | 64 | 65 | % CTeX宏集选项 66 | \ctexset{ 67 | contentsname = 目~~录, % 设置目录标题名 68 | % 一级标题:三号粗黑体,居中,章节编号与标题内容之间的距离2个空格宽度(\quad为1个汉字宽度或4个空格宽度) 69 | chapter/format = \zihao{3}\bfseries\heiti\centering, 70 | chapter/aftername = ~~, 71 | chapter/beforeskip = 3.2ex, % 设置章节标题前的垂直间距 72 | chapter/afterskip = 3.9ex, % 设置章节标题与后面下方之间的距离 73 | chapter/fixskip = true, % 抑制多余间距 74 | chapter/pagestyle = fancy, % 设置章标题页的页面格式(页眉页脚) 75 | % 二级标题:四号粗黑体 76 | section/format = \zihao{4}\bfseries\heiti, 77 | section/aftername = ~~, 78 | section/beforeskip = 6ex, 79 | section/afterskip = 6ex, 80 | section/fixskip = true, 81 | % 三级标题:小四号粗黑体 82 | subsection/format = \zihao{-4}\bfseries\heiti, 83 | subsection/aftername = ~~, 84 | subsection/beforeskip= 4.7ex, 85 | subsection/afterskip = 4.7ex, 86 | subsection/fixskip = true 87 | } 88 | 89 | % 设置纸张大小、页边距和装订线 90 | \geometry{ 91 | paper = a4paper, % 纸张大小:A4 92 | top = 15mm, % 页边距上:25mm 93 | bottom = 18.2mm, % 页边距下:20mm 94 | left = 25mm, % 页边距左:25mm 95 | right = 20mm, % 页边距右:20mm 96 | bindingoffset = 5mm, % 装订线:5mm 97 | foot = 6.4mm, % 页脚高度 98 | includeheadfoot % 将页眉页脚的高度计入版心高度 99 | } 100 | % 定义标签 101 | \def\ujs@label@classnumber{分类号} 102 | \def\ujs@label@classified{密级} 103 | \def\ujs@label@udc{~U~D~C} 104 | \def\ujs@label@thesisnumber{编号} 105 | \def\ujs@label@advisor{指~导~老~师} 106 | \def\ujs@label@author{作~者~姓~名} 107 | \def\ujs@label@jobtitle{职\quad \quad 称} 108 | \def\ujs@label@degree{申请学位级别} 109 | \def\ujs@label@tite{论文题目} 110 | \def\ujs@label@major{专业名称} 111 | \def\ujs@label@submissiondate{论文提交日期} 112 | \def\ujs@label@defensedate{论文答辩日期} 113 | \def\ujs@label@institutiondate{学位授予单位和日期} 114 | \def\ujs@label@right{学位论文版权使用授权书} 115 | \def\ujs@label@rightcontent{江苏大学、中国科学技术信息研究所、国家图书馆、中国学术期刊(光盘版)电子杂志社有权保留本人所送交学位论文的复印件和电子文档,可以采用影印、缩印或其他复制手段保存论文。本人电子文档的内容和纸质论文的内容相一致,允许论文被查阅和借阅,同时授权中国科学技术信息研究所将本论文编入《中国学位论文全文数据库》并向社会提供查询,授权中国学术期刊(光盘版)电子杂志社将本论文编入《中国优秀博硕士学位论文全文数据库》并向社会提供查询。论文的公布(包括刊登)授权江苏大学研究生院办理。} 116 | \def\ujs@label@rightclassified{本学位论文属于不保密$\square$。} 117 | \def\ujs@label@authorsignature{学位论文作者签名:} 118 | \def\ujs@label@advisorsignature{指导教师签名:} 119 | \def\ujs@label@ymd{年~~~~~~月~~~~~~日} 120 | \def\ujs@label@declare{独~创~性~声~明} 121 | \def\ujs@label@declarecontent{本人郑重声明:所呈交的学位论文,是本人在导师的指导下,独立进行研究工作所取得的成果。除文中已注明引用的内容以外,本论文不包含任何其他个人或集体已经发表或撰写过的作品成果,也不包含为获得江苏大学或其他教育机构的学位或证书而使用过的材料。对本文的研究做出重要贡献的个人和集体,均已在文中以明确方式标明。本人完全意识到本声明的法律结果由本人承担。} 122 | \def\ujs@label@cabstract{摘~~要} 123 | \def\ujs@label@eabstract{ABSTRACT} 124 | \def\ujs@label@ckeywords{关键词} 125 | \def\ujs@label@ekeywords{Keywords} 126 | \def\ujs@label@acknowledgement{致谢} 127 | \def\ujs@label@achievements{攻读博士学位期间完成的论文及其他科研成果} 128 | \def\ujs@label@appendixA{附录A \quad 缩略语} 129 | \def\ujs@label@appendixB{附录B \quad 中英文符号及缩写对照表} 130 | 131 | % 定义作者英文名字 132 | \def\ujs@value@englishauthor{} 133 | \newcommand{\englishauthor}[1]{\def\ujs@value@englishauthor{#1}} 134 | % 定义专业英文 135 | \def\ujs@value@englishmajor{} 136 | \newcommand{\englishmajor}[1]{\def\ujs@value@englishmajor{#1}} 137 | % 定义导师英文 138 | \def\ujs@value@englishadvisor{} 139 | \newcommand{\englishadvisor}[1]{\def\ujs@value@englishadvisor{#1}} 140 | % 定义导师职称 141 | \def\ujs@value@jobtitle{} 142 | \newcommand{\jobtitle}[1]{\def\ujs@value@jobtitle{#1}} 143 | % 定义中文标题 144 | \def\ujs@value@chinesetitle{} 145 | \newcommand{\ctitle}[1]{\def\ujs@value@chinesetitle{#1}} 146 | % 定义英文标题 147 | \def\ujs@value@englishtitle{} 148 | \newcommand{\etitle}[1]{\def\ujs@value@englishtitle{#1}} 149 | % 定义分类号 150 | \def\ujs@value@classnumber{} 151 | \newcommand{\classnumber}[1]{\def\ujs@value@classnumber{#1}} 152 | % 定义密级 153 | \def\ujs@value@classified{} 154 | \newcommand{\classified}[1]{\def\ujs@value@classified{#1}} 155 | % 定义UDC 156 | \def\ujs@value@udc{} 157 | \newcommand{\udc}[1]{\def\ujs@value@udc{#1}} 158 | % 定义编号 159 | \def\ujs@value@thesisnumber{} 160 | \newcommand{\thesisnumber}[1]{\def\ujs@value@thesisnumber{#1}} 161 | % 定义指导老师 162 | \def\ujs@value@advisor{} 163 | \newcommand{\advisor}[1]{\def\ujs@value@advisor{#1}} 164 | % 定义作者姓名 165 | \def\ujs@value@author{} 166 | \renewcommand{\author}[1]{\def\ujs@value@author{#1}} 167 | % 定义申请学位级别 168 | \def\ujs@value@degree{} 169 | \newcommand{\degree}[1]{\def\ujs@value@degree{#1}} 170 | % 定义专业名称 171 | \def\ujs@value@major{} 172 | \newcommand{\major}[1]{\def\ujs@value@major{#1}} 173 | % 定义论文提交日期 174 | \def\ujs@value@submissiondate{} 175 | \newcommand{\submissiondate}[1]{\def\ujs@value@submissiondate{#1}} 176 | % 定义论文答辩日期 177 | \def\ujs@value@defensedate{} 178 | \newcommand{\defensedate}[1]{\def\ujs@value@defensedate{#1}} 179 | % 定义论文英文答辩日期 180 | \def\ujs@value@defenseenglishdate{} 181 | \newcommand{\defenseenglishdate}[1]{\def\ujs@value@defenseenglishdate{#1}} 182 | % 定义学位授予单位和日期 183 | \def\ujs@value@institutiondate{} 184 | \newcommand{\institutiondate}[1]{\def\ujs@value@institutiondate{#1}} 185 | % 定义中文摘要 186 | \def\ujs@value@cabstract{} 187 | \newcommand{\cabstract}[1]{\def\ujs@value@cabstract{#1}} 188 | % 定义英文摘要 189 | \def\ujs@value@eabstract{} 190 | \newcommand{\eabstract}[1]{\def\ujs@value@eabstract{#1}} 191 | % 定义中文关键词 192 | \def\ujs@value@ckeywords{} 193 | \newcommand{\ckeywords}[1]{\def\ujs@value@ckeywords{#1}} 194 | % 定义英文关键词 195 | \def\ujs@value@ekeywords{} 196 | \newcommand{\ekeywords}[1]{\def\ujs@value@ekeywords{#1}} 197 | 198 | % 设置页眉页脚 199 | \pagestyle{fancy} 200 | \fancyhf{} % 清除所有页眉页脚的设置 201 | % 页眉:五号宋体居中(默认宋体) 202 | \fancyhead[OC]{\zihao{5} 江苏大学博士学位论文} % 奇数页:江苏大学博(或硕)士学位论文 203 | \fancyhead[EC]{\zihao{5}\ujs@value@chinesetitle} % 偶数页:学位论文的题目 204 | \fancyfoot[OR,EL]{\zihao{5}\thepage} % 页脚:页码位于页脚外侧 205 | \renewcommand{\headrulewidth}{0.75pt} % 设置页眉横线宽度:0.75pt 206 | 207 | % 设置图表格式 208 | \DeclareCaptionFont{wukai}{\zihao{5}\kaishu} 209 | \captionsetup{ 210 | labelsep = space, % 图号和图题分隔符:1个空格 211 | font = wukai % 设置图表标题字体字号:五号楷体 212 | } 213 | 214 | % 设置目录格式 215 | % \titlecontents{标题名}[左间距]{标题格式}{标题标志}{无序号标题格式}{指引线与页码}[下间距] 216 | \titlecontents{chapter}[0em]{\bfseries}{\thecontentslabel~\,}{}{\titlerule*[0.25em]{.}\contentspage} 217 | \titlecontents{section}[2em]{}{\thecontentslabel~~}{}{\titlerule*[0.25em]{.}\contentspage} 218 | \titlecontents{subsection}[4em]{}{\thecontentslabel~~}{}{\titlerule*[0.25em]{.}\contentspage} 219 | 220 | \newcommand{\customfigureformat}{ 221 | \renewcommand*{\addvspace}[1]{} 222 | \def\loflabel{图} 223 | \renewcommand{\numberline}[1]{\loflabel~##1\hspace*{1em}} 224 | } 225 | 226 | \let\oldlistoffigures\listoffigures 227 | \renewcommand{\listoffigures}{% 228 | \begingroup % 新增 229 | \customfigureformat % 使用新的命令设置格式 230 | \oldlistoffigures % 调用原始的 \listoffigures 231 | \endgroup % 新增 232 | } 233 | 234 | \newcommand{\customtableformat}{ 235 | \renewcommand*{\addvspace}[1]{} 236 | \def\loflabel{表} 237 | \renewcommand{\numberline}[1]{\loflabel~##1\hspace*{1em}} 238 | } 239 | 240 | \let\oldlistoftables\listoftables 241 | \renewcommand{\listoftables}{% 242 | \begingroup % 新增 243 | \customtableformat % 使用新的命令设置格式 244 | \oldlistoftables % 调用原始的 \listoffigures 245 | \endgroup % 新增 246 | } 247 | 248 | % 设置列表格式 249 | % \setlist{noitemsep} % 将列表间垂直距离置零 250 | \setlist{nosep} % 将列表与段落、列表间垂直距离置零 251 | \setlist[itemize]{left=\parindent} 252 | \setlist[enumerate]{left=\parindent} 253 | 254 | % 设置超链接格式 255 | \hypersetup{hidelinks} % 隐藏链接 256 | 257 | % 设置算法环境格式 258 | \floatname{algorithm}{算法} % 中文标题名 259 | \numberwithin{algorithm}{chapter} % 按章节编号 260 | \renewcommand{\algorithmicrequire}{\textbf{输入:}} 261 | \renewcommand{\algorithmicensure}{\textbf{输出:}} 262 | 263 | % 设置定理、引理、证明等环境格式 264 | \newtheoremstyle{ujstheoremstyle}{0pt}{0pt}{\kaishu}{\parindent}{\bfseries}{}{ }{} 265 | \theoremstyle{ujstheoremstyle} 266 | \newtheorem*{prof}{证明} 267 | \newtheorem{theorem}{定理}[chapter] 268 | \newtheorem{lemma}{引理}[chapter] 269 | \newtheorem{axiom}{公理}[chapter] 270 | \newtheorem{assumption}{假设}[chapter] 271 | \newtheorem{definition}{定义}[chapter] 272 | \newtheorem{proposition}{命题}[chapter] 273 | \newtheorem{corollary}{推论}[chapter] 274 | \newtheorem{exercise}{练习}[chapter] 275 | \newtheorem{example}{例}[chapter] 276 | \newtheorem{remark}{注}[chapter] 277 | %\newtheorem{remark}{注释}[chapter] 278 | \newtheorem{problem}{问题}[chapter] 279 | \newtheorem{conjecture}{猜想}[chapter] 280 | 281 | \setlength\parskip{0pt} % 设置段间距 282 | 283 | % 设置题名页 284 | \renewcommand{\maketitle}{ 285 | \newgeometry{left= 20mm,right= 20mm,top=25mm,bottom=18.2mm} 286 | \cleardoublepage 287 | \thispagestyle{empty} 288 | \begin{center} 289 | {\songti\bfseries 290 | \begin{tabular}{ccc} 291 | \ujs@label@classnumber\uline{\makebox[3.0cm]{\hfill\ujs@value@classnumber\hfill}} & \makebox[6.5cm]{\hfill}& \ujs@label@classified\uline{\makebox[3.0cm]{\hfill\ujs@value@classified\hfill}}\\ 292 | \ujs@label@udc\uline{\makebox[3.0cm]{\hfill\ujs@value@udc\hfill}} &\hfill & \ujs@label@thesisnumber\uline{\makebox[3.0cm]{\hfill\ujs@value@thesisnumber\hfill}}\\ 293 | \end{tabular}} 294 | 295 | \vspace{5ex} 296 | 297 | \includegraphics[scale=0.26]{figures/logo/ujs.pdf} 298 | 299 | \vspace{-1ex} 300 | 301 | \begin{center} 302 | {\zihao{1}JIANGSU~~UNIVERSITY} 303 | \end{center} 304 | 305 | \vspace{1ex} 306 | 307 | {\zihao{-0} \zhongsong \bfseries 博~士~学~位~论~文} \par 308 | \vspace{1ex} 309 | 310 | {\zihao{-1} Doctoral Dissertation} \par 311 | 312 | \vspace{5ex} 313 | 314 | \includegraphics[scale=0.12]{figures/logo/ujslogo.pdf} \par 315 | 316 | \vspace{5ex} 317 | 318 | {\zihao{-2}\heiti\bfseries\ujs@value@chinesetitle} \par 319 | 320 | \vspace{3ex} 321 | 322 | {\zihao{4}\bfseries\ujs@value@englishtitle} \par 323 | 324 | \vspace{5ex} 325 | 326 | {\zihao{-3}\heiti 327 | \begin{tabular}{ll} 328 | \multicolumn{2}{c}{\ujs@label@author\uline{\hfill\ujs@value@author\hfill}}\\ 329 | \ujs@label@advisor\uline{\makebox[6.0cm]{\hfill\ujs@value@advisor\hfill}} & \ujs@label@jobtitle\uline{\makebox[6.0cm]{\hfill\ujs@value@jobtitle\hfill}}\\ 330 | \ujs@label@degree \uline{\hfill\ujs@value@degree\hfill} & \ujs@label@major\uline{\hfill\ujs@value@major\hfill}\\ 331 | \ujs@label@submissiondate\uline{\hfill\ujs@value@submissiondate\hfill} & \ujs@label@defensedate\uline{\hfill\ujs@value@defensedate\hfill}\\ 332 | \multicolumn{2}{l}{\ujs@label@institutiondate\uline{\hfill\ujs@value@institutiondate\hfill}}\\ 333 | \end{tabular}} 334 | \end{center} 335 | 336 | 337 | \clearpage 338 | \thispagestyle{empty} 339 | \restoregeometry 340 | } 341 | 342 | % 设置学位论文版权使用授权书 343 | \newcommand{\makeright}{ 344 | %\cleardoublepage 345 | \thispagestyle{empty} 346 | 347 | \vspace*{1ex} 348 | 349 | \begin{center} 350 | {\zihao{-2}\heiti\ujs@label@declare} 351 | \end{center} 352 | 353 | \ujs@label@declarecontent 354 | 355 | \vspace{8ex} 356 | 357 | \hspace{15em}\ujs@label@authorsignature 358 | 359 | \hspace{25em}\ujs@label@ymd 360 | 361 | \vspace*{5ex} 362 | 363 | \begin{center} 364 | {\zihao{-2}\heiti\ujs@label@right} 365 | \end{center} 366 | 367 | \ujs@label@rightcontent 368 | 369 | \vspace{4ex} 370 | 371 | \ujs@label@rightclassified 372 | 373 | \vspace{4ex} 374 | 375 | \ujs@label@authorsignature\hspace{14em}\ujs@label@advisorsignature 376 | 377 | \hspace{8em}\ujs@label@ymd\hspace{15em}\ujs@label@ymd 378 | 379 | \clearpage 380 | \thispagestyle{empty} 381 | } 382 | 383 | \newcommand{\makeeninnertitle}{ 384 | \clearpage 385 | 386 | %\pdfbookmark[0]{英文论文信息}{eninnertitle} 387 | \thispagestyle{empty} 388 | \leftline{{\zihao{-2} Classified~ Index:~ \ujs@value@classnumber}} 389 | \vspace*{1ex} 390 | \leftline{{\zihao{-2} UDC:~ \ujs@value@udc }} 391 | 392 | 393 | \vspace*{2.0cm} 394 | 395 | \begin{center} 396 | { \zihao{2} Doctoral Dissertation \par 397 | \vspace*{2.0cm} 398 | 399 | \zihao{-2} \bfseries \ujs@value@englishtitle} \par 400 | 401 | \vspace*{2.0cm} \par 402 | {\zihao{2} By { \ujs@value@englishauthor }} \par 403 | 404 | \vspace*{2.0cm} \par 405 | 406 | \begin{tabular}{l} 407 | \zihao{3} Major: \ujs@value@englishmajor \\ 408 | \zihao{3} Supervisor: \ujs@value@englishadvisor 409 | \end{tabular} \par 410 | 411 | \vspace*{2.0cm} \par 412 | 413 | {\zihao{3} Jiangsu University}\par 414 | \vspace*{0.5cm} \par 415 | {\zihao{3} \ujs@value@defenseenglishdate} 416 | 417 | \end{center} 418 | \vspace*{1cm}\par 419 | \clearpage 420 | \thispagestyle{empty} 421 | } 422 | 423 | 424 | % 设置摘要页 425 | \newcommand{\makeabstract}{ 426 | \chapter*{\ujs@label@cabstract}{ 427 | \addcontentsline{toc}{chapter}{\ujs@label@cabstract} 428 | \setcounter{page}{1} % 重置页码 429 | \pagenumbering{Roman} % 页码使用大写罗马数字 430 | \ujs@value@cabstract 431 | 432 | \vspace{\baselineskip} 433 | \noindent {\bfseries\songti \ujs@label@ckeywords:}\ujs@value@ckeywords 434 | } 435 | 436 | \chapter*{\ujs@label@eabstract}{ 437 | \addcontentsline{toc}{chapter}{\ujs@label@eabstract} 438 | \ujs@value@eabstract 439 | 440 | \vspace{\baselineskip} 441 | \noindent {\bfseries\songti \ujs@label@ekeywords:} \ujs@value@ekeywords 442 | } 443 | } 444 | 445 | % 设置附录A1页面 446 | \newcommand{\appendixA}[1]{ 447 | \chapter*{\ujs@label@appendixA} 448 | \setcounter{table}{0} %从0开始编号,显示出来表会A1开始编号 449 | \setcounter{figure}{0} 450 | \setcounter{section}{0} 451 | \setcounter{equation}{0} 452 | %定义编号格式,在数字序号前加字符“A" 453 | \renewcommand{\thetable}{A\arabic{table}} 454 | \renewcommand{\thefigure}{A\arabic{figure}} 455 | \renewcommand{\thesection}{A\arabic{section}} 456 | \renewcommand{\theequation}{A\arabic{equation}} 457 | \addcontentsline{toc}{chapter}{\ujs@label@appendixA} 458 | {#1} 459 | 460 | } 461 | 462 | % 设置附录B1页面 463 | \newcommand{\appendixB}[1]{ 464 | \chapter*{\ujs@label@appendixB} 465 | \setcounter{table}{0} %从0开始编号,显示出来表会B1开始编号 466 | \setcounter{figure}{0} 467 | \setcounter{section}{0} 468 | \setcounter{equation}{0} 469 | %定义编号格式,在数字序号前加字符“B" 470 | \renewcommand{\thetable}{B\arabic{table}} 471 | \renewcommand{\thefigure}{B\arabic{figure}} 472 | \renewcommand{\thesection}{B\arabic{section}} 473 | \renewcommand{\theequation}{B\arabic{equation}} 474 | \addcontentsline{toc}{chapter}{\ujs@label@appendixB} 475 | {#1} 476 | } 477 | 478 | 479 | % 设置空白页 480 | \newcommand{\myemptypage}{ 481 | \null 482 | \thispagestyle{empty} 483 | \addtocounter{page}{ -1} 484 | \newpage 485 | } 486 | 487 | % 设置致谢页 488 | \newcommand{\acknowledgement}[1]{ 489 | \chapter*{\ujs@label@acknowledgement} 490 | \addcontentsline{toc}{chapter}{\ujs@label@acknowledgement} 491 | {#1} 492 | } 493 | 494 | % 设置科研成果页 495 | \newcommand{\achievements}[1]{ 496 | \chapter*{\ujs@label@achievements} 497 | \addcontentsline{toc}{chapter}{\ujs@label@achievements} 498 | {#1} 499 | } 500 | 501 | \newcommand{\bs}{\boldsymbol} 502 | 503 | \newcommand{\tabincell}[2]{\begin{tabular}{@{}#1@{}}#2\end{tabular}} 504 | 505 | \newcommand{\D}{{\cal D}} 506 | \newcommand{\HH}{{\cal H}} 507 | 508 | \newcommand{\mA}{{\bs A}} 509 | \newcommand{\mB}{{\bs B}} 510 | \newcommand{\mC}{{\bs C}} 511 | \newcommand{\mD}{{\bs D}} 512 | \newcommand{\mH}{{\bs H}} 513 | \newcommand{\mI}{{\bs I}} 514 | \newcommand{\mG}{{\bs G}} 515 | \newcommand{\mK}{{\bs K}} 516 | \newcommand{\mM}{{\bs M}} 517 | \newcommand{\mQ}{{\bs Q}} 518 | \newcommand{\mR}{{\bs R}} 519 | \newcommand{\mS}{{\bs S}} 520 | \newcommand{\mT}{{\bs T}} 521 | \newcommand{\mU}{{\bs U}} 522 | \newcommand{\mP}{{\bs P}} 523 | \newcommand{\mX}{{\bs X}} 524 | 525 | \newcommand{\mDelta}{{\bs \Delta}} 526 | 527 | \newcommand{\mLambda}{{\bs \Lambda}} 528 | \newcommand{\mSigma}{{\bs \Sigma}} 529 | \newcommand{\mPhi}{{\bs \Phi}} 530 | \newcommand{\mPi}{{\bs \Pi}} 531 | \newcommand{\1}{{\textbf{1}}} 532 | 533 | \def\R{\ensuremath{\mathbb{R}}} 534 | \def\U{\ensuremath{\mathcal{U}}} 535 | \def\N{\ensuremath{\mathcal{N}}} 536 | \def\mN{\ensuremath{\mathbb{N}}} 537 | \def\E{\ensuremath{\mathbb{E}}} 538 | 539 | \newcommand{\va}{{\bs a}} 540 | \newcommand{\vd}{{\bs d}} 541 | \newcommand{\ve}{{\bs e}} 542 | \newcommand{\vg}{{\bs g}} 543 | \newcommand{\vt}{{\bs t}} 544 | \newcommand{\vq}{{\bs q}} 545 | \newcommand{\vu}{{\bs u}} 546 | \newcommand{\vk}{{\bs k}} 547 | \newcommand{\vl}{{\bs l}} 548 | \newcommand{\vr}{{\bs r}} 549 | \newcommand{\vw}{{\bs w}} 550 | \newcommand{\vx}{{\bs x}} 551 | \newcommand{\vz}{{\bs z}} 552 | 553 | \newcommand{\hatvw}{{\widetilde{\bs w}}} 554 | 555 | 556 | \newcommand{\bA}{\bs{\mathcal {A}}} 557 | \newcommand{\bI}{\bs{\mathcal {I}}} 558 | \newcommand{\bQ}{\bs{\mathcal {Q}}} 559 | \newcommand{\bR}{\bs{\mathcal {R}}} 560 | \newcommand{\bS}{\bs{\mathcal {S}}} 561 | \newcommand{\bT}{\bs{\mathcal {T}}} 562 | \newcommand{\bP}{\bs{\mathcal {P}}} 563 | \newcommand{\bN}{\bs{\mathcal {N}}} 564 | \newcommand{\0}{{\bs 0}} 565 | 566 | \newcommand{\valpha}{{\bs \alpha}} 567 | \newcommand{\vkappa}{{\bs \kappa}} 568 | \newcommand{\vomega}{{\bs \omega}} 569 | \newcommand{\vpsi}{{\bs \psi}} 570 | \newcommand{\hatvpsi}{{\widetilde{\bs \psi}}} 571 | 572 | \def\mse{\text{mse}} 573 | \def\ex{\text{ex}}%emse 574 | \def\EMSE{\text{EMSE}}%emse 575 | \def\erf{\text{erf}} 576 | \def\MSD{\text{MSD}} 577 | \def\tmin{\text{min}} 578 | \def\col{\text{col}} 579 | \def\diag{\text{diag}} 580 | \def\vec{\text{vec}} 581 | \def\opt{\text{opt}} 582 | \def\sign{\text{sgn}} 583 | \def\tr{\text{tr}} 584 | 585 | \def\cblue{\textcolor{blue}}%black 586 | \def\cred{\textcolor{red}} 587 | -------------------------------------------------------------------------------- /博士模板.doc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xtc-chen/UJS_Phdthesis/84e53a66289142f62d057cc70a26f32fabbac486/博士模板.doc --------------------------------------------------------------------------------