Initial commit
This commit is contained in:
		
							
								
								
									
										1703
									
								
								Jauslin_2023.tex
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										1703
									
								
								Jauslin_2023.tex
									
									
									
									
									
										Normal file
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							
							
								
								
									
										46
									
								
								Makefile
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										46
									
								
								Makefile
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,46 @@ | |||||||
|  | PROJECTNAME=$(basename $(wildcard *.tex)) | ||||||
|  | LIBS=$(notdir $(wildcard libs/*)) | ||||||
|  |  | ||||||
|  | PDFS=$(addsuffix .pdf, $(PROJECTNAME)) | ||||||
|  | SYNCTEXS=$(addsuffix .synctex.gz, $(PROJECTNAME)) | ||||||
|  |  | ||||||
|  | all: $(PROJECTNAME) | ||||||
|  |  | ||||||
|  | $(PROJECTNAME): $(LIBS) | ||||||
|  | 	pdflatex -file-line-error $@.tex | ||||||
|  | 	pdflatex -file-line-error $@.tex | ||||||
|  | 	pdflatex -synctex=1 $@.tex | ||||||
|  |  | ||||||
|  | $(PROJECTNAME).aux: $(LIBS) | ||||||
|  | 	pdflatex -file-line-error -draftmode $(PROJECTNAME).tex | ||||||
|  |  | ||||||
|  |  | ||||||
|  | $(SYNCTEXS): $(LIBS) | ||||||
|  | 	pdflatex -synctex=1 $(patsubst %.synctex.gz, %.tex, $@) | ||||||
|  |  | ||||||
|  |  | ||||||
|  | libs: $(LIBS) | ||||||
|  |  | ||||||
|  | $(LIBS): | ||||||
|  | 	ln -fs libs/$@ ./ | ||||||
|  |  | ||||||
|  | bibliography/bibliography.tex: $(PROJECTNAME).aux | ||||||
|  | 	BBlog -c bibliography/conf.BBlog -d $(BIBLIOGRAPHY) -b bibliography/bibliography.tex | ||||||
|  |  | ||||||
|  |  | ||||||
|  | clean-aux: | ||||||
|  | 	rm -f $(addsuffix .aux, $(PROJECTNAME)) | ||||||
|  | 	rm -f $(addsuffix .log, $(PROJECTNAME)) | ||||||
|  | 	rm -f $(addsuffix .out, $(PROJECTNAME)) | ||||||
|  | 	rm -f $(addsuffix .toc, $(PROJECTNAME)) | ||||||
|  |  | ||||||
|  | clean-libs: | ||||||
|  | 	rm -f $(LIBS) | ||||||
|  |  | ||||||
|  | clean-tex: | ||||||
|  | 	rm -f $(PDFS) $(SYNCTEXS) | ||||||
|  |  | ||||||
|  | clean-bibliography: | ||||||
|  | 	rm -f bibliography/bibliography.tex | ||||||
|  |  | ||||||
|  | clean: clean-aux clean-tex clean-libs | ||||||
							
								
								
									
										33
									
								
								README
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										33
									
								
								README
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,33 @@ | |||||||
|  | This directory contains the source files to typeset the article, and generate | ||||||
|  | the figures. This can be accomplished by running | ||||||
|  |   make | ||||||
|  |  | ||||||
|  | This document uses a custom class file, located in the 'libs' directory, which | ||||||
|  | defines a number of commands. Most of these are drop-in replacements for those | ||||||
|  | defined in the 'article' class. | ||||||
|  |  | ||||||
|  | Some extra functionality is provided in custom style files, located in the | ||||||
|  | 'libs' directory. | ||||||
|  |  | ||||||
|  |  | ||||||
|  | * Dependencies: | ||||||
|  |  | ||||||
|  |   pdflatex | ||||||
|  |   TeXlive packages: | ||||||
|  |     amsfonts | ||||||
|  |     color | ||||||
|  |     doublestroke | ||||||
|  |     etoolbox | ||||||
|  |     hyperref | ||||||
|  |     latex | ||||||
|  |     marginnote | ||||||
|  |   GNU make | ||||||
|  |  | ||||||
|  | * Files: | ||||||
|  |  | ||||||
|  |   Jauslin_2023.tex: | ||||||
|  |     main LaTeX file | ||||||
|  |  | ||||||
|  |   libs: | ||||||
|  |     custom LaTeX class file | ||||||
|  |  | ||||||
							
								
								
									
										93
									
								
								bibliography/bibliography.tex
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										93
									
								
								bibliography/bibliography.tex
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,93 @@ | |||||||
|  | \bibitem[BCS21]{BCS21}G. Basti, S. Cenatiempo, B. Schlein - {\it A new second-order upper bound for the ground state energy of dilute Bose gases}, Forum of Mathematics, Sigma, volume\-~9, number e74, 2021,\par\penalty10000 | ||||||
|  | doi:{\tt\color{blue}\href{http://dx.doi.org/10.1017/fms.2021.66}{10.1017/fms.2021.66}}, arxiv:{\tt\color{blue}\href{http://arxiv.org/abs/2101.06222}{2101.06222}}.\par\medskip | ||||||
|  |   | ||||||
|  | \bibitem[BBe18]{BBe18}C. Boccato, C. Brennecke, S. Cenatiempo, B. Schlein - {\it Complete Bose–Einstein Condensation in the Gross–Pitaevskii Regime}, Communications in Mathematical Physics, volume\-~359, issue\-~3, pages\-~975-1026, 2018,\par\penalty10000 | ||||||
|  | doi:{\tt\color{blue}\href{http://dx.doi.org/10.1007/s00220-017-3016-5}{10.1007/s00220-017-3016-5}}.\par\medskip | ||||||
|  |   | ||||||
|  | \bibitem[BBe19]{BBe19}C. Boccato, C. Brennecke, S. Cenatiempo, B. Schlein - {\it Bogoliubov theory in the Gross–Pitaevskii limit}, Acta Mathematica, volume\-~222, issue\-~2, pages\-~219-335, 2019,\par\penalty10000 | ||||||
|  | doi:{\tt\color{blue}\href{http://dx.doi.org/10.4310/ACTA.2019.v222.n2.a1}{10.4310/ACTA.2019.v222.n2.a1}}, arxiv:{\tt\color{blue}\href{http://arxiv.org/abs/1801.01389}{1801.01389}}.\par\medskip | ||||||
|  |   | ||||||
|  | \bibitem[BBe20]{BBe20}C. Boccato, C. Brennecke, S. Cenatiempo, B. Schlein - {\it Optimal Rate for Bose-Einstein Condensation in the Gross-Pitaevskii Regime}, Communications in Mathematical Physics, volume\-~376, issue\-~2, pages\-~1311-1395, 2020,\par\penalty10000 | ||||||
|  | doi:{\tt\color{blue}\href{http://dx.doi.org/10.1007/s00220-019-03555-9}{10.1007/s00220-019-03555-9}}, arxiv:{\tt\color{blue}\href{http://arxiv.org/abs/1812.03086}{1812.03086}}.\par\medskip | ||||||
|  |   | ||||||
|  | \bibitem[Bo47]{Bo47}N. Bogolubov - {\it On the theory of superfluidity}, Journal of Physics (USSR), volume\-~11, number\-~1, pages\-~23-32 (translated from the Russian Izv.Akad.Nauk Ser.Fiz, volume\-~11, pages\-~77-90), 1947.\par\medskip | ||||||
|  |   | ||||||
|  | \bibitem[BSS22]{BSS22}C. Brennecke, B. Schlein, S. Schraven - {\it Bose-Einstein Condensation with Optimal Rate for Trapped Bosons in the Gross-Pitaevskii Regime}, Mathematical Physics, Analysis and Geometry, volume\-~25, issue\-~2, pages\-~1-71, 2022,\par\penalty10000 | ||||||
|  | doi:{\tt\color{blue}\href{http://dx.doi.org/10.1007/s11040-022-09424-7}{10.1007/s11040-022-09424-7}}, arxiv:{\tt\color{blue}\href{http://arxiv.org/abs/2102.11052}{2102.11052}}.\par\medskip | ||||||
|  |   | ||||||
|  | \bibitem[BSS22b]{BSS22b}C. Brennecke, B. Schlein, S. Schraven - {\it Bogoliubov Theory for Trapped Bosons in the Gross-Pitaevskii Regime}, Annales Henri Poincaré, volume\-~23, issue\-~5, pages\-~1583-1658, 2022,\par\penalty10000 | ||||||
|  | doi:{\tt\color{blue}\href{http://dx.doi.org/10.1007/s00023-021-01151-z}{10.1007/s00023-021-01151-z}}, arxiv:{\tt\color{blue}\href{http://arxiv.org/abs/2108.11129}{2108.11129}}.\par\medskip | ||||||
|  |   | ||||||
|  | \bibitem[CHe21]{CHe21}E.A. Carlen, M. Holzmann, I. Jauslin, E.H. Lieb - {\it Simplified approach to the repulsive Bose gas from low to high densities and its numerical accuracy}, Physical Review A, volume\-~103, issue\-~5, number\-~053309, 2021,\par\penalty10000 | ||||||
|  | doi:{\tt\color{blue}\href{http://dx.doi.org/10.1103/PhysRevA.103.053309}{10.1103/PhysRevA.103.053309}}, arxiv:{\tt\color{blue}\href{http://arxiv.org/abs/2011.10869}{2011.10869}}.\par\medskip | ||||||
|  |   | ||||||
|  | \bibitem[CJL20]{CJL20}E.A. Carlen, I. Jauslin, E.H. Lieb - {\it Analysis of a simple equation for the ground state energy of the Bose gas}, Pure and Applied Analysis, volume\-~2, issue\-~3, pages\-~659-684, 2020,\par\penalty10000 | ||||||
|  | doi:{\tt\color{blue}\href{http://dx.doi.org/10.2140/paa.2020.2.659}{10.2140/paa.2020.2.659}}, arxiv:{\tt\color{blue}\href{http://arxiv.org/abs/1912.04987}{1912.04987}}.\par\medskip | ||||||
|  |   | ||||||
|  | \bibitem[CJL21]{CJL21}E.A. Carlen, I. Jauslin, E.H. Lieb - {\it Analysis of a Simple Equation for the Ground State of the Bose Gas II: Monotonicity, Convexity, and Condensate Fraction}, SIAM Journal on Mathematical Analysis, volume\-~53, number\-~5, pages\-~5322-5360, 2021,\par\penalty10000 | ||||||
|  | doi:{\tt\color{blue}\href{http://dx.doi.org/10.1137/20M1376820}{10.1137/20M1376820}}, arxiv:{\tt\color{blue}\href{http://arxiv.org/abs/2010.13882}{2010.13882}}.\par\medskip | ||||||
|  |   | ||||||
|  | \bibitem[DS20]{DS20}A. Deuchert, R. Seiringer - {\it Gross-Pitaevskii Limit of a Homogeneous Bose Gas at Positive Temperature}, Archive for Rational Mechanics and Analysis, volume\-~236, issue\-~3, pages\-~1217-1271, 2020,\par\penalty10000 | ||||||
|  | doi:{\tt\color{blue}\href{http://dx.doi.org/10.1007/s00205-020-01489-4}{10.1007/s00205-020-01489-4}}, arxiv:{\tt\color{blue}\href{http://arxiv.org/abs/1901.11363}{1901.11363}}.\par\medskip | ||||||
|  |   | ||||||
|  | \bibitem[DSY19]{DSY19}A. Deuchert, R. Seiringer, J. Yngvason - {\it Bose-Einstein Condensation in a Dilute, Trapped Gas at Positive Temperature}, Communications in Mathematical Physics, volume\-~368, issue\-~2, pages\-~723-776, 2019,\par\penalty10000 | ||||||
|  | doi:{\tt\color{blue}\href{http://dx.doi.org/10.1007/s00220-018-3239-0}{10.1007/s00220-018-3239-0}}, arxiv:{\tt\color{blue}\href{http://arxiv.org/abs/1803.05180}{1803.05180}}.\par\medskip | ||||||
|  |   | ||||||
|  | \bibitem[Dy57]{Dy57}F.J. Dyson - {\it Ground-State Energy of a Hard-Sphere Gas}, Physical Review, volume\-~106, issue\-~1, pages\-~20-26, 1957,\par\penalty10000 | ||||||
|  | doi:{\tt\color{blue}\href{http://dx.doi.org/10.1103/PhysRev.106.20}{10.1103/PhysRev.106.20}}.\par\medskip | ||||||
|  |   | ||||||
|  | \bibitem[FS20]{FS20}S. Fournais, J.P. Solovej - {\it  The energy of dilute Bose gases}, Annals of Mathematics, volume\-~192, issue\-~3, pages\-~893-976, 2020,\par\penalty10000 | ||||||
|  | doi:{\tt\color{blue}\href{http://dx.doi.org/10.4007/annals.2020.192.3.5}{10.4007/annals.2020.192.3.5}}, arxiv:{\tt\color{blue}\href{http://arxiv.org/abs/1904.06164}{1904.06164}}.\par\medskip | ||||||
|  |   | ||||||
|  | \bibitem[FS22]{FS22}S. Fournais, J.P. Solovej - {\it The energy of dilute Bose gases II: the general case}, Inventiones mathematicae, volume , issue , pages\-~1-132, 2022,\par\penalty10000 | ||||||
|  | doi:{\tt\color{blue}\href{http://dx.doi.org/10.1007/s00222-022-01175-0}{10.1007/s00222-022-01175-0}}, arxiv:{\tt\color{blue}\href{http://arxiv.org/abs/2108.12022}{2108.12022}}.\par\medskip | ||||||
|  |   | ||||||
|  | \bibitem[Gr61]{Gr61}E.P. Gross - {\it Structure of a quantized vortex in boson systems}, Il Nuovo Cimento (1955-1965), volume\-~20, issue\-~3, pages\-~454-477, 1961,\par\penalty10000 | ||||||
|  | doi:{\tt\color{blue}\href{http://dx.doi.org/10.1007/BF02731494}{10.1007/BF02731494}}.\par\medskip | ||||||
|  |   | ||||||
|  | \bibitem[HST22]{HST22}C.\-~Hainzl, B.\-~Schlein, A.\-~Triay - {\it Bogoliubov theory in the Gross-Pitaevskii limit}, arXiv preprint, 2022\par\penalty10000 | ||||||
|  | arxiv:{\tt\color{blue}\href{https://arxiv.org/abs/2203.03440}{2203.03440}}.\par\medskip | ||||||
|  |   | ||||||
|  | \bibitem[Ja22]{Ja22}I. Jauslin - {\it Review of a Simplified Approach to study the Bose gas at all densities}, The Physics and Mathematics of Elliott Lieb, The\-~90th Anniversary Volume I, chapter\-~25, pages\-~609-635, ed. Rupert L. Frank, Ari Laptev, Mathieu Lewin, Robert Seiringer, EMS Press, 2022,\par\penalty10000 | ||||||
|  | doi:{\tt\color{blue}\href{http://dx.doi.org/10.4171/90-1/25}{10.4171/90-1/25}}, arxiv:{\tt\color{blue}\href{http://arxiv.org/abs/2202.07637}{2202.07637}}.\par\medskip | ||||||
|  |   | ||||||
|  | \bibitem[LHY57]{LHY57}T.D. Lee, K. Huang, C.N. Yang - {\it Eigenvalues and Eigenfunctions of a Bose System of Hard Spheres and Its Low-Temperature Properties}, Physical Review, volume\-~106, issue\-~6, pages\-~1135-1145, 1957,\par\penalty10000 | ||||||
|  | doi:{\tt\color{blue}\href{http://dx.doi.org/10.1103/PhysRev.106.1135}{10.1103/PhysRev.106.1135}}.\par\medskip | ||||||
|  |   | ||||||
|  | \bibitem[Li63]{Li63}E.H. Lieb - {\it Simplified Approach to the Ground-State Energy of an Imperfect Bose Gas}, Physical Review, volume\-~130, issue\-~6, pages\-~2518-2528, 1963,\par\penalty10000 | ||||||
|  | doi:{\tt\color{blue}\href{http://dx.doi.org/10.1103/PhysRev.130.2518}{10.1103/PhysRev.130.2518}}.\par\medskip | ||||||
|  |   | ||||||
|  | \bibitem[LL64]{LL64}E.H. Lieb, W. Liniger - {\it Simplified Approach to the Ground-State Energy of an Imperfect Bose Gas. III. Application to the One-Dimensional Model}, Physical Review, volume\-~134, issue\-~2A, pages A312-A315, 1964,\par\penalty10000 | ||||||
|  | doi:{\tt\color{blue}\href{http://dx.doi.org/10.1103/PhysRev.134.A312}{10.1103/PhysRev.134.A312}}.\par\medskip | ||||||
|  |   | ||||||
|  | \bibitem[LS64]{LS64}E.H. Lieb, A.Y. Sakakura - {\it Simplified Approach to the Ground-State Energy of an Imperfect Bose Gas. II. Charged Bose Gas at High Density}, Physical Review, volume\-~133, issue\-~4A, pages A899-A906, 1964,\par\penalty10000 | ||||||
|  | doi:{\tt\color{blue}\href{http://dx.doi.org/10.1103/PhysRev.133.A899}{10.1103/PhysRev.133.A899}}.\par\medskip | ||||||
|  |   | ||||||
|  | \bibitem[LS02]{LS02}E.H. Lieb, R. Seiringer - {\it Proof of Bose-Einstein Condensation for Dilute Trapped Gases}, Physical Review Letters, volume\-~88, issue\-~17, number\-~170409, 2002,\par\penalty10000 | ||||||
|  | doi:{\tt\color{blue}\href{http://dx.doi.org/10.1103/PhysRevLett.88.170409}{10.1103/PhysRevLett.88.170409}}, arxiv:{\tt\color{blue}\href{http://arxiv.org/abs/math-ph/0112032}{math-ph/0112032}}.\par\medskip | ||||||
|  |   | ||||||
|  | \bibitem[LSe05]{LSe05}E.H. Lieb, R. Seiringer, J.P. Solovej, J. Yngvason - {\it The Mathematics of the Bose Gas and its Condensation}, Oberwolfach Seminars, volume\-~34, Birkha\"user, 2005, arxiv:{\tt\color{blue}\href{http://arxiv.org/abs/cond-mat/0610117}{cond-mat/0610117}}.\par\medskip | ||||||
|  |   | ||||||
|  | \bibitem[LSY00]{LSY00}E.H. Lieb, R. Seiringer, J. Yngvason - {\it Bosons in a trap: A rigorous derivation of the Gross-Pitaevskii energy functional}, Physical Review A, volume\-~61, issue\-~4, number\-~043602, 2000,\par\penalty10000 | ||||||
|  | doi:{\tt\color{blue}\href{http://dx.doi.org/10.1103/PhysRevA.61.043602}{10.1103/PhysRevA.61.043602}}, arxiv:{\tt\color{blue}\href{http://arxiv.org/abs/math-ph/9908027}{math-ph/9908027}}.\par\medskip | ||||||
|  |   | ||||||
|  | \bibitem[LY98]{LY98}E.H. Lieb, J. Yngvason - {\it Ground State Energy of the Low Density Bose Gas}, Physical Review Letters, volume\-~80, issue\-~12, pages\-~2504-2507, 1998,\par\penalty10000 | ||||||
|  | doi:{\tt\color{blue}\href{http://dx.doi.org/10.1103/PhysRevLett.80.2504}{10.1103/PhysRevLett.80.2504}}, arxiv:{\tt\color{blue}\href{http://arxiv.org/abs/cond-mat/9712138}{cond-mat/9712138}}.\par\medskip | ||||||
|  |   | ||||||
|  | \bibitem[NNe22]{NNe22}P.T. Nam, M. Napi\'orkowski, J. Ricaud, A. Triay - {\it Optimal rate of condensation for trapped bosons in the Gross–Pitaevskii regime}, Analysis and PDE, volume\-~15, issue\-~6, pages\-~1585-1616, 2022,\par\penalty10000 | ||||||
|  | doi:{\tt\color{blue}\href{http://dx.doi.org/10.2140/apde.2022.15.1585}{10.2140/apde.2022.15.1585}}, arxiv:{\tt\color{blue}\href{http://arxiv.org/abs/2001.04364}{2001.04364}}.\par\medskip | ||||||
|  |   | ||||||
|  | \bibitem[NRS16]{NRS16}P.T. Nam, N. Rougerie, R. Seiringer - {\it Ground states of large bosonic systems : the Gross–Pitaevskii limit revisited}, Analysis and PDE, volume\-~9, issue\-~2, pages\-~459-485, 2016,\par\penalty10000 | ||||||
|  | doi:{\tt\color{blue}\href{http://dx.doi.org/10.2140/apde.2016.9.459}{10.2140/apde.2016.9.459}}, arxiv:{\tt\color{blue}\href{http://arxiv.org/abs/1503.07061}{1503.07061}}.\par\medskip | ||||||
|  |   | ||||||
|  | \bibitem[NT21]{NT21}P.T.\-~Nam, A.\-~Triay - {\it Bogoliubov excitation spectrum of trapped Bose gases in the Gross-Pitaevskii regime}, arXiv preprint, 2021\par\penalty10000 | ||||||
|  | arxiv:{\tt\color{blue}\href{https://arxiv.org/abs/2106.11949}{2106.11949}}.\par\medskip | ||||||
|  |   | ||||||
|  | \bibitem[Pi61]{Pi61}L.P. Pitaevskii - {\it Vortex lines in an imperfect Bose gas}, Soviet Physics JETP, volume\-~13, number\-~2, pages\-~451-454, 1961.\par\medskip | ||||||
|  |   | ||||||
|  | \bibitem[Sc22]{Sc22}B. Schlein - {\it Bose gases in the Gross-Pitaevskii limit: A survey of some rigorous results}, The Physics and Mathematics of Elliott Lieb, The\-~90th anniversary volume II, eds R.L. Frank, A. Laptev, M. Lewin, R. Seiringer, pages\-~277-305, 2022,\par\penalty10000 | ||||||
|  | doi:{\tt\color{blue}\href{http://dx.doi.org/10.4171/90-2/40}{10.4171/90-2/40}}, arxiv:{\tt\color{blue}\href{http://arxiv.org/abs/2203.10855}{2203.10855}}.\par\medskip | ||||||
|  |   | ||||||
|  | \bibitem[YY09]{YY09}H. Yau, J. Yin - {\it The Second Order Upper Bound for the Ground Energy of a Bose Gas}, Journal of Statistical Physics, volume\-~136, issue\-~3, pages\-~453-503, 2009,\par\penalty10000 | ||||||
|  | doi:{\tt\color{blue}\href{http://dx.doi.org/10.1007/s10955-009-9792-3}{10.1007/s10955-009-9792-3}}, arxiv:{\tt\color{blue}\href{http://arxiv.org/abs/0903.5347}{0903.5347}}.\par\medskip | ||||||
|  |   | ||||||
							
								
								
									
										667
									
								
								libs/ian.cls
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										667
									
								
								libs/ian.cls
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,667 @@ | |||||||
|  | %% | ||||||
|  | %% Ian's class file | ||||||
|  | %% | ||||||
|  |  | ||||||
|  | %% TeX format | ||||||
|  | \NeedsTeXFormat{LaTeX2e}[1995/12/01] | ||||||
|  |  | ||||||
|  | %% class name | ||||||
|  | \ProvidesClass{ian}[2017/09/29] | ||||||
|  |  | ||||||
|  | %% boolean to signal that this class is being used | ||||||
|  | \newif\ifianclass | ||||||
|  | \ianclasstrue | ||||||
|  |  | ||||||
|  | %% options | ||||||
|  | % no section numbering in equations | ||||||
|  | \DeclareOption{section_in_eq}{\sectionsineqtrue} | ||||||
|  | \DeclareOption{section_in_fig}{\sectionsinfigtrue} | ||||||
|  | \DeclareOption{section_in_all}{\sectionsineqtrue\sectionsinfigtrue} | ||||||
|  | \DeclareOption{subsection_in_eq}{\subsectionsineqtrue} | ||||||
|  | \DeclareOption{subsection_in_fig}{\subsectionsinfigtrue} | ||||||
|  | \DeclareOption{subsection_in_all}{\subsectionsineqtrue\subsectionsinfigtrue} | ||||||
|  | \DeclareOption{no_section_in_eq}{\sectionsineqfalse} | ||||||
|  | \DeclareOption{no_section_in_fig}{\sectionsinfigfalse} | ||||||
|  | \DeclareOption{no_section_in_all}{\sectionsineqfalse\sectionsinfigfalse} | ||||||
|  | \DeclareOption{no_subsection_in_eq}{\subsectionsineqfalse} | ||||||
|  | \DeclareOption{no_subsection_in_fig}{\subsectionsinfigfalse} | ||||||
|  | \DeclareOption{no_subsection_in_all}{\subsectionsineqfalse\subsectionsinfigfalse} | ||||||
|  |  | ||||||
|  | \def\ian@defaultoptions{ | ||||||
|  |   \ExecuteOptions{section_in_all, no_subsection_in_all} | ||||||
|  |   \ProcessOptions | ||||||
|  |  | ||||||
|  |   %% required packages | ||||||
|  |   \RequirePackage{color} | ||||||
|  |   \RequirePackage{marginnote} | ||||||
|  |   \RequirePackage{amssymb} | ||||||
|  |   \PassOptionsToPackage{hidelinks}{hyperref} | ||||||
|  |   \RequirePackage{hyperref} | ||||||
|  |  | ||||||
|  |   \pagestyle{plain} | ||||||
|  | } | ||||||
|  |  | ||||||
|  | %% paper dimensions | ||||||
|  | \setlength\paperheight{297mm} | ||||||
|  | \setlength\paperwidth{210mm} | ||||||
|  |  | ||||||
|  | %% fonts | ||||||
|  | \input{size11.clo} | ||||||
|  | \DeclareOldFontCommand{\rm}{\normalfont\rmfamily}{\mathrm} | ||||||
|  | \DeclareOldFontCommand{\sf}{\normalfont\sffamily}{\mathsf} | ||||||
|  | \DeclareOldFontCommand{\tt}{\normalfont\ttfamily}{\mathtt} | ||||||
|  | \DeclareOldFontCommand{\bf}{\normalfont\bfseries}{\mathbf} | ||||||
|  | \DeclareOldFontCommand{\it}{\normalfont\itshape}{\mathit} | ||||||
|  |  | ||||||
|  | %% text dimensions | ||||||
|  | \hoffset=-50pt | ||||||
|  | \voffset=-72pt | ||||||
|  | \textwidth=460pt | ||||||
|  | \textheight=704pt | ||||||
|  |  | ||||||
|  |  | ||||||
|  | %% remove default indentation | ||||||
|  | \parindent=0pt | ||||||
|  | %% indent command | ||||||
|  | \def\indent{\hskip20pt} | ||||||
|  |  | ||||||
|  | %% something is wrong with \thepage, redefine it | ||||||
|  | \gdef\thepage{\the\c@page} | ||||||
|  |  | ||||||
|  | %% array lines (to use the array environment) | ||||||
|  | \setlength\arraycolsep{5\p@} | ||||||
|  | \setlength\arrayrulewidth{.4\p@} | ||||||
|  |  | ||||||
|  |  | ||||||
|  | %% correct vertical alignment at the end of a document | ||||||
|  | \AtEndDocument{ | ||||||
|  |   \vfill | ||||||
|  |   \eject | ||||||
|  | } | ||||||
|  |  | ||||||
|  |  | ||||||
|  | %% hyperlinks | ||||||
|  | % hyperlinkcounter | ||||||
|  | \newcounter{lncount} | ||||||
|  | % hyperref anchor | ||||||
|  | \def\hrefanchor{% | ||||||
|  | \stepcounter{lncount}% | ||||||
|  | \hypertarget{ln.\thelncount}{}% | ||||||
|  | } | ||||||
|  |  | ||||||
|  | %% define a command and write it to aux file | ||||||
|  | \def\outdef#1#2{% | ||||||
|  |   % define command% | ||||||
|  |   \expandafter\xdef\csname #1\endcsname{#2}% | ||||||
|  |   % hyperlink number% | ||||||
|  |   \expandafter\xdef\csname #1@hl\endcsname{\thelncount}% | ||||||
|  |   % write command to aux% | ||||||
|  |   \immediate\write\@auxout{\noexpand\expandafter\noexpand\gdef\noexpand\csname #1\endcsname{\csname #1\endcsname}}% | ||||||
|  |   \immediate\write\@auxout{\noexpand\expandafter\noexpand\gdef\noexpand\csname #1@hl\endcsname{\thelncount}}% | ||||||
|  | } | ||||||
|  |  | ||||||
|  | %% can call commands even when they are not defined | ||||||
|  | \def\safe#1{% | ||||||
|  |   \ifdefined#1% | ||||||
|  |     #1% | ||||||
|  |   \else% | ||||||
|  |     {\color{red}\bf?}% | ||||||
|  |   \fi% | ||||||
|  | } | ||||||
|  |  | ||||||
|  | %% define a label for the latest tag | ||||||
|  | %% label defines a command containing the string stored in \tag | ||||||
|  | \def\deflabel{ | ||||||
|  |   \def\label##1{\expandafter\outdef{label@##1}{\safe\tag}} | ||||||
|  |  | ||||||
|  |   \def\ref##1{% | ||||||
|  |     % check whether the label is defined (hyperlink runs into errors if this check is omitted) | ||||||
|  |     \ifcsname label@##1@hl\endcsname% | ||||||
|  |       \hyperlink{ln.\csname label@##1@hl\endcsname}{{\color{blue}\safe\csname label@##1\endcsname}}% | ||||||
|  |     \else% | ||||||
|  |       \ifcsname label@##1\endcsname% | ||||||
|  | 	{\color{blue}\csname ##1\endcsname}% | ||||||
|  | 	\else% | ||||||
|  | 	{\bf ??}% | ||||||
|  |       \fi% | ||||||
|  |     \fi% | ||||||
|  |   } | ||||||
|  | } | ||||||
|  |  | ||||||
|  |  | ||||||
|  | %% make a custom link at any given location in the document | ||||||
|  | \def\makelink#1#2{% | ||||||
|  |   \hrefanchor% | ||||||
|  |   \outdef{label@#1}{#2}% | ||||||
|  | } | ||||||
|  |  | ||||||
|  |  | ||||||
|  | %% section command | ||||||
|  | % counter | ||||||
|  | \newcounter{sectioncount} | ||||||
|  | % space before section | ||||||
|  | \newlength\secskip | ||||||
|  | \setlength\secskip{40pt} | ||||||
|  | % a prefix to put before the section number, e.g. A for appendices | ||||||
|  | \def\sectionprefix{} | ||||||
|  | % define some lengths | ||||||
|  | \newlength\secnumwidth | ||||||
|  | \newlength\sectitlewidth | ||||||
|  | \def\section#1{ | ||||||
|  |   % reset counters | ||||||
|  |   \stepcounter{sectioncount} | ||||||
|  |   \setcounter{subsectioncount}{0} | ||||||
|  |   \ifsectionsineq | ||||||
|  |     \setcounter{seqcount}0 | ||||||
|  |   \fi | ||||||
|  |   \ifsectionsinfig | ||||||
|  |     \setcounter{figcount}0 | ||||||
|  |   \fi | ||||||
|  |  | ||||||
|  |   % space before section (if not first) | ||||||
|  |   \ifnum\thesectioncount>1 | ||||||
|  |     \vskip\secskip | ||||||
|  |     \penalty-1000 | ||||||
|  |   \fi | ||||||
|  |  | ||||||
|  |   % hyperref anchor | ||||||
|  |   \hrefanchor | ||||||
|  |   % define tag (for \label) | ||||||
|  |   \xdef\tag{\sectionprefix\thesectioncount} | ||||||
|  |  | ||||||
|  |   % get widths | ||||||
|  |   \def\@secnum{{\bf\Large\sectionprefix\thesectioncount.\hskip10pt}} | ||||||
|  |   \settowidth\secnumwidth{\@secnum} | ||||||
|  |   \setlength\sectitlewidth\textwidth | ||||||
|  |   \addtolength\sectitlewidth{-\secnumwidth} | ||||||
|  |  | ||||||
|  |   % print name | ||||||
|  |   \parbox{\textwidth}{ | ||||||
|  |   \@secnum | ||||||
|  |   \parbox[t]{\sectitlewidth}{\Large\bf #1}} | ||||||
|  |  | ||||||
|  |   % write to table of contents | ||||||
|  |   \iftoc | ||||||
|  |     % save lncount in aux variable which is written to toc | ||||||
|  |     \immediate\write\tocoutput{\noexpand\expandafter\noexpand\edef\noexpand\csname toc@sec.\thesectioncount\endcsname{\thelncount}} | ||||||
|  |     \write\tocoutput{\noexpand\tocsection{#1}{\thepage}} | ||||||
|  |   \fi | ||||||
|  |  | ||||||
|  |   %space | ||||||
|  |   \par\penalty10000 | ||||||
|  |   \bigskip\penalty10000 | ||||||
|  | } | ||||||
|  |  | ||||||
|  | %% subsection | ||||||
|  | % counter | ||||||
|  | \newcounter{subsectioncount} | ||||||
|  | % space before subsection | ||||||
|  | \newlength\subsecskip | ||||||
|  | \setlength\subsecskip{30pt} | ||||||
|  | \def\subsection#1{ | ||||||
|  |   % counters | ||||||
|  |   \stepcounter{subsectioncount} | ||||||
|  |   \setcounter{subsubsectioncount}{0} | ||||||
|  |   \ifsubsectionsineq | ||||||
|  |     \setcounter{seqcount}0 | ||||||
|  |   \fi | ||||||
|  |   \ifsubsectionsinfig | ||||||
|  |     \setcounter{figcount}0 | ||||||
|  |   \fi | ||||||
|  |  | ||||||
|  |   % space before subsection (if not first) | ||||||
|  |   \ifnum\thesubsectioncount>1 | ||||||
|  |     \vskip\subsecskip | ||||||
|  |     \penalty-500 | ||||||
|  |   \fi | ||||||
|  |  | ||||||
|  |   % hyperref anchor | ||||||
|  |   \hrefanchor | ||||||
|  |   % define tag (for \label) | ||||||
|  |   \xdef\tag{\sectionprefix\thesectioncount.\thesubsectioncount} | ||||||
|  |  | ||||||
|  |   % get widths | ||||||
|  |   \def\@secnum{{\bf\large\hskip.5cm\sectionprefix\thesectioncount.\thesubsectioncount.\hskip5pt}} | ||||||
|  |   \settowidth\secnumwidth{\@secnum} | ||||||
|  |   \setlength\sectitlewidth\textwidth | ||||||
|  |   \addtolength\sectitlewidth{-\secnumwidth} | ||||||
|  |   % print name | ||||||
|  |   \parbox{\textwidth}{ | ||||||
|  |   \@secnum | ||||||
|  |   \parbox[t]{\sectitlewidth}{\large\bf #1}} | ||||||
|  |  | ||||||
|  |   % write to table of contents | ||||||
|  |   \iftoc | ||||||
|  |     % save lncount in aux variable which is written to toc | ||||||
|  |     \immediate\write\tocoutput{\noexpand\expandafter\noexpand\edef\noexpand\csname toc@subsec.\thesectioncount.\thesubsectioncount\endcsname{\thelncount}} | ||||||
|  |     \write\tocoutput{\noexpand\tocsubsection{#1}{\thepage}} | ||||||
|  |   \fi | ||||||
|  |  | ||||||
|  |   % space | ||||||
|  |   \par\penalty10000 | ||||||
|  |   \medskip\penalty10000 | ||||||
|  | } | ||||||
|  |  | ||||||
|  | %% subsubsection | ||||||
|  | % counter | ||||||
|  | \newcounter{subsubsectioncount} | ||||||
|  | % space before subsubsection | ||||||
|  | \newlength\subsubsecskip | ||||||
|  | \setlength\subsubsecskip{20pt} | ||||||
|  | \def\subsubsection#1{ | ||||||
|  |   % counters | ||||||
|  |   \stepcounter{subsubsectioncount} | ||||||
|  |  | ||||||
|  |   % space before subsubsection (if not first) | ||||||
|  |   \ifnum\thesubsubsectioncount>1 | ||||||
|  |     \vskip\subsubsecskip | ||||||
|  |     \penalty-500 | ||||||
|  |   \fi | ||||||
|  |  | ||||||
|  |   % hyperref anchor | ||||||
|  |   \hrefanchor | ||||||
|  |   % define tag (for \label) | ||||||
|  |   \xdef\tag{\sectionprefix\thesectioncount.\thesubsectioncount.\thesubsubsectioncount} | ||||||
|  |  | ||||||
|  |   % get widths | ||||||
|  |   \def\@secnum{{\bf\hskip1.cm\sectionprefix\thesectioncount.\thesubsectioncount.\thesubsubsectioncount.\hskip5pt}} | ||||||
|  |   \settowidth\secnumwidth{\@secnum} | ||||||
|  |   \setlength\sectitlewidth\textwidth | ||||||
|  |   \addtolength\sectitlewidth{-\secnumwidth} | ||||||
|  |   % print name | ||||||
|  |   \parbox{\textwidth}{ | ||||||
|  |   \@secnum | ||||||
|  |   \parbox[t]{\sectitlewidth}{\large\bf #1}} | ||||||
|  |  | ||||||
|  |   % write to table of contents | ||||||
|  |   \iftoc | ||||||
|  |     % save lncount in aux variable which is written to toc | ||||||
|  |     \immediate\write\tocoutput{\noexpand\expandafter\noexpand\edef\noexpand\csname toc@subsubsec.\thesectioncount.\thesubsectioncount.\thesubsubsectioncount\endcsname{\thelncount}} | ||||||
|  |     \write\tocoutput{\noexpand\tocsubsubsection{#1}{\thepage}} | ||||||
|  |   \fi | ||||||
|  |  | ||||||
|  |   % space | ||||||
|  |   \par\penalty10000 | ||||||
|  |   \medskip\penalty10000 | ||||||
|  | } | ||||||
|  |  | ||||||
|  | %% itemize | ||||||
|  | \newlength\itemizeskip | ||||||
|  | % left margin for items | ||||||
|  | \setlength\itemizeskip{20pt} | ||||||
|  | \newlength\itemizeseparator | ||||||
|  | % space between the item symbol and the text | ||||||
|  | \setlength\itemizeseparator{5pt} | ||||||
|  | % penalty preceding an itemize | ||||||
|  | \newcount\itemizepenalty | ||||||
|  | \itemizepenalty=0 | ||||||
|  | % counter counting the itemize level | ||||||
|  | \newcounter{itemizecount} | ||||||
|  |  | ||||||
|  | % item symbol | ||||||
|  | \def\itemizept#1{ | ||||||
|  |   \ifnum#1=1 | ||||||
|  |     \textbullet | ||||||
|  |   \else | ||||||
|  |     $\scriptstyle\blacktriangleright$ | ||||||
|  |   \fi | ||||||
|  | } | ||||||
|  |  | ||||||
|  |  | ||||||
|  | \newlength\current@itemizeskip | ||||||
|  | \setlength\current@itemizeskip{0pt} | ||||||
|  | \def\itemize{% | ||||||
|  |   \par\expandafter\penalty\the\itemizepenalty\medskip\expandafter\penalty\the\itemizepenalty% | ||||||
|  |   \addtocounter{itemizecount}{1}% | ||||||
|  |   \addtolength\current@itemizeskip{\itemizeskip}% | ||||||
|  |   \leftskip\current@itemizeskip% | ||||||
|  | } | ||||||
|  | \def\enditemize{% | ||||||
|  |   \addtocounter{itemizecount}{-1}% | ||||||
|  |   \addtolength\current@itemizeskip{-\itemizeskip}% | ||||||
|  |   \par\expandafter\penalty\the\itemizepenalty\leftskip\current@itemizeskip% | ||||||
|  |   \medskip\expandafter\penalty\the\itemizepenalty% | ||||||
|  | } | ||||||
|  |  | ||||||
|  | % item, with optional argument to specify the item point | ||||||
|  | % @itemarg is set to true when there is an optional argument | ||||||
|  | \newif\if@itemarg | ||||||
|  | \def\item{% | ||||||
|  |   % check whether there is an optional argument (if there is none, add on empty '[]') | ||||||
|  |   \@ifnextchar [{\@itemargtrue\@itemx}{\@itemargfalse\@itemx[]}% | ||||||
|  | } | ||||||
|  | \newlength\itempt@total | ||||||
|  | \def\@itemx[#1]{ | ||||||
|  |   \if@itemarg | ||||||
|  |     \settowidth\itempt@total{#1} | ||||||
|  |   \else | ||||||
|  |     \settowidth\itempt@total{\itemizept\theitemizecount} | ||||||
|  |   \fi | ||||||
|  |   \addtolength\itempt@total{\itemizeseparator} | ||||||
|  |   \par | ||||||
|  |   \medskip | ||||||
|  |   \if@itemarg | ||||||
|  |     \hskip-\itempt@total#1\hskip\itemizeseparator | ||||||
|  |   \else | ||||||
|  |     \hskip-\itempt@total\itemizept\theitemizecount\hskip\itemizeseparator | ||||||
|  |   \fi | ||||||
|  | } | ||||||
|  |  | ||||||
|  | %% prevent page breaks after itemize | ||||||
|  | \newcount\previtemizepenalty | ||||||
|  | \def\nopagebreakafteritemize{ | ||||||
|  |   \previtemizepenalty=\itemizepenalty | ||||||
|  |   \itemizepenalty=10000 | ||||||
|  | } | ||||||
|  | %% back to previous value | ||||||
|  | \def\restorepagebreakafteritemize{ | ||||||
|  |   \itemizepenalty=\previtemizepenalty | ||||||
|  | } | ||||||
|  |  | ||||||
|  | %% enumerate | ||||||
|  | \newcounter{enumerate@count} | ||||||
|  | \def\enumerate{ | ||||||
|  |   \setcounter{enumerate@count}0 | ||||||
|  |   \let\olditem\item | ||||||
|  |   \let\olditemizept\itemizept | ||||||
|  |   \def\item{ | ||||||
|  |     % counter | ||||||
|  |     \stepcounter{enumerate@count} | ||||||
|  |     % set header | ||||||
|  |     \def\itemizept{\theenumerate@count.} | ||||||
|  |     % hyperref anchor | ||||||
|  |     \hrefanchor | ||||||
|  |     % define tag (for \label) | ||||||
|  |     \xdef\tag{\theenumerate@count} | ||||||
|  |     \olditem | ||||||
|  |   } | ||||||
|  |   \itemize | ||||||
|  | } | ||||||
|  | \def\endenumerate{ | ||||||
|  |   \enditemize | ||||||
|  |   \let\item\olditem | ||||||
|  |   \let\itemizept\olditemizept | ||||||
|  | } | ||||||
|  |  | ||||||
|  |  | ||||||
|  | %% equation numbering | ||||||
|  | % counter | ||||||
|  | \newcounter{seqcount} | ||||||
|  | % define possible prefix to equation | ||||||
|  | \def\eqprefix{} | ||||||
|  | % booleans (write section or subsection in equation number) | ||||||
|  | \newif\ifsectionsineq | ||||||
|  | \newif\ifsubsectionsineq | ||||||
|  | \def\seqcount{ | ||||||
|  |   \stepcounter{seqcount} | ||||||
|  |   % the output | ||||||
|  |   \edef\seqformat{\eqprefix\theseqcount} | ||||||
|  |   % add subsection number | ||||||
|  |   \ifsubsectionsineq | ||||||
|  |     \let\tmp\seqformat | ||||||
|  |     \edef\seqformat{\thesubsectioncount.\tmp} | ||||||
|  |   \fi | ||||||
|  |   % add section number | ||||||
|  |   \ifsectionsineq | ||||||
|  |     \let\tmp\seqformat | ||||||
|  |     \edef\seqformat{\sectionprefix\thesectioncount.\tmp} | ||||||
|  |   \fi | ||||||
|  |   % define tag (for \label) | ||||||
|  |   \xdef\tag{\seqformat} | ||||||
|  |   % write number | ||||||
|  |   \marginnote{\hfill(\seqformat)} | ||||||
|  | } | ||||||
|  | %% equation environment compatibility | ||||||
|  | \def\equation{\hrefanchor$$\seqcount} | ||||||
|  | \def\endequation{$$\@ignoretrue} | ||||||
|  |  | ||||||
|  |  | ||||||
|  | %% figures | ||||||
|  | % counter | ||||||
|  | \newcounter{figcount} | ||||||
|  | % booleans (write section or subsection in equation number) | ||||||
|  | \newif\ifsectionsinfig | ||||||
|  | \newif\ifsubsectionsinfig | ||||||
|  | % width of figures | ||||||
|  | \newlength\figwidth | ||||||
|  | \setlength\figwidth\textwidth | ||||||
|  | \addtolength\figwidth{-2.5cm} | ||||||
|  | % caption | ||||||
|  | \def\defcaption{ | ||||||
|  |   \long\def\caption##1{% | ||||||
|  |     \stepcounter{figcount}% | ||||||
|  | % | ||||||
|  |     % hyperref anchor% | ||||||
|  |     \hrefanchor% | ||||||
|  | % | ||||||
|  |     % the number of the figure% | ||||||
|  |     \edef\figformat{\thefigcount}% | ||||||
|  |     % add subsection number% | ||||||
|  |     \ifsubsectionsinfig% | ||||||
|  |       \let\tmp\figformat% | ||||||
|  |       \edef\figformat{\thesubsectioncount.\tmp}% | ||||||
|  |     \fi% | ||||||
|  |     % add section number% | ||||||
|  |     \ifsectionsinfig% | ||||||
|  |       \let\tmp\figformat% | ||||||
|  |       \edef\figformat{\sectionprefix\thesectioncount.\tmp}% | ||||||
|  |     \fi% | ||||||
|  | % | ||||||
|  |     % define tag (for \label)% | ||||||
|  |     \xdef\tag{\figformat}% | ||||||
|  | % | ||||||
|  |     % write% | ||||||
|  |     \par\penalty10000\hfil fig \figformat: \parbox[t]{\figwidth}{\small##1}%% | ||||||
|  | % | ||||||
|  |     % space% | ||||||
|  |     \par\bigskip% | ||||||
|  |   } | ||||||
|  | } | ||||||
|  | %% short caption: centered | ||||||
|  | \def\captionshort#1{ | ||||||
|  |   \stepcounter{figcount}% | ||||||
|  | % | ||||||
|  |   % hyperref anchor% | ||||||
|  |   \hrefanchor% | ||||||
|  | % | ||||||
|  |   % the number of the figure% | ||||||
|  |   \edef\figformat{\thefigcount}% | ||||||
|  |   % add section number% | ||||||
|  |   \ifsectionsinfig% | ||||||
|  |   \let\tmp\figformat% | ||||||
|  |   \edef\figformat{\sectionprefix\thesectioncount.\tmp}% | ||||||
|  |   \fi% | ||||||
|  | % | ||||||
|  |   % define tag (for \label)% | ||||||
|  |   \xdef\tag{\figformat}% | ||||||
|  | % | ||||||
|  |   % write% | ||||||
|  |   \par\penalty10000\hfil fig \figformat: {\small#1}% | ||||||
|  | % | ||||||
|  |   %space% | ||||||
|  |   \par\bigskip% | ||||||
|  | } | ||||||
|  |  | ||||||
|  | %% environment | ||||||
|  | \def\figure{ | ||||||
|  |   \par | ||||||
|  |   \vfil\penalty100\vfilneg | ||||||
|  |   \bigskip | ||||||
|  | } | ||||||
|  | \def\endfigure{ | ||||||
|  |   \par | ||||||
|  |   \bigskip | ||||||
|  | } | ||||||
|  |  | ||||||
|  |  | ||||||
|  | %% start appendices | ||||||
|  | \def\appendix{ | ||||||
|  |   \vfill | ||||||
|  |   \pagebreak | ||||||
|  |  | ||||||
|  |   % counter | ||||||
|  |   \setcounter{sectioncount}0 | ||||||
|  |  | ||||||
|  |   % prefix | ||||||
|  |   \def\sectionprefix{A} | ||||||
|  |  | ||||||
|  |   % write | ||||||
|  |   {\bf \LARGE Appendices}\par\penalty10000\bigskip\penalty10000 | ||||||
|  |  | ||||||
|  |   % add a mention in the table of contents | ||||||
|  |   \iftoc | ||||||
|  |     \immediate\write\tocoutput{\noexpand\tocappendices}\penalty10000 | ||||||
|  |   \fi | ||||||
|  |  | ||||||
|  |   %% uncomment for new page for each appendix | ||||||
|  |   %\def\seqskip{\vfill\pagebreak} | ||||||
|  | } | ||||||
|  |  | ||||||
|  |  | ||||||
|  | %% bibliography | ||||||
|  | % size of header | ||||||
|  | \newlength\bibheader | ||||||
|  | \def\thebibliography#1{ | ||||||
|  |   \hrefanchor | ||||||
|  |  | ||||||
|  |   % add a mention in the table of contents | ||||||
|  |   \iftoc | ||||||
|  |     % save lncount in aux variable which is written to toc | ||||||
|  |     \immediate\write\tocoutput{\noexpand\expandafter\noexpand\edef\noexpand\csname toc@references\endcsname{\thelncount}} | ||||||
|  |     \write\tocoutput{\noexpand\tocreferences{\thepage}}\penalty10000 | ||||||
|  |   \fi | ||||||
|  |  | ||||||
|  |   % write | ||||||
|  |   {\bf \LARGE References}\par\penalty10000\bigskip\penalty10000 | ||||||
|  |   % width of header | ||||||
|  |   \settowidth\bibheader{[#1]} | ||||||
|  |   \leftskip\bibheader | ||||||
|  | } | ||||||
|  | % end environment | ||||||
|  | \def\endthebibliography{ | ||||||
|  |   \par\leftskip0pt | ||||||
|  | }  | ||||||
|  |  | ||||||
|  | %% bibitem command | ||||||
|  | \def\bibitem[#1]#2{% | ||||||
|  |   \hrefanchor% | ||||||
|  |   \outdef{label@cite#2}{#1}% | ||||||
|  |   \hskip-\bibheader% | ||||||
|  |   \makebox[\bibheader]{\cite{#2}\hfill}% | ||||||
|  | } | ||||||
|  |  | ||||||
|  | %% cite command | ||||||
|  | % @tempswa is set to true when there is an optional argument | ||||||
|  | \newif\@tempswa | ||||||
|  | \def\cite{% | ||||||
|  |   % check whether there is an optional argument (if there is none, add on empty '[]') | ||||||
|  |   \@ifnextchar [{\@tempswatrue\@citex}{\@tempswafalse\@citex[]}% | ||||||
|  | } | ||||||
|  | % command with optional argument | ||||||
|  | \def\@citex[#1]#2{\leavevmode% | ||||||
|  |   % initialize loop | ||||||
|  |   \let\@cite@separator\@empty% | ||||||
|  |   % format | ||||||
|  |   \@cite{% | ||||||
|  |     % loop over ',' separated list | ||||||
|  |     \@for\@cite@:=#2\do{% | ||||||
|  |       % text to add at each iteration of the loop (separator between citations) | ||||||
|  |       \@cite@separator\def\@cite@separator{,\ }% | ||||||
|  |       % add entry to citelist | ||||||
|  |       \@writecitation{\@cite@}% | ||||||
|  |       \ref{cite\@cite@}% | ||||||
|  |     }% | ||||||
|  |   }% | ||||||
|  |   % add optional argument text (as an argument to '\@cite') | ||||||
|  |   {#1}% | ||||||
|  | } | ||||||
|  | \def\@cite#1#2{% | ||||||
|  |   [#1\if@tempswa , #2\fi]% | ||||||
|  | } | ||||||
|  | %% add entry to citelist after checking it has not already been added | ||||||
|  | \def\@writecitation#1{% | ||||||
|  |   \ifcsname if#1cited\endcsname% | ||||||
|  |   \else% | ||||||
|  |     \expandafter\newif\csname if#1cited\endcsname% | ||||||
|  |     \immediate\write\@auxout{\string\citation{#1}}% | ||||||
|  |   \fi% | ||||||
|  | } | ||||||
|  |  | ||||||
|  | %% table of contents | ||||||
|  | % boolean | ||||||
|  | \newif\iftoc | ||||||
|  | \def\tableofcontents{ | ||||||
|  |   {\bf \large Table of contents:}\par\penalty10000\smallskip\penalty10000 | ||||||
|  |  | ||||||
|  |   % copy content from file | ||||||
|  |   \IfFileExists{\jobname.toc}{\input{\jobname.toc}}{{\tt error: table of contents missing}} | ||||||
|  |  | ||||||
|  |   % open new toc | ||||||
|  |   \newwrite\tocoutput | ||||||
|  |   \immediate\openout\tocoutput=\jobname.toc | ||||||
|  |  | ||||||
|  |   \toctrue | ||||||
|  | } | ||||||
|  | %% close file | ||||||
|  | \AtEndDocument{ | ||||||
|  |   % close toc | ||||||
|  |   \iftoc | ||||||
|  |     \immediate\closeout\tocoutput | ||||||
|  |   \fi | ||||||
|  | } | ||||||
|  |  | ||||||
|  |  | ||||||
|  | %% fill line with dots | ||||||
|  | \def\leaderfill{\leaders\hbox to 1em {\hss. \hss}\hfill} | ||||||
|  |  | ||||||
|  | %% same as sectionprefix | ||||||
|  | \def\tocsectionprefix{} | ||||||
|  |  | ||||||
|  | %% toc formats | ||||||
|  | \newcounter{tocsectioncount} | ||||||
|  | \def\tocsection #1#2{ | ||||||
|  |   \stepcounter{tocsectioncount} | ||||||
|  |   \setcounter{tocsubsectioncount}{0} | ||||||
|  |   \setcounter{tocsubsubsectioncount}{0} | ||||||
|  |   % write | ||||||
|  |   \smallskip\hyperlink{ln.\csname toc@sec.\thetocsectioncount\endcsname}{{\bf \tocsectionprefix\thetocsectioncount}.\hskip5pt {\color{blue}#1}\leaderfill#2}\par | ||||||
|  | } | ||||||
|  | \newcounter{tocsubsectioncount} | ||||||
|  | \def\tocsubsection #1#2{ | ||||||
|  |   \stepcounter{tocsubsectioncount} | ||||||
|  |   \setcounter{tocsubsubsectioncount}{0} | ||||||
|  |   % write | ||||||
|  |   {\hskip10pt\hyperlink{ln.\csname toc@subsec.\thetocsectioncount.\thetocsubsectioncount\endcsname}{{\bf \thetocsectioncount.\thetocsubsectioncount}.\hskip5pt {\color{blue}\small #1}\leaderfill#2}}\par | ||||||
|  | } | ||||||
|  | \newcounter{tocsubsubsectioncount} | ||||||
|  | \def\tocsubsubsection #1#2{ | ||||||
|  |   \stepcounter{tocsubsubsectioncount} | ||||||
|  |   % write | ||||||
|  |   {\hskip20pt\hyperlink{ln.\csname toc@subsubsec.\thetocsectioncount.\thetocsubsectioncount.\thetocsubsubsectioncount\endcsname}{{\bf \thetocsectioncount.\thetocsubsectioncount.\thetocsubsubsectioncount}.\hskip5pt {\color{blue}\small #1}\leaderfill#2}}\par | ||||||
|  | } | ||||||
|  | \def\tocappendices{ | ||||||
|  |   \medskip | ||||||
|  |   \setcounter{tocsectioncount}0 | ||||||
|  |   {\bf Appendices}\par | ||||||
|  |   \smallskip | ||||||
|  |   \def\tocsectionprefix{A} | ||||||
|  | } | ||||||
|  | \def\tocreferences#1{ | ||||||
|  |   \medskip | ||||||
|  |   {\hyperlink{ln.\csname toc@references\endcsname}{{\color{blue}\bf References}\leaderfill#1}}\par | ||||||
|  |   \smallskip | ||||||
|  | } | ||||||
|  |  | ||||||
|  |  | ||||||
|  | %% definitions that must be loaded at begin document | ||||||
|  | \let\ian@olddocument\document | ||||||
|  | \def\document{ | ||||||
|  |   \ian@olddocument | ||||||
|  |  | ||||||
|  |   \deflabel | ||||||
|  |   \defcaption | ||||||
|  | } | ||||||
|  |  | ||||||
|  | %% end | ||||||
|  | \ian@defaultoptions | ||||||
|  | \endinput | ||||||
							
								
								
									
										162
									
								
								libs/iantheo.sty
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										162
									
								
								libs/iantheo.sty
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,162 @@ | |||||||
|  | %% | ||||||
|  | %% iantheorem package: | ||||||
|  | %%   Ian's customized theorem command | ||||||
|  | %% | ||||||
|  |  | ||||||
|  | %% boolean to signal that this package was loaded | ||||||
|  | \newif\ifiantheo | ||||||
|  |  | ||||||
|  | %% TeX format | ||||||
|  | \NeedsTeXFormat{LaTeX2e}[1995/12/01] | ||||||
|  |  | ||||||
|  | %% package name | ||||||
|  | \ProvidesPackage{iantheo}[2016/11/10] | ||||||
|  |  | ||||||
|  | %% options | ||||||
|  | \newif\ifsectionintheo | ||||||
|  | \DeclareOption{section_in_theo}{\sectionintheotrue} | ||||||
|  | \DeclareOption{no_section_in_theo}{\sectionintheofalse} | ||||||
|  | \newif\ifsubsectionintheo | ||||||
|  | \DeclareOption{subsection_in_theo}{\subsectionintheotrue} | ||||||
|  | \DeclareOption{no_subsection_in_theo}{\subsectionintheofalse} | ||||||
|  |  | ||||||
|  | \def\iantheo@defaultoptions{ | ||||||
|  |   \ExecuteOptions{section_in_theo, no_subsection_in_theo} | ||||||
|  |   \ProcessOptions | ||||||
|  |  | ||||||
|  |   %%% reset at every new section | ||||||
|  |   \ifsectionintheo | ||||||
|  |     \let\iantheo@oldsection\section | ||||||
|  |     \gdef\section{\setcounter{theocount}{0}\iantheo@oldsection} | ||||||
|  |   \fi | ||||||
|  |  | ||||||
|  |   %% reset at every new subsection | ||||||
|  |   \ifsubsectionintheo | ||||||
|  |     \let\iantheo@oldsubsection\subsection | ||||||
|  |     \gdef\subsection{\setcounter{theocount}{0}\iantheo@oldsubsection} | ||||||
|  |   \fi | ||||||
|  | } | ||||||
|  |  | ||||||
|  |  | ||||||
|  | %% delimiters | ||||||
|  | \def\delimtitle#1{ | ||||||
|  |   \par% | ||||||
|  |   \leavevmode% | ||||||
|  |   \raise.3em\hbox to\hsize{% | ||||||
|  |     \lower0.3em\hbox{\vrule height0.3em}% | ||||||
|  |     \hrulefill% | ||||||
|  |     \ \lower.3em\hbox{#1}\ % | ||||||
|  |     \hrulefill% | ||||||
|  |     \lower0.3em\hbox{\vrule height0.3em}% | ||||||
|  |   }% | ||||||
|  |   \par\penalty10000% | ||||||
|  | } | ||||||
|  |  | ||||||
|  | %% callable by ref | ||||||
|  | \def\delimtitleref#1{ | ||||||
|  |   \par% | ||||||
|  | % | ||||||
|  |   \ifdefined\ianclass% | ||||||
|  |     % hyperref anchor% | ||||||
|  |     \hrefanchor% | ||||||
|  |     % define tag (for \label)% | ||||||
|  |     \xdef\tag{#1}% | ||||||
|  |   \fi% | ||||||
|  | % | ||||||
|  |   \leavevmode% | ||||||
|  |   \raise.3em\hbox to\hsize{% | ||||||
|  |     \lower0.3em\hbox{\vrule height0.3em}% | ||||||
|  |     \hrulefill% | ||||||
|  |     \ \lower.3em\hbox{\bf #1}\ % | ||||||
|  |     \hrulefill% | ||||||
|  |     \lower0.3em\hbox{\vrule height0.3em}% | ||||||
|  |   }% | ||||||
|  |   \par\penalty10000% | ||||||
|  | } | ||||||
|  |  | ||||||
|  | %% no title | ||||||
|  | \def\delim{ | ||||||
|  |   \par% | ||||||
|  |   \leavevmode\raise.3em\hbox to\hsize{% | ||||||
|  |     \lower0.3em\hbox{\vrule height0.3em}% | ||||||
|  |     \hrulefill% | ||||||
|  |     \lower0.3em\hbox{\vrule height0.3em}% | ||||||
|  |   }% | ||||||
|  |   \par\penalty10000% | ||||||
|  | } | ||||||
|  |  | ||||||
|  | %% end delim | ||||||
|  | \def\enddelim{ | ||||||
|  |   \par\penalty10000% | ||||||
|  |   \leavevmode% | ||||||
|  |   \raise.3em\hbox to\hsize{% | ||||||
|  |     \vrule height0.3em\hrulefill\vrule height0.3em% | ||||||
|  |   }% | ||||||
|  |   \par% | ||||||
|  | } | ||||||
|  |  | ||||||
|  |  | ||||||
|  | %% theorem | ||||||
|  | % counter | ||||||
|  | \newcounter{theocount} | ||||||
|  | % booleans (write section or subsection in equation number) | ||||||
|  | \def\theo#1{ | ||||||
|  |   \stepcounter{theocount} | ||||||
|  |   \ifdefined\ianclass | ||||||
|  |     % hyperref anchor | ||||||
|  |     \hrefanchor | ||||||
|  |   \fi | ||||||
|  |   % the number | ||||||
|  |   \def\formattheo{\thetheocount} | ||||||
|  |   % add subsection number | ||||||
|  |   \ifsubsectionintheo | ||||||
|  |     \let\tmp\formattheo | ||||||
|  |     \edef\formattheo{\thesubsectioncount.\tmp} | ||||||
|  |   \fi | ||||||
|  |   % add section number | ||||||
|  |   \ifsectionintheo | ||||||
|  |     \let\tmp\formattheo | ||||||
|  |     \edef\formattheo{\sectionprefix\thesectioncount.\tmp} | ||||||
|  |   \fi | ||||||
|  |   % define tag (for \label) | ||||||
|  |   \xdef\tag{\formattheo} | ||||||
|  |   % write | ||||||
|  |   \delimtitle{\bf #1 \formattheo} | ||||||
|  | } | ||||||
|  | \let\endtheo\enddelim | ||||||
|  | %% theorem headers with name | ||||||
|  | \def\theoname#1#2{ | ||||||
|  |   \theo{#1}\hfil({\it #2})\par\penalty10000\medskip% | ||||||
|  | } | ||||||
|  |  | ||||||
|  |  | ||||||
|  | %% qed symbol | ||||||
|  | \def\qedsymbol{$\square$} | ||||||
|  | \def\qed{\penalty10000\hfill\penalty10000\qedsymbol} | ||||||
|  |  | ||||||
|  |  | ||||||
|  | %% compatibility with article class | ||||||
|  | \ifdefined\ianclasstrue | ||||||
|  |   \relax | ||||||
|  | \else | ||||||
|  |   \def\thesectioncount{\thesection} | ||||||
|  |   \def\thesubsectioncount{\thesubsection} | ||||||
|  |   \def\sectionprefix{} | ||||||
|  | \fi | ||||||
|  |  | ||||||
|  |  | ||||||
|  | %% prevent page breaks after displayed equations | ||||||
|  | \newcount\prevpostdisplaypenalty | ||||||
|  | \def\nopagebreakaftereq{ | ||||||
|  |   \prevpostdisplaypenalty=\postdisplaypenalty | ||||||
|  |   \postdisplaypenalty=10000 | ||||||
|  | } | ||||||
|  | %% back to previous value | ||||||
|  | \def\restorepagebreakaftereq{ | ||||||
|  |   \postdisplaypenalty=\prevpostdisplaypenalty | ||||||
|  | } | ||||||
|  |  | ||||||
|  |  | ||||||
|  | %% end | ||||||
|  | \iantheo@defaultoptions | ||||||
|  | \endinput | ||||||
							
								
								
									
										19
									
								
								libs/largearray.sty
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										19
									
								
								libs/largearray.sty
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,19 @@ | |||||||
|  | %% | ||||||
|  | %% largearray package: | ||||||
|  | %%   Array spanning the entire line | ||||||
|  | %% | ||||||
|  |  | ||||||
|  | %% TeX format | ||||||
|  | \NeedsTeXFormat{LaTeX2e}[1995/12/01] | ||||||
|  |  | ||||||
|  | %% package name | ||||||
|  | \ProvidesPackage{largearray}[2016/11/10] | ||||||
|  |  | ||||||
|  | \RequirePackage{array} | ||||||
|  |  | ||||||
|  | %% array spanning the entire line | ||||||
|  | \newlength\largearray@width | ||||||
|  | \setlength\largearray@width\textwidth | ||||||
|  | \addtolength\largearray@width{-10pt} | ||||||
|  | \def\largearray{\begin{array}{@{}>{\displaystyle}l@{}}\hphantom{\hspace{\largearray@width}}\\[-.5cm]} | ||||||
|  | \def\endlargearray{\end{array}} | ||||||
							
								
								
									
										114
									
								
								libs/point.sty
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										114
									
								
								libs/point.sty
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,114 @@ | |||||||
|  | %% | ||||||
|  | %% Points package: | ||||||
|  | %%   \point commands | ||||||
|  | %% | ||||||
|  |  | ||||||
|  | %% TeX format | ||||||
|  | \NeedsTeXFormat{LaTeX2e}[1995/12/01] | ||||||
|  |  | ||||||
|  | %% package name | ||||||
|  | \ProvidesPackage{point}[2017/06/13] | ||||||
|  |  | ||||||
|  | %% options | ||||||
|  | \newif\ifresetatsection | ||||||
|  | \DeclareOption{reset_at_section}{\resetatsectiontrue} | ||||||
|  | \DeclareOption{no_reset_at_section}{\resetatsectionfalse} | ||||||
|  | \newif\ifresetatsubsection | ||||||
|  | \DeclareOption{reset_at_subsection}{\resetatsubsectiontrue} | ||||||
|  | \DeclareOption{no_reset_at_subsection}{\resetatsubsectionfalse} | ||||||
|  | \newif\ifresetatsubsubsection | ||||||
|  | \DeclareOption{reset_at_subsubsection}{\resetatsubsubsectiontrue} | ||||||
|  | \DeclareOption{no_reset_at_subsubsection}{\resetatsubsubsectionfalse} | ||||||
|  | \newif\ifresetattheo | ||||||
|  | \DeclareOption{reset_at_theo}{\resetattheotrue} | ||||||
|  | \DeclareOption{no_reset_at_theo}{\resetattheofalse} | ||||||
|  |  | ||||||
|  | \def\point@defaultoptions{ | ||||||
|  |   \ExecuteOptions{reset_at_section, reset_at_subsection, reset_at_subsubsection, no_reset_at_theo} | ||||||
|  |   \ProcessOptions | ||||||
|  |  | ||||||
|  |   %% reset at every new section | ||||||
|  |   \ifresetatsection | ||||||
|  |     \let\point@oldsection\section | ||||||
|  |     \gdef\section{\resetpointcounter\point@oldsection} | ||||||
|  |   \fi | ||||||
|  |   %% reset at every new subsection | ||||||
|  |   \ifresetatsubsection | ||||||
|  |     \let\point@oldsubsection\subsection | ||||||
|  |     \gdef\subsection{\resetpointcounter\point@oldsubsection} | ||||||
|  |   \fi | ||||||
|  |   %% reset at every new subsubsection | ||||||
|  |   \ifresetatsubsubsection | ||||||
|  |     \let\point@oldsubsubsection\subsubsection | ||||||
|  |     \gdef\subsubsection{\resetpointcounter\point@oldsubsubsection} | ||||||
|  |   \fi | ||||||
|  |  | ||||||
|  |   %% reset at every new theorem | ||||||
|  |   \ifresetattheo | ||||||
|  |     \ifdefined\iantheotrue | ||||||
|  |       \let\point@oldtheo\theo | ||||||
|  |       \gdef\theo{\resetpointcounter\point@oldtheo} | ||||||
|  |     \fi | ||||||
|  |   \fi | ||||||
|  | } | ||||||
|  |  | ||||||
|  |  | ||||||
|  | %% point | ||||||
|  | % counter | ||||||
|  | \newcounter{pointcount} | ||||||
|  | \def\point{ | ||||||
|  |   \stepcounter{pointcount} | ||||||
|  |   \setcounter{subpointcount}{0} | ||||||
|  |   % hyperref anchor (only if the class is 'ian') | ||||||
|  |   \ifdefined\ifianclass | ||||||
|  |     \hrefanchor | ||||||
|  |     % define tag (for \label) | ||||||
|  |     \xdef\tag{\thepointcount} | ||||||
|  |   \fi | ||||||
|  |   % header | ||||||
|  |   \indent{\bf \thepointcount\ - } | ||||||
|  | } | ||||||
|  |  | ||||||
|  | %% subpoint | ||||||
|  | % counter | ||||||
|  | \newcounter{subpointcount} | ||||||
|  | \def\subpoint{ | ||||||
|  |   \stepcounter{subpointcount} | ||||||
|  |   \setcounter{subsubpointcount}0 | ||||||
|  |   % hyperref anchor (only if the class is 'ian') | ||||||
|  |   \ifdefined\ifianclass | ||||||
|  |     \hrefanchor | ||||||
|  |     % define tag (for \label) | ||||||
|  |     \xdef\tag{\thepointcount-\thesubpointcount} | ||||||
|  |   \fi | ||||||
|  |   % header | ||||||
|  |   \indent\hskip.5cm{\bf \thepointcount-\thesubpointcount\ - } | ||||||
|  | } | ||||||
|  |  | ||||||
|  | %% subsubpoint | ||||||
|  | % counter | ||||||
|  | \newcounter{subsubpointcount} | ||||||
|  | \def\subsubpoint{ | ||||||
|  |   \stepcounter{subsubpointcount} | ||||||
|  |   % hyperref anchor (only if the class is 'ian') | ||||||
|  |   \ifdefined\ifianclass | ||||||
|  |     \hrefanchor | ||||||
|  |     % define tag (for \label) | ||||||
|  |     \xdef\tag{\thepointcount-\thesubpointcount-\thesubsubpointcount} | ||||||
|  |   \fi | ||||||
|  |   \indent\hskip1cm{\bf \thepointcount-\thesubpointcount-\thesubsubpointcount\ - } | ||||||
|  | } | ||||||
|  |  | ||||||
|  |  | ||||||
|  | %% reset point counters | ||||||
|  | \def\resetpointcounter{ | ||||||
|  |   \setcounter{pointcount}{0} | ||||||
|  |   \setcounter{subpointcount}{0} | ||||||
|  |   \setcounter{subsubpointcount}{0} | ||||||
|  | } | ||||||
|  |  | ||||||
|  |  | ||||||
|  |  | ||||||
|  | %% end | ||||||
|  | \point@defaultoptions | ||||||
|  | \endinput | ||||||
		Reference in New Issue
	
	Block a user