diff --git a/Lectures_my/NumMet/Lecture4/Makefile b/Lectures_my/NumMet/Lecture4/Makefile new file mode 100644 index 0000000..37f4367 --- /dev/null +++ b/Lectures_my/NumMet/Lecture4/Makefile @@ -0,0 +1,9 @@ +all: lecture4.pdf + +lecture4.pdf: lecture4.tex + xelatex lecture4.tex +# bibtex lecture3 + xelatex lecture4.tex +# xelatex lecture4.tex +clean: + rm *.aux *.bbl *.blg *.log *.out *.pdf *.sh *.xml *.snm *.toc *.nav diff --git a/Lectures_my/NumMet/Lecture4/beamercolorthemeFlip.sty b/Lectures_my/NumMet/Lecture4/beamercolorthemeFlip.sty new file mode 100755 index 0000000..d6b9c50 --- /dev/null +++ b/Lectures_my/NumMet/Lecture4/beamercolorthemeFlip.sty @@ -0,0 +1,179 @@ +% Color style file for the BEAMER FLIP THEME +% Copyright 2012 by Flip Tanedo +% This file may be distributed and/or modified +% 1. under the LaTeX Project Public License and/or +% 2. under the GNU Public License. + + + +\mode +\newif\ifbeamer@Flip@dark +\beamer@Flip@darkfalse +\DeclareOptionBeamer{dark}{\beamer@Flip@darktrue} +\ProcessOptionsBeamer + + +% These are a few colors that I like. + +\definecolor{crimsonred}{RGB}{153,0,0} % Neurtal red, good for dark or light bg +\definecolor{darkcharcoal}{RGB}{25,25,25} % Darker gray +\definecolor{charcoal}{RGB}{51,51,51} % Darker gray +\definecolor{ash}{RGB}{100,100,100} % medium gray +\definecolor{paleblue}{RGB}{0,102,102} % More of an `ocean' color +\definecolor{turtlegreen}{RGB}{51,153,0} % A more neutral green +\definecolor{paleale}{RGB}{204,204,102} % Only for dark BG +\definecolor{lager}{RGB}{140,110,10} % Use instead of pale ale for white BG +\definecolor{regal}{RGB}{90,0,120} % A more neutral purple +\definecolor{jeans}{RGB}{20,30,150} % A more neutral blue + + +% Define some "invariant colors" so that a color that doen't work with a +% light/dark background will automatically be substituted with one that does. +% These will be rewritten in beamercolorthemeFlipDark + +\ifbeamer@Flip@dark + \definecolor{FlipSand}{RGB}{204,204,102} % paleale, Only for dark BG + \definecolor{FlipGreen}{RGB}{0,255,0} % Neon-like green, only for dark BG +\else + \definecolor{FlipSand}{RGB}{140,110,10} % lager, Only for light BG + \definecolor{FlipGreen}{RGB}{51,153,0} % turtlegreen, works for both +\fi + +%% Future revision: It would be nice to define these in terms of the palette. + + +\ifbeamer@Flip@dark + \setbeamercolor{normal text}{fg=white, bg=black} + \setbeamercolor{structure}{fg=gray, bg=black} % fg controls bullets + \setbeamercolor*{footerlike}{fg=white,bg=black} % Controls the footerline +\else + % Default to black on white + \setbeamercolor*{footerlike}{fg=white,bg=charcoal} % for charcoal footer + \setbeamercolor{structure}{fg=charcoal, bg=white} % fg controls bullets + % \setbeamercolor{normal text}{fg=white, bg=black} +\fi + + + + + +% These defined colors can be used in \textcolor{colorname}{text in that color}. + +% Colors for Keynote background: DARK +\definecolor{keynotebottom}{rgb}{0.32,0.3,0.38} +\definecolor{keynotemiddle}{rgb}{0.08,0.08,0.16} +\definecolor{keynotetop}{rgb}{0,0,0} +%%% Example of usage: +%% \setbeamertemplate{background canvas}[vertical shading] +%% [bottom=keynotebottom, middle=keynotemiddle, top=keynotetop] + + + + +% ALERT AND COMMENT COLORS (just copies of the above colors) +% (I don't know how ot do this more elegantly) +\ifbeamer@Flip@dark + \definecolor{ALERT}{RGB}{153,0,0} % crimsonred + \definecolor{Alert}{RGB}{51,153,0} % turtlegreen + \definecolor{alert}{RGB}{204,204,102} % paleale + \definecolor{charcoal}{RGB}{51,51,51} % charcoal + \definecolor{comment}{RGB}{80,80,80} % light charcoal + \definecolor{Comment}{RGB}{100,100,100} % ash + \definecolor{COMMENT}{RGB}{80,20,120} % regal +\else +% \definecolor{ALERT}{RGB}{153,0,0} % crimsonred + \definecolor{ALERT}{RGB}{28,134,238} % DodgerBlue2 +% \definecolor{Alert}{RGB}{51,153,0} % turtlegreen + \definecolor{Alert}{RGB}{255,127,36} % chocolate1 +% \definecolor{alert}{RGB}{140,110,10} % lager + \definecolor{alert}{RGB}{0,205,102} % SpringGreen3 + \definecolor{charcoal}{RGB}{80,80,80} % light charcoal + \definecolor{comment}{RGB}{51,51,51} % charcoal + \definecolor{Comment}{RGB}{100,100,100} % ash + \definecolor{COMMENT}{RGB}{80,20,120} % regal +\fi + + +% \definecolor{crimsonred}{RGB}{153,0,0} % Neurtal red, good for dark or light bg +% \definecolor{charcoal}{RGB}{51,51,51} % Darker gray +% \definecolor{ash}{RGB}{100,100,100} % medium gray +% \definecolor{paleblue}{RGB}{0,102,102} % More of an `ocean' color +% \definecolor{turtlegreen}{RGB}{51,153,0} % A more neutral green +% \definecolor{paleale}{RGB}{204,204,102} % Only for dark BG +% \definecolor{lager}{RGB}{140,110,10} % Use instead of pale ale for white BG +% \definecolor{regal}{RGB}{90,0,120} % A more neutral purple +% \definecolor{jeans}{RGB}{20,30,150} % A more neutral blue + + +% A few useful colors +\setbeamercolor{alerted text}{fg=alert} + +%% I would like ot use these colors, but there seems to be a bug in Beamer +%% where the footnote color infects the normal text color +%% See: http://tex.stackexchange.com/questions/8264/beamer-changing-the-footnote-color-also-changes-the-normal-text-color/8268#8268 + +% \setbeamercolor{footnote}{parent=normal text, fg=FlipSand} +% \setbeamercolor{footnote mark}{parent=normal text, fg=FlipSand} + +% Blocks +\setbeamercolor{block title}{fg=gray!30!white,bg=charcoal} +\setbeamercolor{block body}{parent=normal text,bg=gray, fg=white} + +\setbeamercolor{block title example}{fg=turtlegreen!30!white,bg=turtlegreen!40!black} +\setbeamercolor{block body example}{parent=normal text,bg=turtlegreen, fg=white} +% +\setbeamercolor{block title alerted}{fg=crimsonred!30!white,bg=crimsonred!40!black} +\setbeamercolor{block body alerted}{parent=normal text,bg=crimsonred, fg=white} + + + +% These "setbeamercolor" commands are more standardized. + + +%% From the Beamer User Guide: +% Outer themes base the color of navigational elements and, possibly, also of other elements, on the +% four palette colors. The “primary” palette should be used for the most important navigational elements, +% which are usually the ones that change most often and hence require the most attention by the audience. +% The “secondary” and “tertiary” are less important, the “quaternary” one is least important. +% By default, the palette colors do not have a background and the foreground ranges from structure.fg to black. +% For the sidebar, there is an extra set of palette colors, see palette sidebar primary. + +\setbeamercolor*{palette primary}{fg=crimsonred,bg=charcoal} +\setbeamercolor*{palette secondary}{fg=paleale,bg=lager} +\setbeamercolor*{palette tertiary}{fg=turtlegreen,bg=jeans} +\setbeamercolor*{palette quaternary}{fg=paleblue,bg=regal} + +% \setbeamercolor*{palette primary}{fg=crimsonred,bg=white} +% \setbeamercolor*{palette secondary}{fg=charcoal,bg=white} +% \setbeamercolor*{palette tertiary}{fg=paleblue,bg=white} +% \setbeamercolor*{palette quaternary}{fg=turtlegreen,bg=white} + + + +%% These are some structures that I define for use in the outer theme. + +\setbeamercolor*{crimsontown}{fg=paleblue,bg=crimsonred} +\setbeamercolor*{bluetown}{fg=white,bg=DodgerBlue2} +%\setbeamercolor*{titlelike}{fg=crimsonred} +\setbeamercolor*{titlelike}{fg=DodgerBlue2} +\setbeamercolor*{topbarlike}{fg=white, bg=charcoal} + + + + + +%% Some old definitions that I might want to get back to +% +% \setbeamercolor*{frametitle}{bg=white,fg=charcoal} +% \setbeamercolor*{part title}{bg=white,fg=charcoal} +% \setbeamercolor*{item}{fg=charcoal, bg=white} +% +% \setbeamercolor*{separation line}{} +% \setbeamercolor*{fine separation line}{} + + + + + +\mode + diff --git a/Lectures_my/NumMet/Lecture4/beamerinnerthemeFlip.sty b/Lectures_my/NumMet/Lecture4/beamerinnerthemeFlip.sty new file mode 100755 index 0000000..8dc12a0 --- /dev/null +++ b/Lectures_my/NumMet/Lecture4/beamerinnerthemeFlip.sty @@ -0,0 +1,95 @@ +% Inner style file for the BEAMER FLIP THEME +% Copyright 2010 by Flip Tanedo +% This file may be distributed and/or modified +% 1. under the LaTeX Project Public License and/or +% 2. under the GNU Public License. +% +% Based on: beamerinnerthemeFlip by Marco Barisione + +\mode + +% % Use alternative title page style. +% \DeclareOptionBeamer{alternativetitlepage}[true]{\def\beamer@Flip@alternativetitlepage{#1}} + +% Logo to use in the alternative title page. +% \def\beamer@Flip@titlepagelogo{} +% \DeclareOptionBeamer{titlepagelogo}{\def\beamer@Flip@titlepagelogo{#1}} + +% Bullet shape. +\DeclareOptionBeamer{bullet}{\def\beamer@Flip@bullet{#1}} +\DeclareOptionBeamer{shadow}[true]{\def\beamer@themerounded@shadow{#1}} +\ExecuteOptionsBeamer{shadow=false} + + +% \ExecuteOptionsBeamer{alternativetitlepage=false,bullet=square} +\ProcessOptionsBeamer + + + +% Margins. +\newlength{\beamer@Flip@normalmargin} +\setlength{\beamer@Flip@normalmargin}{.06\paperwidth} +\setbeamersize{text margin left=\beamer@Flip@normalmargin} +\setbeamersize{text margin right=\beamer@Flip@normalmargin} +\setlength\leftmargini{.6\beamer@Flip@normalmargin} +\setlength\leftmarginii{.6\beamer@Flip@normalmargin} +\setlength\leftmarginiii{.6\beamer@Flip@normalmargin} + +% Normal title page. +\defbeamertemplate*{title page normal}{Flip theme}[1][] +{ + \vbox{} + \vfill + \begin{centering} + \begin{beamercolorbox}[wd=\paperwidth,sep=8pt,center,#1]{title page header} + \usebeamerfont{title}\inserttitle\par% + \ifx\insertsubtitle\@empty% + \else% + \vskip0.25em% + {\usebeamerfont{subtitle}\usebeamercolor[fg]{subtitle}\insertsubtitle\par}% + \fi% + \end{beamercolorbox}% + %\vskip0.5em\par + \begin{beamercolorbox}[sep=8pt,center,#1]{author} + \usebeamerfont{author}\insertauthor + \end{beamercolorbox} + \begin{beamercolorbox}[sep=8pt,center,#1]{institute} + \usebeamerfont{institute}\insertinstitute + \end{beamercolorbox} + \begin{beamercolorbox}[sep=8pt,center,#1]{date} + \usebeamerfont{date}\insertdate + \end{beamercolorbox}\vskip0.5em + {\usebeamercolor[fg]{titlegraphic}\inserttitlegraphic\par} + \end{centering} + \vfill +} + + +% Items. +\defbeamertemplate{itemize item}{squarealt}% +{\tiny\raise.5ex\hbox{\donotcoloroutermaths$\blacksquare$}} +\defbeamertemplate{itemize subitem}{squarealt}% +{\tiny\raise.4ex\hbox{\donotcoloroutermaths$\square$}} +\defbeamertemplate{itemize subsubitem}{squarealt}% +{\tiny\raise.3ex\hbox{\donotcoloroutermaths$\blacksquare$}} +% +\defbeamertemplate{itemize item}{circlealt}% +{\small\raise.2ex\hbox{\donotcoloroutermaths$\bullet$}} +\defbeamertemplate{itemize subitem}{circlealt}% +{\small\raise.1ex\hbox{\donotcoloroutermaths$\circ$}} +\defbeamertemplate{itemize subsubitem}{circlealt}% +{\scriptsize\raise.1ex\hbox{\donotcoloroutermaths$\bullet$}} +\setbeamertemplate{items}[circlealt] +% +\def\circletext{circle} +\ifx\beamer@Flip@bullet\circletext + \setbeamertemplate{items}[circlealt] +\else + \setbeamertemplate{items}[squarealt] +\fi + +\setbeamertemplate{blocks}[rounded][shadow=\beamer@themerounded@shadow] + + +\mode + diff --git a/Lectures_my/NumMet/Lecture4/beamerouterthemeFlip.sty b/Lectures_my/NumMet/Lecture4/beamerouterthemeFlip.sty new file mode 100755 index 0000000..d12f6d6 --- /dev/null +++ b/Lectures_my/NumMet/Lecture4/beamerouterthemeFlip.sty @@ -0,0 +1,189 @@ +% Outer style file for the BEAMER FLIP THEME 212 +% Copyright 2012 by Flip Tanedo +% This file may be distributed and/or modified +% 1. under the LaTeX Project Public License and/or +% 2. under the GNU Public License. +% +% Based on: beamerouterthemesplit by Till Tantau + + +\mode + +% Watermark +\DeclareOptionBeamer{watermark}{\def\beamer@Flip@watermark{#1}} +\ExecuteOptionsBeamer{watermark=} % Default value is empty + + +\newif\ifbeamer@Flip@bigpagenumber +\beamer@Flip@bigpagenumberfalse +\DeclareOptionBeamer{bigpagenumber}{\beamer@Flip@bigpagenumbertrue} + + +\def\beamer@Flip@truetext{true} % Kludge for true/false so I can use ifx + +\DeclareOptionBeamer{topline}[true]{\def\beamer@Flip@topline{#1}} +\ExecuteOptionsBeamer{topline=false} % Default + + + +% \ExecuteOptionsBeamer{topline=} % Default value is empty + + +\ProcessOptionsBeamer + + +\usepackage{tikz} % For fancy decorations + + +% I should fix these up to be more robust against color changes +\setbeamercolor{section in head/foot}{parent=footerlike} +\setbeamercolor{subsection in head/foot}{parent=footerlike} +\setbeamercolor{author in head/foot}{parent=footerlike} +\setbeamercolor{title in head/foot}{parent=footerlike} + + +% \setbeamercolor{author in head/foot}{parent=section in head/foot} +% \setbeamercolor{title in head/foot}{parent=subsection in head/foot} + +%\setbeamercolor{topbar}{parent=crimsontown} +\setbeamercolor{topbar}{parent=bluetown} + + + + +\usesectionheadtemplate + {\hfill\insertsectionhead} + {\hfill\color{fg!50!bg}\insertsectionhead} + + +%%%%%%%%%%%%%%%%%% +% The footer bar % +%%%%%%%%%%%%%%%%%% + +\defbeamertemplate*{footline}{Flip theme} +{% + \leavevmode% +% OBSERVATION: the "%" symbols inside hbox are all very important here. +% The \hbox enviroment will insert spaces whenever there's whitespace +% Adding a % at the END of each line ensures that any hard returns aren't +% interpreted as white space. This allows the color boxes to be flush against +% one another. If a faint white line appears one could probably do something like +% hspace{-1px} and add an additional pixel-or-two wide beamercolorbox. + +\hbox{% +\begin{beamercolorbox}[wd=.4\paperwidth,ht=2.5ex,dp=1.125ex,leftskip=.3cm, rightskip=.3cm plus1fil]{author in head/foot}% + \usebeamerfont{author in head/foot}\insertshortauthor \end{beamercolorbox}% +% +\begin{beamercolorbox}[wd=.6\paperwidth,ht=2.5ex,dp=1.125ex,leftskip=.3cm,rightskip=.3cm plus1fil]{title in head/foot}% + \usebeamerfont{title in head/foot}{\textit \insertshorttitle}% + \hskip2ex plus1fill% + % \insertpagenumber\,/\,\insertpresentationendpage %% Want FRAME, not SLIDE number + \insertframenumber/\inserttotalframenumber + \end{beamercolorbox}% +}% + +% This is a complete kludge for the faint white line which appears +% between the beamer color boxes above. (It doesnt appear in presentation mode +% but sometimes looks funny when the pdfs are viewed in a window) +\begin{tikzpicture}[overlay] + \usebeamercolor[bg]{author in head/foot} + \draw[thick] (0,3.625ex) -- (\paperwidth,3.625ex); + \draw (.4\paperwidth,0) -- (.4\paperwidth,3.625ex); + \draw[thick] (0,0) -- (\paperwidth,0); +\end{tikzpicture} + + + +\ifbeamer@Flip@bigpagenumber + \begin{tikzpicture}[overlay] + \usebeamercolor[bg]{author in head/foot} + \draw[fill] (\paperwidth-5ex,3.625ex) circle (6ex); + \usebeamercolor[fg]{author in head/foot} + \draw[fill] (\paperwidth-5ex,3.625ex) circle (5ex); + \usebeamercolor[bg]{author in head/foot} + \node at (\paperwidth-5ex,4ex) {\small$^\text{\insertframenumber}/_\text{\inserttotalframenumber}$}; + \end{tikzpicture} +\fi +} + + + +\defbeamertemplate*{frametitle}{Flip theme}[1][left] +{ +% \ifbeamercolorempty[bg]{frametitle}{}{\nointerlineskip}% +\@tempdima=\textwidth% +\advance\@tempdima by\beamer@leftmargin% +\advance\@tempdima by\beamer@rightmargin% + +\vbox{}\vskip-3.5ex% +% +\begin{beamercolorbox}[sep=0.3cm,#1,wd=\the\@tempdima]{titlelike} + \usebeamerfont{frametitle}% + \vbox{}\vskip-1ex% + \if@tempswa\else\csname beamer@fte#1\endcsname\fi% + % \strut{\bf\insertframetitle}\strut\par% %% Include the \bf + \strut{\insertframetitle}\strut\par% + {% + \ifx\insertframesubtitle\@empty% + \else + {\usebeamerfont{framesubtitle} + \usebeamercolor[fg]{framesubtitle} + \insertframesubtitle\strut\par}% + \fi + }% + % + \vskip-1ex% + \if@tempswa\else\vskip-.3cm\fi% set inside beamercolorbox... evil here... +\end{beamercolorbox}% +%% + +% \def\beamer@fteright{\vskip0.35cm\advance\leftskip by 1.7cm\advance\rightskip by1.7cm} +} + + + + +% Sidebar right is important: anything placed here will be +% visible *behind* the main text. This is where to put any +% interesting watermarks. +% +% +\defbeamertemplate*{sidebar right}{Flip theme} +{ +% \llap{\includegraphics[width=50px]{footdecoration}} +% \llap{\includegraphics[width=\paperwidth,height=\paperheight]{upperleft_watermark_transp}} +% +% THIS WOULD BE A NICE WAY TO PUT THE PARTICLE BUBBLE CHAMBER BG +% ... make a png of the background with TRANSPARENT BG +% ... then put the image here (use \hfill to get it on the left) +% Now one can FURTHER apply a slight gradient in the BG +% +% +% % Top Line +\ifx\beamer@Flip@topline\beamer@Flip@truetext + \begin{tikzpicture}[overlay] + \usebeamercolor[fg]{titlelike} % alternately, topbarlike would be a good beamercolor +% \usebeamercolor[fg]{topbarlike} % alternately, topbarlike would be a good beamercolor + \draw[fill] (-\paperwidth,0) rectangle (0,-3pt); + \end{tikzpicture} +\fi +% +% + \vskip.2\beamer@leftmargin% + %\llap{\insertlogo\hskip.5\beamer@leftmargin}% + \llap{\insertlogo\hskip.08\beamer@leftmargin}% + \vfill% + \if \beamer@Flip@watermark\@empty + % This is kind of a kludge since if I put anything in here, I automatically get errors + % Somehow LaTeX wants to read the \else part! + \else% + \llap{\includegraphics[width=\paperwidth,height=\paperheight]{\beamer@Flip@watermark}} + \fi +} + + + +\mode +\endinput + + diff --git a/Lectures_my/NumMet/Lecture4/beamerouterthemedecolines.sty b/Lectures_my/NumMet/Lecture4/beamerouterthemedecolines.sty new file mode 100755 index 0000000..669e493 --- /dev/null +++ b/Lectures_my/NumMet/Lecture4/beamerouterthemedecolines.sty @@ -0,0 +1,168 @@ +% Copyright 2007 by Marco Barisione +% +% This file may be distributed and/or modified +% +% 1. under the LaTeX Project Public License and/or +% 2. under the GNU Public License. + +\mode + +% String used between the current page and the total page count. +\def\beamer@decolines@pageofpages{/} +\DeclareOptionBeamer{pageofpages}{\def\beamer@decolines@pageofpages{#1}} + +% Show a line below the frame title. +\DeclareOptionBeamer{titleline}[true]{\def\beamer@decolines@titleline{#1}} + +% Image used for the watermark. +\def\beamer@decolines@watermarkorig{} +\DeclareOptionBeamer{watermark}{\def\beamer@decolines@watermarkorig{#1}} + +% Height of the watermark. +\def\beamer@decolines@watermarkheight{100px} +\DeclareOptionBeamer{watermarkheight}{\def\beamer@decolines@watermarkheight{#1}} + +% The original image height is watermarkheightmult * watermarkheight. +\def\beamer@decolines@watermarkheightmult{1} +\DeclareOptionBeamer{watermarkheightmult}{\def\beamer@decolines@watermarkheightmult{#1}} + +\ExecuteOptionsBeamer{titleline=false} +\ProcessOptionsBeamer + +% Enable/disable the watermark. +\def\watermarkon{% + \def\beamer@decolines@watermark{\beamer@decolines@watermarkorig}% +} +\def\watermarkoff{\def\beamer@decolines@watermark{}} + +% Initially enable the watermark. +\watermarkon + +% Colors. +\setbeamercolor*{lineup}{parent=palette primary} +\setbeamercolor*{linemid}{parent=palette secondary} +\setbeamercolor*{linebottom}{parent=palette tertiary} +\setbeamercolor*{page header}{parent=titlelike} + +% Lengths +\newlength{\headerheight} +\setlength{\headerheight}{.045\paperheight} +\newlength{\beamer@decolines@lineup} +\setlength{\beamer@decolines@lineup}{.025\paperheight} +\newlength{\beamer@decolines@linemid} +\setlength{\beamer@decolines@linemid}{.015\paperheight} +\newlength{\beamer@decolines@linebottom} +\setlength{\beamer@decolines@linebottom}{.01\paperheight} + +% The height of the watermark part below the 3 bottom lines. +\newlength{\beamer@decolines@watermarkheightbottom} +\addtolength{\beamer@decolines@watermarkheightbottom}{\beamer@decolines@lineup} +\addtolength{\beamer@decolines@watermarkheightbottom}{\beamer@decolines@linemid} +\addtolength{\beamer@decolines@watermarkheightbottom}{\beamer@decolines@linebottom} + +% The height of the watermark part over the 3 bottom lines before shrinking. +\newlength{\beamer@decolines@watermarkheightupperorig} +\setlength{\beamer@decolines@watermarkheightupperorig}{\beamer@decolines@watermarkheight} +\addtolength{\beamer@decolines@watermarkheightupperorig}{-\beamer@decolines@watermarkheightbottom} +\multiply\beamer@decolines@watermarkheightupperorig by \beamer@decolines@watermarkheightmult + +% % Footer. +% \defbeamertemplate*{footline}{decolines theme} +% { +% \leavevmode% +% % Page number. +% \hbox{% +% \begin{beamercolorbox}[wd=.2\paperwidth,ht=0ex,dp=0ex,center]{}% +% \usebeamerfont{palette primary}\insertframenumber{} \beamer@decolines@pageofpages{} \inserttotalframenumber% +% \end{beamercolorbox}% +% \begin{beamercolorbox}[wd=.8\paperwidth,ht=0ex,dp=0ex]{}% +% \end{beamercolorbox}% +% } % +% % First line. +% \hbox{% +% \begin{beamercolorbox}[wd=.2\paperwidth,ht=\beamer@decolines@lineup,dp=0pt]{}% +% \end{beamercolorbox}% +% \begin{beamercolorbox}[wd=.8\paperwidth,ht=\beamer@decolines@lineup,dp=0pt]{lineup}% +% \end{beamercolorbox}% +% } % +% % Second line. +% \hbox{% +% \begin{beamercolorbox}[wd=\paperwidth,ht=\beamer@decolines@linemid,dp=0pt]{linemid}% +% \end{beamercolorbox}% +% } % +% % Third line. +% \hbox{% +% \begin{beamercolorbox}[wd=.1\paperwidth,ht=\beamer@decolines@linebottom,dp=0pt]{}% +% \end{beamercolorbox}% +% \begin{beamercolorbox}[wd=.9\paperwidth,ht=\beamer@decolines@linebottom,dp=0pt]{linebottom}% +% \end{beamercolorbox}% +% }% +% % This seems to fix some alignment problems with the watermark. It has to be +% % always applied if you do not want to see the footer moving up and down when +% % moving from a page with watermark to a page without or vice versa. +% \vskip-.5px% +% % Watermark. +% \if\beamer@decolines@watermark\@empty\else% +% \vskip-\beamer@decolines@watermarkheightbottom% +% \llap{\includegraphics[height=\beamer@decolines@watermarkheightbottom,clip=true,% +% trim=0pt 0pt 0pt \beamer@decolines@watermarkheightupperorig]{\beamer@decolines@watermark}\hskip-\paperwidth}% +% \fi% +% } + +\defbeamertemplate*{headline}{decolines theme} +{ + \leavevmode% + \hbox{% + \begin{beamercolorbox}[wd=\paperwidth,ht=\headerheight,dp=0pt]{page header}% + \end{beamercolorbox}% + } % + \vskip0pt% +} + +\defbeamertemplate*{frametitle}{decolines theme}[1][left] +{ + \ifbeamercolorempty[bg]{frametitle}{}{\nointerlineskip}% + \@tempdima=\textwidth% + \advance\@tempdima by\beamer@leftmargin% + \advance\@tempdima by\beamer@rightmargin% + \vbox{}\vskip-.5\beamer@leftmargin% + \begin{beamercolorbox}[sep=\beamer@leftmargin,#1,wd=\the\@tempdima]{} + \usebeamerfont{frametitle}\usebeamercolor[bg]{framesubtitle}% + \vbox{}\vskip0ex% + \if@tempswa\else\csname beamer@fte#1\endcsname\fi% + \strut\insertframetitle\strut\par% + {% + \ifx\insertframesubtitle\@empty% + \else% + {\usebeamerfont{framesubtitle}\usebeamercolor[bg]{framesubtitle}\insertframesubtitle\strut\par}% + \fi + }% + \vskip-1ex% + \if@tempswa\else\vskip-\beamer@leftmargin\fi + \end{beamercolorbox}% + \def\beamer@decolines@truetext{true}% + \ifx\beamer@decolines@titleline\beamer@decolines@truetext% + \vskip-.5\beamer@leftmargin% + \begin{beamercolorbox}[wd=\textwidth,ht=.1ex,dp=0ex]{linemid}% + \end{beamercolorbox}% + \fi +} + +% Frame title continuations, default +\defbeamertemplate*{frametitle continuation}{decolines theme}{(\insertcontinuationcount)} + + + +\defbeamertemplate*{sidebar right}{decolines theme} +{ + \vskip.1\beamer@leftmargin% + \llap{\insertlogo\hskip.5\beamer@leftmargin}% + \vfill% + \if\beamer@decolines@watermark\@empty\else% + \llap{\includegraphics[height=\beamer@decolines@watermarkheight]{\beamer@decolines@watermark}}% + \vskip-\beamer@decolines@watermarkheightbottom% + \fi +} + +\mode + diff --git a/Lectures_my/NumMet/Lecture4/beamerthemeFlip.sty b/Lectures_my/NumMet/Lecture4/beamerthemeFlip.sty new file mode 100755 index 0000000..a615ff5 --- /dev/null +++ b/Lectures_my/NumMet/Lecture4/beamerthemeFlip.sty @@ -0,0 +1,59 @@ +% Main style file for the BEAMER FLIP THEME 2012 +% Copyright 2012 by Flip Tanedo +% This file may be distributed and/or modified +% 1. under the LaTeX Project Public License and/or +% 2. under the GNU Public License. +% +% Comments: This is still a work in progress. +% A good way to present: http://www.cs.hmc.edu/~oneill/freesoftware/pdftokeynote.html + +% \usepackage{beamerthemesplit} +\mode + + +%% These are the options that are fed in through the driver file +%% Some of them get passed on to the other theme files +\DeclareOptionBeamer{bullet}{\PassOptionsToPackage{bullet=#1}{beamerinnerthemeFlip}} +\DeclareOptionBeamer{bigpagenumber}{\PassOptionsToPackage{bigpagenumber}{beamerouterthemeFlip}} +\DeclareOptionBeamer{topline}[true]{\PassOptionsToPackage{topline=#1}{beamerouterthemeFlip}} +\DeclareOptionBeamer{shadow}[false]{\PassOptionsToPackage{shadow=#1}{beamerinnerthemeFlip}} + +\DeclareOptionBeamer{watermark}{\PassOptionsToPackage{watermark=#1}{beamerouterthemeFlip}} + +\ProcessOptionsBeamer + +\useinnertheme{Flip} % Calls beamerinnerthemeFlip.sty +\useoutertheme{Flip} % Calls beamerouterthemeFlip.sty +\usecolortheme{Flip} % Calls beamercolorthemeFlip.sty + + + +%%%%%%%%%%%%%%%%%%%%%%%% +% Background Gradient % +%%%%%%%%%%%%%%%%%%%%%%%% + + +%% Usually I would leave this on +%% However, there seems to be problems with XeLaTeX +%% http://tex.stackexchange.com/questions/29497/xelatex-preventing-beamer-from-using-different-backgrounds +\setbeamertemplate{background canvas}[vertical shading][bottom=blue!.1, middle=white, top=white] + +%% HOWEVER: it seems to make it impossible to change this later on in the document + + +%% For a dark background: +% \setbeamertemplate{background canvas}[vertical shading][bottom=keynotebottom, middle=keynotemiddle, top=keynotetop] + + +%% An alternate way: \beamertemplateshadingbackground{blue!.1}{red!2} +%% In general: you want the gradient to be subtle! + + +%%%%%%%%%%%%%%%%%%%%%%% +% Navigation symbols % +%%%%%%%%%%%%%%%%%%%%%%% + +\setbeamertemplate{navigation symbols}{} % Turns off PDF navigation symbols + +\mode +\endinput \ No newline at end of file diff --git a/Lectures_my/NumMet/Lecture4/images/BG_lower.png b/Lectures_my/NumMet/Lecture4/images/BG_lower.png new file mode 100755 index 0000000..073034a --- /dev/null +++ b/Lectures_my/NumMet/Lecture4/images/BG_lower.png Binary files differ diff --git a/Lectures_my/NumMet/Lecture4/images/bubble.gif b/Lectures_my/NumMet/Lecture4/images/bubble.gif new file mode 100644 index 0000000..ecff282 --- /dev/null +++ b/Lectures_my/NumMet/Lecture4/images/bubble.gif Binary files differ diff --git a/Lectures_my/NumMet/Lecture4/images/bubble.jpg b/Lectures_my/NumMet/Lecture4/images/bubble.jpg new file mode 100644 index 0000000..ceb584d --- /dev/null +++ b/Lectures_my/NumMet/Lecture4/images/bubble.jpg Binary files differ diff --git a/Lectures_my/NumMet/Lecture4/images/bubble2.jpg b/Lectures_my/NumMet/Lecture4/images/bubble2.jpg new file mode 100644 index 0000000..0fd03bb --- /dev/null +++ b/Lectures_my/NumMet/Lecture4/images/bubble2.jpg Binary files differ diff --git a/Lectures_my/NumMet/Lecture4/images/uzh-transp.pdf b/Lectures_my/NumMet/Lecture4/images/uzh-transp.pdf new file mode 100644 index 0000000..977da67 --- /dev/null +++ b/Lectures_my/NumMet/Lecture4/images/uzh-transp.pdf Binary files differ diff --git a/Lectures_my/NumMet/Lecture4/lecture4.tex b/Lectures_my/NumMet/Lecture4/lecture4.tex new file mode 100644 index 0000000..d9c3352 --- /dev/null +++ b/Lectures_my/NumMet/Lecture4/lecture4.tex @@ -0,0 +1,321 @@ +% vim: set sts=4 et : +\documentclass[11 pt,xcolor={dvipsnames,svgnames,x11names,table}]{beamer} + +\usetheme[ + bullet=circle, % Other option: square + bigpagenumber, % circled page number on lower right + topline=true, % colored bar at the top of the frame + shadow=false, % Shading for beamer blocks + watermark=BG_lower, % png file for the watermark + ]{Flip} + +\usepackage{bm} +\usepackage{tikz,pgfplots} +\usepackage{graphicx} + +% SOME COMMANDS THAT I FIND HANDY +% \renewcommand{\tilde}{\widetilde} % dinky tildes look silly, dosn't work with fontspec +\newcommand{\comment}[1]{\textcolor{comment}{\footnotesize{#1}\normalsize}} % comment mild +\newcommand{\Comment}[1]{\textcolor{Comment}{\footnotesize{#1}\normalsize}} % comment bold +\newcommand{\COMMENT}[1]{\textcolor{COMMENT}{\footnotesize{#1}\normalsize}} % comment crazy bold +\newcommand{\Alert}[1]{\textcolor{Alert}{#1}} % louder alert +\newcommand{\ALERT}[1]{\textcolor{ALERT}{#1}} % loudest alert +%% "\alert" is already a beamer pre-defined +\newcommand*{\Scale}[2][4]{\scalebox{#1}{$#2$}}% + +\graphicspath{{images/}} % Put all images in this directory. Avoids clutter. + +% suppress frame numbering for backup slides +% you always need the appendix for this! +\newcommand{\backupbegin}{ + \newcounter{framenumberappendix} + \setcounter{framenumberappendix}{\value{framenumber}} +} +\newcommand{\backupend}{ + \addtocounter{framenumberappendix}{-\value{framenumber}} + \addtocounter{framenumber}{\value{framenumberappendix}} +} + +\begin{document} +\tikzstyle{every picture}+=[remember picture] + +{ +\setbeamertemplate{sidebar right}{\llap{\includegraphics[width=\paperwidth,height=\paperheight]{bubble2}}} +\begin{frame}[c]%{\phantom{title page}} +\begin{center} +\begin{center} + \begin{columns} + \begin{column}{0.9\textwidth} + \flushright%\fontspec{Trebuchet MS} + \bfseries \Huge {Root Finding} + \end{column} + \begin{column}{0.2\textwidth} + %\includegraphics[width=\textwidth]{SHiP-2} + \end{column} + \end{columns} +\end{center} + \quad + \vspace{3em} +\begin{columns} +\begin{column}{0.6\textwidth} +\flushright \vspace{-1.8em} {%\fontspec{Trebuchet MS} + \large Marcin Chrzaszcz, Danny van Dyk\\\vspace{-0.1em}\small \href{mailto:mchrzasz@cern.ch}{mchrzasz@cern.ch}, \href{mailto:dany.van.dyk@gmail.com}{danny.van.dyk@gmail.com}} + +\end{column} +\begin{column}{0.4\textwidth} +\includegraphics[height=1.3cm]{uzh-transp} +\end{column} +\end{columns} + +\vspace{1em} +\vspace{0.5em} + \textcolor{normal text.fg!50!Comment}{Numerical Methods, \\ 26. September, 2016} +\end{center} +\end{frame} +} + +\begin{frame}{Plan for today} + \begin{itemize} + \item \alert{General problem of finding the root of a function}\\ + $\xi$ is a root of $f$ iff $f(\xi) = 0$. + \vfill + \item \alert{Begin with $D=1$}\\ + What properties of $f(x)$ can we use to find one, any, or all roots + of $f$? What are the requirements on $f(x)$? + \vfill + \item \alert{How about $D>1$?}\\ + Can we generalize root finding from $D=1$ do arbitrary $D$? + \end{itemize} +\end{frame} + +\begin{frame}{General iterative procedure} + Let's assume that + \begin{itemize} + \item $f(x)$ is a our function of interest, + \item $\xi$ is the only root of $f$, + \item we have a point $x_0$ close to $\xi$ + \end{itemize} + We now want to find a sequence $\lbrace x_0, x_1, \dots \rbrace$ that + \begin{enumerate} + \item converges toward $\xi$: $\lim_{k\to \infty} x_k = \xi$, + \item is iterative: $x_{k + 1} = \Phi[f](x_k)$ + \end{enumerate} + We can attempt to Taylor expand $f$ around $x_0$ to order $N$, in order + to obtain the generator $\Phi[f]$ for the iteration: + \begin{block}{Expansion around $x_0$} + \begin{equation*} + f(\xi) = 0 = \sum_{n=0}^N \frac{(\xi - x_0)^n}{n!} f^{(n)}(x_0) + \end{equation*} + where $f^{(n)}(x_0)$ is the $n$th derivative of $f$ at the position $x_0$. + \end{block} +\end{frame} + +\begin{frame}{Newton-Raphson method \hfill ($N=1$)} + \begin{block}{Expansion for $N=1$} + \begin{equation} + \tag{*} + f(\xi) = 0 = f(x_0) + (\xi - x_0) \cdot f'(x_0) + \mathcal{O}((\xi - x_0)^2) + \end{equation} + \end{block} + \vfill + Algorithm: + \begin{enumerate} + \item start with index $k=0$ + \item solve equation (*), assuming a vanshing approximation error: + \begin{gather*} + x_{k + 1} \leftarrow x_k - \frac{f(x_k)}{f'(x_k)} \approx \xi + \mathcal{O}((\xi - x_k)^2)\\ + \Phi[f](x) \equiv x - \frac{f(x)}{f'(x)} + \end{gather*} + \item if $f(x_{k + 1}) \leq t$, where $t$ is an a-prior threshold, then stop; otherwise + jump back to step \#2. + \end{enumerate} +\end{frame} + +\begin{frame}{Illustration of Newton-Raphson} + \begin{columns} + \begin{column}[T]{.5\textwidth} + \begin{overlayarea}{\textwidth}{\textheight} + $\bm{k=0}$: + \only<2->{% + \begin{equation*} + x_0 := 1 + \end{equation*} + } + \only<3->{% + $\bm{k=1}$: + \begin{align*} + x_0 & = 1 & + f(x_0) & = +0.54 \\ + & & + f'(x_0) & = -0.84 \\ + \end{align*} + } + \only<4->{% + \begin{equation*} + {\color{red} x_1 \leftarrow 1.64} + \end{equation*} + } + \only<6->{% + $\bm{k=2}$: + \begin{align*} + x_1 & = 1.64 & + f(x_0) & = -0.07 \\ + & & + f'(x_0) & = -0.997 \\ + \end{align*} + } + \only<7->{% + \begin{equation*} + {\color{red} x_2 \leftarrow 1.57} + \end{equation*} + } + \end{overlayarea} + \end{column} + \begin{column}[T]{.5\textwidth} + \hspace{-1cm} + \resizebox{1.1\textwidth}{!}{ + \begin{tikzpicture} + \begin{axis}[% + axis x line=center, + axis y line=center, + ymin=-0.2,ymax=0.8, + xmin=0.0,xmax=1.8, + title=$\cos(x)$ + ] + \addplot[thick,black,domain=0:3.14] { + cos(deg(x)) + }; + \only<2-3>{ + \addplot[thick,blue,only marks,mark=+,mark size=5pt] coordinates { + ( 1, 0.54030 ) + }; + } + \only<3-4>{ + \addplot+[thick,blue,domain=0:3.14,mark=none] { + 0.54030 - 0.84147 * (x - 1) + }; + } + \only<4-5>{ + \addplot[thick,red,only marks,mark=o,mark size=5pt] coordinates { + ( 1.6421, 0.0 ) + }; + \draw[thick,red] (axis cs:1.6421, 0) -- (axis cs:1.6421, -0.0712); + } + \only<5-6>{ + \addplot[thick,blue,only marks,mark=+,mark size=5pt] coordinates { + ( 1.6421, -0.0712 ) + }; + } + \only<6-7>{ + \addplot+[thick,blue,domain=0:3.14,mark=none] { + -0.0712 - 0.99746 * (x - 1.6421) + }; + } + \only<7->{ + \addplot[thick,red,only marks,mark=o,mark size=5pt] coordinates { + ( 1.5707, 7.8e-5 ) + }; + } + \end{axis} + \end{tikzpicture} + } + \vfill + \begin{overlayarea}{\textwidth}{.3\textheight} + \only<8->{ + \begin{tabular}{c|cc} + $k$ & $x_k$ & $f(x_k)$\\ + \hline + $0$ & $1.00$ & $+0.54$\\ + $1$ & $1.64$ & $-0.07$\\ + $2$ & $1.57$ & $+0.00$\\ + \hline + $\xi$&$1.5708$ & $0$ + \end{tabular} + } + \end{overlayarea} + \end{column} + \end{columns} +\end{frame} + +\begin{frame}{Modified Newton-Raphson method \hfill ($N=2$)} + \begin{block}{Expansion for $N=2$} + \vspace{-2\medskipamount} + \begin{equation} + \tag{*} + f(\xi) = 0 = f(x_0) + (\xi - x_0) \cdot f'(x_0) + \frac{1}{2} (\xi - x_0)^2 f''(x_0) + \mathcal{O}((\xi - x_0)^3) + \end{equation} + \end{block} + \vfill + Algorithm: + \begin{enumerate} + \item start with index $k=0$ + \item solve equation (*), assuming a vanshing approximation error: + \begin{align*} + a_\pm + & \leftarrow x_k - \frac{f'(x_k) \pm \sqrt{[f'(x_k)]^2 - 2 f(x_k) f''(x_k)}}{f''(x_k)}\\ + & \approx \xi + \mathcal{O}((\xi - x_k)^3) + \end{align*} + \item if $|f(a_+)| < |f(a_-)|$, then $x_{k + 1} \leftarrow a_+$; otherwise $x_{k + 1} \leftarrow a_-$ + \item if $f(x_{k + 1}) \leq t$, where $t$ is an a-prior threshold, then stop; otherwise + jump back to step \#2. + \end{enumerate} +\end{frame} + +\begin{frame}{Rate of convergence} + Does this iterative procedure converge? If yes, how fast? How can we quantify the rate of convergence? + + \begin{itemize} + \item we have \alert{local} convergence of order $p \leq 1$, if for all $x \in U(\xi)$ + \begin{equation*} + || \Phi[f](x) - \xi|| \leq C \cdot || x - \xi||^p\,,\quad\text{with}\quad C \geq 0\,. + \end{equation*} + Note: if $p = 1$ then we must have $C < 1$. + \item we have \alert{global} convergence if $U(\xi) = \mathbb{R}$ + \item for $D=1$ we can calculate $p$ is $\Phi[f](x)$ differentiable to sufficient degree: + \begin{align*} + \Phi(x) - \xi = \Phi(x) - \Phi(\xi) = \frac{(x - \xi)^p}{p!} + o(||x - \xi||^p) + \end{align*} + \end{itemize} +\end{frame} + +\begin{frame}{Rate of convergence for Newton-Raphson} + We have $\Phi(x) \equiv \Phi[f](x)$: + \begin{itemize} + \item $\Phi(\xi) = \xi$ by construction + \item $\Phi'(\xi) = \frac{f(\xi) \cdot f''(\xi)}{[f'(\xi)]^2} = 0$ \alert{(*)} by construction + \item $\Phi''(\xi) = \frac{f''(\xi)}{f'(\xi)}$ + \end{itemize} + We can therefore write + \begin{equation} + \Phi(x) - \Phi(\xi) = \frac{(x - \xi)^2}{2!} \Phi''(\xi) + o(||x - \xi||^2)\,. + \end{equation} + The Newton-Raphson method converges therefore \emph{at least quadratically}, i.e.: it is a + second-order method. + \vfill + \alert{(*): only if $f'(\xi) \neq 0$}, which is equivalent to $\xi$ is a simple root of $f$. +\end{frame} + +\begin{frame}{Honorable mention: Horner Scheme} + If $f(x) \equiv p_n(x)$ is a polynomial of degree $n$ in $x$, there might be multiple roots of $f$, i.e. + roots $\xi_{n}$ with $f'(\xi_n) = 0$.\\ + \vfill + The Horner Scheme allows to efficiently calculate all the (multiple) roots + of the polynomial $p_n(x)$.\\ + \vfill + However, this is of limited use: These polynomials usually only arise in computing + the characteric polynomial $\chi_M$ of a matrix $M$. In this case, the roots of $\chi_M$ + correspond to eigenvalue of $M$. However, the are better/more stables ways to \alert{numerically} compute + all eigenvalues of $M$. +\end{frame} + +\begin{frame}{Newton-Raphson for $D > 1$} +\end{frame} + +\backupbegin + +\begin{frame}\frametitle{Backup} + +\end{frame} + +\backupend +\end{document}