Compare commits

..

10 Commits

Author SHA1 Message Date
1a6d05c05f new notes 2026-02-03 11:36:20 +01:00
e58a986e9f notes 2026-01-29 17:42:10 +01:00
10540388a6 notes 2026-01-27 17:21:23 +01:00
fee91edb1a notes 2026-01-23 20:03:48 +01:00
1967a3e1d6 start with notes program 2026-01-22 21:02:28 +01:00
a699022812 notes 2026-01-22 16:24:29 +01:00
452cc87a57 add cool cycles yeah 2025-12-30 17:42:56 +01:00
f0fb852d57 add notes 23.12. 2025-12-23 14:34:41 +01:00
3d95a3ccd9 upate 2025-12-22 21:25:24 +01:00
cee0fa068f some work from home 2025-12-21 15:23:21 +01:00
13 changed files with 5856 additions and 26 deletions

1
autotodo/.gitignore vendored Normal file
View File

@@ -0,0 +1 @@
target

501
autotodo/Cargo.lock generated Normal file
View File

@@ -0,0 +1,501 @@
# This file is automatically @generated by Cargo.
# It is not intended for manual editing.
version = 4
[[package]]
name = "android_system_properties"
version = "0.1.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "819e7219dbd41043ac279b19830f2efc897156490d7fd6ea916720117ee66311"
dependencies = [
"libc",
]
[[package]]
name = "anstream"
version = "0.6.21"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "43d5b281e737544384e969a5ccad3f1cdd24b48086a0fc1b2a5262a26b8f4f4a"
dependencies = [
"anstyle",
"anstyle-parse",
"anstyle-query",
"anstyle-wincon",
"colorchoice",
"is_terminal_polyfill",
"utf8parse",
]
[[package]]
name = "anstyle"
version = "1.0.13"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "5192cca8006f1fd4f7237516f40fa183bb07f8fbdfedaa0036de5ea9b0b45e78"
[[package]]
name = "anstyle-parse"
version = "0.2.7"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "4e7644824f0aa2c7b9384579234ef10eb7efb6a0deb83f9630a49594dd9c15c2"
dependencies = [
"utf8parse",
]
[[package]]
name = "anstyle-query"
version = "1.1.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "40c48f72fd53cd289104fc64099abca73db4166ad86ea0b4341abe65af83dadc"
dependencies = [
"windows-sys",
]
[[package]]
name = "anstyle-wincon"
version = "3.0.11"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "291e6a250ff86cd4a820112fb8898808a366d8f9f58ce16d1f538353ad55747d"
dependencies = [
"anstyle",
"once_cell_polyfill",
"windows-sys",
]
[[package]]
name = "autocfg"
version = "1.5.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "c08606f8c3cbf4ce6ec8e28fb0014a2c086708fe954eaa885384a6165172e7e8"
[[package]]
name = "autotodo"
version = "0.1.0"
dependencies = [
"chrono",
"clap",
"env",
"ron",
"serde",
]
[[package]]
name = "bitflags"
version = "2.10.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "812e12b5285cc515a9c72a5c1d3b6d46a19dac5acfef5265968c166106e31dd3"
dependencies = [
"serde_core",
]
[[package]]
name = "bumpalo"
version = "3.19.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "5dd9dc738b7a8311c7ade152424974d8115f2cdad61e8dab8dac9f2362298510"
[[package]]
name = "cc"
version = "1.2.53"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "755d2fce177175ffca841e9a06afdb2c4ab0f593d53b4dee48147dfaade85932"
dependencies = [
"find-msvc-tools",
"shlex",
]
[[package]]
name = "cfg-if"
version = "1.0.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "9330f8b2ff13f34540b44e946ef35111825727b38d33286ef986142615121801"
[[package]]
name = "chrono"
version = "0.4.43"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "fac4744fb15ae8337dc853fee7fb3f4e48c0fbaa23d0afe49c447b4fab126118"
dependencies = [
"iana-time-zone",
"js-sys",
"num-traits",
"serde",
"wasm-bindgen",
"windows-link",
]
[[package]]
name = "clap"
version = "4.5.54"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "c6e6ff9dcd79cff5cd969a17a545d79e84ab086e444102a591e288a8aa3ce394"
dependencies = [
"clap_builder",
"clap_derive",
]
[[package]]
name = "clap_builder"
version = "4.5.54"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "fa42cf4d2b7a41bc8f663a7cab4031ebafa1bf3875705bfaf8466dc60ab52c00"
dependencies = [
"anstream",
"anstyle",
"clap_lex",
"strsim",
]
[[package]]
name = "clap_derive"
version = "4.5.49"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "2a0b5487afeab2deb2ff4e03a807ad1a03ac532ff5a2cee5d86884440c7f7671"
dependencies = [
"heck",
"proc-macro2",
"quote",
"syn",
]
[[package]]
name = "clap_lex"
version = "0.7.7"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "c3e64b0cc0439b12df2fa678eae89a1c56a529fd067a9115f7827f1fffd22b32"
[[package]]
name = "colorchoice"
version = "1.0.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "b05b61dc5112cbb17e4b6cd61790d9845d13888356391624cbe7e41efeac1e75"
[[package]]
name = "core-foundation-sys"
version = "0.8.7"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "773648b94d0e5d620f64f280777445740e61fe701025087ec8b57f45c791888b"
[[package]]
name = "env"
version = "1.0.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "bc95de49ad098572c02d3fbf368c9a020bfff5ae78483685b77f51d8a7e9486d"
dependencies = [
"num_threads",
]
[[package]]
name = "find-msvc-tools"
version = "0.1.8"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "8591b0bcc8a98a64310a2fae1bb3e9b8564dd10e381e6e28010fde8e8e8568db"
[[package]]
name = "heck"
version = "0.5.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "2304e00983f87ffb38b55b444b5e3b60a884b5d30c0fca7d82fe33449bbe55ea"
[[package]]
name = "iana-time-zone"
version = "0.1.64"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "33e57f83510bb73707521ebaffa789ec8caf86f9657cad665b092b581d40e9fb"
dependencies = [
"android_system_properties",
"core-foundation-sys",
"iana-time-zone-haiku",
"js-sys",
"log",
"wasm-bindgen",
"windows-core",
]
[[package]]
name = "iana-time-zone-haiku"
version = "0.1.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "f31827a206f56af32e590ba56d5d2d085f558508192593743f16b2306495269f"
dependencies = [
"cc",
]
[[package]]
name = "is_terminal_polyfill"
version = "1.70.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "a6cb138bb79a146c1bd460005623e142ef0181e3d0219cb493e02f7d08a35695"
[[package]]
name = "js-sys"
version = "0.3.85"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "8c942ebf8e95485ca0d52d97da7c5a2c387d0e7f0ba4c35e93bfcaee045955b3"
dependencies = [
"once_cell",
"wasm-bindgen",
]
[[package]]
name = "libc"
version = "0.2.180"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "bcc35a38544a891a5f7c865aca548a982ccb3b8650a5b06d0fd33a10283c56fc"
[[package]]
name = "log"
version = "0.4.29"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "5e5032e24019045c762d3c0f28f5b6b8bbf38563a65908389bf7978758920897"
[[package]]
name = "num-traits"
version = "0.2.19"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "071dfc062690e90b734c0b2273ce72ad0ffa95f0c74596bc250dcfd960262841"
dependencies = [
"autocfg",
]
[[package]]
name = "num_threads"
version = "0.1.7"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "5c7398b9c8b70908f6371f47ed36737907c87c52af34c268fed0bf0ceb92ead9"
dependencies = [
"libc",
]
[[package]]
name = "once_cell"
version = "1.21.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "42f5e15c9953c5e4ccceeb2e7382a716482c34515315f7b03532b8b4e8393d2d"
[[package]]
name = "once_cell_polyfill"
version = "1.70.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "384b8ab6d37215f3c5301a95a4accb5d64aa607f1fcb26a11b5303878451b4fe"
[[package]]
name = "proc-macro2"
version = "1.0.106"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "8fd00f0bb2e90d81d1044c2b32617f68fcb9fa3bb7640c23e9c748e53fb30934"
dependencies = [
"unicode-ident",
]
[[package]]
name = "quote"
version = "1.0.43"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "dc74d9a594b72ae6656596548f56f667211f8a97b3d4c3d467150794690dc40a"
dependencies = [
"proc-macro2",
]
[[package]]
name = "ron"
version = "0.12.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "fd490c5b18261893f14449cbd28cb9c0b637aebf161cd77900bfdedaff21ec32"
dependencies = [
"bitflags",
"once_cell",
"serde",
"serde_derive",
"typeid",
"unicode-ident",
]
[[package]]
name = "rustversion"
version = "1.0.22"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "b39cdef0fa800fc44525c84ccb54a029961a8215f9619753635a9c0d2538d46d"
[[package]]
name = "serde"
version = "1.0.228"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "9a8e94ea7f378bd32cbbd37198a4a91436180c5bb472411e48b5ec2e2124ae9e"
dependencies = [
"serde_core",
"serde_derive",
]
[[package]]
name = "serde_core"
version = "1.0.228"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "41d385c7d4ca58e59fc732af25c3983b67ac852c1a25000afe1175de458b67ad"
dependencies = [
"serde_derive",
]
[[package]]
name = "serde_derive"
version = "1.0.228"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "d540f220d3187173da220f885ab66608367b6574e925011a9353e4badda91d79"
dependencies = [
"proc-macro2",
"quote",
"syn",
]
[[package]]
name = "shlex"
version = "1.3.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "0fda2ff0d084019ba4d7c6f371c95d8fd75ce3524c3cb8fb653a3023f6323e64"
[[package]]
name = "strsim"
version = "0.11.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "7da8b5736845d9f2fcb837ea5d9e2628564b3b043a70948a3f0b778838c5fb4f"
[[package]]
name = "syn"
version = "2.0.114"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "d4d107df263a3013ef9b1879b0df87d706ff80f65a86ea879bd9c31f9b307c2a"
dependencies = [
"proc-macro2",
"quote",
"unicode-ident",
]
[[package]]
name = "typeid"
version = "1.0.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "bc7d623258602320d5c55d1bc22793b57daff0ec7efc270ea7d55ce1d5f5471c"
[[package]]
name = "unicode-ident"
version = "1.0.22"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "9312f7c4f6ff9069b165498234ce8be658059c6728633667c526e27dc2cf1df5"
[[package]]
name = "utf8parse"
version = "0.2.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "06abde3611657adf66d383f00b093d7faecc7fa57071cce2578660c9f1010821"
[[package]]
name = "wasm-bindgen"
version = "0.2.108"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "64024a30ec1e37399cf85a7ffefebdb72205ca1c972291c51512360d90bd8566"
dependencies = [
"cfg-if",
"once_cell",
"rustversion",
"wasm-bindgen-macro",
"wasm-bindgen-shared",
]
[[package]]
name = "wasm-bindgen-macro"
version = "0.2.108"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "008b239d9c740232e71bd39e8ef6429d27097518b6b30bdf9086833bd5b6d608"
dependencies = [
"quote",
"wasm-bindgen-macro-support",
]
[[package]]
name = "wasm-bindgen-macro-support"
version = "0.2.108"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "5256bae2d58f54820e6490f9839c49780dff84c65aeab9e772f15d5f0e913a55"
dependencies = [
"bumpalo",
"proc-macro2",
"quote",
"syn",
"wasm-bindgen-shared",
]
[[package]]
name = "wasm-bindgen-shared"
version = "0.2.108"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "1f01b580c9ac74c8d8f0c0e4afb04eeef2acf145458e52c03845ee9cd23e3d12"
dependencies = [
"unicode-ident",
]
[[package]]
name = "windows-core"
version = "0.62.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "b8e83a14d34d0623b51dce9581199302a221863196a1dde71a7663a4c2be9deb"
dependencies = [
"windows-implement",
"windows-interface",
"windows-link",
"windows-result",
"windows-strings",
]
[[package]]
name = "windows-implement"
version = "0.60.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "053e2e040ab57b9dc951b72c264860db7eb3b0200ba345b4e4c3b14f67855ddf"
dependencies = [
"proc-macro2",
"quote",
"syn",
]
[[package]]
name = "windows-interface"
version = "0.59.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "3f316c4a2570ba26bbec722032c4099d8c8bc095efccdc15688708623367e358"
dependencies = [
"proc-macro2",
"quote",
"syn",
]
[[package]]
name = "windows-link"
version = "0.2.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "f0805222e57f7521d6a62e36fa9163bc891acd422f971defe97d64e70d0a4fe5"
[[package]]
name = "windows-result"
version = "0.4.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "7781fa89eaf60850ac3d2da7af8e5242a5ea78d1a11c49bf2910bb5a73853eb5"
dependencies = [
"windows-link",
]
[[package]]
name = "windows-strings"
version = "0.5.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "7837d08f69c77cf6b07689544538e017c1bfcf57e34b4c0ff58e6c2cd3b37091"
dependencies = [
"windows-link",
]
[[package]]
name = "windows-sys"
version = "0.61.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "ae137229bcbd6cdf0f7b80a31df61766145077ddf49416a728b02cb3921ff3fc"
dependencies = [
"windows-link",
]

11
autotodo/Cargo.toml Normal file
View File

@@ -0,0 +1,11 @@
[package]
name = "autotodo"
version = "0.1.0"
edition = "2024"
[dependencies]
chrono = { version = "0.4.43", features = ["serde"] }
clap = { version = "4.5.54", features = ["derive"] }
env = "1.0.1"
ron = "0.12.0"
serde = { version = "1.0.228", features = ["derive"] }

23
autotodo/data/notes.md Normal file
View File

@@ -0,0 +1,23 @@
# 27.01.2026
- [ ] Test 1
- [ ] Test 2
# 28.01.2026
- [x] Test 1
- [ ] Test 2
- [ ] Test 3
- [x] Test 4
- [x] Test 5
# 2026-01-29
- [ ] Test 2
- [ ] Test 3
# 2026-02-03
- [ ] Test 2
- [ ] Test 3

View File

@@ -0,0 +1,16 @@
[
(
name: "Rechnung Gertrudenhof",
pattern: Monthly(dom: 1),
),
(
name: "Rechnung STG",
pattern: MonthlyOpt(dom: 1, months: [February, May, August, November]),
),
(
name: "Kalender durchlesen",
pattern: Weekly(dow: 1),
),
]

157
autotodo/src/main.rs Normal file
View File

@@ -0,0 +1,157 @@
use chrono::{self, Local, NaiveDate};
use clap::Parser;
use std::{
collections::HashSet,
fmt::Write as _,
fs::OpenOptions,
io::{BufRead, BufReader, Read, Seek, Write as _},
path::{Path, PathBuf},
};
#[derive(Parser, Debug)]
#[command(version, about, long_about = None)]
struct Args {
notes: PathBuf,
patterns: Option<PathBuf>,
}
// #[derive(Serialize, Deserialize, Debug)]
// enum Pattern {
// Yearly {
// doy: u32,
// },
// MonthlyOpt {
// dom: u32,
// months: Vec<chrono::Month>,
// },
// Monthly {
// dom: u32,
// },
// Weekly {
// dow: u32,
// },
// Daily,
// }
// #[derive(Serialize, Deserialize, Debug)]
// struct Position {
// name: String,
// pattern: Pattern,
// }
fn is_done(bytes: &[u8]) -> bool {
return bytes == b"- [x]" // done
|| bytes == b"- [n]" // no
|| bytes == b"- [i]" // into issue
|| bytes == b"- [d]" // someone else did it / took "assignment" (spiritual or actually in Gitea)
|| bytes == b"- [r]" // tried unsucessfully, have to retry
|| bytes == b"- [m]" // moved to a later, specified time
|| bytes == b"- [c]" // i will come back to this when i feel like it, but no need to track it now
|| bytes == b"- [p]" // Made progress, but not done
|| bytes == b"- [q]"; // deprecated / morphed into another todo
}
fn update_notes(notes_path: &Path) {
let mut file = OpenOptions::new()
.read(true)
.write(true)
.open(notes_path)
.expect("file should exist");
let mut bufreader = BufReader::new(&file);
let mut linebuf = String::new();
let mut all_lines = String::new();
let mut latest_date = NaiveDate::MIN;
let mut lines_to_not_use: Vec<usize> = Vec::new();
// Find todo-type lines
let mut n_lines = 0;
while let Ok(n) = bufreader.read_line(&mut linebuf) {
if n == 0 {
break;
}
if linebuf == "\n" {
linebuf.clear();
continue;
}
let trimmed_str = linebuf.trim();
let trimmed_bytes = trimmed_str.as_bytes();
dbg!(&linebuf, trimmed_str, trimmed_bytes);
let Some(prefix) = trimmed_bytes.get(0..5) else {
continue;
};
if prefix == b"- [ ]" || is_done(prefix) {
all_lines.push_str(&linebuf);
n_lines += 1;
} else if trimmed_bytes.get(0) == Some(&b'#') {
if let Some(header_cont) = trimmed_str.get(1..)
&& let Ok(date) = NaiveDate::parse_from_str(header_cont, "%Y-%m-%d")
{
if date > latest_date {
latest_date = date;
}
}
}
linebuf.clear();
}
let mut todos_hashset: HashSet<&str> = HashSet::new();
let split_lines = all_lines.rsplit("\n");
for (rev_idx, line) in split_lines.enumerate() {
let org_idx = n_lines - rev_idx;
let trimmed_str = line.trim();
let trimmed_bytes = trimmed_str.as_bytes();
let Some(prefix) = trimmed_bytes.get(0..5) else {
continue;
};
let Some(todotext) = trimmed_str.get(6..) else {
continue;
};
if !todos_hashset.insert(todotext) || is_done(prefix) {
lines_to_not_use.push(org_idx);
}
}
// line break as needed
bufreader.seek(std::io::SeekFrom::End(-2)).unwrap_or_else(|e| panic!("file is shorter than two characters. you dont need a todo program for that amount of todos, enjoy your life. Error is: {e}"));
let mut last_two_bytes = [0u8, 0u8];
bufreader.read_exact(&mut last_two_bytes).unwrap_or_else(|e| panic!("file is shorter than two characters. you dont need a todo program for that amount of todos, enjoy your life. Error is: {e}"));
if last_two_bytes != *b"\n\n" {
write!(linebuf, "\n").unwrap_or_else(|e| panic!("{e}"));
}
// Header line
let today = Local::now().date_naive();
if latest_date < today {
writeln!(linebuf, "# {}\n", today).unwrap_or_else(|e| panic!("{e}"));
} else {
println!("Come back tomorrow!"); // TODO Handle this
return;
}
let mut cur = lines_to_not_use.len() - 1;
for (idx, line) in all_lines.split("\n").enumerate() {
if lines_to_not_use.get(cur).unwrap() == &idx {
cur = cur.saturating_sub(1);
} else {
writeln!(linebuf, "{line}").unwrap_or_else(|e| panic!("{e}"));
}
}
file.write_all(linebuf.as_bytes()).unwrap_or_else(|e| panic!("Maaan look out for these files. Error is: {e}"));
}
// fn parse_patterns(notes_path: &Path, patterns_path: &Path) {
// // Put all patternized todos into today
// }
fn main() {
let args = Args::parse();
update_notes(&args.notes);
// if let Some(patterns_path) = args.patterns {
// parse_patterns(&args.notes, &patterns_path);
// }
}

139
bezier.py Normal file
View File

@@ -0,0 +1,139 @@
import matplotlib.pyplot as plt
import matplotlib.animation as animation
import math
import numpy as np
def binom(n,k):
return math.factorial(n) / (math.factorial(k) * math.factorial(n - k))
def bernstein(n,t):
return [binom(n,i) * t**i * (1-t)**(n-i) for i in range(n + 1)]
def d(x1,x2,y1,y2):
return ( (x2 - x1)**2 + (y2 - y1)**2 )**0.5
data_raw = [
[235.00,575.00], [233.17,556.00], [233.17,556.00],
[233.17,556.00], [231.00,527.00], [231.00,527.00],
[231.00,527.00], [230.00,511.00], [230.00,511.00],
[229.94,475.20], [229.45,449.75], [236.60,414.00],
[239.09,401.53], [242.12,389.00], [246.34,377.00],
[248.41,371.15], [251.27,365.69], [258.00,364.52],
[261.15,363.97], [268.57,365.36], [272.00,365.92],
[272.00,365.92], [301.00,371.63], [301.00,371.63],
[337.38,380.56], [372.25,392.25], [404.00,412.69],
[416.22,420.56], [427.67,428.72], [438.00,439.00],
[440.89,441.88], [448.02,450.26], [452.00,450.27],
[454.77,450.27], [458.80,446.99], [461.00,445.37],
[461.00,445.37], [477.00,434.33], [477.00,434.33],
[477.00,434.33], [516.00,411.14], [516.00,411.14],
[521.98,407.82], [534.70,400.58], [541.00,399.47],
[550.35,397.82], [561.69,407.46], [570.00,411.74],
[572.89,413.23], [576.70,415.53], [580.00,415.18],
[582.08,414.97], [588.67,412.13], [591.00,411.20],
[591.00,411.20], [611.00,403.42], [611.00,403.42],
[625.33,398.06], [645.91,392.72], [661.00,389.80],
[661.00,389.80], [703.00,384.00], [703.00,384.00],
[703.00,384.00], [712.00,384.00], [712.00,384.00],
[712.00,384.00], [724.00,383.00], [724.00,383.00],
[751.41,382.96], [772.23,382.21], [799.00,374.57],
[813.18,370.53], [828.67,363.19], [841.00,355.14],
[848.30,350.37], [855.56,343.39], [863.00,340.00],
[864.22,346.33], [860.96,350.07], [859.21,356.00],
[857.26,362.60], [857.54,370.69], [860.35,377.00],
[868.65,395.69], [891.13,403.38], [909.00,409.33],
[933.40,417.47], [952.26,425.77], [975.00,437.78],
[987.65,444.46], [1000.18,452.30], [1012.00,460.34],
[1015.70,462.86], [1021.34,468.39], [1025.99,466.08],
[1028.91,464.62], [1038.31,452.38], [1041.28,449.00],
[1048.84,440.41], [1057.91,432.59], [1067.00,425.65],
[1096.71,402.96], [1138.78,385.68], [1175.00,376.63],
[1175.00,376.63], [1208.00,368.40], [1208.00,368.40],
[1212.37,367.54], [1219.67,365.79], [1223.81,368.40],
[1227.93,370.55], [1230.21,378.63], [1231.67,383.00],
[1235.53,394.58], [1240.24,412.98], [1242.25,425.00],
[1248.69,463.61], [1250.00,501.06], [1245.84,540.00],
[1245.84,540.00], [1239.79,578.00], [1239.79,578.00],
[1238.16,585.67], [1235.64,593.15], [1235.00,601.00],
[1241.19,599.47], [1245.20,595.25], [1250.00,591.25],
[1250.00,591.25], [1271.00,573.17], [1271.00,573.17],
[1301.63,545.60], [1327.90,515.83], [1351.41,482.00],
[1351.41,482.00], [1373.72,447.00], [1373.72,447.00],
[1375.36,444.16], [1379.24,436.87], [1383.56,439.28],
[1388.01,441.76], [1381.78,454.41], [1380.42,458.00],
[1380.42,458.00], [1357.72,515.00], [1357.72,515.00],
[1330.50,578.08], [1300.28,629.25], [1260.29,685.00],
[1260.29,685.00], [1227.58,726.00], [1227.58,726.00],
[1221.64,732.97], [1214.42,739.11], [1215.10,749.00],
[1215.53,755.32], [1221.42,767.85], [1224.14,774.00],
[1235.06,798.70], [1251.02,819.02], [1270.00,838.00],
[1270.00,838.00], [1293.99,859.20], [1293.99,859.20],
[1297.51,862.12], [1302.08,865.88], [1301.51,871.00],
[1301.04,875.17], [1296.56,880.76], [1294.00,884.00],
[1294.00,884.00], [1276.00,906.00], [1276.00,906.00],
[1248.58,937.78], [1225.95,961.62], [1194.00,989.13],
[1094.90,1074.47], [971.72,1130.24], [842.00,1147.72],
[820.90,1150.56], [799.27,1152.97], [778.00,1153.00],
[778.00,1153.00], [761.00,1154.00], [761.00,1154.00],
[761.00,1154.00], [720.00,1153.00], [720.00,1153.00],
[720.00,1153.00], [710.00,1152.09], [710.00,1152.09],
[710.00,1152.09], [679.00,1149.72], [679.00,1149.72],
[672.74,1148.96], [657.43,1146.64], [652.00,1147.17],
[638.98,1148.45], [637.72,1151.92], [628.00,1155.91],
[620.06,1159.17], [610.56,1160.65], [602.00,1159.83],
[569.31,1156.71], [523.63,1143.05], [493.00,1130.80],
[418.51,1101.00], [346.38,1052.53], [287.00,998.83],
[253.81,968.81], [224.81,936.35], [197.42,901.00],
[197.42,901.00], [179.34,876.00], [179.34,876.00],
[176.97,872.48], [173.45,867.50], [174.35,863.00],
[175.36,857.98], [182.19,853.60], [186.00,850.55],
[192.40,845.43], [204.46,834.84], [209.91,829.00],
[222.15,815.87], [232.76,802.18], [242.32,787.00],
[242.32,787.00], [251.80,771.00], [251.80,771.00],
[252.93,769.08], [254.85,765.20], [256.49,763.93],
[258.42,762.45], [267.16,760.82], [270.00,760.21],
[270.00,760.21], [299.00,754.00], [299.00,754.00],
[247.20,699.70], [203.92,634.86], [168.31,569.00],
[168.31,569.00], [146.26,524.00], [146.26,524.00],
[146.26,524.00], [119.81,460.00], [119.81,460.00],
[118.69,457.06], [115.36,447.70], [115.01,445.00],
[114.71,442.72], [115.05,439.63], [118.07,439.63],
[121.71,439.63], [124.95,446.26], [126.68,449.00],
[126.68,449.00], [146.02,479.00], [146.02,479.00],
[163.90,504.93], [184.76,528.76], [207.00,551.00],
[213.14,557.14], [227.44,572.42], [235.00,575.00],
]
for p in data_raw:
p[0] = (p[0] - 750.0) / 1000.0
p[1] = (750.0 - p[1]) / 1000.0
x = []
y = []
for i in range(int((len(data_raw) - 1) / 3)):
idx = i * 3
# dis = d(data_raw[idx+1][0], data_raw[idx+4][0], data_raw[idx+1][1], data_raw[idx+4][1])
b1 = [data_raw[idx+i][0] for i in range(1,5)]
b2 = [data_raw[idx+i][1] for i in range(1,5)]
for t in np.linspace(0,1,200):
b = bernstein(len(b1) - 1, t)
x.append(sum([b[i] * b1[i] for i in range(len(b1))]))
y.append(sum([b[i] * b2[i] for i in range(len(b2))]))
proc_x = []
proc_y = []
for (re, im) in zip(x,y):
if len(proc_x) == 0 or d(re, proc_x[-1], im, proc_y[-1]) > 0.01:
proc_x.append(re)
proc_y.append(im)
print(proc_x)
print(proc_y)
print(len(proc_x))
plt.scatter(proc_x,proc_y)
# fig, ax = plt.subplots()
# ani = animation.FuncAnimation(fig=fig, func=update, frames=1000, interval=1)
plt.show()

1
fourier_epicycles/.gitignore vendored Normal file
View File

@@ -0,0 +1 @@
target/

4235
fourier_epicycles/Cargo.lock generated Normal file

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,10 @@
[package]
name = "fourier_epicycles"
version = "0.1.0"
edition = "2024"
[dependencies]
eframe = "0.33.3"
egui = "0.33.3"
egui_plot = "0.34.0"
num = "0.4.3"

File diff suppressed because one or more lines are too long

510
notes.md
View File

@@ -3,6 +3,8 @@ i: into issue
d: someone else did it / took "assignment" (spiritual or actually in Gitea)
r: tried unsucessfully, have to retry
m: moved to a later, specified time
c: i will come back to this when i feel like it, but no need to track it now
p: Made progress, but not done
# 2025-11-18
@@ -453,34 +455,33 @@ m: moved to a later, specified time
# 2025-12-19
- [x] Thomas 10 Uhr
- [ ] GTH Doc anpassen
- [ ] masterdoc anpassen
- [x] "Auszug unserer Referenzen"
- [x] pandaloop.de
- [x] Smarter Einstieg Header über Console
- [ ] Abbinder wir freuen uns + Gimmick
- [ ] Cloud zu Business Software
- [ ] Luftiger (3 Seiten)
- [ ] Chaotische IT umformulieren (komplex, viele verschiedene IT-Systeme, unübersichtlich)
- [ ] Unzufrieden mit *der* Website
- [ ] Identität -> CI (ausf.)
- [ ] per Hand -> Noch kein CRM in Benutzung
- [ ] *Werbe*-E-Mails
- [ ] *CRM*-Erweiterung
- [ ] um *vielfältiges / individuelles* Filtersystem
- [ ] Kassen fallen oft aus -> Kassensysteme sind fehleranfällig
- [ ] offener -> Open-Source
- [ ] nicht gebunden, flexibel, unabhängig
- [ ] Abkehr von teuren Lizenzmodellen
- [ ] GTH: Auch im Text explizit sein (Ticketsystem, bargeldloser Hof, Verlässlichkeit, Seriös)
- [ ] stabile Basis -> Stabiles IT-Basissystem
- [ ] neue spannende Projekte
- [ ] *ermöglichen*
- [x] Chaotische IT umformulieren (komplex, viele verschiedene IT-Systeme, unübersichtlich)
- [x] Unzufrieden mit *der* Website
- [x] Identität -> CI (ausf.)
- [x] per Hand -> Noch kein CRM in Benutzung
- [x] *Werbe*-E-Mails
- [x] *CRM*-Erweiterung
- [n] um *vielfältiges / individuelles* Filtersystem
- [x] Kassen fallen oft aus -> Kassensysteme sind fehleranfällig
- [x] offener -> Open-Source
- [x] nicht gebunden, flexibel, unabhängig
- [n] Abkehr von teuren Lizenzmodellen
- [x] GTH: Auch im Text explizit sein (Ticketsystem, bargeldloser Hof, Verlässlichkeit, Seriös) - [n] stabile Basis -> Stabiles IT-Basissystem
- [x] neue spannende Projekte
- [x] *ermöglichen*
- [n] IT von einer Schwäche zu einer Stärke machen
- [x] Neue Umsätze, optimierte Abläufe
- [x] Adbelt Schlusssatz dazu
- [x] Adbelt: Satz mit "Erweiterbarkeit" zu verschachtelt
- [x] "Was hats gebracht": Verwaltung automatisiert, viel Zeit sparen, richtig arbeiten können (auch im Text)
- [ ] Insgesamt: Mehr Fokus auf Gains + Fazit
- [x] Insgesamt: Mehr Fokus auf Gains + Fazit
- [x] STG: Schlusssatz
- [ ] Island: Cloud Produkt zu Business Software Produkt
- [ ] Anh-Tuan schreiben
@@ -493,13 +494,470 @@ m: moved to a later, specified time
- [ ] Change Handelsregister (Notar does this)
- [ ] NEXT DOOR in Person besichtigen (bis Ende des Jahres)
## Hypelist
# 2025-12-22
- Aqualand
- Remagen
- Netcologne
- GTH HA
- GTH Odoo
- Justfit Next Door
- Adbelt
- Schokoladenmuseum
- [r] masterdoc anpassen
- [r] Abbinder wir freuen uns + Gimmick
- [r] Cloud zu Business Software
- [r] Luftiger (3 Seiten)
- [ ] Physik
- [ ] Nextcloud aufräumen
- [x] Zocken
- [x] Mika Geld schicken
- [x] Sachausgabe in cow_hours
- [x] Mockup AWH
- [x] Gehälter
- [ ] Island: Cloud Produkt zu Business Software Produkt
- [ ] Anh-Tuan schreiben
- [ ] Kreditbedingungen Wojtek herausfinden?
- [ ] Sehtest / Brille
- [ ] Wojtek & R1
- [ ] Termin vereinbaren
- [ ] Hold GSV for Wojteks end at PL
- [ ] Hold notary appointment for both Anteilskauf and GF-Abberufung
- [ ] Change Handelsregister (Notar does this)
- [ ] NEXT DOOR in Person besichtigen (bis Ende des Jahres)
# 2025-12-23
- [ ] Physik
- [r] GTH Doc anpassen
- [r] Abbinder wir freuen uns + Gimmick
- [r] Cloud zu Business Software
- [r] Luftiger (3 Seiten)
- [ ] CTA noch mehr inhaltlich (sprechen gut, aber auch inhaltlich ("transformieren" oder so))
- [ ] backslash in hallo@pandaloop.de
- [ ] Tool-Übersicht (Software die wir einsetzen können (Odoo, HA, Rust, MikroTik))
- [ ] Proposal Dokument touch ups
- [ ] Buch abholen
- [ ] Wann Deadline für unsere privaten Steuererklärungen
- [ ] Wojtek
- [ ] Cow hours bugs (pre und post runden)
- [ ] Nextcloud aufräumen
- [ ] Island: Cloud Produkt zu Business Software Produkt
- [ ] Anh-Tuan schreiben
- [ ] Kreditbedingungen Wojtek herausfinden?
- [ ] Sehtest / Brille
- [ ] Wojtek & R1
- [ ] Termin vereinbaren
- [ ] Hold GSV for Wojteks end at PL
- [ ] Hold notary appointment for both Anteilskauf and GF-Abberufung
- [ ] Change Handelsregister (Notar does this)
- [ ] NEXT DOOR in Person besichtigen (bis Ende des Jahres)
# 2025-12-23
- [x] Physik
- [r] GTH Doc anpassen
- [r] Abbinder wir freuen uns + Gimmick
- [r] Cloud zu Business Software
- [r] Luftiger (3 Seiten)
- [ ] CTA noch mehr inhaltlich (sprechen gut, aber auch inhaltlich ("transformieren" oder so))
- [ ] backslash in hallo@pandaloop.de
- [ ] Tool-Übersicht (Software die wir einsetzen können (Odoo, HA, Rust, MikroTik))
- [ ] Proposal Dokument touch ups
- [x] Buch abholen
- [ ] Wann Deadline für unsere privaten Steuererklärungen
- [ ] Wojtek
- [ ] Cow hours bugs (pre und post runden)
- [ ] Nextcloud aufräumen
- [ ] Island: Cloud Produkt zu Business Software Produkt
- [ ] Anh-Tuan schreiben
- [ ] Kreditbedingungen Wojtek herausfinden?
- [ ] Sehtest / Brille
- [ ] Wojtek & R1
- [ ] Termin vereinbaren
- [ ] Hold GSV for Wojteks end at PL
- [ ] Hold notary appointment for both Anteilskauf and GF-Abberufung
- [ ] Change Handelsregister (Notar does this)
- [ ] NEXT DOOR in Person besichtigen (bis Ende des Jahres)
# 2025-12-29
- [x] Proposal Dokument touch ups
- [r] masterdoc anpassen
- [r] Abbinder wir freuen uns + Gimmick
- [r] Cloud zu Business Software
- [r] Luftiger (3 Seiten)
- [ ] CTA noch mehr inhaltlich (sprechen gut, aber auch inhaltlich ("transformieren" oder so))
- [ ] backslash in hallo@pandaloop.de
- [ ] Tool-Übersicht (Software die wir einsetzen können (Odoo, HA, Rust, MikroTik))
- [x] Wann Deadline für unsere privaten Steuererklärungen -> 30.04.2026
- [x] Wojtek anschreiben
- [x] Januar Üebrlegungen mit Hassan
- [x] Aqualand
- [x] Remagen
- [x] Netcologne
- [x] GTH HA
- [x] GTH Odoo
- [x] Justfit Next Door
- [x] Adbelt
- [x] Schokoladenmuseum
- [x] Intratone
- [ ] Cow hours bugs (pre und post runden)
- [ ] Nextcloud aufräumen
- [ ] Island: Cloud Produkt zu Business Software Produkt
- [x] Anh-Tuan schreiben
- [ ] Kreditbedingungen Wojtek herausfinden?
- [ ] Sehtest / Brille
- [ ] Wojtek & R1
- [ ] Termin vereinbaren
- [ ] Hold GSV for Wojteks end at PL
- [ ] Hold notary appointment for both Anteilskauf and GF-Abberufung
- [ ] Change Handelsregister (Notar does this)
- [ ] NEXT DOOR in Person besichtigen (bis 06.01.)
# 2026-01-02
- [r] masterdoc anpassen
- [r] Abbinder wir freuen uns + Gimmick
- [r] Cloud zu Business Software
- [r] Luftiger (3 Seiten)
- [ ] CTA noch mehr inhaltlich (sprechen gut, aber auch inhaltlich ("transformieren" oder so))
- [ ] backslash in hallo@pandaloop.de
- [ ] Tool-Übersicht (Software die wir einsetzen können (Odoo, HA, Rust, MikroTik))
- [ ] Rechnung GTH
- [ ] Rechnung Tim + Report
- [ ] ICDSA angucken
- [ ] Graphite angucken
- [n] Cow hours bugs (pre und post runden)
- [ ] Nextcloud aufräumen
- [ ] Island: Cloud Produkt zu Business Software Produkt
- [ ] Kreditbedingungen Wojtek herausfinden?
- [ ] Sehtest / Brille
- [ ] Wojtek & R1
- [ ] Termin vereinbaren
- [ ] Hold GSV for Wojteks end at PL
- [ ] Hold notary appointment for both Anteilskauf and GF-Abberufung
- [ ] Change Handelsregister (Notar does this)
- [ ] NEXT DOOR in Person besichtigen (bis 06.01.)
# 2026-01-05
- [x] masterdoc anpassen
- [x] Abbinder wir freuen uns + Gimmick
- [x] Cloud zu Business Software
- [x] Luftiger (3 Seiten)
- [x] CTA noch mehr inhaltlich (sprechen gut, aber auch inhaltlich ("transformieren" oder so))
- [x] backslash in hallo@pandaloop.de
- [x] Tool-Übersicht (Software die wir einsetzen können (Odoo, HA, Rust, MikroTik))
- [x] Rechnung GTH
- [x] Rechnung Tim + Report
- [r] Bundesanzeiger Unstimmigkeitsmeldung
- [ ] Physik
- [x] Island: Cloud Produkt zu Business Software Produkt
- [ ] ICDSA angucken
- [ ] Graphite angucken
- [ ] Nextcloud aufräumen
- [ ] Sehtest / Brille
- [ ] NEXT DOOR in Person besichtigen
- [ ] Wojtek & R1
- [ ] Kreditbedingungen herausfinden
- [ ] Termin vereinbaren
- [ ] Hold GSV for Wojteks end at PL
- [ ] Hold notary appointment for both Anteilskauf and GF-Abberufung
- [ ] Change Handelsregister (Notar does this)
# 2026-01-06
- [x] Tim antworten
- [ ] Bundesanzeiger Unstimmigkeitsmeldung
- [x] Thomas Meeting
- [x] Erster Text griffiger / expliziter "Was machen wir anders / besonders:" ("zuverlässig", "verlässlich", "schnell", "allumfassend")
- [x] Kundenzitat
- [n] Schnelle Auffassungsgabe
- [x] "kurz gesagt: Egal was dein IT-Problem ist, wir können helfen."
- [x] "Ich habe nicht geglaubt, dass die eierlegende Wollmilchsau wirklich existiert. Pandaloop hat mich eines besseren belehrt."
- [x] Griffiger, Mehr Arroganz, knapper, evtl. Kundenstimme, schon noch kurze Antwort auf "Was" drin haben
- [x] CTA: "Lassen Sie uns über Ihre IT sprechen."
- [c] Website: auch ein CTA
- [c] Website: Interaktive Elemente (Bot, In Kontakt treten, Preis-Rechner)
- [ ] Website: Thomas auf Website
- [x] Kübra antworten (UstIDNr Meldung)
- [ ] Thomas Mail Feedback
- [ ] Physik
- [ ] ICDSA angucken
- [ ] Graphite angucken
- [ ] Nextcloud aufräumen
- [ ] Sehtest / Brille
- [ ] NEXT DOOR in Person besichtigen
- [ ] Wojtek & R1
- [ ] Kreditbedingungen herausfinden
- [ ] Termin vereinbaren
- [ ] Hold GSV for Wojteks end at PL
- [ ] Hold notary appointment for both Anteilskauf and GF-Abberufung
- [ ] Change Handelsregister (Notar does this)
# 2026-01-07
- [x] Bundesanzeiger Unstimmigkeitsmeldung -> mal schauen obs funktioniert
- [ ] Anh-Tuan
- [p] Netcologne Doc -> Draft
- [ ] Bob
- [ ] Physik
- [ ] ICDSA angucken
- [ ] Graphite angucken
- [ ] Nextcloud aufräumen
- [ ] Sehtest / Brille
- [ ] NEXT DOOR in Person besichtigen
- [ ] Wojtek & R1
- [ ] Kreditbedingungen herausfinden
- [ ] Termin vereinbaren
- [ ] Hold GSV for Wojteks end at PL
- [ ] Hold notary appointment for both Anteilskauf and GF-Abberufung
- [ ] Change Handelsregister (Notar does this)
# 2026-01-08
- [ ] Physik
- [x] Bell Theorem
- [ ] Lernplan
- [ ] Anh-Tuan
- [ ] Netcologne Doc
- [ ] Bob
- [x] Aqualand Thomas
- [x] Spotify Player
- [x] Essen
- [x] Zoggen
- [ ] DnD Character
- [ ] NEXT DOOR in Person besichtigen
- [c] ICDSA angucken
- [c] Graphite angucken
- [c] Nextcloud aufräumen
- [c] Sehtest / Brille
- [ ] Wojtek & R1
- [ ] Kreditbedingungen herausfinden
- [ ] Termin vereinbaren
- [ ] Hold GSV for Wojteks end at PL
- [ ] Hold notary appointment for both Anteilskauf and GF-Abberufung
- [ ] Change Handelsregister (Notar does this)
# 2026-01-09
- [ ] Physik
- [ ] Lernplan (GT, Prüfungen, P5, Recr)
- [ ] GT
- [ ] Anh-Tuan
- [ ] Netcologne Doc
- [ ] Bob
- [ ] DnD Character
- [ ] Wojtek & R1
- [ ] Kreditbedingungen herausfinden
- [ ] Termin vereinbaren
- [ ] Hold GSV for Wojteks end at PL
- [ ] Hold notary appointment for both Anteilskauf and GF-Abberufung
- [ ] Change Handelsregister (Notar does this)
# 2026-01-12
- [ ] Schild "keine Werbung"
- [ ] Aufräumen organisieren?
- [ ] Physik
- [ ] Lernplan (GT, Prüfungen, P5, Recr)
- [ ] GT
- [ ] Anh-Tuan
- [ ] Netcologne Doc
- [ ] Bob
- [ ] DnD Character
- [ ] Wojtek & R1
- [ ] Kreditbedingungen herausfinden
- [ ] Termin vereinbaren
- [ ] Hold GSV for Wojteks end at PL
- [ ] Hold notary appointment for both Anteilskauf and GF-Abberufung
- [ ] Change Handelsregister (Notar does this)
# 2026-01-13
- [ ] Mika Attest
- [ ] Corni Brief
- [p] Netcologne Doc
- [ ] Akquise
- [ ] Schild "keine Werbung"
- [ ] Aufräumen organisieren?
- [ ] Physik
- [ ] Bob
- [ ] Wojtek & R1
- [ ] Kreditbedingungen herausfinden
- [ ] Termin vereinbaren
- [ ] Hold GSV for Wojteks end at PL
- [ ] Hold notary appointment for both Anteilskauf and GF-Abberufung
- [ ] Change Handelsregister (Notar does this)
# 2026-01-14
- [ ] Mika Attest
- [x] Netcologne Doc
- [ ] Schild "keine Werbung"
- [ ] Aufräumen organisieren?
- [ ] Physik
- [ ] Bob
- [ ] Wojtek & R1
- [ ] Kreditbedingungen herausfinden
- [ ] Termin vereinbaren
- [ ] Hold GSV for Wojteks end at PL
- [ ] Hold notary appointment for both Anteilskauf and GF-Abberufung
- [ ] Change Handelsregister (Notar does this)
- [ ] E-Feld bei Kabeln
- [ ] Retardiertes Feld
# 2026-01-15
- [x] Pit Doc
- [ ] Akquise
- [ ] Physik
- [x] Jörg?
- [r] Uli?
- [ ] Wojtek?
- [x] Schild "Pandaloop" & "keine Werbung"
- [ ] Aufräumen organisieren?
- [ ] Bob
- [ ] Wojtek & R1
- [ ] Kreditbedingungen herausfinden
- [ ] Termin vereinbaren
- [ ] Hold GSV for Wojteks end at PL
- [ ] Hold notary appointment for both Anteilskauf and GF-Abberufung
- [ ] Change Handelsregister (Notar does this)
# 2026-01-16
- [ ] CRM updaten
- [x] Morello Code aktualisieren
- [x] Thomas Überweisung
- [ ] AWH
- [ ] Physik
- [ ] Aufräumen organisieren?
- [ ] Bob
- [ ] Wojtek & R1
- [ ] Termin vereinbaren
- [ ] Hold GSV for Wojteks end at PL
- [ ] Hold notary appointment for both Anteilskauf and GF-Abberufung
- [ ] Change Handelsregister (Notar does this)
# 2026-01-19
- [x] Remagen Meeting
- KI im Verkauf
- Prompting Fortbildung?
- Altlast abschaffen
- Herr Hammel
- Noch mehr Programme
- CSB wird mit IDs aufgerufen?
- unsere Aufgabe: Strukturiert zusammentragen
- 250 Mitarbeiter
- 2010:27M, Heute: 82M
- Digitalisierung ist das Hauptziel
- Beide ERPs benutzen
- Prozesse simulieren
- Alles kg
- Scanner bekommt keine EDI-Infos?
- Playbooks schreiben
- Rechte Hände vom Bollig
- Machines in ...GLT?
- Manuell oder händisch scannen
- Wareneingang, EK, Nummernkreise
- Haupteingang
- Morgen Aufgaben: 1. Realprozesse verstehen 2. Interaktionen mit System verstehen 3. Aufbau der Datensätze verstehen 4. Änderungsbedarfe an Datensätzen aufnehmen
Aktuelle Projekte:
- Odoo / Orion
- Bob
- Leads (Remagen)
- [r] Bob
- [x] GTH Doc einen Punkt adden (Hassan)
- [ ] Physik
- [x] CRM updaten
- [x] Bescheid geben wegen meiner Akquise
- [x] Bisschen Überblick bekommen (STG Rechnung zb hatte ich irgendwie nicht aufm Schirm)
- [ ] Solti Vertrag?
- [ ] ToDo-Automatisierungsprogramm?
- [ ] Neues Morello Programm?
- [ ] Wojtek & R1
- [ ] Termin vereinbaren
- [ ] Hold GSV for Wojteks end at PL
- [ ] Hold notary appointment for both Anteilskauf and GF-Abberufung
- [ ] Change Handelsregister (Notar does this)
# 2026-01-22
- [x] Thmomas meeting
- Außendarstellung: Nach Feedback fragen
- Yncoris als Projektarbeit
- Yncoris schon Termin?
- [x] Thomas Termin schicken Netcologne
- [x] Cow hours
- [x] Hassan Gespräch mit Elmar (bevor ihr die erste Rechnung schickt...) -> Nochmal Bedürfnisse klären (Stundenzettel, Eigenständigkeit, Rosa-Äquivalent)
- [x] Martin Termin shcicken
- [ ] Remagen
- [ ] Vertrag
- [ ] Stundendoc
- [ ] Repo
- [ ] Bob
- [ ] Physik
- [ ] Orion
- [ ] Vertrag
- [ ] Rechnung über Odoo / 12
- [n] ToDo-Automatisierungsprogramm? -> neues Todo
- [ ] Neues Morello Programm?
- [ ] Transparenzregister
- [ ] Wojtek & R1
- [ ] Termin vereinbaren
- [ ] Hold GSV for Wojteks end at PL
- [ ] Hold notary appointment for both Anteilskauf and GF-Abberufung
- [ ] Change Handelsregister (Notar does this)
# 2026-01-23
- [ ] Transparenzregister
- [ ] Compliance Check
- [ ] 2 Mails
- [d] Batuhan -> Hassan
- [ ] Larbig Mortag
- [ ] Aufräumen
- [ ] autotodo
- [ ] Alte ToDos
- [ ] Case handlen dass heute schonmal Programm ausgeführt wurde
- [ ] Patternized ToDos
- [ ] Remagen
- [ ] Vertrag
- [ ] Stundendoc
- [ ] Repo
- [ ] Bob
- [ ] Physik
- [ ] Orion
- [ ] Vertrag
- [ ] Rechnung über Odoo / 12
- [ ] Neues Morello Programm?
- [ ] Wojtek & R1
- [ ] Termin vereinbaren
- [ ] Hold GSV for Wojteks end at PL
- [ ] Hold notary appointment for both Anteilskauf and GF-Abberufung
- [ ] Change Handelsregister (Notar does this)

40
physics.md Normal file
View File

@@ -0,0 +1,40 @@
# Group Theory
## Basics
- Representation: p: G -> GL(V), a map from the group the set of linear maps from V to V (ambigous if Representation means the map p or the resulting set of linear maps)
- Lie Algebra: Vector space + inner product (vector product) that is bilinear, follows the jacobi identity, and has x*x = 0
## Wigner D/d-matrix (sheet 07) -> Dive into angular momentum maths
- Generator operators U(R) = exp(-ihJ), J: operator / infinitesimal rotation
- SO(3) has exactly one irrep of dim 1,3,5,... (=2j+1) -> How does this relate to number of eigenstates?
- SU(2) allows even dim as well (j = half-integer) because SU(2) is double cover of SO(3) -> research
- Wigner D-Matrix gives transition probabilities between eigenstates
- Eigenstates form basis when discrete
- When j= 3, m=-3,-2,-1,0,1,2,3 -> states |3m> are allowed -> real states are superpositions of these basis states / eigenstates -> 7-dim space needed to describe them (even though angular momentum needs only 3d classically) -> remember in general that degrees of freedom explode as 2^n because superpositions are allowed
- j fixes total angular momentum, m fixes z component
- angular momentum operator algebra is inherent to so(3) lie algebra
## Questions / open things
- Where does the inherent need for SO(3) come from? Why are the possible state spaces the irreps of SO(3)?
-> The operators that rotate states (in physical space) can be called U(R(theta)), where R in SO(3). There is a homomorphism between {U(R)} and SO(3), since U(R1R2)=U(R1)U(R2). Thus U(R) is a representation.
Enforcing finite-dim and irrep, this fixes dim = 2j+1.
- What about that L/J algebra? See "Lie Algebra" german wikipedia article -> Beispiele -> Aus der Physik -> Seems as though the relation does not only hold for those three "basis matrices", but all matrices, as long as your in the basis of the L_i (wtf even is a basis of matrices)
- Is there an intuitive notion to see how angular momentum emerges from the shapes of the wave functions?
- How does the emergence of azimuthal dependence in superpositions of (not azimuth-constraining) eigenstates play out mathematically?
- Why is SU(2) the double cover of SO(3)? What does that mean?
- What role do Pauli matrices play (generators of SO(2)? idk)
- How does one come up with the idea that operators and eigenvalues/vectors are the appropriate mathematical tools to describe QM? How does it arise? BC this alone imposes a lot of the quantization maths, since eigenvalues are discrete
- relation between Lie algebras and Lie groups not exactly clear
- Whats the algebra of exp of matrices -> https://de.wikipedia.org/wiki/Matrixexponential
- Is the generator exp(-ihJ) for SO(3) just the most convinient choice or the only choice?
## Next topics
- Character tables and relation between conjugacy classes and irreps
- Further sheets
- Further lectures, explicitly everything after lecture 09
- Wigner-Eckart Theorem (in lecture, sheet and indip research)
- Clebsch Gordan coeff as seperate research?