Prose
Pick a framework. Both use the same recipe, so the styling matches exactly.
Waves on a Lattice
When a disturbance travels through a discrete medium, its dispersion relation departs from the continuum limit. The angular frequency of a wave with wavenumber on a chain of coupled oscillators satisfies
which reduces to the linear relation for small .
Parameters
| Symbol | Meaning | Unit |
|---|---|---|
| coupling stiffness | N/m | |
| oscillator mass | kg | |
| lattice spacing | m |
The group velocity1 vanishes at the zone boundary .
Numerical check
import math
def omega(k, kappa=1.0, m=1.0, a=1.0):
return 2 * math.sqrt(kappa / m) * abs(math.sin(k * a / 2))Phase portrait
Centered figures
Typst wraps block figures in centered containers.
def left_aligned():
return True- 1The velocity at which the envelope of a wave packet propagates.
| Prop | Type | Default | Description |
|---|---|---|---|
| html | string | Trusted pre-rendered HTML, injected as-is. Never pass user input. |
Also takes className and children. Anything else passes through to the div.
import fixture from "./fixtures/typst-sample.html?raw";
import { Prose } from "../react/index.js";
export default function ProseDemo() {
return <Prose html={fixture} />;
}
Waves on a Lattice
When a disturbance travels through a discrete medium, its dispersion relation departs from the continuum limit. The angular frequency of a wave with wavenumber on a chain of coupled oscillators satisfies
which reduces to the linear relation for small .
Parameters
| Symbol | Meaning | Unit |
|---|---|---|
| coupling stiffness | N/m | |
| oscillator mass | kg | |
| lattice spacing | m |
The group velocity1 vanishes at the zone boundary .
Numerical check
import math
def omega(k, kappa=1.0, m=1.0, a=1.0):
return 2 * math.sqrt(kappa / m) * abs(math.sin(k * a / 2))Phase portrait
Centered figures
Typst wraps block figures in centered containers.
def left_aligned():
return True- 1The velocity at which the envelope of a wave packet propagates.
| Prop | Type | Default | Description |
|---|---|---|---|
| html | string | Trusted pre-rendered HTML, injected as-is. Never pass user input. |
Also takes class and snippet children. Anything else passes through to the div.
<script lang="ts">
import fixture from "./fixtures/typst-sample.html?raw";
import { Prose } from "../svelte/index.js";
</script>
<Prose html={fixture} />