Skip to content

Commit 2922a31

Browse files
committed
feat: add the 3rd chap and complete all required files
- delete unused files in layouts and move toc to the home page - add numbers and order numbers to all the chapter index file to show them in the home page - add all the auxillary required files like bib, abstract, acknowledgements, dedication - add all required content files like conclusion, appendix NOTE: This is the first 'final' version of the website. All commits going forward will be for improvements and new content if any
1 parent 4ef7423 commit 2922a31

File tree

19 files changed

+455
-49
lines changed

19 files changed

+455
-49
lines changed

src/_includes/layouts/chapter.html

Lines changed: 0 additions & 39 deletions
This file was deleted.

src/_includes/layouts/index.html

Lines changed: 0 additions & 7 deletions
This file was deleted.

src/_includes/layouts/landing.html

Lines changed: 44 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,44 @@
1+
<!DOCTYPE html>
2+
<html lang="en">
3+
<head>
4+
<meta charset="UTF-8">
5+
<title>"Motion Behaviour Simulations"</title>
6+
<link rel="stylesheet" href="{{ '/assets/cssStyle/style.css' | url }}">
7+
<link href="https://fonts.googleapis.com/css?family=Inter:400,700&display=swap" rel="stylesheet">
8+
</head>
9+
<body>
10+
<main>
11+
<section class="intro">
12+
<h1>{{ title }}</h1>
13+
{{ content | safe }}
14+
</section>
15+
16+
<section class="meta-links">
17+
<a href="{{ '/dedication/' | url }}">Dedication</a>
18+
<a href="{{ '/abstract/' | url }}">Abstract</a>
19+
<a href="{{ '/acknowledgements/' | url }}">Acknowledgements</a>
20+
</section>
21+
22+
<section class="chapters">
23+
<div class="chapter-grid">
24+
{% set sortedChapters = collections.main | sort(attribute="data.order") %}
25+
{% for chapter in sortedChapters %}
26+
<a href="{{ chapter.url | url }}" class="chapter-link">
27+
{% if chapter.data.number %}
28+
<strong>Chapter {{ chapter.data.number }}:</strong>
29+
{{ chapter.data.title }}
30+
{% else %}
31+
<strong>{{ chapter.data.title }}</strong>
32+
{% endif %}
33+
</a>
34+
{% endfor %}
35+
<div class = "chapter-grid-center">
36+
<a href="{{ '/appendix/' | url }}" class="chapter-link">
37+
<strong>Appendix</strong>
38+
</a>
39+
</div>
40+
</div>
41+
</section>
42+
</main>
43+
</body>
44+
</html>

src/_includes/layouts/meta.html

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
<!DOCTYPE html>
2+
<html lang="en">
3+
<head>
4+
<meta charset="UTF-8">
5+
<title>{{ title }}</title>
6+
<link rel="stylesheet" href="{{ '/assets/cssStyle/style.css' | url }}">
7+
<link href="https://fonts.googleapis.com/css?family=Inter:400,700&display=swap" rel="stylesheet">
8+
</head>
9+
<body>
10+
<main>
11+
<section class="meta-centered">
12+
<h1>{{ title }}</h1>
13+
{{ content | safe }}
14+
</section>
15+
</main>
16+
</body>
17+
</html>

src/abstract.md

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
---
2+
title: Abstract
3+
layout: 'layouts/meta.html'
4+
---
5+
6+
7+
This paper aims at exploring techniques and ideas used in simulating motion phenomena found in nature, by breaking down such phenomena into various components as motivated by \[Schiffman 24\] in his book *Nature of Code*. The focus is majorly on the components \- motion, randomness and autonomy. The paper also attempts to introduce coding paradigms and methods by using a simplified and easy-to-use programming language \- *p5.js* as we move along in our explorations.

src/acknowledgements.md

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
---
2+
title: Acknowledgements
3+
layout: 'layouts/meta.html'
4+
---
5+
6+
First and formost I would like to thank the Lord for giving me all the wonderful people who were there for me at some point or the other throughout this entire journey.
7+
8+
To name a few who I can remember right now. Appa and Amma, I would not be where I am without you both. Thank you for your constant support regardless in what state I was. It was your encouragement that got me through this.
9+
10+
Varsha, Anu and Viha, college life would not mean what it means without you guys. I am also grateful to all my close friends who were there to give me that one little push when I needed it the most. You have no idea how much that helped me. I love every single one of you.
11+
12+
I would also take this oppurtunity to thank Michelle and Ainrudh, who both without second thought, extended their help in converting my thesis from a PDF to a website, even when the request was pretty last minute.
13+
14+
Last but not the least, I would like to thank all the math faculty, and most definitely my mentor Dr. Shailaja Sharma for providing me with the oppurtinity to pursue such a non-traditional topic, that I would have never thought possible in my Math degree. A heartfelt thanks to all of you for giving me the space that I needed; providing me with guidance; and never failing to check up on me.
15+
16+
Actually one more thanks I would like to give: it is to you the reader. Thank you for taking the time to read this project of mine (no matter how you came upon it)
17+

src/appendix.md

Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
---
2+
tags: [appendix, simulation, p5]
3+
title: 'Appendix: How to run p5 sketches'
4+
layout: 'base'
5+
---
6+
# Appendix: How to run p5 sketches
7+
8+
All methods mentioned, assume the reader knows how to copy and read code from a GitHub repository. Step 1 for all methods is keeping the desired sketch open in GitHub.
9+
10+
### 1. Using the interactive p5 web environment:
11+
12+
1. Open the web editor: [p5.js Web Editor](https://editor.p5js.org/)
13+
2. Copy the code just from the main source-code, i.e., sketch.js
14+
3. Paste it into the web editor (and save \- Ctrl+S works, to avoid losing it from your editor)
15+
4. Click on the Play icon to run the simulation \- shown beside the editor (named *Preview*)
16+
17+
NOTE: For some sketches (in ch:4,5) I will refer to global files in the repo directory. Check the accompanying index.html (in the same directory as the sketch) to ensure that all the files used are imported to the web editor. And referenced in the index.html file with the correct relative path
18+
19+
### 2. Locally using VSCode IDE (Preferred method by me):
20+
21+
1. Clone the entire repository into your local computer ([How to do that?](https://code.visualstudio.com/docs/sourcecontrol/intro-to-git#_clone-a-repository-locally)) \- you would also need to have [VSCode](https://code.visualstudio.com/docs/setup/windows#_install-vs-code-on-windows) and the [Git](https://git-scm.com/downloads/win) installed locally or just the folder containing the sketch you would like to run (in that case you do not need Git)
22+
2. Install the [P5 Server](https://marketplace.visualstudio.com/items?itemName=samplavigne.p5-vscode) extension in VSCode, this also auto-installs the *Live Server* extension \- which enables the user to host a local server in just one click.
23+
3. Right-click onto the corresponding index.html file and click *Open with Live Server* option \- this should automatically open a tab in your browser, which will run the simulation of the code
24+
4. Again be careful that all the .js files referenced in sketch.js are available locally on the computer, with the same directory.
25+
26+
### 3. Locally through other means:
27+
28+
1. Technically all the written codes should run on any JS runtime environment, which can also locally host a web server. Since all the code only does the following:
29+
1. Open a html file (index.html) with all the required libraries, stylesheet and most importantly our sketch.js within a \<script\> tag to run the code
30+
2. While running the code, with the help of the p5 library, it notices that the code is supposed to run on the Canvas element defined using createCanvas( width and height ). And places this element at the origin of the \<div\> element it is in (usually just the screen)
31+
32+
2. Therefore one could also manipulate the Canvas element to reposition, resize it, by naming it and accessing it within the html, and the p5.js file as [shown here](https://mzza.xyz/p5-pause-and-reset/)
33+
3. But, the exact methods for running the sketch files will differ according to the JS runtime chosen. So instructions will vary.

src/bibliography.md

Lines changed: 59 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,59 @@
1+
---
2+
tags: [main, bibliography, simulation]
3+
title: Bibliography
4+
layout: 'base'
5+
order: 8
6+
---
7+
# Bibliography
8+
9+
10+
### Primary Resources:
11+
12+
[Schiffman 24] Shiffman, Daniel. The Nature of Code. No Starch Press, 2024\.
13+
14+
[Reynolds 99] Reynolds, C. W .Steering Behaviors For Autonomous Characters,Game Developers Conference, Pages 763-782, 1999\.
15+
16+
[Perlin 02] Perlin, Ken. ‘Improving Noise’. *ACM Transactions on Graphics*, vol. 21, no. 3, July 2002, pp. 681–82., https://doi.org/10.1145/566654.566636.
17+
18+
### Secondary Resources:
19+
20+
[ Franklin 97 ] Franklin, et. al. “Is It an Agent, or Just a Program?: A Taxonomy for Autonomous Agents.” Lecture Notes in Computer Science, Springer Berlin Heidelberg, pp. 21–35, 1997\.
21+
22+
[ Brooks 91 ] Rodney A. Brooks. 1991\. Intelligence Without Reason. Technical Report. Massachusetts Institute of Technology, USA.
23+
24+
[ NCT 22 ] K. Nagarajan, C. Ni, and T. Lu, ‘Agent-Based Modeling of Microbial Communities’, ACS Synth. Biol., vol. 11, no. 11, pp. 3564–3574, Nov. 2022, doi: 10.1021/acssynbio.2c00411.
25+
26+
[ GTAT*12 ] T. E. Gorochowski et al., ‘BSim: An Agent-Based Tool for Modeling Bacterial Populations in Systems and Synthetic Biology’, PLoS ONE, vol. 7, no. 8, p. e42790, Aug. 2012, doi: 10.1371/journal.pone.0042790.
27+
28+
[ Perlin 85 ] Perlin, K. 1985\. An image synthesizer. ACM SIGGRAPH Computer Graphics 19, 3, 287–296.
29+
30+
[ LSRD*10 ] Lagae, A., Lefebvre, S., Cook, R., et al. 2010\. A Survey of Procedural Noise Functions. Computer Graphics Forum 29, 8, 2579–2600.
31+
32+
[ Perlin 94 ] Perlin, K. 1994. Noise, Hypertexture, Antialiasing, and Gesture. In: Texturing and Modeling. Elsevier, 193–247.
33+
34+
[ Perlin 99 ] Perlin, K. NoiseMachine. Perlin Noise. https://web.archive.org/web/20111204233622/http://www.noisemachine.com/talk1/15.html.
35+
36+
[ RVNL 23 ] Regis, V., Velasco, V., Neto, M.B.S., and Lewenkopf, C. 2023. Structure-driven phase transitions in paracrystalline topological insulators.
37+
38+
[ CCL 18 ] Coutino, M., Chepuri, S.P., and Leus, G. 2018. Subset Selection for Kernel-Based Signal Reconstruction. 2018 IEEE International Conference on Acoustics, Speech and Signal Processing (ICASSP), IEEE, 4014–4018.
39+
40+
[ Bia 14 ] Biagioli, A. Understanding Perlin Noise. https://adrianb.io/2014/08/09/perlinnoise.html.
41+
42+
[ Gustavson 05 ] Gustavson, S. 2005\. Simplex Noise Demystified. Linköping University, 23 March 2005.
43+
44+
### Documentation and external website simulations
45+
46+
1. GitHub repository containing the codes of this project:
47+
[https://github.com/beeezal/Honours-project-codes](https://github.com/beeezal/Honours-project-codes)
48+
49+
2. Reference manuals:
50+
* p5.js: [https://p5js.org/reference/](https://p5js.org/reference/)
51+
* VSCode: [https://code.visualstudio.com/docs](https://code.visualstudio.com/docs)
52+
* Git: [https://git-scm.com/docs/git](https://git-scm.com/docs/git)
53+
54+
3. Perlin noise implementation in native js - found in [Chapter 3]():
55+
56+
4. Self-written code in a p5 based platform (_OpenProcessing_):
57+
[https://openprocessing.org/sketch/2310776](https://openprocessing.org/sketch/2310776)
58+
59+
5. Template for creating pause and play buttons for p5 sketches: https://mzza.xyz/p5-pause-and-reset/

src/chapter0/index.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,8 @@
22
tags: [main, intro]
33
title: Introduction
44
layout: 'base'
5+
number: 0
6+
order: 1
57
---
68

79
# Chapter 0

src/chapter1/index.html

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,8 @@
22
tags: [main, basic-motion]
33
title: Deterministic Motion
44
layout: 'base'
5+
number: 1
6+
order: 2
57
---
68

79
<h1>Chapter 1</h1>

0 commit comments

Comments
 (0)