%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% This is file `ABThesis.cls', %% %% The original file was xepersian-thesis.cls by Vafa Khalighi %% %% The secondary file was VThesis.cls Vahid Damanafshan %% %% %% %% _____________________________________________ %% %% Copyright © 2011-2012 Abolvafa Buzjani Student's Groups %% %% %% %% xepersian@mail.com %% %% texfum@gmail.com %% %% http://forum.parsilatex.com %% %% %% %% %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %\renewcommand{\thealgocf}{\arabic{algocf}.\arabic{chapter}} % Set Class \NeedsTeXFormat{LaTeX2e} \ProvidesClass{ABThesis} [13/9/2012 v1 Persian thesis document class in XeLaTeX for University of Mashhad theses/dissertations] \DeclareOption*{\PassOptionsToClass{\CurrentOption}{book}} \ProcessOptions \LoadClass{book} % Option % \newif\if@arthesis \@arthesisfalse \DeclareOption{arshad}{\@arthesistrue} \newif\if@ABgraph \@ABgraphfalse \DeclareOption{ABgraph}{\@ABgraphtrue} \newif\if@ABfig \@ABfigfalse \DeclareOption{ABfig}{\@ABfigtrue} \newif\if@ABdiag \@ABdiagfalse \DeclareOption{ABdiag}{\@ABdiagtrue} \newif\if@ABprog \@ABprogfalse \DeclareOption{ABprog}{\@ABprogtrue} \newif\if@ABalg \@ABalgfalse \DeclareOption{ABalg}{\@ABalgtrue} \newif\if@ABtab \@ABtabfalse \DeclareOption{ABtab}{\@ABtabtrue} \newif\ifABpages \ABpagesfalse \DeclareOption{ABpages}{\ABpagestrue} \newif\ifABproject \ABprojectfalse \DeclareOption{ABproject}{\ABprojecttrue} \ProcessOptions % Definition's \def\TSupervisor#1{\gdef\@TSupervisor{#1}} \def\TOArbiter#1{\gdef\@TOArbiter{#1}} \def\TTArbiter#1{\gdef\@TTArbiter{#1}} \def\TAdvisor#1{\gdef\@TAdvisor{#1}} \def\university#1{\gdef\@university{#1}} \def\department#1{\gdef\@department{#1}} \def\degree#1{\gdef\@degree{#1}} \def\thesisdate#1{\gdef\@thesisdate{#1}} \def\okdate#1{\gdef\@okdate{#1}} \def\defencedate#1{\gdef\@defencedate{#1}} \newcommand{\firstsupervisor}[1]{\def\@firstsupervisor{#1}} \newcommand{\secondsupervisor}[1]{\def\@secondsupervisor{#1}} \newcommand{\firstadvisor}[1]{\def\@firstadvisor{#1}} \newcommand{\secondadvisor}[1]{\def\@secondadvisor{#1}} \def\name#1{\gdef\@name{#1}} \def\surname#1{\gdef\@surname{#1}} \def\keywords#1{\gdef\@keywords{#1}} \def\fa-abstract#1{\gdef\@fa-abstract{#1}} \def\faculty#1{\gdef\@faculty{#1}} \def\subject#1{\gdef\@subject{#1}} \def\field#1{\gdef\@field{#1}} \def\department#1{\gdef\@department{#1}} \def\latintitle#1{\gdef\@latintitle{#1}} \def\latinauthor#1{\gdef\@latinauthor{#1}} \def\latindegree#1{\gdef\@latindegree{#1}} \def\latinfaculty#1{\gdef\@latinfaculty{#1}} \def\latinthesisdate#1{\gdef\@latinthesisdate{#1}} \def\latinsubject#1{\gdef\@latinsubject{#1}} \def\latinfield#1{\gdef\@latinfield{#1}} \def\firstlatinsupervisor#1{\gdef\@firstlatinsupervisor{#1}} \def\secondlatinsupervisor#1{\gdef\@secondlatinsupervisor{#1}} \def\firstlatinadvisor#1{\gdef\@firstlatinadvisor{#1}} \def\secondlatinadvisor#1{\gdef\@secondlatinadvisor{#1}} \def\latinname#1{\gdef\@latinname{#1}} \def\latinsurname#1{\gdef\@latinsurname{#1}} \def\en-abstract#1{\gdef\@en-abstract{#1}} \def\latinkeywords#1{\gdef\@latinkeywords{#1}} \def\latinuniversity#1{\gdef\@latinuniversity{#1}} \def\latinokdate#1{\gdef\@latinokdate{#1}} \def\latindefencedate#1{\gdef\@latindefencedate{#1}} \def\onvan{عنوان} \def\writtenfor{برای دریافت درجه } \def\by{نگارنده} \def\latinby{by} \def\frame{\newpage \thispagestyle{empty} \begin{framed}\thispagestyle{empty}} \def\endframe{\thispagestyle{empty} \end{framed}\thispagestyle{empty} }%\KashidaOn} \def\abstractpage{\newpage \thispagestyle{empty} \vskip 15mm \par \begin{abstract}} \def\endabstractpage{\end{abstract} \newpage } \def\acknowledgementpage{\newpage \thispagestyle{empty}\vspace{1cm}\par\noindent} \def\endacknowledgementpage{\newpage} \def\titlepage{\newpage\centering \thispagestyle{empty} \parindent 0pt \parskip 10pt plus 1fil minus 1fil \def\baselinestretch{1.5}\@normalsize\vbox to \vsize\bgroup\vbox to 9in\bgroup} \def\endtitlepage{\par\kern 0pt\egroup\vss\egroup\newpage} \def\signature{\vspace{1cm}\begin{flushleft}{\nastaliq\scriptsize \@name\ \@surname \\ \@thesisdate} \end{flushleft}} \def\abstract{\subsection*{\abstractname} \small\@normalsize} \def\endabstract{\par} \long\def\tos#1#2#3{\centerline{\large #1}\ifnum#3=2\let\srow\bsrow\begin{table}[!h]\centering\begin{tabular}{p{4cm}l} نام & نماد\\[.2cm] \hline & \\#2\end{tabular}\end{table}\else\ifnum#3=3\let\srow\csrow\begin{table}[!h]\centering\begin{tabular}{p{2cm}p{4cm}l}صفحه & نام & نماد\\[.2cm] \hline & & \\#2\end{tabular}\end{table}\fi\fi} \def\bsrow#1#2{#1 & #2\\[2mm]} \def\csrow#1#2#3{\pageref{#3} & #2 & #1\\[2mm]} \def\code#1#2{ \begin{latin} \lstinputlisting[lineskip=0.001cm,breaklines=true,numbers=left,language=#1, basicstyle=\ttfamily\small, numberstyle=\footnotesize , numbersep=10pt, captionpos=b, frame=single, breakatwhitespace=false]{#2} \end{latin} } \let\mc=\m \def\mc#1#2{#1 #2} \def\a{new} \let\b=\a \def\iq{\item[\textcolor{red}{سوال}]} \def\ia{\item[\textcolor{green}{جواب}]} \def\error{\ifmmode% \colorbox{red}{error in math}% \else% \colorbox{green}{اشکال در متن}% \fi} \def\certificate#1#2#3#4{\pagebreak\count1=\thepage\advance\count1 by -1\setcounter{page}{\count1}\thispagestyle{empty}\fbox{\colorbox{blue}{\small\begin{minipage}[c]{\textwidth}مشتری محترم نگران وجود این صفحه نباشید، این صفحه فقط جهت سهولت اجرا ایجاد شده و در شماره صفحات سند شما تاثیر ندارد و پرینت گرفتن آن ضرورتی ندارد.\end{minipage}}}\par\vspace*{.5cm}\fbox{\colorbox{green}{\Huge\begin{minipage}{\textwidth}\centerline{\bf #1}\par #2 \end{minipage}}}\par\vspace*{.5cm}\fbox{\colorbox{red}{\Huge\begin{minipage}[c]{\textwidth}اشکالات کار مطرح شده از طرف تایپیست:\\ #3\end{minipage}}}\par\vspace*{.5cm}\fbox{\colorbox{yellow}{\Huge\begin{minipage}[c]{\textwidth}\centerline{\bf #4}\end{minipage}}}\clearpage\pagebreak} \font\titlefont=cmssbx10 scaled 2074 \font\supervisorfont=cmbxti10 %\newenvironment{preface}[1][پیش‌گفتار]{\chapter*{#1}\addcontentsline{toc}{chapter}{#1}\rhead{#1} \KashidaOff}{\pagebreak\rhead{\small\leftmark}\KashidaOn} \newenvironment{preface}[1][پیش‌گفتار]{\chapter*{#1}\addcontentsline{toc}{chapter}{#1}\rhead{#1} }{\pagebreak\rhead{\small\leftmark}} % besm \def\besm#1{ \pagestyle{empty} \begin{center} \includegraphics[scale=1.3]{#1} \end{center} } % % persian title %\newcommand{\ftitle}{\KashidaOff\begin{titlepage}\thispagestyle{empty} \newcommand{\ftitle}{\begin{titlepage}\thispagestyle{empty} %\topmargin=-30pt \vspace{-2cm}\centerline{{\includegraphics[height=4.3cm]{logo}}} \ifABproject \relax \else \vspace{-.2cm} {\large%\@university\\\vspace{.25cm} دانشکده \@faculty\par \vspace{-.4cm} گروه \@department} \vskip .5cm \if@arthesis {\large\bfseries رساله} \else {\large\bfseries پایان‌نامه} \fi \vskip .1cm {\large\bfseries\writtenfor \if@arthesis دکتری \else کارشناسی ارشد \fi } {\large\bfseries{در رشته}} \vskip .2cm \if@arthesis \centerline{\large \bfseries\@subject} \else \centerline{\large \bfseries\@subject ، گرایش \@field} \fi \fi \vskip 1cm %\baselineskip=.750cm \centerline{\Large \bfseries\onvan} \vskip .2cm {\Huge\bfseries {\titr\baselineskip=1cm \@title}}\baselineskip=1.5cm\par \vskip .8cm \baselineskip=.5cm \large {\ifx\@firstsupervisor\undefined% \ifx\@secondsupervisor\undefined% \else\fi \else \ifx\@secondsupervisor\undefined% استاد راهنما {\Large\bfseries\par \@firstsupervisor} \else \large اساتید راهنما \par {\Large\bfseries \@firstsupervisor{} و \@secondsupervisor} \fi\fi} \par\large {\ifx\@firstadvisor\undefined% \ifx\@secondadvisor\undefined% \else\fi \else \ifx\@secondadvisor\undefined% استاد مشاور {\Large\bfseries\par \@firstadvisor} \else \large اساتید مشاور \par {\Large\bfseries\@firstadvisor{} و \@secondadvisor} \fi\fi} {\large% \by}\par \par {\bfseries{\nastaliq\large\bfseries \@name\ \ \@surname}}\par \vskip 5mm \vfill {\large \@thesisdate} \vfill \end{titlepage} } % specifications \newcommand{\specifications}{ %\KashidaOff \pagebreak \baselineskip=.7cm \begin{frame} {\hspace*{\fill}\includegraphics[height=2.5cm]{logo}} \vspace*{-3.5cm} \noindent{\centerline{}} \noindent{\centerline{بسمه تعالی}} \noindent{\centerline{مشخصات \if@arthesis رساله \else پایان‌نامه \fi تحصیلی دانشجویان} \noindent{\centerline{دانشگاه \@university}\hspace*{\fill}}} \hrule \vspace{3mm} \noindent عنوان: \@title\\ \hrule \vspace{3mm} \noindent نام نویسنده: \@name~\@surname \hspace*{\fill} {\ifx\@firstsupervisor\undefined% \ifx\@secondsupervisor\undefined% \else\fi \else \ifx\@secondsupervisor\undefined\par\noindent% استاد راهنما: { \@firstsupervisor} \else %\large اساتید راهنما: {\@firstsupervisor{} و \@secondsupervisor} \fi\fi}%\par \noindent {\ifx\@firstadvisor\undefined% \ifx\@secondadvisor\undefined% \else\fi \else \ifx\@secondadvisor\undefined% \par\noindent استاد مشاور: { \@firstadvisor} \else %\large اساتید مشاور: {\@firstadvisor{} و \@secondadvisor} \fi\fi} \\ \hrule \vspace{1mm} \noindent دانشکده: \@faculty\hspace{.5cm} گروه: \@department\hspace*{\fill} رشته تحصیلی: \@subject\hspace*{\fill} \vspace{1mm} \hrule \vspace{1mm} \noindent %تاریخ تصویب: %\@okdate\hspace*{\fill} تاریخ دفاع: \@defencedate\hspace*{\fill} \vspace*{1mm} \hrule \vspace*{1mm}\noindent مقطع تحصیلی: \if@arthesis دکتری \else کارشناسی ارشد \fi \hspace*{\fill} تعداد صفحات: \pageref{lastpage} \hspace*{\fill}\vspace*{1mm} \hrule \vspace{1mm} \noindent { \parbox[t][9cm][t]{14cm}{ چکیده \if@arthesis رساله \else پایان‌نامه \fi: \@fa-abstract} } \hrule \par \vspace*{1mm} \noindent واژگان کلیدی: \@keywords \vspace*{3mm} \hrule \vspace*{3mm}\noindent %امضای استاد راهنما: %\hspace*{\fill} %تاریخ: %\hspace*{\fill} \end{frame} \pagebreak\thispagestyle{empty} } %%%%%%%%%%%%%%%%%%%%%%%%%%%%% % presentation \def\presentation#1#2{ \ifnum#1=1 \newpage\thispagestyle{empty} {\nastaliq {\small تقدیم به\\ پدرم که عالمانه به من آموخت تا چگونه در عرصه زندگی، ایستادگی را تجربه نمایم\\ و به مادرم، دریای بی کران فداکاری و عشق که وجودم برایش همه رنج بود \begin{flushleft} و وجودش برایم همه مهر... \end{flushleft} }} \newpage \else #2 \fi %\KashidaOn } % praise \def\praise#1#2{ \ifnum#1=1 \baselineskip=.750cm \thispagestyle{empty} %\KashidaOff {\nastaliq هو العلیم }\\ \\ زیباترین نام را بر زبان جاری می کنم ... که هر کس زبان به حمد تو گشود بی‌تردید نگاه تو بر او افتاده. پس بر قلبم آن جاری کن که خود می‌پسندی در ثنایت لب گشایم.\\ در وادی معرفت نگنجد، سرچشمه هدایت نجوشد، سر بر قامت بندگی فرو نیافتد ...، گر گنجینه‌ای را که مقدسش خواندی و به آن قسم یاد کردی\RTLfootnote{ن و القلمِ و ما یَسطُرونَ}، کوچک شمرده شود و تنها خاطره جوهر خشک شده‌ای از آن بر برگ برگِ صفحات زندگی باقی ماند.\\ تو علم را روشنی قرار دادی و فانوسی در بیغوله راه که مسیر را، راه نماید و تزکیه را مقدم بر آن دانستی تا نگاهبانش باشد که تزکیه و تعلیم در معیت هم گوهر وجودی انسان را به نور تو منور کند، پرده از واقعیات کنار زند. آن جاست که حقیقت رخ نمایاند، نظر فراتر افتد، خوان گنجینه‌های دانش رنگین شود و ... آری آنجاست که آدمی معنا یابد.\\ من اگر وعده‌هایم با تو زیر خروار‌ها تل فراموشی و غفلت مدفون گردیده، اگر زشتی طغیان در نظرم زیبا جلوه‌گری می‌کند و چشمانم خشک‌تر از آن است که در مقام توبه اشکی بر آن جاری شود، بدان از سر جهل است و نسیان...اما بار الها چشمِ طمع بر رحمتت دوخته‌ام و در تمنای رهایی از ظلمت ضلالت، ترنم باران معرفتت را می‌طلبم، امید آنکه جوانه‌های حقیقت را در وجودم برویاند و انعکاس آن چشمانم را روشن کند.\\ اکنون چهره بر چهره خاک می‌سایم و تو را به حبیبت قسم می‌دهم که..." هر آن خصلت ناپسند که در من می‌بینی به لطف واسع خویش اصلاحش فرمای تا پسندیده شود و هر آن عیب که نفسم را به فساد بیالاید از من بازگیر و هر آن نقص که جانم را از کمال باز دارد برطرفش فرمای!"\\ و در آن روز که نوبت زندگانی به سر رسد و پیک مرگ حلقه بر در خانه تن بکوبد و دعوت واجب الاجابه تو از آسمان‌ها به گوش آید...پروردگارا! بر محمد (ص) و آل پاکش درود فرست و به حق ایشان عمر ما را با رستگاری به پایان آور و عاقبتمان را ختم به خیر فرمای...!\\ {\nastaliq {\small \hspace{2cm} زبان قاصر است \, و \, مجال کوتاه... \vspace{1cm} \hspace{2cm} تو خود قصیده‌ی مهر را از لوح نانوشته‌ی قلبم بخوان...! }} \else #2 \fi %\KashidaOn } % thanks \def\thanks#1#2{ \ifnum#1=1 %\KashidaOff \newpage\thispagestyle{empty} % سپاس‌گزاری {\nastaliq } \\[2cm] % با استفاده از دستور زیر، امضای شما، به طور خودکار، درج می‌شود \signature \else #2 \fi %\KashidaOn } % declartion %\usepackage[pagebackref=false,colorlinks,linkcolor=blue,citecolor=magenta]{hyperref} %\usepackage[pagebackref=false]{hyperref} \def\declaration{\thispagestyle{plain}\par\vspace{-2cm} %\begin{frame} %\parbox[t][15cm][t]{14cm}{ %\centerline{\textbf{اظهارنامه}} %\hspace{-.7cm} عنوان \if@arthesis %پایان‌نامه %\else %رساله %\fi %: %\@title % %\vspace*{.5cm} %\hspace{-.6cm}اینجانب \@name \ \@surname\ دانشجوی دوره \if@arthesis %کارشناسی ارشد %\else %دکتری %\fi %دانشکده\ \@faculty\ دانشگاه \@university\ نویسنده \if@arthesis %پایان‌نامه %\else %رساله %\fi %تحت راهنمایی\ \@firstsupervisor\ متعهد می‌شوم: %\begin{enumerate}[a.] %\item %تحقیقات در این رساله توسط اینجانب انجام شده و از صحت و اصالت برخوردار است. %\item %در استفاده از نتایج پژوهش‌های محققان دیگر به مرجع مورد استفاده استناد شده است. %\item %مطالب مندرج در این \if@arthesis %پایان‌نامه %\else %رساله %\fi %تاکنون توسط خود یا فرد دیگری برای دریافت هیچ نوع مدرک یا امتیازی به جایی ارائه نشده است. %\item %کلیه حقوق این اثر متعلق به دانشگاه \@university\ است و مقالات مستخرج با نام "دانشگاه \@university\ " و یا %\LRE{"\@latinuniversity"} %به چاپ خواهد رسید. %\item %حقوق معنوی تمام افرادی که در به دست آمدن نتایج اصلی رساله تاثیرگذار بوده‌اند در مقالات مستخرج از آن رعایت شده است. %\item %در کلیه مراحل انجام این رساله، در مواردی که از موجود زنده(یا بافت‌های آن‌ها) استفاده شده، ضوابط و اصول اخلاقی رعایت شده است. %\item %در کلیه مراحل انجام این رساله، در مواردی که به حوزه اطلاعات شخصی افراد دسترسی یافته یا استفاده شده، اصل رازداری، ضوابط و اصول اخلاقی انسانی رعایت شده است. %\end{enumerate} %} %\vspace*{-2cm}\par\hfill\parbox[t][2cm][t]{3cm}{\begin{center} %\textbf{تاریخ \\امضای دانشجو} %\end{center}} %\begin{frame} %\centerline{\textbf{مالکیت نتایج و حق نشر}} %{\bf\footnotesize %\begin{itemize} %\item %کلیه حقوق این اثر و محصولات آن(مقالات مستخرج، برنامه‌های رایانه‌ای، نرم‌افزارها و تجهیزات ساخته شده) متعلق به دانشگاه \@university\ است. این مطلب بایستی به نحو مقتضی در تولیدات علمی مربوطه ذکر شود. %\item %استفاده از اطلاعات و نتایج این رساله بدون ذکر مرجع مجاز نیست. %\end{itemize}} %\end{frame} %\end{frame} } % latinabstract \newpage \thispagestyle{empty} \newcommand{\latinabstract}{\begin{latin} \vspace*{10mm} {\Large Abstract \if@arthesis Thesis \else \vspace*{7mm} \fi} \@en-abstract \vspace*{4mm} \par \vspace*{2mm} Key Words: \@latinkeywords \end{latin}} % lSpecifications \newcommand{\lSpecifications}{\begin{latin}% \begin{frame} \clearpage\thispagestyle{empty} \includegraphics[height=2cm]{logo}\hspace*{\fill}\\ \vspace*{-2.5cm} \noindent{\centerline{}} %\noindent{\centerline{In the name of God}} \noindent{\centerline{Graduate Studies\if@arthesis Thesis \else Dissertation \fi Information} \noindent{\centerline{\@latinuniversity}\hspace*{\fill}}} \vspace*{8mm} \hrule \vspace{3mm} \noindent %Title of \@latintitle\\ \hrule \vspace{2mm} \noindent Author: \@latinname \; \@latinsurname \hspace*{\fill} {\ifx\@firstlatinsupervisor\undefined% \ifx\@secondlatinsupervisor\undefined% \else\fi \else \ifx\@secondlatnsupervisor\undefined\par\noindent% Supervisor: { \@firstlatinsupervisor} \else \large Supervisors: {\@firstlatinsupervisor{}, \@secondlatinsupervisor} \fi\fi}%\par \noindent {\ifx\@firstlatinadvisor\undefined% \ifx\@secondlatinadvisor\undefined% \else\fi \else \ifx\@secondlatinadvisor\undefined% \par\noindent Advisor: { \@firstlatinadvisor} \else\\ \large Advisors: {\@firstlatinadvisor{} and \@secondlatinadvisor} \fi\fi} \vspace{2mm}\hrule \vspace{2mm} \noindent Faculty: \@latinfaculty\hspace{.5cm} Department: \@latinsubject\hspace*{\fill} \newline Specialization: \@latinfield\hspace*{\fill} \vspace{1mm} \hrule \vspace{1mm} \noindent Approval Date: \@latinokdate\hspace*{\fill} Defence Date: \@latindefencedate\hspace*{\fill} \vspace*{1mm} \hrule \vspace*{2mm}\noindent \if@arthesis M.Sc. \else Ph.D. \fi \hspace*{\fill} Number of Pages: \pageref{lastpage} \hspace*{\fill}\vspace*{1mm} \hrule \vspace{2mm} \noindent\parbox[t][9cm][t]{14.3cm}{ % {Abstract \if@arthesis Thesis \else Dissertation \fi:} \@en-abstract} \vspace*{3mm} \hrule \par \vspace*{2mm} \noindent Key Words: \@latinkeywords \vspace*{1mm} \hrule \vspace*{3mm}\noindent Signature of Supervisor: \hspace*{\fill} Date: \hspace*{\fill} \end{frame} \end{latin}} % lTitle \newcommand{\lTitle}{\begin{latin} \begin{titlepage}\thispagestyle{empty} \vspace{-1.5cm}{\includegraphics[height=4.3cm]{logo1}} \centerline{\bf \@latinuniversity} \large\bfseries \@latinfaculty\space \vskip 9mm %{ \if@arthesis Dissertation Submitted in Partial \\[.05cm] Fulfillment of the Requirements for the \\[.05cm] Doctoral Thesis Submitted in Partial\par \else Dissertation Submitted in Partial \\[.05cm] Fulfillment of the Requirements for the \\[.05cm] Degree of Master of Science in \\[.05cm] %Fulfillment of the Requirements for the %\\[.2cm] %Degree of Doctor of Science in \par \fi {\large\bfseries \@latinsubject} \vskip 1.5cm \baselineskip=.750cm {\titlefont \@latintitle} \baselineskip=.750cm \par %\addtolength{\baselineskip}{-5mm} \vskip 1.5cm \large {\ifx\@firstlatinsupervisor\undefined% \ifx\@secondlatinsupervisor\undefined% \else\fi \else \ifx\@secondlatinsupervisor\undefined% Supervisor {\Large\bfseries\par \@firstlatinsupervisor} \else \large Supervisors \par {\Large\bfseries \@firstlatinsupervisor{} and \@secondlatinsupervisor} \fi\fi} \par \large {\ifx\@firstlatinadvisor\undefined% \ifx\@secondlatinadvisor\undefined% \else\fi \else \ifx\@secondlatinadvisor\undefined% \vskip 5mm Advisor {\Large\bfseries\par \@firstlatinadvisor} \else \large Advisors \par {\Large\bfseries\@firstlatinadvisor{} and \@secondlatinadvisor} \fi\fi} \vskip 5mm \vskip 5mm \par {\bfseries\latinby}\par {\large %\supervisorfont \rm\@latinname \; \@latinsurname}\par \vskip 1cm {\@latinthesisdate} \par \vskip 1cm \par \vfill \end{titlepage}\end{latin}% } %Document Preamble of Buzjani's group for Ferdowsi univercity of mashhad %------------------------------------------------------------------------------------------------------------------- % دستوری تولید نمایه %\immediate\write18{xindy -L persian -C utf8 -M texindy \jobname.idx} % تعریف کلاس سند % Kashida: برای تنظیم کشیدگی خودکار متن(این بسته باعث اختلال در خط نستعلیق می‌شود، openany: برای عدم شروع از صفحات فرد، ar: برای تنظیم پایان‌نامه، phd: برای تنظیم رساله، fleqn: برای چپ‌چین شدن فرمول‌ها %% %% بسته‌ای برای رسم کادر \usepackage{amsthm, amssymb, amsmath, dsfont, bigdelim} \usepackage{tabularx} \usepackage{float} \usepackage{hhline} \allowdisplaybreaks[1] % بسته‌‌هایی برای ظاهر شدن شکل‌ها و تصاویر متن \usepackage{graphicx} \graphicspath{{fig/}} % بسته‌ای برای آوردن چند شکل با هم \usepackage{subfig} % بسته‌ای برای تنطیم حاشیه‌های بالا، پایین، چپ و راست صفحه \usepackage[top=40mm, bottom=40mm, left=25mm, right=35mm]{geometry} % بسته‌ای که باعث ریست شدن شماره پانوشت‌ها در هر صفحه می‌شود \usepackage{perpage} \MakePerPage{footnote} % بسته‌ای برای نوشتن پانوشت‌ها به صورت سطری \usepackage{bidiftnxtra} \RequirePackage[para*,perpage]{ednotes} \SetFootnoteHook{\setLTR} \DeclareNewFootnote[para]{C} \renewcommand{\extrafootnoterule}{} \SelectFootnoteRule[0]{extra} % بسته‌ و دستوراتی برای ایجاد لینک‌های رنگی با امکان جهش \usepackage[pagebackref=false]{hyperref} %\usepackage[pagebackref=false, colorlinks, linkcolor=blue, citecolor=magenta]{hyperref} %\hypersetup{pdfmenubar=true, pdfstartview=FitH, pdfpagemode=FullScreen,colorlinks=true,linkcolor=blue, anchorcolor=green, citecolor=magenta, urlcolor=cyan, filecolor=magenta, pdftoolbar=true, pdfpagemode=UseOutlines,} %\usepackage[pagebackref=false, colorlinks, linkcolor=black, citecolor=black]{hyperref} %\hypersetup{pdfmenubar=true, pdfstartview=FitH, pdfpagemode=FullScreen,colorlinks=true,anchorcolor=green, urlcolor=cyan, filecolor=magenta, pdftoolbar=true, pdfpagemode=UseOutlines,} % بسته‌ لازم برای تنظیم سربرگ‌ها \usepackage{fancyhdr} % بسته‌ای برای ظاهر شدن «مراجع» و «نمایه» در فهرست مطالب \usepackage[nottoc]{tocbibind} % دستورات مربوط به ایجاد نمایه %\usepackage{makeidx} %\makeindex % بسته‌ای برای سروسامان دادن به مراجع (در نوشتن چند مرجع، خط فاصله را استفاده می‌کند.) \usepackage{cite} % بسته‌ای برای چندستونی نوشتن \usepackage{multicol} \usepackage{enumerate} % بسته‌ای برای ارجاع دادن در سرفصل‌ها %\usepackage{bidiftnxtra} % بسته‌ای برای اضافه کردن نمایه و واژه‌نامه \usepackage[xindy]{glossaries} % بسته‌ای برای حذف بخشی از سند \usepackage{comment} % بسته‌ای برای کشیدن قاب \usepackage{framed} \usepackage[all]{xy} \usepackage{mathrsfs, setspace, fancybox} %\usepackage{ulem} \usepackage{picinpar} \usepackage{shapepar} % \if@ABtab %\usepackage{tabvar} %بسته tabvar با cases مشکل دارد. \usepackage{longtable} \usepackage{array} \usepackage{multirow} \else\relax\fi \if@ABfig % بسته‌هایی برای رسم شکل \usepackage[usenames,dvipsnames]{pstricks} \usepackage{epsfig} \usepackage{pst-grad} % For gradients \usepackage{pst-plot} % For axes \usepackage{pst-node} % بسته‌ای برای رسم فلوچارت و شکل‌های ریاضی \usepackage{tikz} \usetikzlibrary{shapes, arrows} % بسته‌هایی برای رسم گراف \usepackage{tkz-graph} \usepackage{tkz-berge} %\usepackage{tikz} %\usetikzlibrary{decorations.pathmorphing} % noisy shapes %\usetikzlibrary{fit} % fitting shapes to coordinates %\usetikzlibrary{backgrounds} % drawing the background after the foreground \else\relax\fi %\if@ABdiag %% بسته‌هایی برای رسم دیاگرام %\usepackage[usenames,dvipsnames]{pstricks} %\usepackage{pst-node} %\else\relax\fi \if@ABprog % بسته‌ای برای نوشتن کدهای برنامه‌نویسی \usepackage{listings} \lstset{% general command to set parameter(s) basicstyle=\small, % print whole listing small keywordstyle=\color{blue}\bfseries, % underlined bold black keywords identifierstyle=, % nothing happens stringstyle=\ttfamily\color{red}, commentstyle=\color{green}, % white comments stringstyle=\ttfamily\color{red}, % typewriter type for strings showstringspaces=false} % no special string spaces %\setlatintextfont[Scale=0.1]{Century} %\baselineskip = .9cm \else\relax\fi \if@ABalg % بسته‌هایی برای % این بسته منحصرا نام‌ها را به فارسی تغییر خواهد داد. %\usepackage{algorithm} \usepackage{algorithmic} \usepackage[boxed,algoruled,shortend,ruled,linesnumbered,vlined]{algorithm2e} % دستوری برای تغییرات فارسی محیط الگوریتم %\renewcommand{\listalgorithmname}{ الگوریتم‌ها} %\renewcommand{\thealgocf}{\arabic{algocf}.\arabic{chapter}} \else\relax\fi %, breqn % بسته breqn با بسته xy مشکل داره باید بسته pb-diagram رو چک کنم. %%%%%%%%%%%%%%%%%%%%%%%%%% % فراخوانی بسته زی‌پرشین و تعریف قلم فارسی و انگلیسی \usepackage{xepersian} %آن‌چه در مورد انتخاب فونت برای ما اهمیت دارد زیبایی تو خالی بودن صفرها و پشتیبانی از تنظیم کشیده‌گی خودکار خطوط است، که همه در فونت یاس \lr{Yas} جمع‌اند. \settextfont[Scale=1.1]{Yas}%Persian Modern % از revision 118 زی‌پرشین به بعد، وارد کردن دستور زیر لازم نیست. توجه داشته باشید که در صورت غیرفعال کردن این دستور، % از فونت پیش‌فرض لاتک برای کلمات انگلیسی استفاده خواهد شد. %\setlatintextfont[ExternalLocation,BoldFont={lmroman10-bold},BoldItalicFont={lmroman10-bolditalic},ItalicFont={lmroman10-italic}]{lmroman10-regular} %%%%%%%%%%%%%%%%%%%%%%%%%% % چنانچه می‌خواهید اعداد در فرمول‌ها، انگلیسی باشد، خط زیر را غیرفعال کنید \setdigitfont[Scale=1.1]{Parsi Digits} %%%%%%%%%%%%%%%%%%%%%%%%%% % تعریف قلم‌های فارسی و انگلیسی اضافی برای استفاده در بعضی از قسمت‌های متن \defpersianfont\nastaliq[Scale=2]{IranNastaliq} \defpersianfont\sols[Scale=1.5]{XB Sols} \defpersianfont\chapternumber[Scale=3]{XB Niloofar} \defpersianfont\titr[Scale=1]{XB Titre} %%%%%%%%%%%%%%%%%%%%%%%%%% % دستوری برای حذف کلمه «چکیده» %\renewcommand{\abstractname}{} % دستوری برای حذف کلمه «abstract» %\renewcommand{\latinabstract}{} % دستوری برای تغییر نام کلمه «اثبات» به «برهان» \renewcommand\proofname{\textbf{برهان}} % دستوری برای تغییر نام کلمه «کتاب‌نامه» به «مراجع» \renewcommand{\bibname}{مراجع} \renewcommand{\listfigurename}{فهرست شکل‌ها} \renewcommand{\listtablename}{فهرست جدول‌ها} %\renewcommand{\listalgorithmname}{فهرست الگوریتم‌ها} \renewcommand{\listalgorithmcfname}{فهرست الگوریتم‌ها} % دستوری برای تعریف واژه‌نامه انگلیسی به فارسی %\newcommand\persiangloss[2]{#1\dotfill\lr{#2}\\} %دستوری برای تعریف واژه‌نامه فارسی به انگلیسی \newcommand\englishgloss[2]{#2\dotfill\lr{#1}\\} %%%%%%%%%%%%%%%%%%%%%%%%% % تعریف و نحوه ظاهر شدن عنوان قضیه‌ها، تعریف‌ها، مثال‌ها و ... \theoremstyle{definition} \newtheorem{theorem}{قضیه}[section] \newtheorem{definition}[theorem]{تعریف} \newtheorem{example}[theorem]{مثال} \newtheorem{lemma}[theorem]{لم} \newtheorem{proposition}[theorem]{گزاره} \newtheorem{corollary}[theorem]{نتیجه} \newtheorem{remark}[theorem]{ملاحظه} \newtheorem{treaty}[theorem]{قرارداد} \newtheorem{rema}[theorem]{تبصره} \newtheorem{notice}[theorem]{توجه} \newtheorem{hint}[theorem]{تذکر} \newtheorem{point}[theorem]{نکته} \newtheorem{problem}[theorem]{مساله} \newtheorem{rem}[theorem]{یادآوری} \newtheorem{hads}[theorem]{حدس} \newtheorem{notation}[theorem]{نمادگذاری} \newtheorem{x}[theorem]{} \newenvironment{solution}{{\bf \noindent \\ حل. } \rm } % محیط‌های آزاد با و بدون شماره \newcommand{\nameB}{} \newtheorem*{envB}{\nameB} \newenvironment{fenv}[1][پیش‌فرض] {\renewcommand{\nameB}{#1}\begin{envB}}{\end{envB}} \newcommand{\nameA}{} \newtheorem{envA}{\nameA} \newenvironment{fcenv}[1][پیش‌فرض] {\renewcommand{\nameA}{#1}\begin{envA}}{\end{envA}} %%%%%%%%%%%%%%%%%%%%%%%%%% % تعریف دستورات جدید برای خلاصه نویسی و راحتی کا در هنگام تایپ فرمول‌های ریاضی \newcommand{\op}[1]{\mathop{#1}\limits} %%%%%%%%%%%%%%%%%%%%%%%%%%%% % دستورهایی برای سفارشی کردن سربرگ صفحات %\csname@twosidetrue\endcsname \pagestyle{fancy} \fancyhf{} %\fancyhead[OL,EL]{\thepage} %\fancyhead[OR,ER]{\small\leftmark} \fancyhead[OL]{\thepage} \fancyhead[OR]{\small\leftmark} \renewcommand{\chaptermark}[1]{% \markboth{#1}{\thepage}} %\markboth{\thechapter.\ #1}{}} %%%%%%%%%%%%%%%%%%%%%%%%%%%%% % دستورهایی برای سفارشی کردن صفحات اول فصل‌ها %\makeatletter \newcommand\mycustomraggedright{% \if@RTL\raggedleft% \else\raggedright% \fi} \def\@part[#1]#2{% \ifnum \c@secnumdepth >-2\relax \refstepcounter{part}% \addcontentsline{toc}{part}{\thepart\hspace{1em}#1}% \else \addcontentsline{toc}{part}{#1}% \fi \markboth{}{}% {\centering \interlinepenalty \@M \ifnum \c@secnumdepth >-2\relax \huge\bfseries \partname\nobreakspace\thepart \par \vskip 40\p@ \fi \Huge\bfseries #2\par}% \@endpart} \def\@makechapterhead#1{% \vspace*{80\p@}% {\parindent \z@ \mycustomraggedright %\@mycustomfont \ifnum \c@secnumdepth >\m@ne \if@mainmatter % این دو جفت محیط center باعث وسط چین شدن عنوان فصل می‌شوند. %\begin{center} \huge\bfseries\@chapapp\space {\chapternumber\thechapter} %\end{center} \par\nobreak \vskip 20\p@ \fi \fi \interlinepenalty\@M %\begin{center} \Huge \bfseries #1\par\nobreak %\end{center} \vskip 50\p@ }} \makeatother % دستوراتی برای تنظیم شماره لاتین برای پانوشت‌ها \makeatletter \def\@makeLTRfnmark{\hbox{\@textsuperscript{\latinfont\@thefnmark}}} \renewcommand\@makefntext[1]{% \parindent 1em% \noindent \hb@xt@1.8em{\hss\if@RTL\@makefnmark\else\@makeLTRfnmark\fi}#1} \makeatother % دستوری برای تنظیم فرمول‌ها در حالت نمایشی \everymath\expandafter{\the\everymath \displaystyle} % دستوراتی برای تنظیم و تولید واژه‌نامه به صورت خودکار % %style=listgroup,nonumberlist \newglossarystyle{mylistFa}{ \glossarystyle{list}\addcontentsline{toc}{chapter}{واژه‌نامه فارسی به انگلیسی} \renewenvironment{theglossary}{}{} \renewcommand*{\glossaryheader}{} \renewcommand*{\glsgroupheading}[1]{\section*{\glsgetgrouptitle{##1}}} \renewcommand*{\glsgroupskip}{} \renewcommand*{\glossaryentryfield}[5] {\noindent\glstarget{##1}{##2}\dotfill \space ##3 \\} \renewcommand*{\glossarysubentryfield}[6]{\glossaryentryfield{##2}{##3}{##4}{##5}{##6}} } %\newglossarystyle{mylistEn}{ %\glossarystyle{list}\addcontentsline{toc}{chapter}{واژه‌نامه انگلیسی به فارسی} %\renewenvironment{theglossary}{}{} %\renewcommand*{\glossaryheader}{} %\renewcommand*{\glsgroupheading}[1]{\begin{LTR} \section*{\lr{\glsgetgrouptitle{##1}}} \end{LTR}} %\renewcommand*{\glsgroupskip}{} %\renewcommand*{\glossaryentryfield}[5] {\noindent\glstarget{##1}{##3}\dotfill \space ##2 \\} %\renewcommand*{\glossarysubentryfield}[6]{\glossaryentryfield{##2}{##3}{##4}{##5}{##6}} %} % تعریف دو نمونه واژه نامه %\newglossary[glg]{english}{gls}{glo}{واژه‌نامه انگلیسی به فارسی} \newglossary[blg]{persian}{bls}{blo}{واژه‌نامه فارسی به انگلیسی} % توسط این دستور واژه مورد نظر در متن، هر دو واژه نامه و پاورقی می آید. \newcommand{\inpdic}[2]{ \newglossaryentry{fa-#1}{type=persian,name={#1}, sort={#1},description={\lr{#2}}}\gls{fa-#1}\LTRfootnote{#2} \newglossaryentry{en-#1}{type=english,name={\lr{#2}}, sort={#2},description={#1}}\glsuseri{en-#1} } % توسط این دستور واژه مورد نظر در متن، هر دو واژه نامه می آید. \newcommand{\indic}[2]{ \newglossaryentry{fa-#1}{type=persian,name={#1}, sort={#1},description={\lr{#2}}}\gls{fa-#1} \newglossaryentry{en-#1}{type=english,name={\lr{#2}}, sort={#2},description={#1}}\glsuseri{en-#1} } % توسط این دستور واژه مورد نظر فقط در هر دو واژه نامه می آید. \newcommand{\ingls}[2]{ \newglossaryentry{fa-#2}{type=persian,name={#2}, sort={#2},description={\lr{#1}}}\glsuseri{fa-#2} \newglossaryentry{en-#2}{type=english,name={\lr{#1}}, sort={#1},description={#2}}\glsuseri{en-#2} } \makeglossaries \glsdisablehyper % دستوراتی برای دست‌کاری تعریف bordermatrix \makeatletter \newif\if@borderstar \def\bordermatrix{\@ifnextchar*{% \@borderstartrue\@bordermatrix@i}{\@borderstarfalse\@bordermatrix@i*}% } \def\@bordermatrix@i*{\@ifnextchar[{\@bordermatrix@ii}{\@bordermatrix@ii[()]}} \def\@bordermatrix@ii[#1]#2{% \begingroup \m@th\@tempdima8.75\p@\setbox\z@\vbox{% \def\cr{\crcr\noalign{\kern 2\p@\global\let\cr\endline }}% \ialign {$##$\hfil\kern 2\p@\kern\@tempdima & \thinspace % \hfil $##$\hfil && \quad\hfil $##$\hfil\crcr\omit\strut % \hfil\crcr\noalign{\kern -\baselineskip}#2\crcr\omit % \strut\cr}}% \setbox\tw@\vbox{\unvcopy\z@\global\setbox\@ne\lastbox}% \setbox\tw@\hbox{\unhbox\@ne\unskip\global\setbox\@ne\lastbox}% \setbox\tw@\hbox{% $\kern\wd\@ne\kern -\@tempdima\left\@firstoftwo#1% \if@borderstar\kern2pt\else\kern -\wd\@ne\fi% \global\setbox\@ne\vbox{\box\@ne\if@borderstar\else\kern 2\p@\fi}% \vcenter{\if@borderstar\else\kern -\ht\@ne\fi% \unvbox\z@\kern-\if@borderstar2\fi\baselineskip}% \if@borderstar\kern-2\@tempdima\kern2\p@\else\,\fi\right\@secondoftwo#1 $% }\null \;\vbox{\kern\ht\@ne\box\tw@}% \endgroup } %\makeatother % دستوراتی برای تنظیم شمارنده‌ها‮ \numberwithin{equation}{chapter} \numberwithin{table}{chapter} \numberwithin{figure}{chapter} %\numberwithin{algorithm}{chapter} %\renewcommand\theequation{\arabic{equation}} %\renewcommand\thefigure{\arabic{figure}} %\renewcommand\thetable{\arabic{table}}