From 0ce08ace350d6cc856304a428896c4477876159c Mon Sep 17 00:00:00 2001 From: Wilrik de Loose Date: Tue, 8 Jan 2008 13:31:15 +0000 Subject: + verslag --- Smoke/Week 2.suo | Bin 64512 -> 64512 bytes Smoke/renderer_gl.c | 20 +- Smoke/report/2IV35-Report.aux | 11 + Smoke/report/2IV35-Report.dvi | Bin 0 -> 512 bytes Smoke/report/2IV35-Report.log | 652 +++++++++++++++ Smoke/report/2IV35-Report.pdf | Bin 0 -> 265585 bytes Smoke/report/2IV35-Report.tex | 30 + Smoke/report/2IV35-Report.toc | 36 + Smoke/report/ambiguous.png | Bin 0 -> 12317 bytes Smoke/report/chapter1.aux | 24 + Smoke/report/chapter1.tex | 20 + Smoke/report/chapter2.aux | 26 + Smoke/report/chapter2.tex | 30 + Smoke/report/chapter3.aux | 27 + Smoke/report/chapter3.tex | 32 + Smoke/report/chapter4.aux | 28 + Smoke/report/chapter4.tex | 66 ++ Smoke/report/chapter5.aux | 27 + Smoke/report/chapter5.tex | 28 + Smoke/report/chapter6.aux | 27 + Smoke/report/chapter6.log | 1797 +++++++++++++++++++++++++++++++++++++++++ Smoke/report/chapter6.tex | 55 ++ Smoke/report/chapter7.aux | 31 + Smoke/report/chapter7.tex | 59 ++ Smoke/report/chapter8.aux | 27 + Smoke/report/chapter8.tex | 27 + Smoke/report/chapter9.aux | 26 + Smoke/report/chapter9.tex | 29 + Smoke/report/flow_vis.png | Bin 0 -> 36982 bytes Smoke/report/glyphs.png | Bin 0 -> 40292 bytes Smoke/report/glyphs2.png | Bin 0 -> 71680 bytes Smoke/report/marching.png | Bin 0 -> 14549 bytes Smoke/report/practical.png | Bin 0 -> 9246 bytes Smoke/report/toc.aux | 21 + Smoke/report/toc.tex | 2 + 35 files changed, 3150 insertions(+), 8 deletions(-) create mode 100644 Smoke/report/2IV35-Report.aux create mode 100644 Smoke/report/2IV35-Report.dvi create mode 100644 Smoke/report/2IV35-Report.log create mode 100644 Smoke/report/2IV35-Report.pdf create mode 100644 Smoke/report/2IV35-Report.tex create mode 100644 Smoke/report/2IV35-Report.toc create mode 100644 Smoke/report/ambiguous.png create mode 100644 Smoke/report/chapter1.aux create mode 100644 Smoke/report/chapter1.tex create mode 100644 Smoke/report/chapter2.aux create mode 100644 Smoke/report/chapter2.tex create mode 100644 Smoke/report/chapter3.aux create mode 100644 Smoke/report/chapter3.tex create mode 100644 Smoke/report/chapter4.aux create mode 100644 Smoke/report/chapter4.tex create mode 100644 Smoke/report/chapter5.aux create mode 100644 Smoke/report/chapter5.tex create mode 100644 Smoke/report/chapter6.aux create mode 100644 Smoke/report/chapter6.log create mode 100644 Smoke/report/chapter6.tex create mode 100644 Smoke/report/chapter7.aux create mode 100644 Smoke/report/chapter7.tex create mode 100644 Smoke/report/chapter8.aux create mode 100644 Smoke/report/chapter8.tex create mode 100644 Smoke/report/chapter9.aux create mode 100644 Smoke/report/chapter9.tex create mode 100644 Smoke/report/flow_vis.png create mode 100644 Smoke/report/glyphs.png create mode 100644 Smoke/report/glyphs2.png create mode 100644 Smoke/report/marching.png create mode 100644 Smoke/report/practical.png create mode 100644 Smoke/report/toc.aux create mode 100644 Smoke/report/toc.tex diff --git a/Smoke/Week 2.suo b/Smoke/Week 2.suo index 4b7ea18..93aecb8 100644 Binary files a/Smoke/Week 2.suo and b/Smoke/Week 2.suo differ diff --git a/Smoke/renderer_gl.c b/Smoke/renderer_gl.c index 62f513f..1e2e27c 100644 --- a/Smoke/renderer_gl.c +++ b/Smoke/renderer_gl.c @@ -352,6 +352,8 @@ int LoadTextures(void) status = FALSE; } + glBindTexture(GL_TEXTURE_2D, NULL); + return status; } // LoadTextures @@ -373,7 +375,7 @@ static void render_glyph(GLUquadricObj *qobj, float x_value, float y_value, floa x0 = wn + (fftw_real)i * wn; y0 = hn + (fftw_real)j * hn; - z0 = 0.0f; + z0 = 100.0f; x1 = x0 + (vec_scale * x_value)/4; y1 = y0 + (vec_scale * y_value)/4; @@ -411,9 +413,9 @@ static void render_glyph(GLUquadricObj *qobj, float x_value, float y_value, floa glTranslatef(-x0, -y0, -z0); glBegin(GL_TRIANGLE_STRIP); - glVertex2d(-10 * size + x0, -25 * size + y0); - glVertex2d( 0 * size + x0, 25 * size + y0); - glVertex2d( 10 * size + x0, -25 * size + y0); + glVertex3f(-10 * size + x0, -25 * size + y0, z0); + glVertex3f( 0 * size + x0, 25 * size + y0, z0); + glVertex3f( 10 * size + x0, -25 * size + y0, z0); glEnd(); glRotatef(-theta, 0.0, 0.0, 1.0); @@ -444,18 +446,20 @@ static void render_glyph(GLUquadricObj *qobj, float x_value, float y_value, floa glPushMatrix(); + glBindTexture(GL_TEXTURE_2D, texture[0]); glTranslatef(x0, y0, z0); glRotatef(theta, 0.0, 0.0, 1.0); glTranslatef(-x0, -y0, -z0); glBegin(GL_TRIANGLE_STRIP); - glTexCoord2f(1, 1); glVertex2d( 20 * size + x0, 20 * size + y0); - glTexCoord2f(0, 1); glVertex2d(-20 * size + x0, 20 * size + y0); - glTexCoord2f(1, 0); glVertex2d( 20 * size + x0, -20 * size + y0); - glTexCoord2f(0, 0); glVertex2d(-20 * size + x0, -20 * size + y0); + glTexCoord2f(1, 1); glVertex3f( 20 * size + x0, 20 * size + y0, z0); + glTexCoord2f(0, 1); glVertex3f(-20 * size + x0, 20 * size + y0, z0); + glTexCoord2f(1, 0); glVertex3f( 20 * size + x0, -20 * size + y0, z0); + glTexCoord2f(0, 0); glVertex3f(-20 * size + x0, -20 * size + y0, z0); glEnd(); glRotatef(-theta, 0.0, 0.0, 1.0); + glBindTexture(GL_TEXTURE_2D, NULL); glPopMatrix(); break; diff --git a/Smoke/report/2IV35-Report.aux b/Smoke/report/2IV35-Report.aux new file mode 100644 index 0000000..4e49bb4 --- /dev/null +++ b/Smoke/report/2IV35-Report.aux @@ -0,0 +1,11 @@ +\relax +\@input{toc.aux} +\@input{chapter1.aux} +\@input{chapter2.aux} +\@input{chapter3.aux} +\@input{chapter4.aux} +\@input{chapter5.aux} +\@input{chapter6.aux} +\@input{chapter7.aux} +\@input{chapter8.aux} +\@input{chapter9.aux} diff --git a/Smoke/report/2IV35-Report.dvi b/Smoke/report/2IV35-Report.dvi new file mode 100644 index 0000000..2143745 Binary files /dev/null and b/Smoke/report/2IV35-Report.dvi differ diff --git a/Smoke/report/2IV35-Report.log b/Smoke/report/2IV35-Report.log new file mode 100644 index 0000000..cb8fe8c --- /dev/null +++ b/Smoke/report/2IV35-Report.log @@ -0,0 +1,652 @@ +This is pdfeTeX, Version 3.141592-1.21a-2.2 (MiKTeX 2.4) (preloaded format=latex 2007.9.5) 8 JAN 2008 14:06 +entering extended mode +**2IV35-Report.tex +(2IV35-Report.tex +LaTeX2e <2003/12/01> +Babel and hyphenation patterns for american, dutch, nohyphenation, load +ed. +(C:\MiKTeX\texmf\tex\latex\base\report.cls +Document Class: report 2004/02/16 v1.4f Standard LaTeX document class +(C:\MiKTeX\texmf\tex\latex\base\size12.clo +File: size12.clo 2004/02/16 v1.4f Standard LaTeX file (size option) +) +\c@part=\count79 +\c@chapter=\count80 +\c@section=\count81 +\c@subsection=\count82 +\c@subsubsection=\count83 +\c@paragraph=\count84 +\c@subparagraph=\count85 +\c@figure=\count86 +\c@table=\count87 +\abovecaptionskip=\skip41 +\belowcaptionskip=\skip42 +\bibindent=\dimen102 +) +(C:\MiKTeX\texmf\tex\latex\graphics\graphicx.sty +Package: graphicx 1999/02/16 v1.0f Enhanced LaTeX Graphics (DPC,SPQR) + +(C:\MiKTeX\texmf\tex\latex\graphics\keyval.sty +Package: keyval 1999/03/16 v1.13 key=value parser (DPC) +\KV@toks@=\toks14 +) +(C:\MiKTeX\texmf\tex\latex\graphics\graphics.sty +Package: graphics 2001/07/07 v1.0n Standard LaTeX Graphics (DPC,SPQR) + +(C:\MiKTeX\texmf\tex\latex\graphics\trig.sty +Package: trig 1999/03/16 v1.09 sin cos tan (DPC) +) +(C:\MiKTeX\texmf\tex\latex\00miktex\graphics.cfg +File: graphics.cfg 2003/03/12 v1.1 MiKTeX 'graphics' configuration +) +Package graphics Info: Driver file: pdftex.def on input line 80. + +(C:\MiKTeX\texmf\tex\latex\graphics\pdftex.def +File: pdftex.def 2005/06/20 v0.03m graphics/color for pdftex +\Gread@gobject=\count88 +)) +\Gin@req@height=\dimen103 +\Gin@req@width=\dimen104 +) +(C:\MiKTeX\texmf\tex\latex\amsmath\amsmath.sty +Package: amsmath 2000/07/18 v2.13 AMS math features +\@mathmargin=\skip43 + +For additional information on amsmath, use the `?' option. +(C:\MiKTeX\texmf\tex\latex\amsmath\amstext.sty +Package: amstext 2000/06/29 v2.01 + +(C:\MiKTeX\texmf\tex\latex\amsmath\amsgen.sty +File: amsgen.sty 1999/11/30 v2.0 +\@emptytoks=\toks15 +\ex@=\dimen105 +)) +(C:\MiKTeX\texmf\tex\latex\amsmath\amsbsy.sty +Package: amsbsy 1999/11/29 v1.2d +\pmbraise@=\dimen106 +) +(C:\MiKTeX\texmf\tex\latex\amsmath\amsopn.sty +Package: amsopn 1999/12/14 v2.01 operator names +) +\inf@bad=\count89 +LaTeX Info: Redefining \frac on input line 211. +\uproot@=\count90 +\leftroot@=\count91 +LaTeX Info: Redefining \overline on input line 307. +\classnum@=\count92 +\DOTSCASE@=\count93 +LaTeX Info: Redefining \ldots on input line 379. +LaTeX Info: Redefining \dots on input line 382. +LaTeX Info: Redefining \cdots on input line 467. +\Mathstrutbox@=\box26 +\strutbox@=\box27 +\big@size=\dimen107 +LaTeX Font Info: Redeclaring font encoding OML on input line 567. +LaTeX Font Info: Redeclaring font encoding OMS on input line 568. +\macc@depth=\count94 +\c@MaxMatrixCols=\count95 +\dotsspace@=\muskip10 +\c@parentequation=\count96 +\dspbrk@lvl=\count97 +\tag@help=\toks16 +\row@=\count98 +\column@=\count99 +\maxfields@=\count100 +\andhelp@=\toks17 +\eqnshift@=\dimen108 +\alignsep@=\dimen109 +\tagshift@=\dimen110 +\tagwidth@=\dimen111 +\totwidth@=\dimen112 +\lineht@=\dimen113 +\@envbody=\toks18 +\multlinegap=\skip44 +\multlinetaggap=\skip45 +\mathdisplay@stack=\toks19 +LaTeX Info: Redefining \[ on input line 2666. +LaTeX Info: Redefining \] on input line 2667. +) +(C:\MiKTeX\texmf\tex\latex\amsfonts\amsfonts.sty +Package: amsfonts 2001/10/25 v2.2f +\symAMSa=\mathgroup4 +\symAMSb=\mathgroup5 +LaTeX Font Info: Overwriting math alphabet `\mathfrak' in version `bold' +(Font) U/euf/m/n --> U/euf/b/n on input line 132. +) +(C:\MiKTeX\texmf\tex\latex\moreverb\moreverb.sty +Package: moreverb 1997/12/07 v2.2d.2 `more' verbatim facilities + +(C:\MiKTeX\texmf\tex\latex\tools\verbatim.sty +Package: verbatim 2003/08/22 v1.5q LaTeX2e package for verbatim enhancements +\every@verbatim=\toks20 +\verbatim@line=\toks21 +\verbatim@in@stream=\read1 +) +\verbatim@out=\write3 +\tab@position=\count101 +\tab@size=\count102 +\listing@line=\count103 +) +(C:\MiKTeX\texmf\tex\latex\graphics\color.sty +Package: color 1999/02/16 v1.0i Standard LaTeX Color (DPC) + +(C:\MiKTeX\texmf\tex\latex\00miktex\color.cfg +File: color.cfg 2003/03/08 v1.0 MiKTeX 'color' configuration +) +Package color Info: Driver file: pdftex.def on input line 125. +) (2IV35-Report.aux (toc.aux) +(chapter1.aux) (chapter2.aux) (chapter3.aux) (chapter4.aux) (chapter5.aux) +(chapter6.aux) (chapter7.aux) (chapter8.aux) (chapter9.aux)) +LaTeX Font Info: Checking defaults for OML/cmm/m/it on input line 8. +LaTeX Font Info: ... okay on input line 8. +LaTeX Font Info: Checking defaults for T1/cmr/m/n on input line 8. +LaTeX Font Info: ... okay on input line 8. +LaTeX Font Info: Checking defaults for OT1/cmr/m/n on input line 8. +LaTeX Font Info: ... okay on input line 8. +LaTeX Font Info: Checking defaults for OMS/cmsy/m/n on input line 8. +LaTeX Font Info: ... okay on input line 8. +LaTeX Font Info: Checking defaults for OMX/cmex/m/n on input line 8. +LaTeX Font Info: ... okay on input line 8. +LaTeX Font Info: Checking defaults for U/cmr/m/n on input line 8. +LaTeX Font Info: ... okay on input line 8. + +(C:\MiKTeX\texmf\tex\context\base\supp-pdf.tex +(C:\MiKTeX\texmf\tex\context\base\supp-mis.tex +loading : Context Support Macros / Miscellaneous (2004.10.26) +\protectiondepth=\count104 +\scratchcounter=\count105 +\scratchtoks=\toks22 +\scratchdimen=\dimen114 +\scratchskip=\skip46 +\scratchmuskip=\muskip11 +\scratchbox=\box28 +\scratchread=\read2 +\scratchwrite=\write4 +\zeropoint=\dimen115 +\onepoint=\dimen116 +\onebasepoint=\dimen117 +\minusone=\count106 +\thousandpoint=\dimen118 +\onerealpoint=\dimen119 +\emptytoks=\toks23 +\nextbox=\box29 +\nextdepth=\dimen120 +\everyline=\toks24 +\!!counta=\count107 +\!!countb=\count108 +\recursecounter=\count109 +) +loading : Context Support Macros / PDF (2004.03.26) +\nofMPsegments=\count110 +\nofMParguments=\count111 +\MPscratchCnt=\count112 +\MPscratchDim=\dimen121 +\MPnumerator=\count113 +\everyMPtoPDFconversion=\toks25 +) +LaTeX Font Info: Try loading font information for U+msa on input line 14. + (C:\MiKTeX\texmf\tex\latex\amsfonts\umsa.fd +File: umsa.fd 2002/01/19 v2.2g AMS font definitions +) +LaTeX Font Info: Try loading font information for U+msb on input line 14. + +(C:\MiKTeX\texmf\tex\latex\amsfonts\umsb.fd +File: umsb.fd 2002/01/19 v2.2g AMS font definitions +) [1 + +{psfonts.map}] (toc.tex +(2IV35-Report.toc [1 + + +]) +\tf@toc=\write5 +) [2] (chapter1.tex +Chapter 1. + +Underfull \hbox (badness 10000) in paragraph at lines 3--5 + + [] + + +File: practical.png Graphic file (type png) + +Underfull \hbox (badness 10000) in paragraph at lines 11--13 + + [] + +[3 + + + + ] +Underfull \hbox (badness 10000) in paragraph at lines 14--16 + + [] + + +Underfull \hbox (badness 10000) in paragraph at lines 17--19 + + [] + +) +Underfull \hbox (badness 10000) in paragraph at lines 20--20 + + [] + +[4] (chapter2.tex +Chapter 2. + +Underfull \hbox (badness 10000) in paragraph at lines 3--6 + + [] + + +Underfull \hbox (badness 10000) in paragraph at lines 9--12 + + [] + + +Underfull \hbox (badness 10000) in paragraph at lines 13--15 + + [] + + +File: flow_vis.png Graphic file (type png) + [5 + + + +] +Underfull \hbox (badness 10000) in paragraph at lines 21--22 + + [] + + +Underfull \hbox (badness 10000) in paragraph at lines 25--28 + + [] + +) +Underfull \hbox (badness 10000) in paragraph at lines 29--21 + + [] + +[6 ] (chapter3.tex +Chapter 3. + +Underfull \hbox (badness 10000) in paragraph at lines 7--9 + + [] + + +Underfull \hbox (badness 10000) in paragraph at lines 15--17 + + [] + + +Underfull \hbox (badness 10000) in paragraph at lines 18--20 + + [] + +[7 + + + +] +Underfull \hbox (badness 10000) in paragraph at lines 27--29 + + [] + +) +Underfull \hbox (badness 10000) in paragraph at lines 30--22 + + [] + +[8] (chapter4.tex +Chapter 4. + +Underfull \hbox (badness 10000) in paragraph at lines 3--5 + + [] + + +Underfull \hbox (badness 10000) in paragraph at lines 8--9 + + [] + + +File: glyphs.png Graphic file (type png) + +Underfull \hbox (badness 10000) in paragraph at lines 15--18 + + [] + +[9 + + + + ] +Underfull \hbox (badness 10000) in paragraph at lines 19--21 + + [] + +LaTeX Font Info: Try loading font information for OMS+cmr on input line 28. +(C:\MiKTeX\texmf\tex\latex\base\omscmr.fd +File: omscmr.fd 1999/05/25 v2.5h Standard LaTeX font definitions +) +LaTeX Font Info: Font shape `OMS/cmr/m/n' in size <12> not available +(Font) Font shape `OMS/cmsy/m/n' tried instead on input line 28. + +Underfull \hbox (badness 10000) in paragraph at lines 30--31 + + [] + + +Underfull \hbox (badness 10000) in paragraph at lines 39--40 + + [] + + +File: glyphs2.png Graphic file (type png) + [10] +Underfull \hbox (badness 10000) in paragraph at lines 46--48 + + [] + + +Underfull \hbox (badness 10000) in paragraph at lines 51--53 + + [] + + +Underfull \hbox (badness 10000) in paragraph at lines 56--58 + + [] + + +Underfull \hbox (badness 10000) in paragraph at lines 59--62 + + [] + +[11 ] +Underfull \hbox (badness 10000) in paragraph at lines 63--64 + + [] + +) [12] (chapter5.tex +Chapter 5. + +Underfull \hbox (badness 10000) in paragraph at lines 3--5 + + [] + + +Underfull \hbox (badness 10000) in paragraph at lines 8--10 + + [] + + +Underfull \hbox (badness 10000) in paragraph at lines 18--20 + + [] + + +Underfull \hbox (badness 10000) in paragraph at lines 21--23 + + [] + +[13 + + + +]) +Underfull \hbox (badness 10000) in paragraph at lines 26--24 + + [] + +[14] (chapter6.tex +Chapter 6. + +Underfull \hbox (badness 10000) in paragraph at lines 3--5 + + [] + + +Underfull \hbox (badness 10000) in paragraph at lines 8--10 + + [] + + +Underfull \hbox (badness 10000) in paragraph at lines 11--12 + + [] + + +Underfull \hbox (badness 10000) in paragraph at lines 15--16 + + [] + +[15 + + + +] +Underfull \hbox (badness 10000) in paragraph at lines 29--32 + + [] + + +Underfull \hbox (badness 10000) in paragraph at lines 33--35 + + [] + + +File: marching.png Graphic file (type png) + +Underfull \hbox (badness 10000) in paragraph at lines 41--44 + + [] + + +Underfull \hbox (badness 10000) in paragraph at lines 45--46 + + [] + + +File: ambiguous.png Graphic file (type png) + [16 ]) +Underfull \hbox (badness 10000) in paragraph at lines 54--25 + + [] + +[17 ] (chapter7.tex +Chapter 7. + +Underfull \hbox (badness 10000) in paragraph at lines 3--4 + + [] + + +Underfull \hbox (badness 10000) in paragraph at lines 7--10 + + [] + + +Underfull \hbox (badness 10000) in paragraph at lines 11--13 + + [] + + +Underfull \hbox (badness 10000) in paragraph at lines 16--18 + + [] + + +Underfull \hbox (badness 10000) in paragraph at lines 19--21 + + [] + +[18 + + + +] +Underfull \hbox (badness 10000) in paragraph at lines 22--24 + + [] + + +Underfull \hbox (badness 10000) in paragraph at lines 27--30 + + [] + + +Underfull \hbox (badness 10000) in paragraph at lines 31--33 + + [] + + +Underfull \hbox (badness 10000) in paragraph at lines 36--37 + + [] + + +Underfull \hbox (badness 10000) in paragraph at lines 40--42 + + [] + + +Underfull \hbox (badness 10000) in paragraph at lines 43--45 + + [] + + +Underfull \hbox (badness 10000) in paragraph at lines 48--50 + + [] + +[19] +Underfull \hbox (badness 10000) in paragraph at lines 51--52 + + [] + + +Underfull \hbox (badness 10000) in paragraph at lines 55--58 + + [] + +) +Underfull \hbox (badness 10000) in paragraph at lines 59--26 + + [] + +[20] (chapter8.tex +Chapter 8. + +Underfull \hbox (badness 10000) in paragraph at lines 3--5 + + [] + + +Underfull \hbox (badness 10000) in paragraph at lines 8--11 + + [] + + +Underfull \hbox (badness 10000) in paragraph at lines 12--14 + + [] + + +Underfull \hbox (badness 10000) in paragraph at lines 15--17 + + [] + + +Underfull \hbox (badness 10000) in paragraph at lines 20--22 + + [] + +[21 + + + +] +Underfull \hbox (badness 10000) in paragraph at lines 23--24 + + [] + +) +Underfull \hbox (badness 10000) in paragraph at lines 27--27 + + [] + +[22] (chapter9.tex +Chapter 9. + +Underfull \hbox (badness 10000) in paragraph at lines 3--5 + + [] + + +Underfull \hbox (badness 10000) in paragraph at lines 6--7 + + [] + + +Underfull \hbox (badness 10000) in paragraph at lines 10--12 + + [] + + +Underfull \hbox (badness 10000) in paragraph at lines 13--15 + + [] + + +Underfull \hbox (badness 10000) in paragraph at lines 16--19 + + [] + + +Underfull \hbox (badness 10000) in paragraph at lines 22--24 + + [] + +[23 + + + +] +Underfull \hbox (badness 10000) in paragraph at lines 25--27 + + [] + +) +Underfull \hbox (badness 10000) in paragraph at lines 28--28 + + [] + +[24] (2IV35-Report.aux (toc.aux) (chapter1.aux) (chapter2.aux) (chapter3.aux) +(chapter4.aux) (chapter5.aux) (chapter6.aux) (chapter7.aux) (chapter8.aux) +(chapter9.aux)) ) +Here is how much of TeX's memory you used: + 2064 strings out of 95490 + 22348 string characters out of 1188952 + 75277 words of memory out of 1075913 + 4868 multiletter control sequences out of 60000 + 13365 words of font info for 51 fonts, out of 500000 for 1000 + 54 hyphenation exceptions out of 4999 + 27i,6n,22p,229b,203s stack positions out of 1500i,500n,5000p,200000b,32768s +PDF statistics: + 118 PDF objects out of 300000 + 0 named destinations out of 300000 + 31 words of extra memory for PDF output out of 65536 + +Output written on 2IV35-Report.pdf (25 pages, 265585 bytes). diff --git a/Smoke/report/2IV35-Report.pdf b/Smoke/report/2IV35-Report.pdf new file mode 100644 index 0000000..d8c31e4 Binary files /dev/null and b/Smoke/report/2IV35-Report.pdf differ diff --git a/Smoke/report/2IV35-Report.tex b/Smoke/report/2IV35-Report.tex new file mode 100644 index 0000000..8ae26c7 --- /dev/null +++ b/Smoke/report/2IV35-Report.tex @@ -0,0 +1,30 @@ +\documentclass[12pt, a4paper]{report} +\usepackage{graphicx} +\usepackage{amsmath} +\usepackage{amsfonts} +\usepackage{moreverb} +\usepackage{color} + +\begin{document} + + % Title page + \title{Visualization 2IV35} + \author{Oliver Schinagl (...)\\Wilrik De Loose (0601583)} + %\date{29th of August 2007} + \maketitle + +%no paragraph indentation +\parindent = 0in + +\include{toc} +\include{chapter1} +\include{chapter2} +\include{chapter3} +\include{chapter4} +\include{chapter5} +\include{chapter6} +\include{chapter7} +\include{chapter8} +\include{chapter9} + +\end{document} diff --git a/Smoke/report/2IV35-Report.toc b/Smoke/report/2IV35-Report.toc new file mode 100644 index 0000000..088dc5b --- /dev/null +++ b/Smoke/report/2IV35-Report.toc @@ -0,0 +1,36 @@ +\contentsline {chapter}{\numberline {1}Introduction}{3} +\contentsline {chapter}{\numberline {2}The skeleton code}{5} +\contentsline {section}{\numberline {2.1}Grid-based smoke}{5} +\contentsline {section}{\numberline {2.2}Internal structure}{6} +\contentsline {chapter}{\numberline {3}Color mapping}{7} +\contentsline {section}{\numberline {3.1}Description}{7} +\contentsline {section}{\numberline {3.2}Implementation}{8} +\contentsline {section}{\numberline {3.3}Difficulties}{8} +\contentsline {chapter}{\numberline {4}Glyphs}{9} +\contentsline {section}{\numberline {4.1}Description}{9} +\contentsline {section}{\numberline {4.2}Implementation}{10} +\contentsline {section}{\numberline {4.3}Difficulties}{11} +\contentsline {section}{\numberline {4.4}Quake root}{11} +\contentsline {chapter}{\numberline {5}Divergence}{13} +\contentsline {section}{\numberline {5.1}Description}{13} +\contentsline {section}{\numberline {5.2}Implementation}{13} +\contentsline {section}{\numberline {5.3}Difficulties}{14} +\contentsline {chapter}{\numberline {6}Isosurfaces}{15} +\contentsline {section}{\numberline {6.1}Description}{15} +\contentsline {section}{\numberline {6.2}Implementation}{15} +\contentsline {section}{\numberline {6.3}Difficulties}{17} +\contentsline {chapter}{\numberline {7}Height plots}{18} +\contentsline {section}{\numberline {7.1}Description}{18} +\contentsline {section}{\numberline {7.2}Implementation}{18} +\contentsline {subsection}{\numberline {7.2.1}Normal vector}{19} +\contentsline {section}{\numberline {7.3}Difficulties}{19} +\contentsline {subsection}{\numberline {7.3.1}Rotation}{19} +\contentsline {subsection}{\numberline {7.3.2}Height strips}{20} +\contentsline {subsection}{\numberline {7.3.3}Calculating the normal}{20} +\contentsline {chapter}{\numberline {8}Streamtubes}{21} +\contentsline {section}{\numberline {8.1}Description}{21} +\contentsline {section}{\numberline {8.2}Implementation}{21} +\contentsline {section}{\numberline {8.3}Difficulties}{22} +\contentsline {chapter}{\numberline {9}Conclusion}{23} +\contentsline {section}{\numberline {9.1}Visualization}{23} +\contentsline {section}{\numberline {9.2}The course}{24} diff --git a/Smoke/report/ambiguous.png b/Smoke/report/ambiguous.png new file mode 100644 index 0000000..8cc4579 Binary files /dev/null and b/Smoke/report/ambiguous.png differ diff --git a/Smoke/report/chapter1.aux b/Smoke/report/chapter1.aux new file mode 100644 index 0000000..2d546f2 --- /dev/null +++ b/Smoke/report/chapter1.aux @@ -0,0 +1,24 @@ +\relax +\@writefile{toc}{\contentsline {chapter}{\numberline {1}Introduction}{3}} +\@writefile{lof}{\addvspace {10\p@ }} +\@writefile{lot}{\addvspace {10\p@ }} +\@setckpt{chapter1}{ +\setcounter{page}{5} +\setcounter{equation}{0} +\setcounter{enumi}{0} +\setcounter{enumii}{0} +\setcounter{enumiii}{0} +\setcounter{enumiv}{0} +\setcounter{footnote}{0} +\setcounter{mpfootnote}{0} +\setcounter{part}{0} +\setcounter{chapter}{1} +\setcounter{section}{0} +\setcounter{subsection}{0} +\setcounter{subsubsection}{0} +\setcounter{paragraph}{0} +\setcounter{subparagraph}{0} +\setcounter{figure}{0} +\setcounter{table}{0} +\setcounter{parentequation}{0} +} diff --git a/Smoke/report/chapter1.tex b/Smoke/report/chapter1.tex new file mode 100644 index 0000000..2ba37ba --- /dev/null +++ b/Smoke/report/chapter1.tex @@ -0,0 +1,20 @@ +\chapter{Introduction} + +The visualization course focuses on the techniques and algorithms used to visualize large data sets. The code of a 2D fluid simulator was distributed to implement +such techniques on top of the existing code. \\ + +\begin {center} + \includegraphics[width=120mm]{practical.png} \\ + Figure 1: Practical assignment \\ +\end {center} + +The above figure illustrates the different assignments. After doing step 3 there were two different ways to continue the practical assignment. We chose +to take the left branch of the figure which, amongst others, involved implementing isosurfaces and hight plots. \\ + +Every chapter in this report discusses a particular objective from the practical assignment. The next chapter will briefly talk about the skeleton program and how +we adapted the code to be able to add functionality. Chapter 3 will discuss the color mapping, chapter 4 is about glyphs and so on. \\ + +We will discuss a few subjects for each practical assignment. Each chapter gives a short description of each technique with a couple of screenshots, it talks about +how we implemented the technique and what problems we encountered if any. \\ + +We end our report giving a detailed conclusion about visualization in general and the visualization course. \\ diff --git a/Smoke/report/chapter2.aux b/Smoke/report/chapter2.aux new file mode 100644 index 0000000..09a76eb --- /dev/null +++ b/Smoke/report/chapter2.aux @@ -0,0 +1,26 @@ +\relax +\@writefile{toc}{\contentsline {chapter}{\numberline {2}The skeleton code}{5}} +\@writefile{lof}{\addvspace {10\p@ }} +\@writefile{lot}{\addvspace {10\p@ }} +\@writefile{toc}{\contentsline {section}{\numberline {2.1}Grid-based smoke}{5}} +\@writefile{toc}{\contentsline {section}{\numberline {2.2}Internal structure}{6}} +\@setckpt{chapter2}{ +\setcounter{page}{7} +\setcounter{equation}{0} +\setcounter{enumi}{0} +\setcounter{enumii}{0} +\setcounter{enumiii}{0} +\setcounter{enumiv}{0} +\setcounter{footnote}{0} +\setcounter{mpfootnote}{0} +\setcounter{part}{0} +\setcounter{chapter}{2} +\setcounter{section}{2} +\setcounter{subsection}{0} +\setcounter{subsubsection}{0} +\setcounter{paragraph}{0} +\setcounter{subparagraph}{0} +\setcounter{figure}{0} +\setcounter{table}{0} +\setcounter{parentequation}{0} +} diff --git a/Smoke/report/chapter2.tex b/Smoke/report/chapter2.tex new file mode 100644 index 0000000..be2ccca --- /dev/null +++ b/Smoke/report/chapter2.tex @@ -0,0 +1,30 @@ +\chapter{The skeleton code} + +The provided code for the course contains an implementation of a real-time fluid flow simulation. The fluid flows under the influence of a user-controlled force +field. The simulation follows the Navier-Stokes equations for fluid flow. These equations describe how the velocity, pressure, temperature and density of a moving +fluid are related. \\ + +\section{Grid-based smoke} + +The visualization is done using a two dimensional grid as opposed to particle-based smoke visualization techniques. At every vertex a number of fluid attributes are +stored. The skeleton program keeps track of the density, velocity and force. Using different techniques, these attributes can be visualized. Each and every +attribute has its own 'preferred' visualization technique. \\ + +Using these values at the cell's vertices all sorts of techniques, additional values and other useful info can be used. The values are used in colormap techniques, +calculation of the divergence and the rendering of the hight plots. \\ + +\begin {center} + \includegraphics[width=70mm]{flow_vis.png} \\ + Figure 2: Fluid visualization \\ +\end {center} + +The above screenshot shows us the fluid movement using a grey colormap. This simple yet effective visualization technique is explained in chapter 3. \\ + +\section{Internal structure} + +The first assignment was to simply compile the code. That was fairly easy. However, the code was a bit unstructured. Everything was put into one big file. To be +able to add additional functionality without losing sight of what we were doing, we created a new file for every new technique we implemented. The second thing we +did is we split up the calculations, the rendering functions and user interactions from each other. \\ + +With this new structure we were able to manage the code and add additional functionality. We also used SVN to manage our project. This was very useful since we both +had different development environments and also did a lot of work at home. \\ diff --git a/Smoke/report/chapter3.aux b/Smoke/report/chapter3.aux new file mode 100644 index 0000000..8964918 --- /dev/null +++ b/Smoke/report/chapter3.aux @@ -0,0 +1,27 @@ +\relax +\@writefile{toc}{\contentsline {chapter}{\numberline {3}Color mapping}{7}} +\@writefile{lof}{\addvspace {10\p@ }} +\@writefile{lot}{\addvspace {10\p@ }} +\@writefile{toc}{\contentsline {section}{\numberline {3.1}Description}{7}} +\@writefile{toc}{\contentsline {section}{\numberline {3.2}Implementation}{8}} +\@writefile{toc}{\contentsline {section}{\numberline {3.3}Difficulties}{8}} +\@setckpt{chapter3}{ +\setcounter{page}{9} +\setcounter{equation}{0} +\setcounter{enumi}{0} +\setcounter{enumii}{0} +\setcounter{enumiii}{0} +\setcounter{enumiv}{0} +\setcounter{footnote}{0} +\setcounter{mpfootnote}{0} +\setcounter{part}{0} +\setcounter{chapter}{3} +\setcounter{section}{3} +\setcounter{subsection}{0} +\setcounter{subsubsection}{0} +\setcounter{paragraph}{0} +\setcounter{subparagraph}{0} +\setcounter{figure}{0} +\setcounter{table}{0} +\setcounter{parentequation}{0} +} diff --git a/Smoke/report/chapter3.tex b/Smoke/report/chapter3.tex new file mode 100644 index 0000000..4f29bea --- /dev/null +++ b/Smoke/report/chapter3.tex @@ -0,0 +1,32 @@ +\chapter{Color mapping} + +In chapter 2 we saw a figure (figure 2) which showed a fluid in motion. The fluid had a very bright grey color. How is this color determined at every vertex? + +\section{Description} + +The technique that maps a value to a specific color is called color mapping. We already explained that the simulation is divided into a two dimensional array of +different values. A colormap calculates the color, given a certain colormap function, for every value at a vertex. Example: \\ + +In figure 2 we saw the smoke using a grey scaled colormap. If we know that the values at the vertices ranges from 0 to 1, we can use the value to determine each +color aspect, red, green and blue. This means, for each vertex: + +$$ red = green = blue = value $$ + +To be able to reason about the colored images, we added a legend at the top of the screen. The leftmost colors indicate low values and the rightmost colors indicate +high values. With such a colormap legend, it's easier to understand the produced images and say something about the value of the fluid. \\ + +You are also able to set the number of used colors. At default this value is set to 256 colors, but you can easily set that amount to 16 using a slider. You will +see big bands of colors appear. This way, the line between certain values becomes more visible. \\ + +\section{Implementation} + +We implemented a number of colormaps. + +\section{Difficulties} + +The last mechanisms to implement for this assignment were scaling and clamping. With clamping you let the user set a minimum and maximum for the values. Actual data +higher than the maximum or lower to the minimum are clamped to the maximum or minimum respectively. \\ + +The clamping mechanism was a bit more subtle. At every frame, the minimum and maximum values are stored and the entire dataset at the current time moment is mapped +to the visible colormap. This is not so hard to do, but we had not foreseen that values could also be negative. It wasn't until we implemented the divergence that +we found this problem. \\ diff --git a/Smoke/report/chapter4.aux b/Smoke/report/chapter4.aux new file mode 100644 index 0000000..cee119d --- /dev/null +++ b/Smoke/report/chapter4.aux @@ -0,0 +1,28 @@ +\relax +\@writefile{toc}{\contentsline {chapter}{\numberline {4}Glyphs}{9}} +\@writefile{lof}{\addvspace {10\p@ }} +\@writefile{lot}{\addvspace {10\p@ }} +\@writefile{toc}{\contentsline {section}{\numberline {4.1}Description}{9}} +\@writefile{toc}{\contentsline {section}{\numberline {4.2}Implementation}{10}} +\@writefile{toc}{\contentsline {section}{\numberline {4.3}Difficulties}{11}} +\@writefile{toc}{\contentsline {section}{\numberline {4.4}Quake root}{11}} +\@setckpt{chapter4}{ +\setcounter{page}{13} +\setcounter{equation}{0} +\setcounter{enumi}{0} +\setcounter{enumii}{0} +\setcounter{enumiii}{0} +\setcounter{enumiv}{0} +\setcounter{footnote}{0} +\setcounter{mpfootnote}{0} +\setcounter{part}{0} +\setcounter{chapter}{4} +\setcounter{section}{4} +\setcounter{subsection}{0} +\setcounter{subsubsection}{0} +\setcounter{paragraph}{0} +\setcounter{subparagraph}{0} +\setcounter{figure}{0} +\setcounter{table}{0} +\setcounter{parentequation}{0} +} diff --git a/Smoke/report/chapter4.tex b/Smoke/report/chapter4.tex new file mode 100644 index 0000000..697feab --- /dev/null +++ b/Smoke/report/chapter4.tex @@ -0,0 +1,66 @@ +\chapter{Glyphs} + +When taking a snapshot of the moving fluid a lot of information about the simulation is lost. The direction the fluid was heading for instance. Glyphs are used to +take care of such problems. \\ + +\section{Description} + +\textit{"Glyphs are icons that convey the value (orientation, magnitude) of a vector field by means of several graphical icons, such as arrows."} \\ + +\begin {center} + \includegraphics[width=100mm]{glyphs.png} \\ + Figure 3: Triangle glyphs with a grey scaled colormap\\ +\end {center} + +What does it mean? The smoke in our fluid simulation has a direction and speed. These two values can be represented by a vector encoding the direction as the +orientation and the speed as the magnitude. If you draw this vector for each vertex you get a vector field that shows the direction and speed of the fluid at each +vertex. \\ + +In the figure above (figure 3) you see triangle glyphs with a grey scaled colormap. In the lower right region you can see that the fluid is moving upwards where at +the rest of the simulation the fluid is trying to get to the bottom of the screen. \\ + +\section{Implementation} + +We implemented three additional glyphs besides the already implemented hedgehogs. We implemented triangles (see figure 3), 3D cones and 32x32 bitmap image glyphs +(see figure 4). For every vertex we go through a set of steps. + +\begin{itemize} + \item calculate size (length) + \item calculate angle (rotation) + \item rotate and render object \\ +\end{itemize} + +The length is calculated using the following equation of Pythagoras: + +$$ length = \sqrt{x^3 + y^3 + z^3} $$ + +The angle $ \Theta $ of the glyph is calculated using the inner product ($ inprod $). The inner product is used to calculate the glyphs angle: + +$$ \Theta = acos(inprod) * (180^\circ / \Pi) $$ \\ + +\begin {center} + \includegraphics[width=100mm]{glyphs2.png} \\ + Figure 4: Image glyphs colored with a rainbow colormap \\ +\end {center} + +The second part of this assignment was to let the user be able to choose an alternative resolution for the sample grid. The default grid resolution is 50x50. The +user is now able to alter that resolution. We use the value of the nearest-neighbor for the glyph to visualize it. \\ + +\section{Difficulties} + +We had some troubles with calculating the angle of the glyph. For some reason the calculation checks the smallest angle which is between $ 0^\circ $ and $ 180^\circ +$. When we located this irregularity it was easily fixed. \\ + +\section{Quake root} + +A nice side note to this chapter is that we don't use the default $ sqrt(float) $ function that the C-library offers to determine the length of a vector for +instance. We use a function that we like to call the $ quake\_root(float) $ from the game Quake 3. \\ + +The code implements the Newton Approximation of roots. The Newton approximation is supposed to be ran in iterations; each iteration enhances the accuracy until +enough iterations have been made for reaching the desired accuracy. The really interesting aspect of this function is a magic constant, used to calculate the +initial guess. Only one Newton approximation iteration is required for a low relative error of $ 10^{-3} $. \\ + +The function runs up to 4 times faster than the $ sqrt(float) $ function, even though it's usually implemented using the FSQRT assembly instruction! \\ + +You can read more about the magical square root at: \\ +\textcolor[rgb]{0.00,0.00,1.00}{\underline{http://www.codemaestro.com/reviews/9}} diff --git a/Smoke/report/chapter5.aux b/Smoke/report/chapter5.aux new file mode 100644 index 0000000..d832612 --- /dev/null +++ b/Smoke/report/chapter5.aux @@ -0,0 +1,27 @@ +\relax +\@writefile{toc}{\contentsline {chapter}{\numberline {5}Divergence}{13}} +\@writefile{lof}{\addvspace {10\p@ }} +\@writefile{lot}{\addvspace {10\p@ }} +\@writefile{toc}{\contentsline {section}{\numberline {5.1}Description}{13}} +\@writefile{toc}{\contentsline {section}{\numberline {5.2}Implementation}{13}} +\@writefile{toc}{\contentsline {section}{\numberline {5.3}Difficulties}{14}} +\@setckpt{chapter5}{ +\setcounter{page}{15} +\setcounter{equation}{0} +\setcounter{enumi}{0} +\setcounter{enumii}{0} +\setcounter{enumiii}{0} +\setcounter{enumiv}{0} +\setcounter{footnote}{0} +\setcounter{mpfootnote}{0} +\setcounter{part}{0} +\setcounter{chapter}{5} +\setcounter{section}{3} +\setcounter{subsection}{0} +\setcounter{subsubsection}{0} +\setcounter{paragraph}{0} +\setcounter{subparagraph}{0} +\setcounter{figure}{0} +\setcounter{table}{0} +\setcounter{parentequation}{0} +} diff --git a/Smoke/report/chapter5.tex b/Smoke/report/chapter5.tex new file mode 100644 index 0000000..d12f159 --- /dev/null +++ b/Smoke/report/chapter5.tex @@ -0,0 +1,28 @@ +\chapter{Divergence} + +The divergence shows the amount of mass which is compressed or expanded. If mass enters the field at some point, called a source point, then that point will have a +positive divergence value. If mass exits the field at some point, called a sink point, then that point will have a negative divergence value. \\ + +\section{Description} + +After implementing the glyphs it was time for the divergence. This is a value which can be calculated using the already known value at each vertex and that of its +neighbors. \\ + +\section{Implementation} + +The calculation of the divergence is rather simple. For the divergence of the velocity it looks like: + +$$ \nabla \cdot v = \frac{\partial v}{\partial x} + \frac{\partial v}{\partial y} = $$ +$$ \frac{v_x(i + 1, j) - v_x(i, j)}{cell_x} + \frac{v_y(i + 1, j) - v_y(i, j)}{cell_y}$$ + +Where $ v_x(i, j) $ is the x-value at the gridpoint (i, j) and similar for the y-value. The $ cell_x $ and $ cell_y $ are the width and height of the cell. We also +implemented the divergence of the force field. \\ + +The definition of the divergence says high values should appear where matter is injected and low values where matter exits the field. This means high values should +appear in front of the mouse while dragging and low values behind it. \\ + +\section{Difficulties} + +Although we have a good definition of what the divergence is and what the result should look like, it is rather difficult to verify it using the simulation. This is +a know difficulty. The divergence can be verified by setting up a test environment where the outcome of the divergence should be obvious. For instance create one +source and one sink point. \\ diff --git a/Smoke/report/chapter6.aux b/Smoke/report/chapter6.aux new file mode 100644 index 0000000..c96a538 --- /dev/null +++ b/Smoke/report/chapter6.aux @@ -0,0 +1,27 @@ +\relax +\@writefile{toc}{\contentsline {chapter}{\numberline {6}Isosurfaces}{15}} +\@writefile{lof}{\addvspace {10\p@ }} +\@writefile{lot}{\addvspace {10\p@ }} +\@writefile{toc}{\contentsline {section}{\numberline {6.1}Description}{15}} +\@writefile{toc}{\contentsline {section}{\numberline {6.2}Implementation}{15}} +\@writefile{toc}{\contentsline {section}{\numberline {6.3}Difficulties}{17}} +\@setckpt{chapter6}{ +\setcounter{page}{18} +\setcounter{equation}{0} +\setcounter{enumi}{0} +\setcounter{enumii}{0} +\setcounter{enumiii}{0} +\setcounter{enumiv}{0} +\setcounter{footnote}{0} +\setcounter{mpfootnote}{0} +\setcounter{part}{0} +\setcounter{chapter}{6} +\setcounter{section}{3} +\setcounter{subsection}{0} +\setcounter{subsubsection}{0} +\setcounter{paragraph}{0} +\setcounter{subparagraph}{0} +\setcounter{figure}{0} +\setcounter{table}{0} +\setcounter{parentequation}{0} +} diff --git a/Smoke/report/chapter6.log b/Smoke/report/chapter6.log new file mode 100644 index 0000000..7f711fb --- /dev/null +++ b/Smoke/report/chapter6.log @@ -0,0 +1,1797 @@ +This is pdfeTeX, Version 3.141592-1.21a-2.2 (MiKTeX 2.4) (preloaded format=latex 2007.9.5) 8 JAN 2008 11:06 +entering extended mode +**chapter6.tex +(chapter6.tex +LaTeX2e <2003/12/01> +Babel and hyphenation patterns for american, dutch, nohyphenation, load +ed. +chapter6.tex:1: Undefined control sequence +The control sequence at the end of the top line +of your error message was never \def'ed. If you have +misspelled it (e.g., `\hobx'), type `I' and the correct +spelling (e.g., `I\hbox'). Otherwise just continue, +and I'll forget about whatever was undefined. + + +chapter6.tex:1: LaTeX Error: Missing \begin{document}. + +See the LaTeX manual or LaTeX Companion for explanation. +Type H for immediate help +You're in trouble here. Try typing to proceed. +If that doesn't work, type X to quit. + +Missing character: There is no I in font nullfont! +Missing character: There is no s in font nullfont! +Missing character: There is no o in font nullfont! +Missing character: There is no s in font nullfont! +Missing character: There is no u in font nullfont! +Missing character: There is no r in font nullfont! +Missing character: There is no f in font nullfont! +Missing character: There is no a in font nullfont! +Missing character: There is no c in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no s in font nullfont! + +Overfull \hbox (20.0pt too wide) in paragraph at lines 1--2 +[] + [] + + +chapter6.tex:3: LaTeX Error: Missing \begin{document}. + +See the LaTeX manual or LaTeX Companion for explanation. +Type H for immediate help +You're in trouble here. Try typing to proceed. +If that doesn't work, type X to quit. + +Missing character: There is no T in font nullfont! +Missing character: There is no h in font nullfont! +Missing character: There is no i in font nullfont! +Missing character: There is no s in font nullfont! +Missing character: There is no a in font nullfont! +Missing character: There is no s in font nullfont! +Missing character: There is no s in font nullfont! +Missing character: There is no i in font nullfont! +Missing character: There is no g in font nullfont! +Missing character: There is no n in font nullfont! +Missing character: There is no m in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no n in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no w in font nullfont! +Missing character: There is no a in font nullfont! +Missing character: There is no s in font nullfont! +Missing character: There is no a in font nullfont! +Missing character: There is no r in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no a in font nullfont! +Missing character: There is no l in font nullfont! +Missing character: There is no l in font nullfont! +Missing character: There is no y in font nullfont! +Missing character: There is no i in font nullfont! +Missing character: There is no n in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no r in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no s in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no i in font nullfont! +Missing character: There is no n in font nullfont! +Missing character: There is no g in font nullfont! +Missing character: There is no o in font nullfont! +Missing character: There is no n in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no . in font nullfont! +Missing character: There is no I in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no i in font nullfont! +Missing character: There is no n in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no r in font nullfont! +Missing character: There is no o in font nullfont! +Missing character: There is no d in font nullfont! +Missing character: There is no u in font nullfont! +Missing character: There is no c in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no s in font nullfont! +Missing character: There is no a in font nullfont! +Missing character: There is no m in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no h in font nullfont! +Missing character: There is no o in font nullfont! +Missing character: There is no d in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no o in font nullfont! +Missing character: There is no i in font nullfont! +Missing character: There is no m in font nullfont! +Missing character: There is no p in font nullfont! +Missing character: There is no l in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no m in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no n in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no s in font nullfont! +Missing character: There is no o in font nullfont! +Missing character: There is no c in font nullfont! +Missing character: There is no a in font nullfont! +Missing character: There is no l in font nullfont! +Missing character: There is no l in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no d in font nullfont! +Missing character: There is no i in font nullfont! +Missing character: There is no s in font nullfont! +Missing character: There is no o in font nullfont! +Missing character: There is no l in font nullfont! +Missing character: There is no i in font nullfont! +Missing character: There is no n in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no s in font nullfont! +Missing character: There is no . in font nullfont! +Missing character: There is no S in font nullfont! +Missing character: There is no u in font nullfont! +Missing character: There is no c in font nullfont! +Missing character: There is no h in font nullfont! +Missing character: There is no a in font nullfont! +Missing character: There is no n in font nullfont! +Missing character: There is no i in font nullfont! +Missing character: There is no s in font nullfont! +Missing character: There is no o in font nullfont! +Missing character: There is no l in font nullfont! +Missing character: There is no i in font nullfont! +Missing character: There is no n in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no c in font nullfont! +Missing character: There is no r in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no a in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no s in font nullfont! +Missing character: There is no a in font nullfont! +Missing character: There is no s in font nullfont! +Missing character: There is no u in font nullfont! +Missing character: There is no r in font nullfont! +Missing character: There is no f in font nullfont! +Missing character: There is no a in font nullfont! +Missing character: There is no c in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no h in font nullfont! +Missing character: There is no a in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no n in font nullfont! +Missing character: There is no c in font nullfont! +Missing character: There is no a in font nullfont! +Missing character: There is no p in font nullfont! +Missing character: There is no s in font nullfont! +Missing character: There is no u in font nullfont! +Missing character: There is no l in font nullfont! +Missing character: There is no a in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no s in font nullfont! +Missing character: There is no a in font nullfont! +Missing character: There is no r in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no g in font nullfont! +Missing character: There is no i in font nullfont! +Missing character: There is no o in font nullfont! +Missing character: There is no n in font nullfont! +Missing character: There is no w in font nullfont! +Missing character: There is no i in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no h in font nullfont! +Missing character: There is no a in font nullfont! +Missing character: There is no v in font nullfont! +Missing character: There is no a in font nullfont! +Missing character: There is no l in font nullfont! +Missing character: There is no u in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no h in font nullfont! +Missing character: There is no i in font nullfont! +Missing character: There is no g in font nullfont! +Missing character: There is no h in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no r in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no h in font nullfont! +Missing character: There is no a in font nullfont! +Missing character: There is no n in font nullfont! +Missing character: There is no a in font nullfont! +Missing character: There is no g in font nullfont! +Missing character: There is no i in font nullfont! +Missing character: There is no v in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no n in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no h in font nullfont! +Missing character: There is no r in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no s in font nullfont! +Missing character: There is no h in font nullfont! +Missing character: There is no o in font nullfont! +Missing character: There is no l in font nullfont! +Missing character: There is no d in font nullfont! +Missing character: There is no . in font nullfont! + +Overfull \hbox (20.0pt too wide) in paragraph at lines 3--5 +[] + [] + +chapter6.tex:6: Undefined control sequence +The control sequence at the end of the top line +of your error message was never \def'ed. If you have +misspelled it (e.g., `\hobx'), type `I' and the correct +spelling (e.g., `I\hbox'). Otherwise just continue, +and I'll forget about whatever was undefined. + + +chapter6.tex:6: LaTeX Error: Missing \begin{document}. + +See the LaTeX manual or LaTeX Companion for explanation. +Type H for immediate help +You're in trouble here. Try typing to proceed. +If that doesn't work, type X to quit. + +Missing character: There is no D in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no s in font nullfont! +Missing character: There is no c in font nullfont! +Missing character: There is no r in font nullfont! +Missing character: There is no i in font nullfont! +Missing character: There is no p in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no i in font nullfont! +Missing character: There is no o in font nullfont! +Missing character: There is no n in font nullfont! + +Overfull \hbox (20.0pt too wide) in paragraph at lines 6--7 +[] + [] + + +chapter6.tex:8: LaTeX Error: Missing \begin{document}. + +See the LaTeX manual or LaTeX Companion for explanation. +Type H for immediate help +You're in trouble here. Try typing to proceed. +If that doesn't work, type X to quit. + +Missing character: There is no A in font nullfont! +Missing character: There is no n in font nullfont! +Missing character: There is no i in font nullfont! +Missing character: There is no s in font nullfont! +Missing character: There is no o in font nullfont! +Missing character: There is no l in font nullfont! +Missing character: There is no i in font nullfont! +Missing character: There is no n in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no i in font nullfont! +Missing character: There is no s in font nullfont! +Missing character: There is no a in font nullfont! +Missing character: There is no l in font nullfont! +Missing character: There is no i in font nullfont! +Missing character: There is no n in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no h in font nullfont! +Missing character: There is no a in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no s in font nullfont! +Missing character: There is no o in font nullfont! +Missing character: There is no r in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no o in font nullfont! +Missing character: There is no s in font nullfont! +Missing character: There is no p in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no a in font nullfont! +Missing character: There is no k in font nullfont! +Missing character: There is no f in font nullfont! +Missing character: There is no o in font nullfont! +Missing character: There is no l in font nullfont! +Missing character: There is no l in font nullfont! +Missing character: There is no o in font nullfont! +Missing character: There is no w in font nullfont! +Missing character: There is no s in font nullfont! +Missing character: There is no a in font nullfont! +Missing character: There is no g in font nullfont! +Missing character: There is no i in font nullfont! +Missing character: There is no v in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no n in font nullfont! +Missing character: There is no v in font nullfont! +Missing character: There is no a in font nullfont! +Missing character: There is no l in font nullfont! +Missing character: There is no u in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no . in font nullfont! +Missing character: There is no I in font nullfont! +Missing character: There is no f in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no h in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no v in font nullfont! +Missing character: There is no a in font nullfont! +Missing character: There is no l in font nullfont! +Missing character: There is no u in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no s in font nullfont! +Missing character: There is no o in font nullfont! +Missing character: There is no f in font nullfont! +Missing character: There is no a in font nullfont! +Missing character: There is no f in font nullfont! +Missing character: There is no i in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no l in font nullfont! +Missing character: There is no d in font nullfont! +Missing character: There is no r in font nullfont! +Missing character: There is no a in font nullfont! +Missing character: There is no n in font nullfont! +Missing character: There is no g in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no s in font nullfont! +Missing character: There is no f in font nullfont! +Missing character: There is no r in font nullfont! +Missing character: There is no o in font nullfont! +Missing character: There is no m in font nullfont! +Missing character: There is no 0 in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no o in font nullfont! +Missing character: There is no 1 in font nullfont! +Missing character: There is no , in font nullfont! +Missing character: There is no a in font nullfont! +Missing character: There is no g in font nullfont! +Missing character: There is no o in font nullfont! +Missing character: There is no o in font nullfont! +Missing character: There is no d in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no h in font nullfont! +Missing character: There is no r in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no s in font nullfont! +Missing character: There is no h in font nullfont! +Missing character: There is no o in font nullfont! +Missing character: There is no l in font nullfont! +Missing character: There is no d in font nullfont! +Missing character: There is no w in font nullfont! +Missing character: There is no o in font nullfont! +Missing character: There is no u in font nullfont! +Missing character: There is no l in font nullfont! +Missing character: There is no d in font nullfont! +Missing character: There is no b in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no 0 in font nullfont! +Missing character: There is no . in font nullfont! +Missing character: There is no 6 in font nullfont! +Missing character: There is no f in font nullfont! +Missing character: There is no o in font nullfont! +Missing character: There is no r in font nullfont! +Missing character: There is no i in font nullfont! +Missing character: There is no n in font nullfont! +Missing character: There is no s in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no a in font nullfont! +Missing character: There is no n in font nullfont! +Missing character: There is no c in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no . in font nullfont! +Missing character: There is no T in font nullfont! +Missing character: There is no h in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no i in font nullfont! +Missing character: There is no s in font nullfont! +Missing character: There is no o in font nullfont! +Missing character: There is no l in font nullfont! +Missing character: There is no i in font nullfont! +Missing character: There is no n in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no v in font nullfont! +Missing character: There is no i in font nullfont! +Missing character: There is no s in font nullfont! +Missing character: There is no u in font nullfont! +Missing character: There is no a in font nullfont! +Missing character: There is no l in font nullfont! +Missing character: There is no i in font nullfont! +Missing character: There is no z in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no s in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no h in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no p in font nullfont! +Missing character: There is no o in font nullfont! +Missing character: There is no i in font nullfont! +Missing character: There is no n in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no s in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no h in font nullfont! +Missing character: There is no a in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no q in font nullfont! +Missing character: There is no u in font nullfont! +Missing character: There is no a in font nullfont! +Missing character: There is no l in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no h in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no v in font nullfont! +Missing character: There is no a in font nullfont! +Missing character: There is no l in font nullfont! +Missing character: There is no u in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no o in font nullfont! +Missing character: There is no f in font nullfont! +Missing character: There is no 0 in font nullfont! +Missing character: There is no . in font nullfont! +Missing character: There is no 6 in font nullfont! +Missing character: There is no . in font nullfont! + +Overfull \hbox (20.0pt too wide) in paragraph at lines 8--10 +[] + [] + +chapter6.tex:11: Undefined control sequence +The control sequence at the end of the top line +of your error message was never \def'ed. If you have +misspelled it (e.g., `\hobx'), type `I' and the correct +spelling (e.g., `I\hbox'). Otherwise just continue, +and I'll forget about whatever was undefined. + + +chapter6.tex:11: LaTeX Error: Missing \begin{document}. + +See the LaTeX manual or LaTeX Companion for explanation. +Type H for immediate help +You're in trouble here. Try typing to proceed. +If that doesn't work, type X to quit. + +Missing character: There is no I in font nullfont! +Missing character: There is no m in font nullfont! +Missing character: There is no p in font nullfont! +Missing character: There is no l in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no m in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no n in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no a in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no i in font nullfont! +Missing character: There is no o in font nullfont! +Missing character: There is no n in font nullfont! + +Overfull \hbox (20.0pt too wide) in paragraph at lines 11--12 +[] + [] + + +chapter6.tex:13: LaTeX Error: Missing \begin{document}. + +See the LaTeX manual or LaTeX Companion for explanation. +Type H for immediate help +You're in trouble here. Try typing to proceed. +If that doesn't work, type X to quit. + +Missing character: There is no T in font nullfont! +Missing character: There is no h in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no a in font nullfont! +Missing character: There is no l in font nullfont! +Missing character: There is no g in font nullfont! +Missing character: There is no o in font nullfont! +Missing character: There is no r in font nullfont! +Missing character: There is no i in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no h in font nullfont! +Missing character: There is no m in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no h in font nullfont! +Missing character: There is no a in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no i in font nullfont! +Missing character: There is no m in font nullfont! +Missing character: There is no p in font nullfont! +Missing character: There is no l in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no m in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no n in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no s in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no h in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no i in font nullfont! +Missing character: There is no s in font nullfont! +Missing character: There is no o in font nullfont! +Missing character: There is no l in font nullfont! +Missing character: There is no i in font nullfont! +Missing character: There is no n in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no s in font nullfont! +Missing character: There is no f in font nullfont! +Missing character: There is no o in font nullfont! +Missing character: There is no l in font nullfont! +Missing character: There is no l in font nullfont! +Missing character: There is no o in font nullfont! +Missing character: There is no w in font nullfont! +Missing character: There is no s in font nullfont! +Missing character: There is no a in font nullfont! +Missing character: There is no s in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no r in font nullfont! +Missing character: There is no u in font nullfont! +Missing character: There is no c in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no u in font nullfont! +Missing character: There is no r in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no d in font nullfont! +Missing character: There is no p in font nullfont! +Missing character: There is no a in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no r in font nullfont! +Missing character: There is no n in font nullfont! +Missing character: There is no . in font nullfont! +Missing character: There is no I in font nullfont! +Missing character: There is no n in font nullfont! +Missing character: There is no p in font nullfont! +Missing character: There is no s in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no u in font nullfont! +Missing character: There is no d in font nullfont! +Missing character: There is no o in font nullfont! +Missing character: There is no - in font nullfont! +Missing character: There is no c in font nullfont! +Missing character: There is no o in font nullfont! +Missing character: There is no d in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no i in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no l in font nullfont! +Missing character: There is no o in font nullfont! +Missing character: There is no o in font nullfont! +Missing character: There is no k in font nullfont! +Missing character: There is no s in font nullfont! +Missing character: There is no l in font nullfont! +Missing character: There is no i in font nullfont! +Missing character: There is no k in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no h in font nullfont! +Missing character: There is no i in font nullfont! +Missing character: There is no s in font nullfont! +Missing character: There is no : in font nullfont! + +Overfull \hbox (20.0pt too wide) in paragraph at lines 13--14 +[] + [] + + +chapter6.tex:15: LaTeX Error: Missing \begin{document}. + +See the LaTeX manual or LaTeX Companion for explanation. +Type H for immediate help +You're in trouble here. Try typing to proceed. +If that doesn't work, type X to quit. + + +Overfull \hbox (20.0pt too wide) in paragraph at lines 15--15 +[] + [] + +Missing character: There is no f in font nullfont! +Missing character: There is no o in font nullfont! +Missing character: There is no r in font nullfont! +Missing character: There is no ( in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no a in font nullfont! +Missing character: There is no c in font nullfont! +Missing character: There is no h in font nullfont! +Missing character: There is no c in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no l in font nullfont! +Missing character: There is no l in font nullfont! +LaTeX Font Info: External font `cmex10' loaded for size +(Font) <7> on input line 16. +LaTeX Font Info: External font `cmex10' loaded for size +(Font) <5> on input line 16. +Missing character: There is no o in font nullfont! +Missing character: There is no f in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no h in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no d in font nullfont! +Missing character: There is no a in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no a in font nullfont! +Missing character: There is no s in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no ) in font nullfont! +LaTeX Font Info: Try loading font information for OMS+cmr on input line 17. +(C:\MiKTeX\texmf\tex\latex\base\omscmr.fd +File: omscmr.fd 1999/05/25 v2.5h Standard LaTeX font definitions +) +LaTeX Font Info: Font shape `OMS/cmr/m/n' in size <10> not available +(Font) Font shape `OMS/cmsy/m/n' tried instead on input line 17. +Missing character: There is no f in font nullfont! +Missing character: There is no o in font nullfont! +Missing character: There is no r in font nullfont! +Missing character: There is no ( in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no a in font nullfont! +Missing character: There is no c in font nullfont! +Missing character: There is no h in font nullfont! +Missing character: There is no v in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no r in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no x in font nullfont! +Missing character: There is no o in font nullfont! +Missing character: There is no f in font nullfont! +Missing character: There is no ) in font nullfont! +Missing character: There is no s in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no o in font nullfont! +Missing character: There is no r in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no i in font nullfont! +Missing character: There is no n in font nullfont! +Missing character: There is no s in font nullfont! +Missing character: There is no i in font nullfont! +Missing character: There is no d in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no / in font nullfont! +Missing character: There is no o in font nullfont! +Missing character: There is no u in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no s in font nullfont! +Missing character: There is no i in font nullfont! +Missing character: There is no d in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no s in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no a in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no o in font nullfont! +Missing character: There is no f in font nullfont! +Missing character: There is no i in font nullfont! +Missing character: There is no n in font nullfont! +Missing character: There is no b in font nullfont! +Missing character: There is no i in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no o in font nullfont! +Missing character: There is no f in font nullfont! +Missing character: There is no ; in font nullfont! +Missing character: There is no s in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no l in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no c in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no h in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no o in font nullfont! +Missing character: There is no p in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no i in font nullfont! +Missing character: There is no m in font nullfont! +Missing character: There is no i in font nullfont! +Missing character: There is no z in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no d in font nullfont! +Missing character: There is no c in font nullfont! +Missing character: There is no o in font nullfont! +Missing character: There is no d in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no f in font nullfont! +Missing character: There is no r in font nullfont! +Missing character: There is no o in font nullfont! +Missing character: There is no m in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no h in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no c in font nullfont! +Missing character: There is no a in font nullfont! +Missing character: There is no s in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no a in font nullfont! +Missing character: There is no b in font nullfont! +Missing character: There is no l in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no u in font nullfont! +Missing character: There is no s in font nullfont! +Missing character: There is no i in font nullfont! +Missing character: There is no n in font nullfont! +Missing character: There is no g in font nullfont! +Missing character: There is no ; in font nullfont! +Missing character: There is no f in font nullfont! +Missing character: There is no o in font nullfont! +Missing character: There is no r in font nullfont! +Missing character: There is no ( in font nullfont! +Missing character: There is no a in font nullfont! +Missing character: There is no l in font nullfont! +Missing character: There is no l in font nullfont! +Missing character: There is no c in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no l in font nullfont! +Missing character: There is no l in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no d in font nullfont! +Missing character: There is no g in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no s in font nullfont! +Missing character: There is no o in font nullfont! +Missing character: There is no f in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no h in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no s in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no l in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no c in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no d in font nullfont! +Missing character: There is no c in font nullfont! +Missing character: There is no a in font nullfont! +Missing character: There is no s in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no ) in font nullfont! +Missing character: There is no i in font nullfont! +Missing character: There is no n in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no r in font nullfont! +Missing character: There is no s in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no c in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no w in font nullfont! +Missing character: There is no i in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no h in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no h in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no i in font nullfont! +Missing character: There is no s in font nullfont! +Missing character: There is no o in font nullfont! +Missing character: There is no v in font nullfont! +Missing character: There is no a in font nullfont! +Missing character: There is no l in font nullfont! +Missing character: There is no u in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no ; in font nullfont! +Missing character: There is no c in font nullfont! +Missing character: There is no o in font nullfont! +Missing character: There is no n in font nullfont! +Missing character: There is no s in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no r in font nullfont! +Missing character: There is no u in font nullfont! +Missing character: There is no c in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no h in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no l in font nullfont! +Missing character: There is no i in font nullfont! +Missing character: There is no n in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no s in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no g in font nullfont! +Missing character: There is no m in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no n in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no ( in font nullfont! +Missing character: There is no s in font nullfont! +Missing character: There is no ) in font nullfont! +Missing character: There is no ; in font nullfont! +Missing character: There is no S in font nullfont! +Missing character: There is no o in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no h in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no a in font nullfont! +Missing character: There is no l in font nullfont! +Missing character: There is no g in font nullfont! +Missing character: There is no o in font nullfont! +Missing character: There is no r in font nullfont! +Missing character: There is no i in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no h in font nullfont! +Missing character: There is no m in font nullfont! +Missing character: There is no p in font nullfont! +Missing character: There is no a in font nullfont! +Missing character: There is no s in font nullfont! +Missing character: There is no s in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no s in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no h in font nullfont! +Missing character: There is no r in font nullfont! +Missing character: There is no o in font nullfont! +Missing character: There is no u in font nullfont! +Missing character: There is no g in font nullfont! +Missing character: There is no h in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no v in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no r in font nullfont! +Missing character: There is no y in font nullfont! +Missing character: There is no c in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no l in font nullfont! +Missing character: There is no l in font nullfont! +Missing character: There is no a in font nullfont! +Missing character: There is no n in font nullfont! +Missing character: There is no d in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no h in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no n in font nullfont! +Missing character: There is no c in font nullfont! +Missing character: There is no h in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no c in font nullfont! +Missing character: There is no k in font nullfont! +Missing character: There is no s in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no h in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no f in font nullfont! +Missing character: There is no o in font nullfont! +Missing character: There is no u in font nullfont! +Missing character: There is no r in font nullfont! +Missing character: There is no c in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no l in font nullfont! +Missing character: There is no l in font nullfont! +Missing character: There is no v in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no r in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no i in font nullfont! +Missing character: There is no c in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no s in font nullfont! +Missing character: There is no o in font nullfont! +Missing character: There is no f in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no h in font nullfont! +Missing character: There is no a in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no c in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no l in font nullfont! +Missing character: There is no l in font nullfont! +Missing character: There is no . in font nullfont! +Missing character: There is no E in font nullfont! +Missing character: There is no a in font nullfont! +Missing character: There is no c in font nullfont! +Missing character: There is no h in font nullfont! +Missing character: There is no v in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no r in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no x in font nullfont! +Missing character: There is no h in font nullfont! +Missing character: There is no a in font nullfont! +Missing character: There is no s in font nullfont! +Missing character: There is no i in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no ' in font nullfont! +Missing character: There is no s in font nullfont! +Missing character: There is no o in font nullfont! +Missing character: There is no w in font nullfont! +Missing character: There is no n in font nullfont! +Missing character: There is no v in font nullfont! +Missing character: There is no a in font nullfont! +Missing character: There is no l in font nullfont! +Missing character: There is no u in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no . in font nullfont! +Missing character: There is no W in font nullfont! +Missing character: There is no i in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no h in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no h in font nullfont! +Missing character: There is no a in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no v in font nullfont! +Missing character: There is no a in font nullfont! +Missing character: There is no l in font nullfont! +Missing character: There is no u in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no , in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no h in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no a in font nullfont! +Missing character: There is no l in font nullfont! +Missing character: There is no g in font nullfont! +Missing character: There is no o in font nullfont! +Missing character: There is no r in font nullfont! +Missing character: There is no i in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no h in font nullfont! +Missing character: There is no m in font nullfont! +Missing character: There is no c in font nullfont! +Missing character: There is no a in font nullfont! +Missing character: There is no n in font nullfont! +Missing character: There is no c in font nullfont! +Missing character: There is no h in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no c in font nullfont! +Missing character: There is no k in font nullfont! +Missing character: There is no i in font nullfont! +Missing character: There is no f in font nullfont! +Missing character: There is no a in font nullfont! +Missing character: There is no v in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no r in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no x in font nullfont! +Missing character: There is no i in font nullfont! +Missing character: There is no s in font nullfont! +Missing character: There is no i in font nullfont! +Missing character: There is no n in font nullfont! +Missing character: There is no s in font nullfont! +Missing character: There is no i in font nullfont! +Missing character: There is no d in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no ( in font nullfont! +Missing character: There is no ) in font nullfont! +Missing character: There is no o in font nullfont! +Missing character: There is no r in font nullfont! +Missing character: There is no o in font nullfont! +Missing character: There is no u in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no s in font nullfont! +Missing character: There is no i in font nullfont! +Missing character: There is no d in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no ( in font nullfont! +Missing character: There is no ) in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no h in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no i in font nullfont! +Missing character: There is no s in font nullfont! +Missing character: There is no o in font nullfont! +Missing character: There is no s in font nullfont! +Missing character: There is no u in font nullfont! +Missing character: There is no r in font nullfont! +Missing character: There is no f in font nullfont! +Missing character: There is no a in font nullfont! +Missing character: There is no c in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no . in font nullfont! +Missing character: There is no T in font nullfont! +Missing character: There is no h in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no i in font nullfont! +Missing character: There is no n in font nullfont! +Missing character: There is no s in font nullfont! +Missing character: There is no i in font nullfont! +Missing character: There is no d in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no / in font nullfont! +Missing character: There is no o in font nullfont! +Missing character: There is no u in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no s in font nullfont! +Missing character: There is no i in font nullfont! +Missing character: There is no d in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no s in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no a in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no i in font nullfont! +Missing character: There is no s in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no h in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no n in font nullfont! +Missing character: There is no s in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no o in font nullfont! +Missing character: There is no r in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no d in font nullfont! +Missing character: There is no i in font nullfont! +Missing character: There is no n in font nullfont! +Missing character: There is no a in font nullfont! +Missing character: There is no b in font nullfont! +Missing character: There is no i in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no . in font nullfont! + +Overfull \hbox (20.0pt too wide) in paragraph at lines 27--29 +[] + [] + + +Overfull \hbox (19.6163pt too wide) in paragraph at lines 27--29 +\OML/cmm/m/it/10 v[] \OMS/cmsy/m/n/10  + [] + + +Overfull \hbox (42.50008pt too wide) in paragraph at lines 27--29 +\OML/cmm/m/it/10 threshold$ + [] + + +Overfull \hbox (19.6163pt too wide) in paragraph at lines 27--29 +\OML/cmm/m/it/10 v[] < + [] + + +Overfull \hbox (42.50008pt too wide) in paragraph at lines 27--29 +\OML/cmm/m/it/10 threshold$ + [] + +Missing character: There is no E in font nullfont! +Missing character: There is no a in font nullfont! +Missing character: There is no c in font nullfont! +Missing character: There is no h in font nullfont! +Missing character: There is no c in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no l in font nullfont! +Missing character: There is no l in font nullfont! +Missing character: There is no h in font nullfont! +Missing character: There is no a in font nullfont! +Missing character: There is no s in font nullfont! +Missing character: There is no a in font nullfont! +Missing character: There is no s in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no o in font nullfont! +Missing character: There is no f in font nullfont! +Missing character: There is no f in font nullfont! +Missing character: There is no o in font nullfont! +Missing character: There is no u in font nullfont! +Missing character: There is no r in font nullfont! +Missing character: There is no v in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no r in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no i in font nullfont! +Missing character: There is no c in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no s in font nullfont! +Missing character: There is no , in font nullfont! +Missing character: There is no , in font nullfont! +Missing character: There is no , in font nullfont! +Missing character: There is no . in font nullfont! +Missing character: There is no I in font nullfont! +Missing character: There is no f in font nullfont! +Missing character: There is no a in font nullfont! +Missing character: There is no v in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no r in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no x in font nullfont! +Missing character: There is no , in font nullfont! +Missing character: There is no s in font nullfont! +Missing character: There is no a in font nullfont! +Missing character: There is no y in font nullfont! +Missing character: There is no i in font nullfont! +Missing character: There is no s in font nullfont! +Missing character: There is no i in font nullfont! +Missing character: There is no n in font nullfont! +Missing character: There is no s in font nullfont! +Missing character: There is no i in font nullfont! +Missing character: There is no d in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no h in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no i in font nullfont! +Missing character: There is no s in font nullfont! +Missing character: There is no o in font nullfont! +Missing character: There is no s in font nullfont! +Missing character: There is no u in font nullfont! +Missing character: There is no r in font nullfont! +Missing character: There is no f in font nullfont! +Missing character: There is no a in font nullfont! +Missing character: There is no c in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no , in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no h in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no f in font nullfont! +Missing character: There is no i in font nullfont! +Missing character: There is no r in font nullfont! +Missing character: There is no s in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no b in font nullfont! +Missing character: There is no i in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no i in font nullfont! +Missing character: There is no s in font nullfont! +Missing character: There is no s in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no o in font nullfont! +Missing character: There is no 1 in font nullfont! +Missing character: There is no , in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no l in font nullfont! +Missing character: There is no s in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no i in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no ' in font nullfont! +Missing character: There is no s in font nullfont! +Missing character: There is no l in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no f in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no o in font nullfont! +Missing character: There is no 0 in font nullfont! +Missing character: There is no . in font nullfont! +Missing character: There is no T in font nullfont! +Missing character: There is no h in font nullfont! +Missing character: There is no i in font nullfont! +Missing character: There is no s in font nullfont! +Missing character: There is no i in font nullfont! +Missing character: There is no s in font nullfont! +Missing character: There is no d in font nullfont! +Missing character: There is no o in font nullfont! +Missing character: There is no n in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no f in font nullfont! +Missing character: There is no o in font nullfont! +Missing character: There is no r in font nullfont! +Missing character: There is no a in font nullfont! +Missing character: There is no l in font nullfont! +Missing character: There is no l in font nullfont! +Missing character: There is no f in font nullfont! +Missing character: There is no o in font nullfont! +Missing character: There is no u in font nullfont! +Missing character: There is no r in font nullfont! +Missing character: There is no v in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no r in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no i in font nullfont! +Missing character: There is no c in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no s in font nullfont! +Missing character: There is no w in font nullfont! +Missing character: There is no h in font nullfont! +Missing character: There is no i in font nullfont! +Missing character: There is no c in font nullfont! +Missing character: There is no h in font nullfont! +Missing character: There is no r in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no s in font nullfont! +Missing character: There is no u in font nullfont! +Missing character: There is no l in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no s in font nullfont! +Missing character: There is no i in font nullfont! +Missing character: There is no n in font nullfont! +Missing character: There is no a in font nullfont! +Missing character: There is no 4 in font nullfont! +Missing character: There is no - in font nullfont! +Missing character: There is no b in font nullfont! +Missing character: There is no i in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no s in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no a in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no u in font nullfont! +Missing character: There is no s in font nullfont! +Missing character: There is no . in font nullfont! +Missing character: There is no T in font nullfont! +Missing character: There is no h in font nullfont! +Missing character: There is no i in font nullfont! +Missing character: There is no s in font nullfont! +Missing character: There is no m in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no a in font nullfont! +Missing character: There is no n in font nullfont! +Missing character: There is no s in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no h in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no r in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no a in font nullfont! +Missing character: There is no r in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no i in font nullfont! +Missing character: There is no n in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no o in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no a in font nullfont! +Missing character: There is no l in font nullfont! +Missing character: There is no 1 in font nullfont! +Missing character: There is no 6 in font nullfont! +Missing character: There is no d in font nullfont! +Missing character: There is no i in font nullfont! +Missing character: There is no f in font nullfont! +Missing character: There is no f in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no r in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no n in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no c in font nullfont! +Missing character: There is no a in font nullfont! +Missing character: There is no s in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no s in font nullfont! +Missing character: There is no i in font nullfont! +Missing character: There is no n in font nullfont! +Missing character: There is no w in font nullfont! +Missing character: There is no h in font nullfont! +Missing character: There is no i in font nullfont! +Missing character: There is no c in font nullfont! +Missing character: There is no h in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no h in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no i in font nullfont! +Missing character: There is no s in font nullfont! +Missing character: There is no o in font nullfont! +Missing character: There is no l in font nullfont! +Missing character: There is no i in font nullfont! +Missing character: There is no n in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no c in font nullfont! +Missing character: There is no a in font nullfont! +Missing character: There is no n in font nullfont! +Missing character: There is no r in font nullfont! +Missing character: There is no u in font nullfont! +Missing character: There is no n in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no h in font nullfont! +Missing character: There is no r in font nullfont! +Missing character: There is no o in font nullfont! +Missing character: There is no u in font nullfont! +Missing character: There is no g in font nullfont! +Missing character: There is no h in font nullfont! +Missing character: There is no a in font nullfont! +Missing character: There is no c in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no l in font nullfont! +Missing character: There is no l in font nullfont! +Missing character: There is no . in font nullfont! + +Overfull \hbox (20.0pt too wide) in paragraph at lines 30--33 +[] + [] + + +Overfull \hbox (14.33337pt too wide) in paragraph at lines 30--33 +\OMS/cmsy/m/n/10 f$\OML/cmm/m/it/10 v[]$ + [] + + +Overfull \hbox (9.33336pt too wide) in paragraph at lines 30--33 +\OML/cmm/m/it/10 v[]$ + [] + + +Overfull \hbox (9.33336pt too wide) in paragraph at lines 30--33 +\OML/cmm/m/it/10 v[]$ + [] + + +Overfull \hbox (14.33337pt too wide) in paragraph at lines 30--33 +\OML/cmm/m/it/10 v[]$\OMS/cmsy/m/n/10 g + [] + + +Overfull \hbox (9.33336pt too wide) in paragraph at lines 30--33 +\OML/cmm/m/it/10 v[]$ + [] + + +Overfull \hbox (9.33336pt too wide) in paragraph at lines 30--33 +\OML/cmm/m/it/10 v[]$ + [] + + +Overfull \hbox (20.0pt too wide) in paragraph at lines 34--34 +[] + [] + +chapter6.tex:35: Undefined control sequence +The control sequence at the end of the top line +of your error message was never \def'ed. If you have +misspelled it (e.g., `\hobx'), type `I' and the correct +spelling (e.g., `I\hbox'). Otherwise just continue, +and I'll forget about whatever was undefined. + +Missing character: There is no [ in font nullfont! +Missing character: There is no w in font nullfont! +Missing character: There is no i in font nullfont! +Missing character: There is no d in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no h in font nullfont! +Missing character: There is no = in font nullfont! +chapter6.tex:35: Missing number, treated as zero +A number should have been here; I inserted `0'. +(If you can't figure out why I needed to see a number, +look up `weird error' in the index to The TeXbook.) + +chapter6.tex:35: Illegal unit of measure (pt inserted) +Dimensions can be in units of em, ex, in, pt, pc, +cm, mm, dd, cc, bp, or sp; but yours is a new one! +I'll assume that you meant to say pt, for printer's points. +To recover gracefully from this error, it's best to +delete the erroneous units; e.g., type `2' to delete +two letters. (See Chapter 27 of The TeXbook.) + +Missing character: There is no ] in font nullfont! +Missing character: There is no m in font nullfont! +Missing character: There is no a in font nullfont! +Missing character: There is no r in font nullfont! +Missing character: There is no c in font nullfont! +Missing character: There is no h in font nullfont! +Missing character: There is no i in font nullfont! +Missing character: There is no n in font nullfont! +Missing character: There is no g in font nullfont! +Missing character: There is no . in font nullfont! +Missing character: There is no p in font nullfont! +Missing character: There is no n in font nullfont! +Missing character: There is no g in font nullfont! +Missing character: There is no F in font nullfont! +Missing character: There is no i in font nullfont! +Missing character: There is no g in font nullfont! +Missing character: There is no u in font nullfont! +Missing character: There is no r in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no 5 in font nullfont! +Missing character: There is no : in font nullfont! +Missing character: There is no T in font nullfont! +Missing character: There is no h in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no 1 in font nullfont! +Missing character: There is no 6 in font nullfont! +Missing character: There is no m in font nullfont! +Missing character: There is no a in font nullfont! +Missing character: There is no r in font nullfont! +Missing character: There is no c in font nullfont! +Missing character: There is no h in font nullfont! +Missing character: There is no i in font nullfont! +Missing character: There is no n in font nullfont! +Missing character: There is no g in font nullfont! +Missing character: There is no s in font nullfont! +Missing character: There is no q in font nullfont! +Missing character: There is no u in font nullfont! +Missing character: There is no a in font nullfont! +Missing character: There is no r in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no c in font nullfont! +Missing character: There is no a in font nullfont! +Missing character: There is no s in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no s in font nullfont! +Missing character: There is no T in font nullfont! +Missing character: There is no h in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no a in font nullfont! +Missing character: There is no b in font nullfont! +Missing character: There is no o in font nullfont! +Missing character: There is no v in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no i in font nullfont! +Missing character: There is no m in font nullfont! +Missing character: There is no a in font nullfont! +Missing character: There is no g in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no ( in font nullfont! +Missing character: There is no f in font nullfont! +Missing character: There is no i in font nullfont! +Missing character: There is no g in font nullfont! +Missing character: There is no u in font nullfont! +Missing character: There is no r in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no 5 in font nullfont! +Missing character: There is no ) in font nullfont! +Missing character: There is no s in font nullfont! +Missing character: There is no h in font nullfont! +Missing character: There is no o in font nullfont! +Missing character: There is no w in font nullfont! +Missing character: There is no s in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no h in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no 1 in font nullfont! +Missing character: There is no 6 in font nullfont! +Missing character: There is no d in font nullfont! +Missing character: There is no i in font nullfont! +Missing character: There is no f in font nullfont! +Missing character: There is no f in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no r in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no n in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no c in font nullfont! +Missing character: There is no a in font nullfont! +Missing character: There is no s in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no s in font nullfont! +Missing character: There is no i in font nullfont! +Missing character: There is no n in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no h in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no m in font nullfont! +Missing character: There is no a in font nullfont! +Missing character: There is no r in font nullfont! +Missing character: There is no c in font nullfont! +Missing character: There is no h in font nullfont! +Missing character: There is no i in font nullfont! +Missing character: There is no n in font nullfont! +Missing character: There is no g in font nullfont! +Missing character: There is no s in font nullfont! +Missing character: There is no q in font nullfont! +Missing character: There is no u in font nullfont! +Missing character: There is no a in font nullfont! +Missing character: There is no r in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no s in font nullfont! +Missing character: There is no a in font nullfont! +Missing character: There is no l in font nullfont! +Missing character: There is no g in font nullfont! +Missing character: There is no o in font nullfont! +Missing character: There is no r in font nullfont! +Missing character: There is no i in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no h in font nullfont! +Missing character: There is no m in font nullfont! +Missing character: There is no . in font nullfont! +Missing character: There is no A in font nullfont! +Missing character: There is no w in font nullfont! +Missing character: There is no h in font nullfont! +Missing character: There is no i in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no v in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no r in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no x in font nullfont! +Missing character: There is no i in font nullfont! +Missing character: There is no n in font nullfont! +Missing character: There is no d in font nullfont! +Missing character: There is no i in font nullfont! +Missing character: There is no c in font nullfont! +Missing character: There is no a in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no s in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no h in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no v in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no r in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no x in font nullfont! +Missing character: There is no i in font nullfont! +Missing character: There is no s in font nullfont! +Missing character: There is no o in font nullfont! +Missing character: There is no u in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no s in font nullfont! +Missing character: There is no i in font nullfont! +Missing character: There is no d in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no h in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no i in font nullfont! +Missing character: There is no s in font nullfont! +Missing character: There is no o in font nullfont! +Missing character: There is no s in font nullfont! +Missing character: There is no u in font nullfont! +Missing character: There is no r in font nullfont! +Missing character: There is no f in font nullfont! +Missing character: There is no a in font nullfont! +Missing character: There is no c in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no a in font nullfont! +Missing character: There is no n in font nullfont! +Missing character: There is no d in font nullfont! +Missing character: There is no b in font nullfont! +Missing character: There is no l in font nullfont! +Missing character: There is no a in font nullfont! +Missing character: There is no c in font nullfont! +Missing character: There is no k in font nullfont! +Missing character: There is no i in font nullfont! +Missing character: There is no n in font nullfont! +Missing character: There is no d in font nullfont! +Missing character: There is no i in font nullfont! +Missing character: There is no c in font nullfont! +Missing character: There is no a in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no s in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no h in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no v in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no r in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no x in font nullfont! +Missing character: There is no i in font nullfont! +Missing character: There is no s in font nullfont! +Missing character: There is no i in font nullfont! +Missing character: There is no n in font nullfont! +Missing character: There is no s in font nullfont! +Missing character: There is no i in font nullfont! +Missing character: There is no d in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no h in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no i in font nullfont! +Missing character: There is no s in font nullfont! +Missing character: There is no o in font nullfont! +Missing character: There is no s in font nullfont! +Missing character: There is no u in font nullfont! +Missing character: There is no r in font nullfont! +Missing character: There is no f in font nullfont! +Missing character: There is no a in font nullfont! +Missing character: There is no c in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no . in font nullfont! +Missing character: There is no T in font nullfont! +Missing character: There is no h in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no c in font nullfont! +Missing character: There is no a in font nullfont! +Missing character: There is no s in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no s in font nullfont! +Missing character: There is no 5 in font nullfont! +Missing character: There is no a in font nullfont! +Missing character: There is no n in font nullfont! +Missing character: There is no d in font nullfont! +Missing character: There is no 1 in font nullfont! +Missing character: There is no 0 in font nullfont! +Missing character: There is no a in font nullfont! +Missing character: There is no r in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no b in font nullfont! +Missing character: There is no o in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no h in font nullfont! +Missing character: There is no a in font nullfont! +Missing character: There is no m in font nullfont! +Missing character: There is no b in font nullfont! +Missing character: There is no i in font nullfont! +Missing character: There is no g in font nullfont! +Missing character: There is no u in font nullfont! +Missing character: There is no o in font nullfont! +Missing character: There is no u in font nullfont! +Missing character: There is no s in font nullfont! +Missing character: There is no c in font nullfont! +Missing character: There is no a in font nullfont! +Missing character: There is no s in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no s in font nullfont! +Missing character: There is no a in font nullfont! +Missing character: There is no s in font nullfont! +Missing character: There is no b in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no c in font nullfont! +Missing character: There is no o in font nullfont! +Missing character: There is no m in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no s in font nullfont! +Missing character: There is no c in font nullfont! +Missing character: There is no l in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no a in font nullfont! +Missing character: There is no r in font nullfont! +Missing character: There is no f in font nullfont! +Missing character: There is no r in font nullfont! +Missing character: There is no o in font nullfont! +Missing character: There is no m in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no h in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no n in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no x in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no i in font nullfont! +Missing character: There is no m in font nullfont! +Missing character: There is no a in font nullfont! +Missing character: There is no g in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no ( in font nullfont! +Missing character: There is no f in font nullfont! +Missing character: There is no i in font nullfont! +Missing character: There is no g in font nullfont! +Missing character: There is no u in font nullfont! +Missing character: There is no r in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no 6 in font nullfont! +Missing character: There is no ) in font nullfont! +Missing character: There is no . in font nullfont! + +Overfull \hbox (20.0pt too wide) in paragraph at lines 39--41 +[] + [] + + +Overfull \hbox (20.0pt too wide) in paragraph at lines 42--42 +[] + [] + +chapter6.tex:43: Undefined control sequence +The control sequence at the end of the top line +of your error message was never \def'ed. If you have +misspelled it (e.g., `\hobx'), type `I' and the correct +spelling (e.g., `I\hbox'). Otherwise just continue, +and I'll forget about whatever was undefined. + +Missing character: There is no [ in font nullfont! +Missing character: There is no w in font nullfont! +Missing character: There is no i in font nullfont! +Missing character: There is no d in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no h in font nullfont! +Missing character: There is no = in font nullfont! +Missing character: There is no 1 in font nullfont! +Missing character: There is no 0 in font nullfont! +Missing character: There is no 0 in font nullfont! +Missing character: There is no m in font nullfont! +Missing character: There is no m in font nullfont! +Missing character: There is no ] in font nullfont! +Missing character: There is no a in font nullfont! +Missing character: There is no m in font nullfont! +Missing character: There is no b in font nullfont! +Missing character: There is no i in font nullfont! +Missing character: There is no g in font nullfont! +Missing character: There is no u in font nullfont! +Missing character: There is no o in font nullfont! +Missing character: There is no u in font nullfont! +Missing character: There is no s in font nullfont! +Missing character: There is no . in font nullfont! +Missing character: There is no p in font nullfont! +Missing character: There is no n in font nullfont! +Missing character: There is no g in font nullfont! +Missing character: There is no F in font nullfont! +Missing character: There is no i in font nullfont! +Missing character: There is no g in font nullfont! +Missing character: There is no u in font nullfont! +Missing character: There is no r in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no 6 in font nullfont! +Missing character: There is no : in font nullfont! +Missing character: There is no T in font nullfont! +Missing character: There is no w in font nullfont! +Missing character: There is no o in font nullfont! +Missing character: There is no a in font nullfont! +Missing character: There is no m in font nullfont! +Missing character: There is no b in font nullfont! +Missing character: There is no i in font nullfont! +Missing character: There is no g in font nullfont! +Missing character: There is no u in font nullfont! +Missing character: There is no o in font nullfont! +Missing character: There is no u in font nullfont! +Missing character: There is no s in font nullfont! +Missing character: There is no c in font nullfont! +Missing character: There is no a in font nullfont! +Missing character: There is no s in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no s in font nullfont! +Missing character: There is no i in font nullfont! +Missing character: There is no n in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no h in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no m in font nullfont! +Missing character: There is no a in font nullfont! +Missing character: There is no r in font nullfont! +Missing character: There is no c in font nullfont! +Missing character: There is no h in font nullfont! +Missing character: There is no i in font nullfont! +Missing character: There is no n in font nullfont! +Missing character: There is no g in font nullfont! +Missing character: There is no s in font nullfont! +Missing character: There is no q in font nullfont! +Missing character: There is no u in font nullfont! +Missing character: There is no a in font nullfont! +Missing character: There is no r in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no s in font nullfont! +Missing character: There is no a in font nullfont! +Missing character: There is no l in font nullfont! +Missing character: There is no g in font nullfont! +Missing character: There is no o in font nullfont! +Missing character: There is no r in font nullfont! +Missing character: There is no i in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no h in font nullfont! +Missing character: There is no m in font nullfont! +chapter6.tex:47: Undefined control sequence +The control sequence at the end of the top line +of your error message was never \def'ed. If you have +misspelled it (e.g., `\hobx'), type `I' and the correct +spelling (e.g., `I\hbox'). Otherwise just continue, +and I'll forget about whatever was undefined. + +Missing character: There is no D in font nullfont! +Missing character: There is no i in font nullfont! +Missing character: There is no f in font nullfont! +Missing character: There is no f in font nullfont! +Missing character: There is no i in font nullfont! +Missing character: There is no c in font nullfont! +Missing character: There is no u in font nullfont! +Missing character: There is no l in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no i in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no s in font nullfont! + +Overfull \hbox (20.0pt too wide) in paragraph at lines 47--48 +[] + [] + +Missing character: There is no . in font nullfont! +Missing character: There is no . in font nullfont! +Missing character: There is no . in font nullfont! +) +! Emergency stop +*** (job aborted, no legal \end found) + + +Here is how much of TeX's memory you used: + 31 strings out of 95490 + 404 string characters out of 1188952 + 45893 words of memory out of 1048577 + 3218 multiletter control sequences out of 60000 + 3640 words of font info for 14 fonts, out of 500000 for 1000 + 54 hyphenation exceptions out of 4999 + 18i,1n,15p,193b,141s stack positions out of 1500i,500n,5000p,200000b,32768s +PDF statistics: + 0 PDF objects out of 300000 + 0 named destinations out of 300000 + 1 words of extra memory for PDF output out of 65536 +No pages of output. diff --git a/Smoke/report/chapter6.tex b/Smoke/report/chapter6.tex new file mode 100644 index 0000000..dd59860 --- /dev/null +++ b/Smoke/report/chapter6.tex @@ -0,0 +1,55 @@ +\chapter{Isosurfaces} + +This assignment was a really interesting one. It introduces a method to implement so called isolines. Such an isoline creates a surface that encapsulates a region +with a value higher than a given threshold. \\ + +\section{Description} + +An isoline is a line that sort to speak follows a given value. If the values of a field ranges from 0 to 1, a good threshold would be 0.6 for instance. The isoline +visualizes the points that equal the value of 0.6. \\ + +Our program is able to define the number of contour-lines and the minimum and maximum values in between the isolines are rendered. \\ + +\section{Implementation} + +The algorithm that implements the isolines follows a structured pattern. In pseudo-code it looks like this: \\ + +\begin{tabbing} + for \= (each cell $ c_i $ of the dataset) \\ + \{ \\ + \> for \= (each vertex $ v_j $ of $ c_i $) \\ + \> \> store inside/outside state of $ v_j $ in bit $ b $ of $ status $; \\ + \> select the optimized code from the case table using $ status $; \\ + \> for \= (all cell edges $ e_j $ of the selected case) \\ + \> \> intersect $ e_j $ with the isovalue; \\ + \> construct the line segment(s); \\ + \} \\ +\end{tabbing} + +So the algorithm passes through every cell and then checks the four cell vertices \{$ v_0 $, $ v_1 $, $ v_2 $, $ v_3 $\} of that cell. Each vertex has it's own +value. With that value, the algorithm can check if a vertex is inside ($ v_j \geq threshold $) or outside ($ v_j < threshold $) the isosurface. The inside/outside +state is then stored in a bit. \\ + +If a vertex, say $ v_0 $ is inside the isosurface, $ v_0 $ is set to 1, else it's left to 0. This is done for all four vertices which results in a 4-bit status. +This means there are in total 16 different cases in which the isoline can run through a cell. \\ + +\begin {center} + \includegraphics[width=\textwidth]{marching.png} \\ + Figure 5: The 16 marching square cases \\ +\end {center} + +The above image (figure 5) shows the 16 different cases in the marching squares algorithm. A white vertex indicates the vertex is outside the isosurface and black +indicates the vertex is inside the isosurface. Every inside or outside case has it's counterpart. So we reduces the number of cases down to 8. In case 0 and 15 for +instance, no lines have to be rendered, yet they are both very different cases. \\ + +The cases 5 and 10 are both ambiguous cases as becomes clear from the next image (figure 6). \\ + +\begin {center} + \includegraphics[width=100mm]{ambiguous.png} \\ + Figure 6: Two ambiguous cases in the marching squares algorithm \\ +\end {center} + +\section{Difficulties} + +The contouring algorithm is very simple to implement. Just follow the instructions of the method. To only trouble we had with this implementation was the +interpolation of the intersection. \\ diff --git a/Smoke/report/chapter7.aux b/Smoke/report/chapter7.aux new file mode 100644 index 0000000..012bb26 --- /dev/null +++ b/Smoke/report/chapter7.aux @@ -0,0 +1,31 @@ +\relax +\@writefile{toc}{\contentsline {chapter}{\numberline {7}Height plots}{18}} +\@writefile{lof}{\addvspace {10\p@ }} +\@writefile{lot}{\addvspace {10\p@ }} +\@writefile{toc}{\contentsline {section}{\numberline {7.1}Description}{18}} +\@writefile{toc}{\contentsline {section}{\numberline {7.2}Implementation}{18}} +\@writefile{toc}{\contentsline {subsection}{\numberline {7.2.1}Normal vector}{19}} +\@writefile{toc}{\contentsline {section}{\numberline {7.3}Difficulties}{19}} +\@writefile{toc}{\contentsline {subsection}{\numberline {7.3.1}Rotation}{19}} +\@writefile{toc}{\contentsline {subsection}{\numberline {7.3.2}Height strips}{20}} +\@writefile{toc}{\contentsline {subsection}{\numberline {7.3.3}Calculating the normal}{20}} +\@setckpt{chapter7}{ +\setcounter{page}{21} +\setcounter{equation}{0} +\setcounter{enumi}{0} +\setcounter{enumii}{0} +\setcounter{enumiii}{0} +\setcounter{enumiv}{0} +\setcounter{footnote}{0} +\setcounter{mpfootnote}{0} +\setcounter{part}{0} +\setcounter{chapter}{7} +\setcounter{section}{3} +\setcounter{subsection}{3} +\setcounter{subsubsection}{0} +\setcounter{paragraph}{0} +\setcounter{subparagraph}{0} +\setcounter{figure}{0} +\setcounter{table}{0} +\setcounter{parentequation}{0} +} diff --git a/Smoke/report/chapter7.tex b/Smoke/report/chapter7.tex new file mode 100644 index 0000000..a132675 --- /dev/null +++ b/Smoke/report/chapter7.tex @@ -0,0 +1,59 @@ +\chapter{Height plots} + +This chapter treats a very neat visualization technique, namely the height plots. What are height plots, what are they used for and how did we implement them? \\ + +\section{Description} + +All the previous discussed methods are implemented on a 2D grid. But sometimes it's also useful to see the value not by it's color but by the height of the surface. +This is exactly what a height plot does. It maps the values onto the Z-axis. This means that, initially, you won't see much differences between the version with and +without the high plots implemented. This is because of the height that is being drawn onto the Z-axis that runs towards the screen. \\ + +To make the height more visible, we implemented a method to rotate the field by dragging the mouse over the screen while holding the right mouse button. Then you +will see the height of the field. \\ + +\section{Implementation} + +First of all we implemented the method to rotate the field by mouse. Without this useful functionality, the height would'nt be that visible. After we implemented +this feature we added the height to the program. \\ + +We created the height by adding an extra Z-coordinate to each value. We created an extra array that would keep track of the height of each vertex. When drawing the +vertex we use the stored height from the array and render the vertex using that value for the Z-coordinate. \\ + +To see more depth in the picture we also included some ambient and diffuse light to the program. In order to let the light have effect on the surface we calculate +the normal vector for each vertex. \\ + +\subsection{Normal vector} + +For the calculation of the normal vector for a given vertex, say $ v_0 $, we first take the two neighboring vertices in that cell, $ v_{1} $ and $ v_{2} $. We take +the difference of $ v_0 $ with $ v_1 $ and of $ v_1 $ with $ v_2 $. Then we take the cross product of these two differences and normalize the result. This gives us +the normal vector at $ v_0 $. \\ + +The OpenGL renderer uses this vector to calculate the angle between the normal and the light that is shining on the vertex. This angle is then used to shade a +vertex and with that an entire surface. \\ + +\section{Difficulties} + +We had some small issues during the implementation of this entire assignment but we managed to implement them correctly. \\ + +\subsection{Rotation} + +The first problem we encountered was due to the rotation of the field. Rotating around one axis was not to difficult. When we tried to rotate the field around two +or three axis', the simulation wasn't rotating around it's center any more.\\ + +It turned out we were translating and rotating in the opposite order. When we changed the order of rotating and translating the simulation rotated around it's +center. \\ + +\subsection{Height strips} + +When we first tried to implement the height plots we simply added a third dimension when rendering the triangle strips for the smoke visualization. This had as an +effect that the different rows of the simulation where'nt connected. In stead of a height plots we implemented height strips. \\ + +We countered this problem by first calculation the height for each vertex and when rendering a vertex look up the correct value for the height. \\ + +\subsection{Calculating the normal} + +When enabling the light in our program and adding the normal to each vertex we had some crazy outcome. This was because of the fact we did'nt consistently took the +left and lower neighbor of a vertex to calculate the normal vector. As a result each vertex was randomly pointing up or downwards. This looked like some sort of +checkers board. \\ + +We rendered the normal vectors and immediately saw the cause of the problem. It was simply solved by always taking the right neighbor vertices. \\ diff --git a/Smoke/report/chapter8.aux b/Smoke/report/chapter8.aux new file mode 100644 index 0000000..6217770 --- /dev/null +++ b/Smoke/report/chapter8.aux @@ -0,0 +1,27 @@ +\relax +\@writefile{toc}{\contentsline {chapter}{\numberline {8}Streamtubes}{21}} +\@writefile{lof}{\addvspace {10\p@ }} +\@writefile{lot}{\addvspace {10\p@ }} +\@writefile{toc}{\contentsline {section}{\numberline {8.1}Description}{21}} +\@writefile{toc}{\contentsline {section}{\numberline {8.2}Implementation}{21}} +\@writefile{toc}{\contentsline {section}{\numberline {8.3}Difficulties}{22}} +\@setckpt{chapter8}{ +\setcounter{page}{23} +\setcounter{equation}{0} +\setcounter{enumi}{0} +\setcounter{enumii}{0} +\setcounter{enumiii}{0} +\setcounter{enumiv}{0} +\setcounter{footnote}{0} +\setcounter{mpfootnote}{0} +\setcounter{part}{0} +\setcounter{chapter}{8} +\setcounter{section}{3} +\setcounter{subsection}{0} +\setcounter{subsubsection}{0} +\setcounter{paragraph}{0} +\setcounter{subparagraph}{0} +\setcounter{figure}{0} +\setcounter{table}{0} +\setcounter{parentequation}{0} +} diff --git a/Smoke/report/chapter8.tex b/Smoke/report/chapter8.tex new file mode 100644 index 0000000..a89337f --- /dev/null +++ b/Smoke/report/chapter8.tex @@ -0,0 +1,27 @@ +\chapter{Streamtubes} + +The last of the non-optional assignments. This is, just as the height plots, a 3-dimensional assignment although streamlines and streamtubes can be used in 2D +grids. \\ + +\section{Description} + +Image you let a drop of ink go with the fluid flow for a while. What you will get is a line that shows the path a ink particle has taken. Such a path is called a +streamline. A streamtube is a 3D variant of a streamline. A streamtube consists of a number of consecutive tubes that together form a thick 3-dimensional flexible +tube. \\ + +Each streamtube has a begin and end. The begin point of a streamtube is called a seedpoint. From a seed point the tube will begin flowing with the fluid. It end +after a number of frames, seconds or parts. This can be variable. \\ + +The streamtubes we had to implement were'nt actually flowing trough the fluid but through a frame history. Each frame is stored in a history array and the +streamtube take a path trough history. The 2D grid became a 3D 50x50x50 grid with this new feature. \\ + +\section{Implementation} + +First we implemented the placement of the streamtubes. We chose to let the user be able to point the exact position of each seedpoint by mouse. A seedpoint is +rendered as a small sphere. \\ + +We also created a history array that stores up to 50 frames. \\ + +\section{Difficulties} + +We did'nt have enough time to actually trace a streamtube. \\ diff --git a/Smoke/report/chapter9.aux b/Smoke/report/chapter9.aux new file mode 100644 index 0000000..311b04d --- /dev/null +++ b/Smoke/report/chapter9.aux @@ -0,0 +1,26 @@ +\relax +\@writefile{toc}{\contentsline {chapter}{\numberline {9}Conclusion}{23}} +\@writefile{lof}{\addvspace {10\p@ }} +\@writefile{lot}{\addvspace {10\p@ }} +\@writefile{toc}{\contentsline {section}{\numberline {9.1}Visualization}{23}} +\@writefile{toc}{\contentsline {section}{\numberline {9.2}The course}{24}} +\@setckpt{chapter9}{ +\setcounter{page}{25} +\setcounter{equation}{0} +\setcounter{enumi}{0} +\setcounter{enumii}{0} +\setcounter{enumiii}{0} +\setcounter{enumiv}{0} +\setcounter{footnote}{0} +\setcounter{mpfootnote}{0} +\setcounter{part}{0} +\setcounter{chapter}{9} +\setcounter{section}{2} +\setcounter{subsection}{0} +\setcounter{subsubsection}{0} +\setcounter{paragraph}{0} +\setcounter{subparagraph}{0} +\setcounter{figure}{0} +\setcounter{table}{0} +\setcounter{parentequation}{0} +} diff --git a/Smoke/report/chapter9.tex b/Smoke/report/chapter9.tex new file mode 100644 index 0000000..49a1c86 --- /dev/null +++ b/Smoke/report/chapter9.tex @@ -0,0 +1,29 @@ +\chapter{Conclusion} + +We saw a lot of different visualization methods, algorithm, techniques, tips and tricks during the entire course. We participated with great enthusiasm and look +back to a successful semester. \\ + +We also have some conclusions and recommendations about visualization and this course. \\ + +\section{Visualization} + +When we first started this course we did'nt know what visualization was truly about. It's not about drawing nice pictures, but the entire process from getting the +measured data up until the rendering process; it's the visualization pipeline. \\ + +So, visualization itself is a field in which many specializations of other fields are used. Think of physics, mathematics, computer science, computer graphics and +probably many more. \\ + +A lot of research is still being done. The translation from 3D to 2D brings difficulties. Some information is hard to visualize in 2 and/or 3 dimensions. The bigger +glyphs get, the more they overlap. If you use blending, some details are lost but some new information may be gained. These examples are only a two of many more +tradeoffs when visualizing large datasets. \\ + +\section{The course} + +The visualization course encourages to explore the given assignments in different directions. It is stated that visualization is much about designing creative +solutions to a given problem to gain different insights. And this turned out to be a positive approach for us to some of the assignments. \\ + +We say it turned out to be a positive approach to \underline{some} of the assignments. For some other problems we needed the insight of an expert. We found it very +useful to be able to mail some of the troubles we had during the implementation. \\ + +The two practical hours after the theoretical part were a bit to crowded for the teacher to be able to handle all questions from the students. This was a bit of a +downside. Because of this we were'nt always able to show our new results or post question during the practical hour. \\ diff --git a/Smoke/report/flow_vis.png b/Smoke/report/flow_vis.png new file mode 100644 index 0000000..b00c061 Binary files /dev/null and b/Smoke/report/flow_vis.png differ diff --git a/Smoke/report/glyphs.png b/Smoke/report/glyphs.png new file mode 100644 index 0000000..0c5f963 Binary files /dev/null and b/Smoke/report/glyphs.png differ diff --git a/Smoke/report/glyphs2.png b/Smoke/report/glyphs2.png new file mode 100644 index 0000000..07a6367 Binary files /dev/null and b/Smoke/report/glyphs2.png differ diff --git a/Smoke/report/marching.png b/Smoke/report/marching.png new file mode 100644 index 0000000..ed7e717 Binary files /dev/null and b/Smoke/report/marching.png differ diff --git a/Smoke/report/practical.png b/Smoke/report/practical.png new file mode 100644 index 0000000..d3aa39b Binary files /dev/null and b/Smoke/report/practical.png differ diff --git a/Smoke/report/toc.aux b/Smoke/report/toc.aux new file mode 100644 index 0000000..e0f271b --- /dev/null +++ b/Smoke/report/toc.aux @@ -0,0 +1,21 @@ +\relax +\@setckpt{toc}{ +\setcounter{page}{3} +\setcounter{equation}{0} +\setcounter{enumi}{0} +\setcounter{enumii}{0} +\setcounter{enumiii}{0} +\setcounter{enumiv}{0} +\setcounter{footnote}{0} +\setcounter{mpfootnote}{0} +\setcounter{part}{0} +\setcounter{chapter}{0} +\setcounter{section}{0} +\setcounter{subsection}{0} +\setcounter{subsubsection}{0} +\setcounter{paragraph}{0} +\setcounter{subparagraph}{0} +\setcounter{figure}{0} +\setcounter{table}{0} +\setcounter{parentequation}{0} +} diff --git a/Smoke/report/toc.tex b/Smoke/report/toc.tex new file mode 100644 index 0000000..1db8ceb --- /dev/null +++ b/Smoke/report/toc.tex @@ -0,0 +1,2 @@ +\setcounter{tocdepth}{1} +\tableofcontents -- cgit v0.12