CLAUDE.md — vault state & plan
Working notes for AI assistants (and future me) helping with this Obsidian vault. Keep this short. Update when things change.
What this vault is
Obsidian vault of kursanteckningar from civilingenjör i teknisk fysik & elektroteknik, LTU (TCTEA). Written in Swedish. LaTeX Suite. Intended to be published for future students (format inspired by Brian McFee’s Digital Signals Theory).
Contact / owner: [email protected]
Where the owner is in the program
- Program: 5 years, 4 läsperioder (LP) per year.
- Current time: LP4, Åk1 (VT2026).
- Courses completed / in progress (dump exists in
meta/raw course dump/):- Åk1 LP1: F0051T Ingenjörsvetenskap, M0065M Envariabelanalys 1
- Åk1 LP2: F0004T Fysik 1, M0066M Envariabelanalys 2
- Åk1 LP3: D0009E Intro till programmering, M0067M Linjär algebra
- Åk1 LP4 (pågår): F0006T Fysik 3, M0068M Flervariabelanalys
- Everything else on the Homepage (Åk2–Åk5) is future. Don’t invent notes for it.
- Active editing right now is in flervariabelanalys (Dubbelintegraler, Lagranges multiplikatormetod, Kedjeregeln, Extremvärdesproblem) and rotationsmekanik (F0006T).
Vault layout (roles, not hierarchy)
Homepage.md Course index, the published landing page
koncept/ Atomic, course-agnostic concept notes. THIS IS THE PRODUCT.
kurser/<kod>.md Per-course MOC (map of content). Links into koncept/.
kurser/kursfiler/ LEGACY. Per-topic course-prefixed files. To be folded into
koncept/ or the course MOC, then removed.
meta/
bilder/ Pasted images
böcker/ Reference books (PDFs) — see "Reference books" below
raw course dump/ Canvas exports — source material, never published
Screenshot.md Empty scratch file
.obsidian/ Vault config
Reference books (in meta/böcker/)
Used for ## Läsning chapter links from koncept/ notes.
| File | Used for | Notes |
|---|---|---|
z.Calculus A Complete Course 10th.pdf (Adams) | M0065M, M0066M, M0068M | 1207 p. Full TOC available via pypdf outline. |
University Physics with Modern Physics in SI Units.pdf (Young & Freedman) | F0004T, F0006T, F0051T | 1612 p. Covers mechanics → modern physics. |
Fysika_upplaga-5.pdf (Elfgren) | F0004T, F0006T | LTU formelsamling. 25 p. |
Kompendium i mekanik.pdf (Lehto) | F0006T | 77 p. |
Missing: no book currently in the vault for M0067M (linjär algebra) or D0009E (Python).
Notes in those courses don’t get ## Läsning links.
PDF deep-link format
Obsidian supports linking to a PDF page:
[[<bookfile>.pdf#page=N|Display text]]
Annotation IDs (&annotation=XXXR) are optional — only present when the owner has
placed a highlight and wants that exact anchor (see koncept/Rotationsmekanik.md
for the fully-annotated pattern).
For new notes, use the plain #page=N form. Extract chapter page numbers via:
import pypdf
r = pypdf.PdfReader(path)
# walk r.outline, use r.get_destination_page_number(item)Note template & conventions
Reference for the standard template: koncept/Gränsvärden.md (handwritten by
the owner, use as style guide). Supplementary reference: koncept/Extremvärden.md.
Standard section order (bottom-up)
---
frontmatter
---
# Titel
> **Kurs:** <kod>
> **Förkunskaper:** [[...]]
---
## 1. <delrubrik>
...
## N. <delrubrik>
## Läsning ← PDF chapter links (Adams / UP / Fysika etc.)
## Se även ← internal [[wikilinks]] to related koncept/
## Resurser ← external links (prefer 3Blue1Brown, then Wikipedia/Khan)
Frontmatter template
kurs:
- <kurskod>
tags:
- <ämne>
- <underämne>
förkunskaper:
- "[[...]]"
status: utkast | granskad | publicerad
aliases:
- <synonym>Style rules
- Swedish for note content. English for code and metadata keys.
- Key formulas in
$$ \boxed{...} $$. - Examples in
> [!example]- <titel>(collapsible callout). - Warnings in
> [!warning]/> [!tip]/> [!note]. - No “Ordlista svenska ↔ engelska” tables — these were removed globally on 2026-04-23. Don’t reintroduce them.
- Prefer 3Blue1Brown in
## Resurserwhen a relevant video exists.
The core problems we’ve agreed on
- Structure is hybrid and that is fine, but roles were unclear. Rule:
koncept/is atomic and course-agnostic;kurser/is course-scoped MOCs + labs + projects. - Quality is wildly inconsistent. Most stubs have been filled as of 2026-04-23
(see “Big sweeps” below), but many are still
status: utkastand need review. - Naming collisions between single-var and multi-var versions of the same idea (Extremvärden vs Extremvärdesproblem). Convention still undecided — owner hasn’t picked merge-vs-split yet.
kurser/kursfiler/duplicateskoncept/and creates the “where does this go” anxiety.- Labs/projects have no home yet. Plan:
kurser/<kod>/labb-N.md,kurser/<kod>/projekt.md. - Publishing new-student-ready notes requires filtering out drafts.
Big sweeps already done (2026-04-23)
- Removed all
## Ordlista svenska ↔ engelskatables fromkoncept/(39 files). - Filled ~95 empty stubs across M0065M, M0066M, M0067M, M0068M, F0004T, F0006T,
F0051T, D0009E using the
Gränsvärden.mdtemplate as style guide. - Added
## Läsningsection with PDF chapter deep-links to 114 files (Adams for math, UP for physics). - Owner-written notes were preserved and not overwritten (e.g.
Inre konversion.md,Scintillationsräknare.md,topologiska begräpp.md,Avogadros tal 2026-04-23.md, lecture-note sections insideKritiska punkter.md/Experimentell metodik.md). - Rewrote all 8
kurser/<kod>.mdMOCs into Quartz-friendly layout: short description, snabbfakta-box, personal reflection, module-grouped concept list, slim examination + resources. - First-mention crosslinking pass across
koncept/(/tmp/crosslink.py): 79 new[[Target|matched]]links + 102 broken wikilinks repaired ([[Gränsvärden i en variabel]]→[[Gränsvärden]],[[Taylorpolynom]]→[[Taylors formel]],[[Extremvärden och monotoni]]→[[Extremvärden]], and ~20 more inBROKENtable).
Crosslinking convention (since 2026-04-23)
Follow these rules when cross-linking concept notes:
- First-mention-per-page only. Once a concept is linked in a page’s body, don’t link subsequent mentions — they add noise for the reader.
- Never self-link. A page about
Derivatadoesn’t link[[Derivata]]inside itself. The# Titelheader plus the> **Kurs:** ...block already identify it. - Use display aliases to preserve the author’s original prose/case:
[[Gränsvärden|gränsvärdet]], not[[Gränsvärden]]. - Never link inside: frontmatter, code fences,
$$…$$math blocks, inline$…$, existing[[wikilinks]], markdown[text](url)links,# headings, or the> **Kurs:** / **Förkunskaper:** …blockquote. - Don’t auto-link overly generic words (
metod,funktion,variabel,rotation,argument,objekt,klass, …). If they must be linked, do it by hand at a genuinely-meaningful spot. The big list of NO_AUTOLINK_TITLES / BAD_ALIASES is in/tmp/crosslink.py. - Keep
## Se äveneven when the concept is already linked inline — it’s a navigation hub and the reader expects it. - The script
/tmp/crosslink.pyis idempotent (existing wikilinks are skipped), so it can be re-run after adding new notes. Always run--applyonly after a plain dry-run looks clean.
Plan / backlog
- Draft
meta/konventioner.mdwith the rules above (source of truth for the vault). - Decide variant-naming convention (merge vs split).
- Promote mature
utkast→granskad→publiceradas owner revisits notes. - Add
## Läsningto M0067M (needs a linjär-algebra book inmeta/böcker/) and D0009E (needs a Python reference) once suitable sources are added. - Fold
kurser/kursfiler/*into the corresponding course MOCs, then delete the folder. - Clean up
koncept/Extremvärdesproblem.md(half-finished Lagrange content, stray TODOs). - Create
kurser/<kod>/subfolders for labs/projects as they come up — not preemptively. - Set up publish pipeline (Obsidian Publish or Quartz) with
status: publiceradfilter.
Do NOT:
- Rewrite every old note in one pass. Upgrade on revisit.
- Create notes for future courses (Åk2+) until the owner reaches them.
- Touch
meta/raw course dump/— it’s source material, read-only. - Reintroduce “Ordlista svenska ↔ engelska” tables.
- Overwrite owner-written content when filling stubs — merge, don’t replace.
How to help (for AI assistants)
- Default language for note content is Swedish. Code and metadata are English.
- Match the template in
koncept/Gränsvärden.mdwhen creating or cleaning concept notes. - Before editing, check if a concept already exists under a different name (stubs common).
- When adding
## Läsninglinks, usepypdfto extract the PDF outline and map section titles → page numbers; never guess page numbers. - Keep commits/edits small and focused. Quality > coverage.
- When unsure about structure, ask — don’t invent a new folder or convention.
- For any non-trivial batch edit, use
AskUserto confirm scope, frontmatter policy, and whether external links (Wikipedia/Khan/3Blue1Brown) are wanted.