From 76263869527d5672488e4e018efbd6abe3175d99 Mon Sep 17 00:00:00 2001 From: Tom Date: Sat, 11 Jan 2025 19:13:45 +0000 Subject: [PATCH] update feed generation --- _config.yml | 11 +- _includes/default_head_tags.html | 1 + _posts/2100-12-30-template.md | 343 ++++++++++++++++++++++++++++- assets/blog/template/thumbnail.png | Bin 0 -> 4483 bytes assets/blog/template/thumbnail.svg | 105 +++++++++ feed.json | 28 +++ feed.xml | 45 ++++ 7 files changed, 521 insertions(+), 12 deletions(-) create mode 100644 assets/blog/template/thumbnail.png create mode 100644 assets/blog/template/thumbnail.svg create mode 100644 feed.json create mode 100644 feed.xml diff --git a/_config.yml b/_config.yml index b83add3..eecd334 100644 --- a/_config.yml +++ b/_config.yml @@ -1,8 +1,11 @@ title: Tom Hodson description: Physics, Programming and Baking. url: https://thomashodson.com -author: - twitter: T_Hodson + +feed: + posts_limit: 100 + update_period: monthly + update_frequency: 1 exclude: ["env/", ] host: 0.0.0.0 @@ -29,12 +32,10 @@ include: - node_modules plugins: - - jekyll-feed + # - jekyll-feed - jekyll-redirect-from - flexible_include - kramdown-syntax-coderay - jekyll-last-modified-at -feed: - posts_limit: 100 \ No newline at end of file diff --git a/_includes/default_head_tags.html b/_includes/default_head_tags.html index 656ef99..c54106f 100644 --- a/_includes/default_head_tags.html +++ b/_includes/default_head_tags.html @@ -59,6 +59,7 @@ {% if page.mathjax %} + + + + -images: -thumbnail: -social_image: -assets: -alt: --- +This page acts as both a reminder of how I do various things on this blog and also serves as a canary to see if I've broken the layout inadvertently. + +See [this kramdown cheatsheet](https://kramdown.gettalong.org/quickref.html) + ## Subtitle The first big project of the year was repainting this ladder up to our mezzanine bed. This ended up being so much more work than we expected, they say it's all in the surface prep and the surface prep here took ages with all the awkward corners. @@ -20,16 +53,312 @@ There was one aspect that was fun with this which was that I made non-slip pads
-
Crossing the alps by train provided some good views and also some good gaming time on my then new Steam Deck.
+
A single large image.
+
Two images side by side.
-
\ No newline at end of file +
More than two images layed out nicely.
+ + +Four images: + +
+ + + + +
+ +A very long image: + +
+ +
Played around with some logo designs that I could stamp into ceramics.
+
+ +1. Item one + * sub item one + * sub item two + * sub item three +2. Item two + + +A table: + +| Power | Voltage | Current | +|-------|---------|---------| +| 15W | 5 V | 3A | +| 27W | 9 V | 3A | +| 45W | 15 V | 3A | +| 60W | 20 V | 3A | +| 100W* | 20V | 5A | + + + +## Line Element + +So the setup is this: Imagine we draw a very short line vector $\vec{v}$ and let it flow along in a fluid with velocity field $u(\vec{x}, t)$. + +
+ +
A line element $\delta \vec{v}$ being dragged aloung in a fluid with velocity field $u(\vec{x}, t)$
+
+ +Three things will happen, the vector will be translated along, it will change length and it will change direction. If we ignore the translation, we can ask what the equation would be for the change in length and direction of $\vec{v}$. I'll drop the vector symbols on $v$, $u$ and $x$ from now on. + +$$ D_t \; v = ? $$ + +If we assume $v$ is very small we can think about expanding $u$ to first order along $v$ + +$$ u(x + v, t) = u(x, t) + v \cdot \nabla u $$ + +where $v \cdot \nabla$ is the directional derivative $v_x \partial_x + v_y \partial_y + v_y \partial_y$ and when $v$ is infinitesimal it just directly tells us how $u$ will change if we move from point $x$ to point $x + v$. + +So from this we can see that one end of our vector $v$ is moving along at $u(x, t)$ while the other end will move at $u(x, t) + v \cdot \nabla u$ hence: + +$$ D_t \; v = v \cdot \nabla u $$ + +Below is a more “index‐by‐index” look at how one carries out **Step 3** in detail. We start from + +**math with color**: + +$${\color{red} x} + {\color{blue} y}$$ + +$$ +\frac{D}{Dt}\,\delta S_i +\;=\; +\varepsilon_{i j k}\,\bigl(\tfrac{D}{Dt}\delta x_j^{(1)}\bigr)\,\delta x_k^{(2)} +\;+\; +\varepsilon_{i j k}\,\delta x_j^{(1)}\,\bigl(\tfrac{D}{Dt}\delta x_k^{(2)}\bigr), +$$ + +and then substitute + +$$ +\frac{D}{Dt}\,\delta x_j^{(1)} +\;=\; +\delta x_\ell^{(1)}\,\frac{\partial u_j}{\partial x_\ell}, +\quad +\frac{D}{Dt}\,\delta x_k^{(2)} +\;=\; +\delta x_\ell^{(2)}\,\frac{\partial u_k}{\partial x_\ell}. +$$ + +I like these underbraces: + +$$ +\frac{D}{Dt}\,\delta S_i +\;=\; +\underbrace{\varepsilon_{i j k}\,\delta x_\ell^{(1)}\,\frac{\partial u_j}{\partial x_\ell}\,\delta x_k^{(2)}} +_{T_{1}} +\;+\; +\underbrace{\varepsilon_{i j k}\,\delta x_j^{(1)}\,\delta x_\ell^{(2)}\,\frac{\partial u_k}{\partial x_\ell}} +_{T_{2}}. +$$ + +References: + +[This is a link to the subtitle heading at the top of the page](#subtitle) + +A [link][kramdown hp] +to the homepage. + +[kramdown hp]: http://kramdown.gettalong.org "hp" + +This is a text with a +footnote[^1]. + +[^1]: And here is the definition. + +This is a text with a +footnote[^2]. + +[^2]: + And here is the definition. + + > With a quote! + + and some math + $$ x = \frac{-b \pm \sqrt{b^2 - 4ac}}{2a} $$ + +* * * + + + + \ No newline at end of file diff --git a/assets/blog/template/thumbnail.png b/assets/blog/template/thumbnail.png new file mode 100644 index 0000000000000000000000000000000000000000..df6a813b8b5aa2b291fb2122a0103b639075be0a GIT binary patch literal 4483 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 + diff --git a/feed.json b/feed.json new file mode 100644 index 0000000..60ad383 --- /dev/null +++ b/feed.json @@ -0,0 +1,28 @@ +--- +layout: none +--- +{ + "version": "https://jsonfeed.org/version/1", + "title": {{ site.title | jsonify }}, + "description": {% if site.description %}{{ site.description | jsonify }}{% endif %}, + "home_page_url": "{{ site.url }}", + "feed_url": "{{ site.url }}/feed.json", + "favicon": "{{ site.url}}/favicon.ico", + "author": { + "name": "Tom Hodson" + }, + "items": [ + + {% for post in site.posts limit:10 %} + {% unless post.draft %} + { + "id": "{{ post.url | prepend: site.baseurl | prepend: site.url }}", + "url": "{{ post.url | prepend: site.baseurl | prepend: site.url }}", + "title": {{ post.title | jsonify }}, + "content_html": {{ post.content | jsonify }}, + "date_published": "{{ post.date | date_to_rfc822 }}" + }{% unless forloop.last %},{% endunless %} + {% endunless %} + {% endfor %} + ] +} \ No newline at end of file diff --git a/feed.xml b/feed.xml new file mode 100644 index 0000000..a52d516 --- /dev/null +++ b/feed.xml @@ -0,0 +1,45 @@ +--- +layout: none +--- + + + + {{ site.name | xml_escape }} + {% if site.description %}{{ site.description | xml_escape }}{% endif %} + {{ site.feed.update_period | default: "daily" | xml_escape }} + {{ site.feed.update_frequency | default: 1 | xml_escape }} + {{ site.url }} + + {{ site.time | date_to_rfc822 }} + {% assign feed_items = site.feed.post_limit | default: 10 %} + {% for post in site.posts limit:feed_items %} + {% unless post.draft %} + + {{ post.title | xml_escape }} + Tom Hodson + {% if post.excerpt %} + + {% if post.social_image %} + ]]> + {% endif %} + {{ post.excerpt | xml_escape }} + + {% else %} + + Work a little, play a little, dream into summer, celebrate a great winter gone by, keep movin'...
]]> + {{ post.excerpt | xml_escape }} +
+ {% endif %} + {{ post.date | date_to_rfc822 }} + {{ site.url }}{{ post.url }} + {{ site.url }}{{ post.url }} + +
+ {% endunless %} + {% endfor %} +
+
\ No newline at end of file