# 1. Alle Vokale vok.s = emu.query("florian", "*", "phonetic!=n") # 2. Vokal-Etikettierungen vok.l = label(vok.s) # gespannt oder nicht (primär- oder sekundärbetont?) vlab = nchar(vok.l) # Vokal-Etikettierung neu erzeugen vok.l = substring(vok.l, 1, 1) # 3. Formanten vok.fm = emu.track(vok.s, "fm") # 4. zum zeitlichen Mittelpunkt v5 = dcut(vok.fm, .5, prop=T) # 5. Ellipsen getrennt für ungespannt/gespannt (sek/prim betont) temp = vlab == 1 par(mfrow=c(1,2)) eplot(v5[temp,1:2], vok.l[temp], form=T, centroid=T) eplot(v5[!temp,1:2], vok.l[!temp], form=T, centroid=T) # ggf. Ausreißer entfernen, und 3-5 wiederholen # Die Bereiche setzen damit ungespannt/gespannt gleich sind xlim = c(400, 2800) ylim = c(150, 800) # Abbildung 1 - bitte auch beschriften eplot(v5[temp,1:2], vok.l[temp], form=T, centroid=T, xlim=xlim, ylim=ylim) eplot(v5[!temp,1:2], vok.l[!temp], form=T, centroid=T, xlim=xlim, ylim=ylim) # Zentroiden berechnen, getrennt für gespannt und ungespannt zen.u = apply(v5[temp,1:2], 2, mean) zen.g = apply(v5[!temp,1:2], 2, mean) # Euklidche Entfernungen zum Zentroiden, getrennt # für gespannt und ungespannt efun <- function(a, b) { # Funktion um eukl. Distanz zwichen 2 Vektoren # a und b zu berechnen sqrt(sum((a - b)^2)) } e = rep(0, nrow(v5)) e[temp] = apply(v5[temp,1:2], 1, efun, zen.u) e[!temp] = apply(v5[!temp,1:2], 1, efun, zen.g) par(mfrow=c(1,1)) # Abbildung 2 boxplot(e ~ vlab * vok.l) # Krümmung vergleichen zwischen ungespannt # gespannt (unbetont, betont) # F2 f2.dct = trapply(vok.fm[,2], dct, 2, simplify=T) f1.dct = trapply(vok.fm[,1], dct, 2, simplify=T) # Abbildung 3 boxplot(f2.dct[,2] ~ vlab * vok.l) # Abbildung 4 boxplot(f2.dct[,1] ~ vlab * vok.l)