148 lines
2.7 KiB
Typst
148 lines
2.7 KiB
Typst
#import "@preview/diatypst:0.7.0": *
|
|
#import "importer/main.typ": *
|
|
#import "@preview/physica:0.9.5": *
|
|
|
|
// Patch the ETH logo to actually be white:
|
|
#let logo = "assets/uzh-logo.svg"
|
|
#let original = read(logo)
|
|
#let changed = original.replace(
|
|
"#FFFFFF",
|
|
black.to-hex(),
|
|
)
|
|
|
|
#let logos = (
|
|
image("assets/eth-logo.svg"),
|
|
image(bytes(changed))
|
|
)
|
|
|
|
|
|
#let ratio = 4/3
|
|
#let layout_size = "medium"
|
|
#let authors = ("Rémy Moll",)
|
|
#let date = "18 September 2024"
|
|
#let title = "Simulating the EOR with self-consistent growth of galaxies"
|
|
#let subtitle = "Master's thesis presentation"
|
|
#let footer-title = "Self-consistent simulations of the EOR"
|
|
#let title-color = color.blue.darken(50%);
|
|
#let bg-color = color.white;
|
|
|
|
|
|
|
|
///// Front page /////
|
|
#let notebook = json("../workdir/11_visualization/very_high_res_snapshot.ipynb")
|
|
#let front_image = image_cell(notebook, cell_id: "very_high_res_slice")
|
|
#let (height, space) = layouts.at(layout_size)
|
|
#let width = ratio * height
|
|
|
|
#set page(
|
|
height: height,
|
|
width: width,
|
|
footer: none,
|
|
header: none,
|
|
margin: 0cm
|
|
)
|
|
|
|
#let space = 2cm
|
|
#place[
|
|
#set image(
|
|
width: 105%,
|
|
)
|
|
#front_image,
|
|
]
|
|
#place[
|
|
#box(
|
|
width: 100%,
|
|
height: 100%,
|
|
fill: color.black.transparentize(65%)
|
|
)
|
|
]
|
|
|
|
#block(
|
|
inset: (x:0.5*space, y:1em),
|
|
width: 100%,
|
|
height: 60%,
|
|
align(bottom)[#text(2.0em, weight: "bold", fill: bg-color, title)],
|
|
above: 0cm,
|
|
below: 0cm,
|
|
)
|
|
|
|
|
|
#let padded_logos = logos.map(logo => box(height: 1.5em, inset: (x:0.3cm), logo))
|
|
|
|
|
|
#block(
|
|
height: 40%,
|
|
width: 100%,
|
|
fill: bg-color,
|
|
inset: (x:0.5*space,top:1cm, bottom: 1em),
|
|
above: 0cm,
|
|
below: 0cm,
|
|
if subtitle != none {[
|
|
#text(1.4em, fill: title-color, weight: "bold", subtitle)
|
|
]} +
|
|
if subtitle != none and date != none { text(1.4em)[ \ ] } +
|
|
if date != none {text(1.1em, date)} +
|
|
align(
|
|
bottom,
|
|
stack(
|
|
dir: ltr,
|
|
authors.join(", ", last: " & "),
|
|
h(1fr),
|
|
..padded_logos,
|
|
)
|
|
)
|
|
)
|
|
|
|
|
|
///// Main content /////
|
|
|
|
#show: slides.with(
|
|
title: title,
|
|
subtitle: subtitle,
|
|
date: date,
|
|
authors: authors,
|
|
toc: false,
|
|
layout: layout_size,
|
|
ratio: ratio,
|
|
title-color: title-color,
|
|
bg-color: bg-color,
|
|
footer-title: footer-title,
|
|
count: "number"
|
|
)
|
|
|
|
|
|
|
|
#show footnote.entry: set text(size: 0.6em)
|
|
#set footnote.entry(gap: 3pt)
|
|
#set align(horizon)
|
|
#set grid(
|
|
columns: 2,
|
|
gutter: 2em,
|
|
)
|
|
|
|
|
|
|
|
#include "introduction.typ"
|
|
|
|
#include "refinements.typ"
|
|
|
|
#include "implementation.typ"
|
|
|
|
#include "results.typ"
|
|
|
|
|
|
|
|
#set heading(numbering: none, outlined: false)
|
|
= Thank you for your attention
|
|
|
|
#bibliography("references.bib")
|
|
|
|
// #context let last_page = counter(page).get()
|
|
// #let last_page = counter("page").get()
|
|
// #let last_page = 20
|
|
// freeze the page counter here
|
|
|
|
#include("backup.typ")
|
|
|
|
// #counter(page).update(last_page)
|