瀏覽代碼

initial

tags/CANDIDATE
gtheler 7 年之前
當前提交
f9dfb26293
共有 10 個檔案被更改,包括 798 行新增0 行删除
  1. +20
    -0
      .gitignore
  2. +2
    -0
      clean.sh
  3. +141
    -0
      make.sh
  4. +9
    -0
      markuw.m4
  5. +18
    -0
      meta.yaml
  6. +10
    -0
      nafems4.md
  7. +112
    -0
      references.bib
  8. 二進制
      refs/5513.pdf
  9. +130
    -0
      simple.html
  10. +356
    -0
      simple.tex

+ 20
- 0
.gitignore 查看文件

@@ -0,0 +1,20 @@
hash.yaml
*.bbl
*.bcf
*.blg
*.run.xml
*.toc
*.aux
*.log
*.out
problem.ppl
M_*.*
MB_*.*
pipe-*.png
sigma*.*
ur.*
*-vs-*.*
distorted*.png
pipe-linearized.html
pipe-linearized.tex
pipe-linearized.pdf

+ 2
- 0
clean.sh 查看文件

@@ -0,0 +1,2 @@
# from https://stackoverflow.com/questions/13541615/how-to-remove-files-that-are-listed-in-the-gitignore-but-still-on-the-repositor
cat .gitignore | sed '/^#.*/ d' | sed '/^\s*$/ d' | sed 's/^/rm -rf /' | bash

+ 141
- 0
make.sh 查看文件

@@ -0,0 +1,141 @@
#!/bin/bash


for i in m4 pandoc pandoc-crossref pandoc-citeproc xelatex locale grep wc; do
if [ -z "`which $i`" ]; then
echo "error: $i is not installed"
exit 1
fi
done

# the document name is the current directory name
name=`basename $PWD`
if [ ! -e ${name}.md ]; then
echo "error: ${name}.md does not exist"
exit 1
fi

# get the date right
language=`grep lang: meta.yaml | awk -F: '{print $2}' | sed s/-/_/`
LC=`locale -a | grep $language | head -n1`
if [ -z "$LC" ]; then
echo "error: locale for language $language is not installed, run"
echo "dpkg-reconfigure locales"
echo "or equivalent (or change the document's language)"
exit 1
fi

# see how we are supposed to write the date, but
# replace %m with %b to get a string for the month
dateformat=`LC_ALL=${LC} locale d_fmt | sed s/m/b/`
currentdate=`LC_ALL=${LC} date +${dateformat}`
currentdateedtf=`LC_ALL=${LC} date +%Y-%m-%d`

# read the template name from the md's yaml, otherwise default to light
template=`grep template: meta.yaml | awk -F': ' '{print $2}'`
if [ -z "$template" ]; then
template=light
fi

# read the formats from the md's yaml
if [ ! -z "$1" ]; then
formats="$1"
else
formats=`grep formats: meta.yaml | awk -F': ' '{print $2}'`
fi


branch=`git rev-parse --abbrev-ref HEAD`
dochash=`git rev-parse --short HEAD`

if [ -e "baserev" ]; then
basehash=`cat baserev`
else
basehash=`git rev-parse HEAD`
fi

headepoch=`git log -1 --format="%ct"`
headdate=`LC_ALL=${DATELC} date -d@${headepoch} +${dateformat}`
headdateedtf=`LC_ALL=${DATELC} date -d@${headepoch} +%Y-%m-%d`

tag=`git tag --sort=-version:refname | head -n1`

if [ -z "${tag}" ]; then
revision="DRAFT"
docver=`git rev-list ${basehash}..HEAD | wc -l`
else
revision=${tag}
docver=`git rev-list ${tag}..HEAD | wc -l`
fi

if [ ${docver} -ne 0 ]; then
revision="${revision}${docver}"
fi

hash=`git rev-parse --short HEAD`

# hook-pre
if [ -e hook-pre.sh ]; then
./hook-pre.sh
if [ $? != 0 ]; then
echo "hook-pre.sh failed!"
exit 1
fi
fi


# if the current working tree is not clean, we add a "+"
# (should be $\epsilon$, but it would screw the file name),
# set the date to today and change the author to the current user,
# as it is the most probable scenario
if [ -z "`git status --porcelain`" ]; then
date=${headdate}
dateedtf=${headdateedtf}
else
dochash="${hash}+$\epsilon$"
revision="${revision}+"
date=${currentdate}
dateedtf=${currentdateedtf}
fi




cat << EOF > hash.yaml

---
hash: ${dochash}
rev: ${revision}
date: ${date}
...
EOF

for format in ${formats}; do

echo "md -> ${format}"
flags="--number-sections --toc --syntax-definition=wasora.xml --syntax-definition=fino.xml"
if [[ "${format}" == "pdf" ]] || [[ "${format}" == "tex" ]]; then
template_file="${template}.tex"
flags="${flags} --listings --pdf-engine=xelatex"
if [[ "${format}" == "tex" ]]; then
flags="${flags} --biblatex"
fi
elif [[ "${format}" == "html" ]]; then
template_file="${template}.html"
flags="${flags} --mathjax"
else
template_file="${template}.${format}"
fi

if [ -e "${template_file}" ]; then
template_spec="--template $template_file"
fi
m4 -Doutput_format=${format} markuw.m4 meta.yaml ${name}.md hash.yaml |\
pandoc -s ${flags} ${template_spec} --filter pandoc-crossref --filter pandoc-citeproc -o ${name}.${format} || exit 1

if [ -z "`git check-ignore ${name}.${format}`" ]; then
echo ${name}.${format} >> .gitignore
fi
done

+ 9
- 0
markuw.m4 查看文件

@@ -0,0 +1,9 @@
divert(`-1')
changequote(`[[', `]]')
define(lorem_ipsum, [[Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nullam elit orci, semper sit amet augue sed, vehicula tristique mauris. Quisque tincidunt felis ex, et sodales nisl fermentum eget. Vestibulum nec lacinia diam. Vivamus condimentum porta volutpat. Nam eu malesuada augue. Vestibulum in volutpat massa. Proin nisi magna, lobortis et tincidunt nec, scelerisque sed quam. Phasellus rutrum scelerisque felis vitae vestibulum. Curabitur egestas nulla ac nibh ullamcorper rhoncus. Nam sit amet justo vulputate, consectetur urna eget, mollis nisl. Nunc vitae suscipit urna. Cras fermentum purus lorem, nec rutrum elit faucibus at. Nullam nec maximus orci. Quisque aliquet et metus vel gravida. Vivamus egestas, elit in ullamcorper semper, massa orci dictum tellus, at rhoncus leo dui eget risus.]])
define(vector_format, ifelse(output_format, [[html]], [[svg]], [[pdf]]))
# forloop(var, from, to, stmt) - simple version
define([[forloop]], [[pushdef([[$1]], [[$2]])_forloop($@)popdef([[$1]])]])
define([[_forloop]],
[[$4[[]]ifelse($1, [[$3]], [[]], [[define([[$1]], incr($1))$0($@)]])]])
divert[[]]dnl

+ 18
- 0
meta.yaml 查看文件

@@ -0,0 +1,18 @@
---
title: Case Study Number 4: Fatigue Analysis in Nuclear Piping
subtitle: A journey from college theory to an actual engineering problem
author: Jeremy Theler
authoremail: jeremy@seamplex.com
fontsize: 11pt
lang: en-US
bibliography: references.bib
biblatexoptions: sorting=none
link-citations: true
colorlinks: true
linkReferences: true
nameInLink: true
mathspec: true
formats: html tex pdf
listings: true
template: simple
...

+ 10
- 0
nafems4.md 查看文件

@@ -0,0 +1,10 @@
We will dig into some math. If you do not like equations, just ignore them for now. Read the text skipping them. It is fine (for now).

We will need your imagination. Equations, numbers, plot, schematics, 3d views, interactive rotable 3d models... but still, when the theory says "thermal expansion produces linear stresses" you have to picture in your head three little arrows pulling away from the same point in three directions.

If you do not know what a Gauss point is, pause here, grab a classical FEM book and resume when you do.

FEM is like magic to me. I can follow the whole derivation, from the strong, the weak and varitionals formulations down to the algebraic multigrid preconditioner for the inversion of the stiffness matrix passing through Sobolev spaces and the grid generatoin. Then I can sit down and code all these steps, including shape funcions, matrix assembly and computation of derivatives^{This is a task that if you can, you definitely have to do. Your time and effort will be highly rewarded in the not-so-far-away future.}. Yet, the fact that all these a-priori unconnected steps once gets a pretty picture that resembles reality is astonishing.


tomen este cpitulo como una charla - imginacion! ecuaciones numeros plot 3d drawing intrctive 3d model, but still you have to imagine dericatives nd stress tensors... "thermal expansion gives normal stresses" and then picture out three arrows pulling away

+ 112
- 0
references.bib 查看文件

@@ -0,0 +1,112 @@
@techreport { asme3div1ap1,
title = {ASME Boiler and Pressure Vessel Code, Section {III}, Rules for Construction of Nuclear Facility Components},
subtitle = {Division 1---Mandatory Appendix I, Design Fatigue Curves},
institution = {American Society of Mechanical Engineers},
year = {2015},
langid = {english},
language = {english},
}

@techreport { asme3div1apN,
title = {ASME Boiler and Pressure Vessel Code, Section {III}, Rules for Construction of Nuclear Facility Components},
subtitle = {Division 1---NonMandatory Appendix N, Dynamic Analysis Methods},
institution = {American Society of Mechanical Engineers},
year = {2015},
langid = {english},
language = {english},
}

@techreport { asme2partA,
title = {ASME Boiler and Pressure Vessel Code, Section {II}, Materials},
subtitle = {Part A, Ferrous Materials},
institution = {American Society of Mechanical Engineers},
year = {2015},
langid = {english},
language = {english},
}

@techreport { asme2partD,
title = {ASME Boiler and Pressure Vessel Code, Section {II}, Materials},
subtitle = {Part D, Properties (Metric)},
institution = {American Society of Mechanical Engineers},
year = {2015},
langid = {english},
language = {english},
}

@techreport { asme3div1nb,
title = {ASME Boiler and Pressure Vessel Code, Section {III}, Rules for Construction of Nuclear Facility Components},
subtitle = {Division 1---Subsection NB, Class 1 Components},
institution = {American Society of Mechanical Engineers},
year = {2015},
langid = {english},
language = {english},
}

@techreport { asme8div2,
title = {ASME Boiler and Pressure Vessel Code, Section {VIII}, Rules for Construction of Pressure Vessels},
subtitle = {Division 2---Alternative Rules},
institution = {American Society of Mechanical Engineers},
year = {2010},
langid = {english},
language = {english},
}

@techreport { asmeb36,
title = {Welded and Seamless Wrought Steel PIpe},
institution = {American Society of Mechanical Engineers},
number = {ASME B36.10M},
year = {2004},
langid = {english},
language = {english},
}


@techreport{wasoradesc,
author = "J. Theler",
title = "Description of the computational tool wasora",
type="Technical Description",
number = "SP-WA-15-TD-9E3D",
institution = "Seamplex",
version="B",
year = "2016",
language = "english",
hyphenation = "english",
}

@techreport{milonga-design,
author = "J. Theler",
title = "On the design basis of a new core-level neutronic code written from scratch",
type="Technical Report",
number = "SP-MI-14-AR-5B44",
institution = "Seamplex",
version="D",
year = "2016",
language = "english",
hyphenation = "english",
}




@book{raymond,
author = "Eric S. Raymond",
title = "The Art of UNIX Programming",
publisher = "Addison-Wesley",
year = "2003",
langid = "english",
language = "english",
}


@article{gmsh,
author = "C. Geuzaine and J. F. Remacle",
title = "Gmsh: a three-dimensional finite element mesh generator with built-in pre- and post-processing facilities",
journal = "International Journal for Numerical Methods in Engineering",
number = "79",
volume = "11",
pages = "1309--1331",
year = "2009",
language = "english",
hyphenation = "english",
}

二進制
refs/5513.pdf 查看文件


+ 130
- 0
simple.html 查看文件

@@ -0,0 +1,130 @@
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml" lang="$lang$" xml:lang="$lang$"$if(dir)$ dir="$dir$"$endif$>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta name="description" content="">
$for(author-meta)$
<meta name="author" content="$author-meta$" />
$endfor$
$if(date-meta)$
<meta name="dcterms.date" content="$date-meta$" />
$endif$
$if(keywords)$
<meta name="keywords" content="$for(keywords)$$keywords$$sep$, $endfor$" />
$endif$
<title>$if(title-prefix)$$title-prefix$ – $endif$$pagetitle$</title>
$if(fontfamily_html)$
<link href="https://fonts.googleapis.com/css?family=$fontfamily_html$" rel="stylesheet">
$endif$
<link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.1.3/css/bootstrap.min.css" integrity="sha384-MCw98/SFnGE8fJT3GXwEOngsV7Zt27NXFoaoApmYm81iuXoPkFOJwJ8ERdknLPMO" crossorigin="anonymous">
<link href='https://fonts.googleapis.com/css?family=Libre+Baskerville' rel='stylesheet' type='text/css'>
<style type="text/css">
body {
font-family: "Libre Baskerville", serif;
hyphens: auto;
}
img {
max-width: 100%;
}

@media (min-width: 768px) {
h1 { font-size: 2.00rem; }
h2 { font-size: 1.70rem; }
h3 { font-size: 1.40rem; }
h4 { font-size: 1.20rem; }
h5 { font-size: 1.10rem; }
h6 { font-size: 1.00rem; }
}

@media (max-width: 768px) {
h1 { font-size: 1.50rem; }
h2 { font-size: 1.35rem; }
h3 { font-size: 1.20rem; }
h4 { font-size: 1.10rem; }
h5 { font-size: 1.00rem; }
h6 { font-size: 1.00rem; }
}
code {
padding: .2rem .5rem;
white-space: nowrap;
background: #F1F1F1;
border: 1px solid #E1E1E1;
border-radius: 4px; }
pre > code {
display: block;
white-space: pre; }
code{white-space: pre-wrap;}
span.smallcaps{font-variant: small-caps;}
span.underline{text-decoration: underline;}
div.column{display: inline-block; vertical-align: top; width: 50%;}
$if(quotes)$
q { quotes: "“" "”" "‘" "’"; }
$endif$
</style>
$if(highlighting-css)$
<style type="text/css">
$highlighting-css$
</style>
$endif$
$for(css)$
<link rel="stylesheet" href="$css$" />
$endfor$
$if(math)$
$math$
$endif$
$for(header-includes)$
$header-includes$
$endfor$
</head>
<body>
$for(include-before)$
$include-before$
$endfor$
<div class="container">
<div class="row">
<div class="col text-center">
$if(title)$
<h1>$title$</h1>
$if(subtitle)$
<h2>$subtitle$</h2>
$endif$
$for(author)$
<p class="lead">
$author$$if(reviewer)$, $reviewer$$endif$$if(releaser)$, $releaser$$endif$
</p>
$endfor$
$if(date)$
<p class="lead">$date$
$if(rev)$&mdash;$rev$$endif$
$if(hash)$&mdash;$hash$$endif$
</p>
$endif$
$if(abstract)$
<h3 class="text-center">Abstract</h3>
<p class="text-justify">$abstract$</p>
$endif$
<hr>
$endif$
</div>
</div>
<div class="row">
<div class="col">
$if(toc)$
<nav id="$idprefix$TOC">
<h1>Table of Contents</h1>
$table-of-contents$
</nav>
$endif$
$body$
</div>
</div>
</div>
$for(include-after)$
$include-after$
$endfor$
</body>
</html>

+ 356
- 0
simple.tex 查看文件

@@ -0,0 +1,356 @@
\PassOptionsToPackage{unicode=true}{hyperref} % options for packages loaded elsewhere
\PassOptionsToPackage{hyphens}{url}
$if(colorlinks)$
\PassOptionsToPackage{usenames,dvipsnames}{color}
$endif$
%
\documentclass[$if(fontsize)$$fontsize$,$endif$$if(lang)$$babel-lang$,$endif$$if(papersize)$$papersize$paper,$endif$$for(classoption)$$classoption$$sep$,$endfor$]{$documentclass$}
$if(beamerarticle)$
\usepackage{beamerarticle} % needs to be loaded first
$endif$
$if(fontfamily)$
\usepackage[$for(fontfamilyoptions)$$fontfamilyoptions$$sep$,$endfor$]{$fontfamily$}
$else$
\usepackage{lmodern}
$endif$
$if(linestretch)$
\usepackage{setspace}
\setstretch{$linestretch$}
$endif$
\usepackage{amssymb,amsmath}
\usepackage{ifxetex,ifluatex}
\usepackage{fixltx2e} % provides \textsubscript
\ifnum 0\ifxetex 1\fi\ifluatex 1\fi=0 % if pdftex
\usepackage[$if(fontenc)$$fontenc$$else$T1$endif$]{fontenc}
\usepackage[utf8]{inputenc}
$if(euro)$
\usepackage{eurosym}
$endif$
\else % if luatex or xelatex
$if(mathspec)$
\ifxetex
\usepackage{mathspec}
\else
\usepackage{unicode-math}
\fi
$else$
\usepackage{unicode-math}
$endif$
\defaultfontfeatures{Ligatures=TeX,Scale=MatchLowercase}
$for(fontfamilies)$
\newfontfamily{$fontfamilies.name$}[$fontfamilies.options$]{$fontfamilies.font$}
$endfor$
$if(euro)$
\newcommand{\euro}{€}
$endif$
$if(mainfont)$
\setmainfont[$for(mainfontoptions)$$mainfontoptions$$sep$,$endfor$]{$mainfont$}
$else$
\setmainfont{LinLibertineO}
$endif$
$if(sansfont)$
\setsansfont[$for(sansfontoptions)$$sansfontoptions$$sep$,$endfor$]{$sansfont$}
$else$
\setsansfont{Carlito}
$endif$
$if(monofont)$
\setmonofont[Mapping=tex-ansi$if(monofontoptions)$,$for(monofontoptions)$$monofontoptions$$sep$,$endfor$$endif$]{$monofont$}
$else$
\setmonofont[Mapping=tex-ansi]{DejaVuSansMono}
$endif$
$if(mathfont)$
$if(mathspec)$
\ifxetex
\setmathfont(Digits,Latin,Greek)[$for(mathfontoptions)$$mathfontoptions$$sep$,$endfor$]{$mathfont$}
\else
\setmathfont[$for(mathfontoptions)$$mathfontoptions$$sep$,$endfor$]{$mathfont$}
\fi
$else$
\setmathfont[$for(mathfontoptions)$$mathfontoptions$$sep$,$endfor$]{$mathfont$}
$endif$
$endif$
$if(CJKmainfont)$
\ifxetex
\usepackage{xeCJK}
\setCJKmainfont[$for(CJKoptions)$$CJKoptions$$sep$,$endfor$]{$CJKmainfont$}
\fi
$endif$
$if(luatexjapresetoptions)$
\ifluatex
\usepackage[$for(luatexjapresetoptions)$$luatexjapresetoptions$$sep$,$endfor$]{luatexja-preset}
\fi
$endif$
$if(CJKmainfont)$
\ifluatex
\usepackage[$for(luatexjafontspecoptions)$$luatexjafontspecoptions$$sep$,$endfor$]{luatexja-fontspec}
\setmainjfont[$for(CJKoptions)$$CJKoptions$$sep$,$endfor$]{$CJKmainfont$}
\fi
$endif$
\fi
% use upquote if available, for straight quotes in verbatim environments
\IfFileExists{upquote.sty}{\usepackage{upquote}}{}
% use microtype if available
\IfFileExists{microtype.sty}{%
\usepackage[$for(microtypeoptions)$$microtypeoptions$$sep$,$endfor$]{microtype}
\UseMicrotypeSet[protrusion]{basicmath} % disable protrusion for tt fonts
}{}
$if(indent)$
$else$
% \IfFileExists{parskip.sty}{%
% \usepackage{parskip}
% }{% else
% \setlength{\parindent}{0pt}
% \setlength{\parskip}{6pt plus 2pt minus 1pt}
% }
$endif$
$if(verbatim-in-note)$
\usepackage{fancyvrb}
$endif$
\usepackage{hyperref}
\hypersetup{
$if(title-meta)$
pdftitle={$title-meta$},
$endif$
$if(author-meta)$
pdfauthor={$author-meta$},
$endif$
$if(keywords)$
pdfkeywords={$for(keywords)$$keywords$$sep$, $endfor$},
$endif$
$if(colorlinks)$
colorlinks=true,
linkcolor=$if(linkcolor)$$linkcolor$$else$Maroon$endif$,
citecolor=$if(citecolor)$$citecolor$$else$Blue$endif$,
urlcolor=$if(urlcolor)$$urlcolor$$else$Blue$endif$,
$else$
pdfborder={0 0 0},
$endif$
breaklinks=true}
\urlstyle{tt}
$if(verbatim-in-note)$
\VerbatimFootnotes % allows verbatim text in footnotes
$endif$
$if(geometry)$
\usepackage[$for(geometry)$$geometry$$sep$,$endfor$]{geometry}
$else$
\usepackage{geometry}
\geometry{paper=a4paper, left=2.5cm, right=2cm, bottom=3.5cm, foot=2cm, top=3.5cm, head=2cm}
$endif$
$if(lang)$
\ifnum 0\ifxetex 1\fi\ifluatex 1\fi=0 % if pdftex
\usepackage[shorthands=off,$for(babel-otherlangs)$$babel-otherlangs$,$endfor$main=$babel-lang$]{babel}
$if(babel-newcommands)$
$babel-newcommands$
$endif$
\else
% load polyglossia as late as possible as it *could* call bidi if RTL lang (e.g. Hebrew or Arabic)
\usepackage{polyglossia}
\setmainlanguage[$polyglossia-lang.options$]{$polyglossia-lang.name$}
$for(polyglossia-otherlangs)$
\setotherlanguage[$polyglossia-otherlangs.options$]{$polyglossia-otherlangs.name$}
$endfor$
\fi
$endif$
$if(natbib)$
\usepackage[$natbiboptions$]{natbib}
\bibliographystyle{$if(biblio-style)$$biblio-style$$else$plainnat$endif$}
$endif$
$if(biblatex)$
\usepackage[$if(biblio-style)$style=$biblio-style$,$endif$$for(biblatexoptions)$$biblatexoptions$$sep$,$endfor$]{biblatex}
$for(bibliography)$
\addbibresource{$bibliography$}
$endfor$
$endif$
$if(listings)$
\usepackage{listings}
\usepackage[dvipsnames]{xcolor}
\input{syntax.tex}
\newcommand{\passthrough}[1]{\texttt{#1}}
$endif$
$if(lhs)$
\lstnewenvironment{code}{\lstset{language=Haskell,basicstyle=\small\ttfamily}}{}
$endif$
$if(highlighting-macros)$
$highlighting-macros$
$endif$
$if(tables)$
\usepackage{longtable,booktabs}
% Fix footnotes in tables (requires footnote package)
\IfFileExists{footnote.sty}{\usepackage{footnote}\makesavenoteenv{longtable}}{}
$endif$

\usepackage{graphicx,grffile}
\makeatletter
\def\maxwidth{\ifdim\Gin@nat@width>\linewidth\linewidth\else\Gin@nat@width\fi}
\def\maxheight{\ifdim\Gin@nat@height>\textheight\textheight\else\Gin@nat@height\fi}
\makeatother
% Scale images if necessary, so that they will not overflow the page
% margins by default, and it is still possible to overwrite the defaults
% using explicit options in \includegraphics[width, height, ...]{}
\setkeys{Gin}{width=\maxwidth,height=\maxheight,keepaspectratio}


% headers y footers a medida
\usepackage{lastpage}
\usepackage{fancyhdr}
\pagestyle{fancy}
\fancyhf{} % clear all header and footer fields
$if(docnumber)$
\lhead{$docnumber$}
$endif$
\lfoot{\scriptsize{$if(date)$ $date$ $endif$ / $if(hash)$ \texttt{$hash$} $endif$}}
\rfoot{\thepage/\pageref{LastPage}}
\rhead{\includegraphics[height=10pt]{logo}}
\renewcommand{\headrulewidth}{0.0pt}
\renewcommand{\footrulewidth}{0.4pt}

\fancypagestyle{plain}{%
\fancyhf{} % clear all header and footer fields
$if(hash)$
% \lhead{\scriptsize{\texttt{$hash$}}}
\rfoot{\scriptsize{\texttt{$hash$}}}
$endif$
\renewcommand{\headrulewidth}{0pt}
\renewcommand{\footrulewidth}{0pt}}

$if(links-as-notes)$
% Make links footnotes instead of hotlinks:
\DeclareRobustCommand{\href}[2]{#2\footnote{\url{#1}}}
$endif$
$if(strikeout)$
\usepackage[normalem]{ulem}
% avoid problems with \sout in headers with hyperref:
\pdfstringdefDisableCommands{\renewcommand{\sout}{}}
$endif$
\setlength{\emergencystretch}{3em} % prevent overfull lines
\providecommand{\tightlist}{%
\setlength{\itemsep}{0pt}\setlength{\parskip}{0pt}}
$if(numbersections)$
\setcounter{secnumdepth}{$if(secnumdepth)$$secnumdepth$$else$5$endif$}
$else$
\setcounter{secnumdepth}{0}
$endif$
$if(subparagraph)$
$else$
% Redefines (sub)paragraphs to behave more like sections
\ifx\paragraph\undefined\else
\let\oldparagraph\paragraph
\renewcommand{\paragraph}[1]{\oldparagraph{#1}\mbox{}}
\fi
\ifx\subparagraph\undefined\else
\let\oldsubparagraph\subparagraph
\renewcommand{\subparagraph}[1]{\oldsubparagraph{#1}\mbox{}}
\fi
$endif$
$if(dir)$
\ifxetex
% load bidi as late as possible as it modifies e.g. graphicx
$if(latex-dir-rtl)$
\usepackage[RTLdocument]{bidi}
$else$
\usepackage{bidi}
$endif$
\fi
\ifnum 0\ifxetex 1\fi\ifluatex 1\fi=0 % if pdftex
\TeXXeTstate=1
\newcommand{\RL}[1]{\beginR #1\endR}
\newcommand{\LR}[1]{\beginL #1\endL}
\newenvironment{RTL}{\beginR}{\endR}
\newenvironment{LTR}{\beginL}{\endL}
\fi
$endif$

\usepackage{subfig}
% SIunits
\usepackage{siunitx}

% set default figure placement to htbp
\makeatletter
\def\fps@figure{htbp}
\pretocmd\env@cases{\def\@rowc@lors{}}{}{}
\pretocmd\start@align{\def\@rowc@lors{}}{}{}
\makeatother

% fuente para los captions de figuras
\usepackage{caption}
\renewcommand{\captionfont}{\sf\small}
% \renewcommand{\captionlabelfont}{\bf\sf}

$for(header-includes)$
$header-includes$
$endfor$

$if(title)$
\title{$title$$if(thanks)$\thanks{$thanks$}$endif$}
$endif$
$if(subtitle)$
\providecommand{\subtitle}[1]{}
\subtitle{$subtitle$}
$endif$
$if(author)$
\author{$for(author)$$author$$sep$ \and $endfor$}
$endif$
$if(institute)$
\providecommand{\institute}[1]{}
\institute{$for(institute)$$institute$$sep$ \and $endfor$}
$endif$
\date{$date$}

\begin{document}
% \thispagestyle{empty}
% \thispagestyle{plain}

$if(title)$
\maketitle
$endif$

$for(include-before)$
$include-before$

$endfor$
$if(toc)$
{
$if(colorlinks)$
\hypersetup{linkcolor=$if(toccolor)$$toccolor$$else$black$endif$}
$endif$
\setcounter{tocdepth}{$toc-depth$}
\tableofcontents
\pagebreak
}
$endif$
$if(lot)$
\listoftables
\pagebreak
$endif$
$if(lof)$
\listoffigures
\pagebreak
$endif$

% vectors done right
\renewcommand{\vec}[1]{\ensuremath\mathbf{#1}}

$body$

$if(natbib)$
$if(bibliography)$
$if(biblio-title)$
$if(book-class)$
\renewcommand\bibname{$biblio-title$}
$else$
\renewcommand\refname{$biblio-title$}
$endif$
$endif$
\bibliography{$for(bibliography)$$bibliography$$sep$,$endfor$}

$endif$
$endif$
$if(biblatex)$
\printbibliography$if(biblio-title)$[title=$biblio-title$]$endif$

$endif$
$for(include-after)$
$include-after$

$endfor$
\end{document}

Loading…
取消
儲存