\def\adchap#1{{\advance\chap#1{}\the\chap}}
\heading{Der Balken- und Bogensatz}
Im Gegensatz zu den bisher behandelten Notenschriftzeichen sind die
Balken und Bogen satztechnisch dadurch ausgezeichnet, da\3 sie in der
L"ange und Gestalt variieren k"onnen, so da\3 es nicht ausreicht, nur
ein Element in einem Font f"ur den Satz zur Verf"ugung zu stellen. Die
Neigung der Balken bzw. die Kr"ummung der Bogen ist abh"angig von den zu
verbindenden bzw. zu "uberspannenden Noten.

Au\3er den Faustregeln,
da\3 aus der Neigung des Balkens der Melodieverlauf
erkenntlich sein soll, um ein schnelleres Notenlesen zu erm"oglichen, und
da\3 der
Bogen  von Notenkopf zu Notenkopf verlaufen sollte, jedoch andere
Zeichen nicht schneiden darf, gibt es keine
expliziten Regeln f"ur den Satz dieser Notenschriftelemente.

\Beispiel
{\loose
\hsize10cm
\advance\hsize2\iindent
\parindent2\iindent
\beginsong
\vio\C
\group{\\{\a0}\\{\a2}\\{\a4}}{\\{0}\\{2}\\{4}}\ubeam13\go
\group{\\{\a4}\\{\a2}\\{\a0}}{\\{4}\\{2}\\{0}}\ubeam13\go
\group{\\{\a4}\\{\a6}}{\\{4}\\{6}}\lbeam12\uslur12\go
\group{\\{\a2}\\{\a4}}{\\{2}\\{4}}\ubeam12\lslur12\go
\group{\\{\h4}\\{\h2}}{\\{4}\\{2}}\uslur12\go\doublebarline
\endsong}
\vskip-1cm
\endBeispiel

Alle anderen Satzregeln m"ussen daher aus der Notenliteratur abgeleitet
werden. Es gilt also, Verfahren f"ur den automatischen Notensatz zu
entwickeln, die den ansonsten nicht notwendig einheitlichen
Handsatz so nachahmen, da\3 die Ergebnisse in den
meisten F"allen mit dem Handgesetzten "ubereinstimmen.

Die Verfahren f"ur den Balken- und Bogensatz gliedern sich in folgende
Abschnitte:
\item{1)} Berechnung der Steigung des Balkens bzw. der Sekantensteigung
des Bogens,

\item{2)} Diskretisierung der Steigungen und Zusammenstellung der
Balken bzw. Bogen aus den Zei\-chen\-s"at\-zen,

\item{3)} Endg"ultige Positionierung des Balkens bzw. Bogens.

\Bemerkung Die hier vorgestellte Vorgehensweise ist durch die Tatsache
bedingt, da\3 ein Textsatzprogramm verwendet wird und nicht
koordinaten-orientiert gearbeitet wird. Das Zeichnen der Balken w"are
im anderen Fall direkt und ohne  Diskretisierung
                                der berechneten Steigung
ausf"uhrbar.
\endBemerkung

\subheading{Entwicklung des Verfahrens zur Verbalkung}
Gesucht ist ein Verfahren zur \defi{Verbalkung} von Noten,
d.h. ein Verfahren,
das jede beliebige Folge von Noten $(N_i)_{i=1,\ldots,n}$ durch einen
(oder mehrere) Balken verbindet, so da\3 der Aufpunkt $P$ und die
Neigung $S$ der Balken dem Handgesetzten nahe kommt.

Ein solches Verfahren gliedert sich in drei Teilschritte:

\item{1)} Bestimmung der Balkensteigung.
\item{2)} Anpassung der Notenh"alse.
\item{3)} Bestimmung des Aufpunktes aller Balkenst"ucke der Notengruppe.

\Bemerkung
\item{1)}
Die Anzahl der Balken an einer Note stimmt mit der Anzahl der dem
Notenwert entsprechenden F"ahnchen (s. a. \the\chap.2.2) "uberein.
Alle Balkensteigungen innerhalb einer Notengruppe stimmen mit
der des "au\3ersten (d.h. des `Achtel'-Balkens) "uberein.
\item{}Es gen"ugt also, nur eine Steigung f"ur die ganze Notengruppe zu
berechnen.
\item{2)} Die Lage der Balken (oberhalb oder unterhalb der Notenk"opfe)
ist durch Regel N4b in \adchap{-1}.1 \XX festgelegt.
Die gemeinsame Richtung der
Notenh"alse kann zu jeder Folge von Noten bestimmt werden und sei
o.B.d.A. vorgegeben.
\item{3)} Die Balkensteigung ist nicht abh"angig von der absoluten
Tonh"ohe der Noten, sondern von der Position der Noten im Liniensystem.
Es gen"ugt also,
die interne Tonh"ohe der betroffenen Noten zu betrachten.
\endBemerkung

\subsubheading{Bestimmung der Balkensteigung}
F"ur die folgenden "Uberlegungen beschreibe $d\in\{-1,+1\}$ wie in
\adchap{-1}.2.2
die nach Regel N4c) bestimmte gemeinsame Richtung der Notenh"alse der
Balkengruppe.

\subsubsubheading{Das Vorzeichen der Steigung}
Betrachtet man zun"achst zwei Noten $N_1$ und $N_2$ mit zugeh"origen
internen Tonh"ohen $p_1$ und $p_2$,
dann gilt unabh"angig von der gemeinsamen Richtung der Notenh"alse
$d$ f"ur das
Vorzeichen der Steigung $S$:
$$\align \text{F"ur }p_1<p_2& \text{ gilt }S>0\;,\\
        \text{f"ur }p_1=p_2& \text{ gilt }S=0 \text { und }\\
        \text{f"ur }p_1>p_2& \text{ gilt }S<0 \;.\endalign%\tag{S$_1$}
        $$
d.h. die Balkensteigung entspricht der Tendenz des Melodieverlaufs.

\Beispiel
{\loose
\hsize10cm
\advance\hsize2\iindent
\parindent2\iindent
\beginsong
\vio\C
\group{\\{\a2}\\{\a3}}{\\{2}\\{3}}\ubeam12\go
\group{\\{\a3}\\{\a2}}{\\{3}\\{2}}\ubeam12\go
\group{\\{\a3}\\{\a8}}{\\{3}\\{8}}\lbeam12\go
\group{\\{\a6}\\{\a4}}{\\{6}\\{4}}\lbeam12\go
\group{\\{\a4}\\{\a4}}{\\{4}\\{4}}\lbeam12\go
\group{\\{\a3}\\{\a3}}{\\{3}\\{3}}\ubeam12\go
\=\endsong}
\vskip-1cm
\endBeispiel

Das Vorzeichen ist f"ur zwei beliebige Noten eindeutig festgelegt.

Dies gilt jedoch nicht mehr unbedingt f"ur Notengruppen mit mehr
Elementen. Man findet in der Literatur:

{\loose
\hsize8cm
\advance\hsize2\iindent
\parindent2\iindent
\beginsong
\vio\C
\group{\\{\a0}\\{\a1}\\{\a2}\\{\a3}}{\\{0}\\{1}\\{2}\\{3}}\ubeam14\go
\group{\\{\a2}\\{\a1}\\{\a0}}{\\{2}\\{1}\\{0}}\ubeam13\go
\group{\\{\a4}\\{\a8}\\{\a4}}{\\{4}\\{8}\\{4}}\lbeam13\go\=%
\endsong}
\vskip-1cm

Das Beispiel f"ur $p_1=p_n$ zeigt, da\3 hier die Steigung abh"angig von
der Tonh"ohe der ersten
und letzten Note bestimmt wurde.

Untersucht man andere
Notenkombinationen, so zeigt sich auch f"ur F"alle mit $p_1\ne p_n$,
da\3 die Neigung nach der ersten
und letzten Note bestimmt wurde.

\Beispiel
{\hsize 7cm
\loose
\advance\hsize2\iindent
\parindent2\iindent
\beginsong
\vio\C
\def\beamlist{\\{1-3,}\\{2-3,}}
\group{\\{\a6}\\{\s8}\\{\s2}}{\\{6}\\{8}\\{2}}\lbeam13\go
\def\beamlist{\\{1-\the\N,}}
\group{\\{\a4}\\{\a{12}}\\{\a{10}}\\{\a8}}{\\{4}\\{12}\\{10}\\{8}}%
\lbeam14\go\=%
\endsong}
\vskip-1cm
\endBeispiel

Allgemein gilt f"ur $n>2$:
$$\align \text{F"ur }p_1<p_n&\text{ gilt }S\ge0\;,\\
        \text{f"ur }p_1=p_n&\text{ gilt }S=0 \text { und }\\
        \text{f"ur }p_1>p_n&\text{ gilt }S\le0 \;.\endalign%\tag{S$_2$}
        $$
Dabei gilt $S=0$, falls f"ur ein $i\in\{2,\ldots,n-1\}$ gilt:
$$\align &p_i\ge \max(p_1,p_n )\text{, falls }\quad d=1\;\\
\text{oder }& p_i\le \min(p_1,p_n)\text{, falls }\quad
d=-1\;.\endalign$$
Gibt es also innerhalb einer Notengruppe, deren Notenh"alse nach oben
gestielt sind, Noten, deren Tonh"ohe gr"o\3er oder gleich der Tonh"ohe
der h"ohergelegenen ``Randnote'' ist, so  wird der Balken nicht
geneigt. Weisen alle Notenh"alse nach unten,
so wird die jeweils tiefergelegene ``Randnote'' betrachtet.
\Beispiel
\par\noindent\vbox{\hsize 6cm
\loose
\advance\hsize2\iindent
\parindent2\iindent
\beginsong
\vio\C
\group{\\{\a4}\\{\a3}\\{\a5}}{\\{4}\\{3}\\{5}}\lbeam13\go
\group{\\{\a0}\\{\a3}\\{\a3}}{\\{0}\\{3}\\{3}}\ubeam13\go\=%
\endsong}
\vskip-1cm
\endBeispiel

Das Vorzeichen der Steigung wird also
nach der Konstellation der ersten und
letzten Note der Balkengruppe bestimmt.

\subsubsubheading{Der Betrag  der Steigung}
Sei im folgenden \folgi Nin eine Folge von Noten, f"ur die nach den
obigen Bedingungen
die Steigung $S$ nicht verschwindet.
Um gr"o\3ere Steigungen zu vermeiden, wird der
Betrag der Steigung nicht nach der
Position der Notenk"opfe bestimmt wird, sondern bez"uglich der Endpunkte
der Notenh"alse.

Sei $E_i=(h_i,e_i)$ der Endpunkt des  Notenhalses von $N_i$, wobei $h_i$
den Abszissenwert des Notenhalses und $e_i:=\bar p_i+ d\cdot s^d(p_i)$
den
vertikalen Abstand von der Grundlinie angibt ($\bar p_i = p_i\cdot 0.5
\verbatimon|\nhh|$).

Aus diesen Werten kann allgemein die Steigung $S^*$ einer Geraden  durch
die Punkte $E_1$ und $E_n$ berechnet werden durch Bildung des
Differenzenquotienten
$$S^*=
\Frac{e_n-e_1}{h_n-h_1}\;.$$
Diese errechnete Steigung kann jedoch erst nach einigen weiteren
Korrekturen der Notenh"alse als endg"ulti\-ge Steigung f"ur den Balken
"ubernommen werden.
\subsubsubheading{Die Korrektur der Notenhalsl"angen}
Es sind zun"achst zwei verschiedene Korrekturen der Notenhalsl"angen
m"oglich.
\item{1)}
Wegen
$$\verbatimoff |s^d(p_1)-s^d(p_n)|\le|\bar p_1-\bar p_n|$$
gilt immer:
$$
\align &e_n-e_1\ge0 \text{ f"ur }p_1<p_n\;\\
\text{und }& e_n-e_1\le0\text{ f"ur }p_1>p_n\;.\endalign$$
\item{}
In  einigen F"allen wird
jedoch die strikte Positivit"at bzw. Negativit"at
von $S^*$ nicht mehr gew"ahrleis\-tet.

\Beispiel
{\hsize 4cm
\loose
\advance\hsize2\iindent
\parindent2\iindent
\beginsong
\vio\C
\  \v{-4}\v{-3}\v{11}\v{13}\hfill\null
\endsong}
\vskip-1cm
\endBeispiel

\item{}
In diesen F"allen m"ussen also die Notenhalsl"angen so korrigiert werden,
da\3 die Bedingung f"ur das  Vorzeichen der Steigung
erf"ullt ist, und eine betragsm"a\3ig
kleine Steigung
die Tendenz der Notengruppe ausdr"uckt.

\item{2)}Eine
weitere Korrektur  ergibt sich aus der Tatsache,
da\3 Balken mit einer Steigung von mehr als
$25^\circ $--$ 30^\circ$ geneigt sind, nicht
verwendet werden, da sie das Gesamtbild optisch unruhig erscheinen
lassen.
Da die Steigung  von der Differenz der  Abszissenwerte der Notenh"alse
abh"angig ist,
tritt dies h"aufig auf bei Notenpaaren
mit stark unterschiedlichen Tonh"ohen, z.B.

{\hsize 4cm
\advance\hsize2\iindent
\parindent2\iindent
\universal
\beginsong
\vio\C
\hskip20pt\v{-3}\v{3}  \hfill
\endsong}
\vskip-1cm\
\item{}
Die Korrektur sollte also dahin zielen, den Betrag der Balkensteigung so
zu verkleinern, da\3  die h"ochstzul"assige  Steigung angenommen wird.
Dies kann auf zwei Arten geschehen:
\itemitem{a)} Vergr"o\3ern des horizontalen Abstands, was aus den in
Kapitel \adchap{-2}.1
\XX angef"uhrten Gr"unden jedoch unzul"assig ist, und
\itemitem{b)} Verkleinern des vertikalen Abstandes durch Ver"andern der
Notenhalsl"angen.

\item{}Auch in diesem Fall ist also eine Korrektur der Notenhalsl"angen
erforderlich.

Aus den Beipielen in der Notenliteratur ergibt sich, da\3
die Korrektur der Notenhalsl"angen stets durch Verl"angern der
entsprechenden Notenh"alse erfolgt, nie durch Verk"urzen.

Die Verl"angerung der Notenh"alse ist nicht unabh"angig von der
gemeinsamen Notenhalsrichtung $d$. Es gilt
f"ur die zu den Noten $N_1$ und $N_n$ zugeh"origen Halsl"angen $s_1$ und
$s_n$ f"ur die zuerst vorgestellte Korrekturm"oglichkeit:
\verbatimon
$$\align \text{Ist }d\cdot(p_1-p_n)>0&\text{, so gilt }
s_1 =s^d(p_1)+0.5\hbox{|\nhh| und } s_n=s^d(p_n)\,,\\
  \text{und ist }d\cdot(p_1-p_n)<0&\text{, so gilt }
s_n =s^d(p_n)+0.5\hbox{|\nhh| und } s_1=s^d(p_1)\;.\endalign$$
Die zweite Korrektur wird wie folgt durchgef"uhrt:

Sei $h:=h_n-h_1$ die Differenz der Abzissen der Notenh"alse
und $\epsilon:=\sin\alpha$, wobei $\alpha$ den maximal zul"assigen
Neigungswinkel angibt. Dann gilt
$$\align \text{Ist }d\cdot(p_1-p_n)>0&\text{, so gilt }
s_1 =s^d(p_1)+\verbatimoff (|e_n-e_1| -\epsilon \cdot h)
\hbox{ und } s_n=s^d(p_n)\,,\\
  \text{und ist }d\cdot(p_1-p_n)<0&\text{, so gilt }
s_n =s^d(p_n)+\verbatimoff (|e_n-e_1| -\epsilon \cdot h)
\hbox{ und } s_1=s^d(p_1)\;.\endalign$$

Die der Notengruppe zugeh"orige Balkensteigung $S$ lautet nun:
$$S:=\Frac{(\bar p_n - \bar p_1) + d(s_n-s_1)}{h_n-h_1} $$

\Beispiel
\par
\input mdocpic2
\endBeispiel

\subsubsubheading{Die Diskretisierung der Balkensteigung}
Die Balkensteigung $S$ hat einen reellen Wertebereich, wenn man die oben
angef"uhrte Definition anwendet
($S\in\lbrack-\tan\alpha,\tan\alpha\rbrack\subset\rz$).

Wie schon in
\adchap{-4}.1.4 \XX  angedeutet, bietet \TeX\ au\3er Rules keine
M"oglichkeit, Linien zu setzen. Man w"urde also einen Balken beliebiger
Steigung aus gen"ugend kleinen ausgef"ullten Rechtecken zusammensetzen
m"ussen und dabei ein Optimierungsverfahren anwenden. Diese
Vorgehensweise w"are sowohl im Satz als auch in der Ausgabe sehr
zeitaufwendig und w"urde dennoch bei von Null verschiedenen Steigungen
eine sichtbare Treppenstruktur ergeben.

Es liegt daher nahe, die Balkensteigung zu diskretisieren und Balken
dieser Steigungen in einem eigenen Zeichensatz zusammenzufassen.

\Bemerkung
\item{1)}Das folgende Verfahren ist  nicht spezifisch f"ur das
Textsatzsystem \TeX, sondern k"onnte auch f"ur andere Satzsysteme
verwendet werden.
\item{2)}
Diese Vorgehensweise der Diskretisierung
findet man auch beim Typendruckverfahren,
das im wesentlichen zwei verschiedene Neigungen verwendet:
steile und flache (s. \lit{\genzmeier, S.119}).

\endBemerkung
Es sollen hier jedoch feinere Unterschiede gemacht werden:
\item{1)}Die Balkensteigung soll die errechnete m"oglichst realistisch
wiedergeben.
\item{2)}Die gr"o\3te Steigung entspricht $\tan\alpha$, wobei
$\alpha$ den maximal zul"assigen Neigungswinkel angibt. (Es gilt z.B.
$25^\circ\approx\arctan{\hbox{|\nhh|}\over\hbox{2|\nhw|}}=\arctan
0.\overline{45}$, falls |\nhw|=1.1|\nhh|.)

Gesucht ist eine Folge $0=m_0<m_1<\ldots<m_k\cong  0.45$, die die in
der Notenliteratur erforderlichen Steigungen wiedergibt.
(Als negative Steigungen ergeben sich dann $-m_i\;,\;i=0,\ldots,k$.)

Als Schranke $\eta>0$ f"ur den absoluten Fehler wurde das Zweifache der
Balkenst"arke gew"ahlt, so da\3 sich
bei Rundung auf den n"achsten diskreten
Steigungswert ein maximaler Fehler von $\eta/2$, d.h. der St"arke eines
Balkens ($\approx$0.6|\nhh|), ergibt.
Sei $\epsilon:=\max_{i=0,\ldots,k-1}\{m_{i+1}-m_i\}$, so gilt f"ur den
absoluten Fehler:
$$\verbatimoff |m_{i+1}-m_i|\cdot|h|<\eta\;.$$
Die Wahl von $\epsilon$ ist also abh"angig von $|h|$.
W"ahlt man acht verschiedene Steigungen, d.h. $k=8$, und als obere
Schranke $m_8=0.45$, so erh"alt man  f"ur
$\epsilon=\Frac{0.45}8\cong0.056$ die gew"unschte Genauigkeit f"ur
\verbatimoff
$|h|=\verbatimon{\hbox{1.2|\nhh|}\over\dsize0.056}\cong21\hbox{|\nhh|}
\cong20\hbox{|\nhw|}$.\verbatimon

Diese Genauigkeit wird also bei einer Verbalkung von zehn Achtelnoten
bei universellem Zeilenausschlu\3 (s. 5.1.1\XX) eingehalten. Dies ist
ausreichend, da selten l"angere Balken ben"otigt werden. Bei einer
Verbalkung von sechs Achtelnoten erreicht man eine Genauigkeit von
$\eta/2$.
Aus diesen Gr"unden wurde f"ur den Balkenzeichensatz  der
`Steigungssatz' $m_i=0.056\cdot i\,,$ $i=1,\ldots,8$ gew"ahlt.

Die Anpassung der oben berechneten Steigung $S$ an die im Zeichensatz
vorhandenen erfolgt f"ur
\verbatimoff$|S|\ge m_1$ durch Runden auf den n"achsten diskreten
Steigungswert $m_i$ mit $m_i\le |S|$ und
f"ur $0<|S|<m_1$ durch
Aufrunden auf $m_1$, damit die obigen Bedingungen f"ur das Vorzeichen der
Steigung auch bei diskretisierter Steigung erf"ullt bleiben.

\verbatimon
Stellt man den Zeichensatz so zusammen, da\3 zu jeder Steigung
Balkenst"ucke der Zeichenbreite $w_i:=\frac12\cdot 2^i\pt=2^{i-1}\pt$,
$i\in\{0,\ldots,7\}$ existieren, so k"onnen Balken beliebiger L"ange auf
$0.5\pt$ genau zusammengef"ugt werden, wobei die auf den Drucker
zu "ubertragende Anzahl der  Zeichen minimiert ist
Der dazu erstellte Zeichensatz ist im Anhang D zu finden.

\subsubheading{Die Anpassung der Notenhalsl"angen}
Da der Balkenverlauf nur nach der ersten und letzten Note bestimmt
wurde, aber die dazwischen liegenden Noten $N_2,\ldots,N_{n-1}$ beliebig
sind, ist es notwendig, zun"achst die "ubrigen Notenhalsl"angen
anzugleichen, abh"angig von den internen Tonh"ohen der inneren Noten
eine dritte Korrektur aller Notenh"alse durchzuf"uhren und abh"angig
von der Anzahl der zu setzenden Balkenreihen eventuell die Notenh"alse
durch eine vierte Korrektur erneut zu verl"angern.

\subsubsubheading{Das Angleichen der Notenh"alse}
Ausgehend vom
(eventuell korrigierten) Notenhalsendpunkt $E_1$ ist die L"ange des
Notenhalses $s_i$ von $N_i$ der vertikale Abstand des Notenkopfes vom
Balken. Es gilt:
$$s_i:= s_1+d(\bar p_1 -\bar p_i + S\cdot (h_i-h_1))\;,$$
wobei $S$ die angepa\3te diskretisierte Steigung ist und $d$ wiederum
die gemeinsame Notenhalsrichtung beschreibt.

\subsubsubheading{Die erste Verl"angerung der Notenh"alse}
Sei $\bar s$ die minimal zul"assige Halsl"ange innerhalb einer
Notengruppe. Dann sind zun"achst alle Halsl"angen der Gruppe um
$$s^*:=\max_{1\le i\le n}(0,\bar s-s_i)$$
zu verl"angern. Die Verl"angerung $s^*$ ist also nur positiv, falls f"ur
mindestens ein $i$ gilt $s_i<\bar s$, andernfalls ist keine Korrektur
notwendig.

Die minimal zul"assige Halsl"ange ist wie folgt bestimmt:
$$\bar s =\cases 2\hbox{|\nhh|}\,,&\text{falls
}s^d(p_1)\le3\hbox{|\nhh|}\text{ oder }
s^d(p_n)\le3\hbox{|\nhh|}\;,\\3\hbox{|\nhh|}\,,&\text{sonst.}\endcases$$
Es gilt also $\bar s=2\hbox{|\nhh|}$ f"ur $p\ge6$, falls $d=+1$ und f"ur
$p\le1$, falls $d=-1$.

Diese (willk"urlich festgelegten) Werte f"ur $\bar s$ haben sich in der
Praxis bew"ahrt.

\Beispiel
\par
\input mdocpic3
\endBeispiel

\subsubsubheading{Die zweite Verl"angerung der Notenh"alse}
Abh"angig von der Anzahl der Balkenreihen $r$ m"ussen die
Notenhalsl"angen eventuell nochmals korrigiert werden um
$$s^{**}:=\cases0\,,&\text{f"ur
}r\le2\,,\\(r-2)\hbox{|\nhh|}\,,&\text{f"ur }r>2\,.\endcases$$
Auch diese Werte sind heuristisch bestimmt.
\par
\subsubheading{%
Bestimmung des Aufpunktes aller Balken der Notengruppe}
Der Aufpunkt $P_{i,j}=(h_i,a_{i,j})\,,1\le i\le n$ und $1\le j\le r$,
der einzelnen Balken der Notengruppe
wird nun wie folgt bestimmt:
$$a_{i,j} = \bar p_i + d\cdot s_i + d\cdot r\cdot\hbox{|\nhh|}\;.$$
Dabei wird der Balken bis auf den Spezialfall eines ``Halbbalkens''
immer rechts vom Notenhals positioniert. Gilt ein Balken nur f"ur
eine Note, so wird er je nach Position der Note innerhalb der
Notengruppe links oder rechts vom Notenhals plaziert, z.B  immer links
f"ur $N_n$ und immer rechts f"ur $N_1$. Innerhalb der Gruppe richtet
sich die Position nach dem metrischen Gef"uge (s.\lit\ziegen). Ein
solcher Balken hat immer als L"ange die H"ohe
eines Notenkopfes.

\Beispiel
{\hsize 10cm
\advance\hsize2\iindent
\parindent2\iindent
\loose
\beginsong
\vio\C
\def\beamlist{\\{1-2,}\\{-2,}}
\group{\\{\a6\.1}\\{\s6}}{\\{6}\\{6}}\lbeam12\go
\def\beamlist{\\{1-2,}\\{1-1,}}
\group{\\{\s6}\\{\a7\.1}}{\\{6}\\{7}}\lbeam12\go
\def\beamlist{\\{1-4,}\\{-2,-4,}}
\group{\\{\a7\.1}\\{\s8}\\{\a6\.1}%
\\{\s7}}{\\{7}\\{8}\\{6}\\{7}}\lbeam14\go
\def\beamlist{\\{1-4,}\\{1-1,3-3,}}
\group{\\{\s7}\\{\a8\.1}\\{\s6}\\{\a7\.1}}
{\\{7}\\{8}\\{6}\\{7}}\lbeam14\go
\hfill\=%
\endsong}
\vskip-1cm
\endBeispiel

\subsubheading{Abschlie\3ende Bemerkungen zur Verbalkung}
Das obige
Verfahren zur Verbalkung l"a\3t sich auch f"ur Akkorde durchf"uhren,
wenn f"ur die interne Tonh"ohe die am weitesten von der jeweiligen
Bezugsnote entfernte Note zur Berechnung verwendet wird.

\Beispiel
{\hsize 4cm
\advance\hsize2\iindent
\parindent2\iindent
\loose
\beginsong
\vio\C%
\def\beamlist{\\{1-3,}\\{1-3,}}%
\group{\\{\b7\rchord\a7\a{-1}\endchord}\\{\rchord\a{14}\a8\endchord}
\\{\rchord\a{11}\a5\endchord}}{\\{-1}\\{8}\\{5}}\lbeam13\go\hfill
\endsong}
\vskip-1cm
\endBeispiel

\subheading{Entwicklung eines Verfahrens zur Phrasierung}

Gesucht ist ein Verfahren zur \defi{Phrasierung}
von Noten, d.h. ein Verfahren,
das jede beliebige Folge von Noten \folgi Nin mit zugeh"origen
Tonh"ohen \folgi pin, Notenhalsl"angen \folgi sin  und
Notenhalsrichtungen \folgi din mit einem Bogen "uberspannt.

Wie bei der Verbalkung mu\3 zun"achst entschieden werden, ob der Bogen
oberhalb oder unterhalb der Noten verl"auft. Verl"auft der Bogen
oberhalb, so ist eine konkave Form zu w"ahlen, andernfalls
eine konvexe Form.

Als Grundregel gilt:

\item{P1)}Bei einstimmiger Notation wird der Bogen von Notenkopf zu
Notenkopf gef"uhrt, so da\3 die betroffenen Noten deutlich erkennbar
sind, d.h. f"ur $d_1=d_n$ wird der Bogen
unterhalb der  Notenk"opfe gef"uhrt,
falls $d_1=+1$, und oberhalb,  falls $d_1=-1$.
\item{}
F"ur $d_1\ne d_n$ gibt es keine einheitliche Regelung, jedoch findet man
meistens (vor allem in der Vokalmusik) die Regelung, da\3 der Bogen
oberhalb
der Notenk"opfe gef"uhrt wird, um nicht in Konflikt mit unterlegtem Text
zu geraten.
\item{P2)} Bei zwei- (oder mehr-)stimmiger Notation gilt jedoch
allgemeing"ultig die Regelung, da\3 f"ur die Phrasierung  der Oberstimme
konkave Bogen und f"ur die Phrasierung der Unterstimme konvexe  Bogen
vorgeschrieben sind.

\Beispiel
{\universal
\hsize 10 cm
\advance\hsize2\iindent
\parindent2\iindent
\beginsong
\vio\C
\group{\\{\h5}\\{\h5}}{\\{5}\\{5}}\uslur12\go
\group{\\{\h3}\\{\h3}}{\\{3}\\{3}}\lslur12\go
\group{\\{\h4}\\{\h3}}{\\{4}\\{3}}\uslur12\go
\group{\\{\h3}\\{\h4}}{\\{3}\\{4}}\uslur12\go
\two{%
\group{\\{\h3}\\{\h7}}{\\{3}\\{7}}\uslur12\go}
{\group{\\{\h1}\\{\h4}}{\\{1}\\{4}}\lslur12\go}\=\endsong
}\vskip-1cm
\endBeispiel

Der Bogen wird im Gegensatz zum Balken
nicht dazu verwendet, den Melodieverlauf auszudr"ucken,
sondern wird abh"angig vom zur Verf"ugung stehenden Freiraum
positioniert, d.h. er darf innere Noten der Notengruppe nicht
durchkreuzen.

Beim Handnotensatz unterscheidet der Notensetzer Legato- und Haltebogen
von Phrasierungsbogen.

Legato- und Haltebogen sind k"urzer und meist schon als Stempel
vorhanden, w"ahrend Phrasierungsbogen freier  gestochen
werden und l"anger sind.

Legatobogen haben also f"ur eine bestimmte L"ange eine feste Kr"ummung,
w"ahrend Phrasierungsbogen in der Form variieren k"onnen.

Da \TeX\ nicht die graphischen M"oglichkeiten besitzt, Bogen zu
zeichnen, mu\3te eine Algorithmus gefunden werden, der Bogen mit einer
festen Kr"ummung bei gleicher Breite setzt.

Berechnet man also die Sekantensteigungen des Bogens, so ist der
zugeh"orige zu w"ahlende Bogen eindeutig bestimmt und in  einem
Zeichensatz speicherbar.

Daher ist es f"ur das Setzen eines Bogens
ausreichend, nur seine Sekantensteigung  zu berechnen und
diese zu diskretisieren.

\subsubheading{Bestimmung des Anfangs- und Endpunktes des Bogens}

O.B.d.A. seien im folgenden  Noten durch einen konkaven Bogen zu
"uberspannen. F"ur den konvexen Bogen lassen sich die "Uberlegungen
analog durchf"uhren.

Sei \folgi Nin eine Notengruppe. Seien
\folgi pin  die zugeh"origen Tonh"ohen und
$\bar p_i:=p_i\cdot0.5\hbox{|\nhh|} $ wie oben.
Seien  \folgi din die Richtungen der Notenh"alse,
        \folgi sin die zugeh"origen   Notenhalsl"angen und
        \folgi hin die Abszissenwerte der Notenh"alse.
\Bemerkung O.B.d.A. sei $h_1:=0$. Gilt
$d_i=0$  f"ur ein $i$,   so besitzt
die Note keinen Notenhals. In diesem Fall sei $h_i$
der Abszissenwert des Notenkopfmittelpunktes.
\endBemerkung
Dann gilt f"ur den Anfangspunkt $A_i$ des Bogens f"ur Noten, die nicht
mit aufw"arts gestielten Notenh"alsen verbalkt sind:
$$\matrix\format\r&\l&\l\\
\text{F"ur } &d_i=+1& \text{ gilt } A_i=(h_i+0.5\hbox{|\nhh|},
\bar p_i+\hbox{|\nhh|})\,,\\
       \text{f"ur } &d_i=0&\text{ gilt } A_i=(h_i,
\bar p_i+\hbox{|\nhh|})\,,\\
       \text{f"ur } &d_i=-1&\text{ gilt } A_i=(h_i+0.5\hbox{|\nhh|},
\bar p_i+\hbox{|\nhh|})\,.\endmatrix$$
Ist $N_i$ Element einer oberhalb der Notenk"opfe verbalkten Notengruppe,
so ist eine weitere Fallunterscheidung notwendig. Falls $N_i$ nicht das
\disp{letzte} Element der verbalkten Notengruppe ist, gilt:
$A_i =(h_i,\bar p_i+s_i+0.5\hbox{|\nhh|})\;.$
Dies gilt auch f"ur die letzte Note einer ``Balkengruppe'', falls die
Note des Bogenendes auf die gleiche Weise verbalkt wurde, andernfalls
gilt $A_i=    (h_i+0.5\hbox{|\nhh|},   \bar p_i+\hbox{|\nhh|})$.

F"ur den Endpunkt $E_i$ des Bogens f"ur Noten, die nicht
mit aufw"arts gestielten Notenh"alsen verbalkt sind, gilt:
$$\matrix\format\r&\l&\l\\
\text{F"ur }& d_i=+1&\text{ gilt } E_i=(h_i-0.5\hbox{|\nhh|},
\bar p_i+\hbox{|\nhh|})\,,\\
       \text{f"ur }& d_i=0&\text{ gilt } E_i=(h_i,
\bar p_i+\hbox{|\nhh|})\,,\\
       \text{f"ur }&d_i=-1&\text{ gilt } E_i=(h_i+0.5\hbox{|\nhh|},
\bar p_i+\hbox{|\nhh|})\,.\endmatrix$$
Ist $N_i$ Element einer oberhalb der Notenk"opfe verbalkten Notengruppe,
so ist wiederum
eine Fallunterscheidung notwendig. Falls $N_i$ nicht das
\disp{erste} Element der verbalkten Notengruppe ist, so ist
$E_i =(h_i,\bar p_i+s_i+0.5\hbox{|\nhh|})\;.$
Dies gilt auch f"ur die erste Note einer ``Balkengruppe'', falls die
Note des Bogenendes auf die gleiche Weise verbalkt wurde, andernfalls
ist $E_i=    (h_i,\bar p_i+\hbox{|\nhh|})$.
\verbatimoff
\par
\Beispiel
\par
{\hsize 16 cm\universal
\parindent = 0pt
\beginsong
\vio\C%
\group{\\{\h3}\\{\h3}}{\\{3}\\{3}}\uslur12\go
\group{\\{\h3}\\{\g5}}{\\{3}\\{5}}\uslur12\go
\group{\\{\h3}\\{\h4}}{\\{3}\\{4}}\uslur12\go\doublebarline
\group{\\{\g4}\\{\h1}}{\\{4}\\{1}}\uslur12\go
\group{\\{\g5}\\{\g5}}{\\{5}\\{5}}\uslur12\go
\group{\\{\g5}\\{\h5}}{\\{5}\\{5}}\uslur12\go\doublebarline
\group{\\{\h4}\\{\h3}}{\\{4}\\{3}}\uslur12\go
\group{\\{\h5}\\{\g5}}{\\{5}\\{5}}\uslur12\go
\group{\\{\h4}\\{\h8}}{\\{4}\\{8}}\uslur12\go\hfill\doublebarline
\group{\\{\a3}\\{\a3}\\{\h6}}{\\{3}\\{3}\\{6}}\ubeam12\uslur13\go
\group{\\{\a3}\\{\a3}\\{\h6}}{\\{3}\\{3}\\{6}}\ubeam12\uslur23\go
\doublebarline
\group{\\{\a3}\\{\a3}\\{\a3}\\{\a3}}{\\{3}\\{3}\\{3}\\{3}%
}\ubeam12\ubeam34\uslur13\go\|%
\group{\\{\a3}\\{\a3}\\{\a3}\\{\a3}}{\\{3}\\{3}\\{3}\\{3}%
}\ubeam12\ubeam34\uslur23\go
\=\endsong}
\vskip-1cm
\endBeispiel

Wie bei der Verbalkung mu\3 in Extremf"allen die  Sekantensteigung
korrigiert werden. Dies geschieht wiederum nur durch Verschieben der
Anfangs- bzw. Endpunkte in vertikaler Richtung, d.h. durch Ver"andern der
Ordinaten.
\verbatimon

Im folgenden seien \folgi ain  und  \folgi ein die Ordinatenwerte der
Punkte \folgi Ain{}bzw. \folgi Ein.
Eine Korrektur wird (auch in der Notenliteratur) nur so durchgef"uhrt,
da\3 die Sekantensteigung betragsm"a\3ig verkleinert wird, jedoch kein
Vorzeichenwechsel auftritt.

Da die
Anfangs- und Endpunkte f"ur einen konkaven Bogen so gew"ahlt sind,
da\3 der vertikale Abstand von der Grundlinie der minimal m"ogliche ist,
kann die Korrektur nur durch Erh"ohen des Abstandes durchgef"uhrt werden.

\item{1)}Zun"achst ist eine Korrektur notwendig,
falls der Bogen, der die  Noten zwischen $N_1$ und $N_n$ "uberspannen
soll, die inneren Noten schneidet.
Die Bogen der Notenliteratur "ahneln eher Parabelausschnitten als
Kreisbogenausschnitten, wie man zun"achst vermuten w"urde. Um den
Bogenverlauf m"oglichst genau nachzuahmen, wurde ein Parabelausschnitt
gew"ahlt, der durch die beiden Endpunkte des Bogens und einen dritten
Punkt eindeutig bestimmt ist. Dieser dritte Punkt ist durch  einen
Vektor, der senkrecht auf der Sekante steht, mit dem Sekantenmittelpunkt
als Aufpunkt und einer L"ange, abh"angig von der Sekantenl"ange, gegeben.
Als L"ange hat sich
hierbei ein Sechstel der Sekantenl"ange bew"ahrt, soweit
diese nicht den Betrag von |2\nhh| "uberschreitet.
\par
\item{}
Da nur eine grobe Korrektur notwendig ist, gen"ugt es, den Bogen
geeignet linear zu approximieren und zu "uberpr"ufen, ob die
inneren Noten unterhalb einer solchen Geraden
verlaufen.
\item{}
Die Gerade, die dies f"ur alle F"alle gew"ahrleistet, ist nat"urlich
die Gerade durch die
Sekante des Bogens. Dies f"uhrt jedoch f"ur die Noten,
die sich unter der Sekantenmitte befinden, zu unbefriedigenden
Ergebnissen.
Da
sich jedoch in unmittelbarer N"ahe der Bogenendpunkte keine
inneren Noten befinden, kann eine Gerade gew"ahlt werden, die
zur Sekante parallel verl"auft.
Der Abstand zur Sekante ist
abh"angig  von der ``Auslenkung'' des
Bogens und der Sekantensteigung.
\item{}
Sei $\epsilon$ der Abstand der beiden
Geraden und
$S$ die errechnete Sekantensteigung bzgl. $A_1$ und $E_n$.
Dann ist
$s^*=\max_{i=2,\ldots,n-1}\{0\,,\,(e_i-a_1+S\cdot h_i)-\epsilon\}$
der Maximalwert, um den die Approximationsgerade "uberschritten wurde.
Die Korrektur der Bogensteigung wird dann wie folgt durchgef"uhrt:
gilt $a_1<e_n$, dann wird $a_1$ um $s^*$
vergr"o\3ert.
Falls $a_1+s^*>e_n$,  wird so korrigiert, da\3 $S$ verschwindet, d.h.
$e_n$ mu\3 um den Betrag $e_n-(a_1+s^*)$ vergr"o\3ert werden. F"ur
$a_1>e_n$ wird zun"achst $e_n$ vergr"o\3ert. Falls dabei
$S$ Null wird, ist zus"atzlich $a_1$ zu korrigieren.
\medskip
\input mdocpic4
\medskip
\centerline{{\eightrm Skizze zur Approximation des Bogens}}
\item{2)}Eine weitere Korrektur mu\3 (nach der Diskretisierung
(s. \the\chap.2.2\XX))
durchgef"uhrt werden, falls die Steigung die f"ur die
Zeichenbreite des Bogens zul"assige maximale Steigung "uberschreitet.
\item{}
Die Sekantensteigungen $S$ liegen im Intervall $(-1,1)\in\rz$, jedoch
kommt es auch nur selten vor, da\3 \verbatimoff$S\cdot |h|>\verbatimon
4\hbox{|\nhh|}$, d.h. die H"ohe des Zeilensystems "uberschreitet. Die
maximal zul"assige Steigung ist also abh"angig von $h$ und kann
beschrieben werden durch:
\verbatimon
$$\bar s(h)=\min(1,{4\hbox{|\nhh|}\over h})\;.$$
Dann wird die Korrektur wiederum so durchgef"uhrt, da\3
$a_1$ vergr"o\3ert wird, falls $a_1<e_n$,
und $e_n$ vergr"o\3ert wird, falls  $a_1>e_n$.
Es gilt:
$$a_{1,{\rm neu}}:=e_n-\bar s(h)\cdot h \quad\text{ bzw. }\quad
e_{1,{\rm neu}}:=a_n-\bar s(h)\cdot h \;.$$

\subsubheading{Diskretisierung der Sekantensteigung}
Aus den gleichen Gr"unden wie bei der Verbalkung ist eine
Diskretisierung der Sekantensteigung notwendig. Da die St"arke des
Bogens jeweils zum Bogenende abnimmt, w"are es sehr zeitaufwendig, den
Bogen aus Einzelst"ucken zusammenzusetzen.
Zu jeder Breite und jeder Steigung m"u\3te also ein vollst"andiger Bogen
bereitgehalten werden.

Ber"ucksichtigt man folgende Gesichtspunkte, kann jedoch eine
repr"asentative Auswahl getroffen werden.
\item{1)}Da der Bogen die
Notengruppe nur "uberspannen und nicht exakt zwischen zwei Notenh"alsen
eingepa\3t werden mu\3, gen"ugt es, Bogen der Zeichenbreite $w=k\cdot
\hbox{|\nhw|} \text { mit } k\in\nz^+$  bereitzuhalten.
\item{2)}Der vertikale Abstand der Bogenendpunkte betr"agt (meistens)
ein
$m$-faches von 0.5|\nhh|, wobei als obere Grenze 4|\nhh|
angesehen werden kann, d.h. $m\le8$.
%
\item{3)}Eine weitere Schranke ist $m\le2k$, da die Sekantensteigung
kleiner als 1 sein sollte.
\item{4)}Da jedoch nicht Bogen beliebiger
L"ange bereitgehalten werden k"onnen, ist es entgegen obiger
"Uberlegung doch notwendig, Bogen gr"o\3erer Breite aus Einzelst"ucken
zusammenzusetzen. Dabei wird das Mittelst"uck durch eine Rule beliebiger
L"ange ersetzt.

Es ergeben sich aus den obigen Gesichtspunkten f"unf verschiedene
Zeichens"atze:
\item{1)}konkave Bogen positiver Sekantensteigungen ($\frac{ht}w$) mit
Breiten $w = i\cdot\hbox{|\nhw|}\,,i\in\{1,\ldots,17\}$ und H"ohen
$ht = j\cdot0.5\hbox{|\nhh|}\,,j\in\{1,\ldots,\min({2i,8})\}$.

\item{2)}konkave Bogen negativer Sekantensteigungen ($\frac{dp}w$) mit
Breiten $w = i\cdot\hbox{|\nhw|}\,,i\in\{1,\ldots,17\}$ und Tiefen
$dp =-j\cdot0.5\hbox{|\nhh|}\,,j\in\{1,\ldots,\min({2i,8})\}$.

\item{3)}konvexe Bogen positiver Sekantensteigungen ($\frac{ht}w$) mit
Breiten $w$ und H"ohen $ht$ wie oben.
\item{4)}konvexe Bogen negativer Sekantensteigungen ($\frac{dp}w$) mit
Breiten $w$ und Tiefen $dp$ wie oben.
\item{5)}konkave und konvexe Haltebogen ($j=0$) verschiedener Breite
$w$ wie oben
und konkave und konvexe Bogenst"ucke
positiver und negativer Sekantensteigung konstanter Breite (%
$w=9\hbox{|\nhw|}$).
\Bemerkung
\item{1)}Die Maximalbreite $w=17\hbox{|\nhw|}$ hat sich so ergeben, da\3
die Zeichens"atze mit jeweils 124 Elementen belegt werden konnten.
Vollst"andige Bogen einer gr"o\3eren Breite erschienen nicht sinnvoll,
da sie selten vorkommen und  viel Speicherplatz ben"otigen.
\item{2)}
Zur Wahl der Bogenst"ucke:
\item{}Der Bogen wird aus drei Teilen zusammengesetzt und zwar werden je
ein  Bogenst"uck positiver Sekantensteigung und ein Bogenst"uck
negativer Sekantensteigung, die jeweils konvex  bzw. konkav sind, durch
eine Rule beliebiger L"ange verbunden.  Dabei k"onnen sich vier
verschiedene Situationen ergeben:

\Beispiel\vskip-1cm
\begingroup
\def\vt#1{{\offinterlineskip\vtop{\null\hbox{\slurfont\char\hex#1}\vss}%
}}
\def\vb#1{{\offinterlineskip\vbox{\vss\hbox{\slurfont\char\hex#1}\null}%
}}
\medskip
\def\rulet{\vrule height 0pt depth 1pt width36pt}
\def\ruleb{\vrule height 1pt depth 0pt width36pt}
\baselineskip2cm
\halign{\hskip\iindent#\hfil&\quad$\vcenter{#}$&\hskip\iindent#\hfil
&\quad$\vcenter{#}$\cr
a)&\hbox{\vt{28} \rulet\ \vt{30}}&b)&\hbox{\vt{20} \rulet\ \vt{38}}\cr
c)&\hbox{\vb{40} \ruleb\ \vb{58}}&d)&\hbox{\vb{48} \ruleb\ \vb{50}}\cr}
\endgroup
\medskip
\endBeispiel
\item{}
Die folgenden "Uberlegungen gelten f"ur die in Beispiel a)
aufgef"uhrte Situation, k"onnen jedoch auch auf die anderen "ubertragen
werden.
\item{}
Sei $S=\Frac{e_n-a_1}h={\dsize j\cdot0.5\hbox{|\nhh|}\over \dsize
h}$, wobei
$j\in\{0,\ldots,8\}$.
O.B.d.A. gilt $e_n>a_1$. Sei $S_1>0$ die Sekantensteigung des ersten
Bogenst"ucks und $S_2<0$ die des zweiten. Dann gilt $S_1>S$.
Die f"ur die Bogen gew"ahlten Steigungen reichen also in diesem Fall
nicht aus. Je gr"o\3er \verbatimoff$|S_2|$ gew"ahlt wird, desto
gr"o\3ere Werte m"ussen also f"ur $S_1$ bereitgehalten werden.
\item{}
Dann gilt:\verbatimon
$$S_1={S\cdot h + 9\hbox{|\nhw|}\cdot
\verbatimoff|S_2|\over\verbatimon
9\hbox{|\nhw|}}$$\verbatimon
Da die H"ohen in den "ubrigen Zeichens"atzen als Vielfaches von
0.5|\nhh| gew"ahlt wurden, d.h.
da\3 $S\cdot h = j\cdot 0.5\hbox{|\nhh|}$  f"ur ein
$j\in\{1,\ldots,8\}$, gilt, falls eine solche Darstellung auch f"ur
\verbatimoff $|S_2|\cdot 9\verbatimon
\hbox{|\nhw|}=j^*\cdot0.5\hbox{|\nhh|}$ mit fest gew"ahltem
$j^*\in\nz$
angenommen wird,\verbatimon
$$S_1={(j+j^*)\cdot 0.5\hbox{|\nhh|}\over 9\hbox{|\nhw|}}\,.$$
Dies ergibt f"ur $S_1$ acht verschiedene Werte
$ht_j=j\cdot\hbox{|\nhh|}$,
$j\in\{j^*+1,\ldots,j^*+8\}$. \verbatimoff
Da der Wert f"ur $|S_2|$ noch mitgerechnet \verbatimon
werden mu\3, sind neun verschiedene Bogenst"ucke f"ur jeden Fall
notwendig (positiv, negativ, konvex, konkav).
\item{}
Die Auswahl der Steigungen ist also nur abh"angig von $j^*$ und nicht
von $h$.
Die vorliegenden Zeichens"atze wurden mit $j^*=2$ erzeugt.
Der Fall $S=0$ mu\3 als Sonderfall betrachtet werden, da in diesem Fall
$S_1=-S_2$ gelten mu\3. Die Wahl
$j^*=2$ erweist sich in diesem Fall jedoch als
zu flach. Aus diesem Grund werden f"ur $S=0$ Bogen mit $j=4$
verwendet.
\endBemerkung
\subheading{Ausf"uhrung  des Balken- und Bogensatzes}

\subsubheading{Nachbarschaften}

Das Setzen der Bogen und Balken ist in hohem Ma\3e abh"angig vom
Kontext, z.B. Bestimmung der Anfangs- und Endpunkte der Bogen, die
Richtung und L"ange der Notenh"alse.

Im Unterschied zum Textsatz besteht hier die Notwendigkeit,
Notenschriftelemente, die auf eine solche Weise in Verbindung stehen,
d.h. nicht isoliert zu behandeln sind, gleichzeitig zu verarbeiten.

Gomberg (\lit\gomb) hat f"ur Notenschriftelemente, die untereinander in
Beziehung stehen, indem sie gleichen horizontalen Raum beanspruchen,
den Begriff der \defi{Nachbarschaften} formuliert
(s.a. Kapitel \adchap2\XX).

Anlehnend an diesen Begriff m"ochte ich Notenschriftelemente, die in
irgendeiner Weise (graphisch) miteinander verbunden sind, zu einer
Nachbarschaft zusammenfassen. Dazu  geh"oren Notengruppen, die verbalkt
werden sollen, aber auch Notengruppen, die mit einem Bogen "uberspannt
werden sollen. Da sich diese Gruppen "uberschneiden k"onnen, sind
Nachbarschaften oft gr"o\3er als die einzelne Notengruppe.

\Beispiel
{\hsize 10 cm
\loose
\advance\hsize2\iindent
\parindent2\iindent
\beginsong
\vio\Es \hskip20pt\group{\\{\a8}\\{\s3}\\{\s4}\\{\a5}
\\{\s5}\\{\s6}\\{\n7\a7}\\{\s{13}}\\{\s7}}
{\\{8}\\{3}\\{4}\\{5}\\{5}\\{6}\\{7}\\{13}\\{7}}
\def\beamlist{\\{1-3,}\\{2-3,}}\lbeam13%
\def\beamlist{\\{4-6,}\\{5-6,}}\lbeam46%
\def\beamlist{\\{7-9,}\\{8-9,}}\lbeam79\uslur24\uslur57\uslur89\go
\hfill\=%
\endsong}
\vskip-1cm
\endBeispiel

\Bemerkung Da es in einer Nachbarschaft nicht m"oglich ist, eine Note
isoliert zu sehen, ist es auch nicht m"oglich, eine Nachbarschaft ohne
"au\3eres Einwirken (durch den Benutzer) zu trennen.
\item{}
In \TeX\ wird eine solche Nachbarschaft als Box aufgefa\3t, deren Glue
nicht mehr variabel ist. Enth"alt ein Musikst"uck gr"o\3ere
Nachbarschaften, wird es problematisch, geeignete Umbruchpunkte f"ur den
Zeilenumbruch zu finden.
\item{}
Das \TeX-Konzept f"ur Ausschlu\3 und Zeilenumbruch erweist sich also an
dieser Stelle als hinderlich.
\goodbreak
\subsubheading{Verarbeitung der Nachbarschaften}Zur Verarbeitung der
Nachbarschaften ist es notwendig, Informationen "uber die einzelnen
Nachbarschaftselemente zu verwalten, z.B. die Tonh"ohen der Noten, die
L"angen der Notenh"alse, den oberen und unteren Anfangs- und Endpunkt
f"ur Bogen.

Eine Speicherung beliebig vieler gleichartiger Elemente, z.B. in
Vektoren, ist in \TeX\ nicht vorgesehen. Es ist jedoch m"oglich, mit
Hilfe von Kontrollsequenzen Listen aufzubauen (\lit\Knuth, \Texbook,
Anhang D.2).
Eine Liste von $n$ Informationen kann in der Form
\begindisplay
|\\{|\<item$_1$>|}\\{|\<item$_2$>|}| $\ldots$ |\\{|\<item$_n$>|}|
\enddisplay
kodiert werden,
wobei jedes \<item> eine wohlgeklammerte Tokenliste ist.

Eine parameterlose Kontrollsequenz, z.B. |\liste|, deren Ersetzungstext
obige Form besitzt, hei\3t \defi{Listenmacro} (\tex{list macro}).
Das leere Listenmacro mit $n=0$ hei\3t |\empty|. Die einzelnen Elemente
werden durch |\\| getrennt.
Wird |\\| als Kontrollsequenz aufgefa\3t und als  Makro
mit einem Argument definiert, so k"onnen
verschiedene Effekte erzielt  werden, wenn es auf die
Liste  angewendet wird.
\Beispiel
Mit |\def\\#1{\hbox{#1}}|
werden durch Aufruf von |\vbox{\liste}| alle Elemente von Liste
untereinander gesetzt.
\endBeispiel
Durch Umdefinieren von |\\| kann man auch auf die Elemente selber
einwirken. Sie k"onnen ausgetauscht werden, neue Elemente an- und
eingef"ugt oder alte gel"oscht werden.

Solche Listen k"onnen also dazu benutzt werden, Informationen, die zur
Bearbeitung der Nachbarschaften notwendig sind, zu speichern.

Die Bearbeitung der Nachbarschaften erfolgt in drei Teilschritten:
\item{1)}Die Initialisierung der ben"otigten Listen.
\item{2)}Die Berechnung der ben"otigten Balken und Bogen nach den in
\the\chap.1 und \the\chap.2
beschriebenen Verfahren und das Einf"ugen der ent\-%
sprechenden Zeichensatzelemente in die Nachbarschaft.
\item{3)} Das endg"ultige Setzen der Nachbarschaft.

\subsubsubheading{Die ben"otigten Listen}
Im folgenden sollen die ben"otigten Listen beschrieben werden.

\item{1)}Als Anfangsinformation m"ussen folgende Listen gegeben sein.
Diese sind vom "Ubersetzungspro\-gramm
(\lit\Schofer) bereitzustellen:
\item{a)}Die Liste aller Elemente der Nachbarschaft (|\elementlist|).
\item{}
Normalerweise bestehen die Elemente aus jeweils einer Note mit, falls
vorhanden, zugeh"origem Vorzeichen und eventuellen Wertpunkten.
Des weiteren kann ein Element einen Akkord beinhalten oder
andere Notenschriftelemente wie z.B. Taktstriche, zu unterlegende Texte
oder Akzente.
\item{b)}Die Liste der Tonh"ohen der Noten    der
Nachbarschaft (|\pitchlist|).\item{}
Das $i$-te Element der
|\pitchlist| enth"alt die jeweilige
Tonh"ohe des $i$-ten Elementes der |\elementlist|.
Bei Akkorden kann jedoch
nur die Tonh"ohe des Notenkopfes, der f"ur die Verbalkung
relevant ist, angegeben werden. Auch Taktstrichen kann eine Tonh"ohe
zugewiesen werden. So kann man vor einem Zeilenumbruch einen
Bogen "uber einem Taktstrich enden lassen.
\item{c)} Die Liste, die Informationen "uber die durch Balken zu
verbindenden Noten enth"alt (|\beamlist|).
\item{}
Die Zahl der Elemente gibt die Anzahl der Balkenreihen $r$ an und die
jeweiligen Elemente,
welche Noten in der Balkenreihe zu verbinden sind.
Wie in \XX \the\chap.1
erw"ahnt, ist nicht allein aus den Notenwerten erkennbar,
welche Noten der Nachbarschaft miteinander verbunden werden m"ussen, da
die Noten
innerhalb der Balkengruppe  noch weiter gruppiert werden m"ussen,
um die Betonungsverh"altnisse im Takt zu verdeutlichen.
\item{}
Aus diesem Grund enthalten die Elemente der Balkenlisten eine weitere
Liste, die angibt, welche Noten in der jeweiligen Balkenreihe
miteinander verbunden werden.
\item{}
Sei $l$ die Anzahl der Elemente einer solchen ``Unterliste'' und
seien die Elemente  $n_1$ bis $n_2$ der Nachbarschaft zu verbalken.
Das $i$-te  Element des Listenelementes ist dabei
von der Form:
$$\matrix\format\l&\r&\l\\\hbox{A:}\qquad&
k_{i_1}-k_{i_2},& \text{ wobei }k_{i_{1,2}}\in\{n_1,\ldots,n_2\}
\text{ und }k_{i_1}\leq k_{i_2}\,,\\
\noalign{\text{ oder }}
\hbox{B:}\qquad&-k_{i_2},&\text{ wobei }k_{i_2}
\text{ wie oben und }k_{i_1} \text{ fehlt.}
\endmatrix$$
\item{}F"ur die Folge
$(k_{i_1},k_{i_2}),i\in\{1,\ldots,l-1\}$ mu\3 gelten:
$$k_{i_1}<k_{(i+1)_1}\text{ und }k_{i_2}\leq k_{(i+1)_1}\,,\text{ falls
}k_{i_2}\text{ nicht fehlt.}$$
\item{}Dabei bedeutet die Form:
{\iindent=40pt
\itemitem{$k_{i_1}-k_{i_2}$:} Verbalke das $k_{i_1}$-te bis
$k_{i_2}$-te Element der |\elementlist|, falls $k_{i_1}\ne k_{i_2}$,
sonst verbalke Element $k_{i_1}$ nach rechts.
\itemitem{$-k_{i_2}$:}Verbalke das $k_{i_2}$-te Element nach
links.
\par}
\item{}In beiden F"allen betr"agt die Breite des Balkens |\nhw|.

\Beispiel(s. \the\chap.1.3)
\endBeispiel
\item{}
Es ist nach oben beschriebenem System nicht unbedingt notwendig, da\3
die erste  Balkenreihe durchgehend ist,  d.h. von der Form $n_1-n_2$.
Dies ist kein
Fehler, sondern es erm"oglicht, ein Bild folgender Art zu erhalten:

{\loose
\hsize7cm
\advance\hsize2\iindent
\parindent2\iindent
\beginsong
\vio\C
\def\beamlist{\\{1-4,5-8,}}%
\group{\\{\a{-2}}\\{\a{-1}}\\{\a0}\\{\a1}\\{\a2}\\{\a3}\\{\a4}\\{\a5}}
{\\{-2}\\{-1}\\{0}\\{1}\\{2}\\{3}\\{4}\\{5}}\ubeam18\go\=%
\endsong}
\vskip-1cm
\goodbreak
\item{2)}Zur Verarbeitung werden folgende Listen ben"otigt:
\item{}Da diese Listen  Informationen "uber das jeweilige Element
der |\elementlist| speichern, mu\3
die Anzahl der Listenelemente (Kardinalit"at)
mit der Anzahl der Elemente der |\elementlist| "ubereinstimmen.
\item{a)}Die Liste, die Informationen "uber die horizontale
Breite der Nachbarschaft und ihrer Elemente enth"alt (|\Hlist|).
\item{}
Das $i$-te Element  enth"alt die Breite der Nachbarschaft
vom 1. bis $i$-ten Element einschlie\3lich, ohne da\3 am Ende
Glue angef"ugt wurde. Ist die $i$-te Note nicht punktiert, so schlie\3t
diese Nachbarschaft f"ur $d_i=+1$ mit dem Notenhals, f"ur
$d_i=-1$ mit dem Notenkopf ab. Der Abstand des Notenhalses zum
Ende dieser Notengruppe betr"agt also |\nhw|.
Ist die Note mit Wertpunkten versehen,
so erh"oht sich der Abstand um die Breite, die
die Punkte beanspruchen. Bei Akkorden mit aufsteigendem Notenhals
kann es vorkommen, da\3 die Nachbarschaft nicht mit dem Notenhals ab\-%
schlie\3t, falls ein Notenkopf auf der rechten Seite des Notenhalses
erscheint. Der Abstand betr"agt dann, falls keine Wertpunkte vorhanden
sind, |\nhw|.
\item{b)} Die Liste, die Informationen "uber die Abszissenwerte der
Notenh"alse liefert (|\Hcorlist|).
\item{}
Das $i$-te Element enth"alt als Korrektur den
horizontalen Abstand des Notenhalses des $i$-ten Elements zum
Ende einer Nachbarschaft, die mit diesem Element abschlie\3en w"urde.
Mit dieser Liste k"onnen die Wertpunkte sowie Akkorde
z.B. f"ur die Berechnung
der L"ange des Balkens ber"ucksichtigt werden.
\item{}
Das $i$-te Element enth"alt als Korrektur den
horizontalen Abstand des Notenhalses des $i$-ten Elements zum
Ende einer Nachbarschaft, die mit diesem Element abschlie\3en w"urde.
\item{c)} Die Liste, die Informationen "uber die Notenhalsl"angen der
zu verbalkenden Noten enth"alt (|\stemlist|).
\item{}Diese Liste wird zun"achst mit Null initialisiert und nur
ver"andert, falls eine Note zu verbalken ist. Es ist also eine Unter\-%
scheidung zwischen einzelstehenden Noten und Balkengruppen anhand dieser
Liste m"oglich.
\item{d)}Die Liste, die Informationen "uber die Richtung der
Notenh"alse in der Notengruppe enth"alt (|\dirlist|).
\item{}
Bei Verbalkung wird die eventuelle "Anderung der Notenhalsrichtung der
betroffenen Noten in dieser Liste vermerkt, soda\3 es m"oglich ist
einen Bogen "uber oder unter diesen Noten korrekt zu plazieren.
\item{e)}Die Listen, die die vertikalen Positionen der Bogenanfangs-
und Endpunkte oberhalb bzw. unterhalb der Noten enthalten
(|\uslurlist| und |\lslurlist|).
\item{}Die Listen sind so angelegt, da\3 ein Element
Informationstr"ager sowohl der Ordinaten des
Anfangs- als auch des Endpunktes
ist. Stimmen die Werte nicht "uberein, so wird dies durch einen Wert,
der betragsm"a\3ig gr"o\3er als 100\pt\ ist, angezeigt.
\item{}
Die Elemente erhalten nur von Null verschiedene Werte, falls der
Anfangs- bzw. Endpunkt nicht direkt am Notenkopf liegt. Andernfalls
werden sie abh"angig vom jeweiligen Wert der Tonh"ohenliste berechnet.

Weitere Listen sind f"ur den einstimmigen Notensatz nicht erforderlich.
%

\subsubsubheading{Die Initialisierung der Listen}

Durch das Makro |\group| werden alle Listen, die nicht vorgegeben sind,
initialisiert.\par
Dies geschieht, indem die Nachbarschaftsliste (|\elementlist|) einmal
abgearbeitet, jedoch noch nicht gesetzt, sondern zun"achst
in einer Box akkumuliert wird.
Weiterhin wird das Z"ahler-Register |\N| mit der Anzahl
der Listenelemente der |\elementlist| belegt.

\subsubsubheading{Das Setzen der Nachbarschaft}
Nachdem die Nachbarschaftsliste durch die Informationen "uber die zu
setzenden Balken und Bogen, Aufpunkt, L"ange und Steigung, erweitert
wurde, mu\3 sie ein zweites Mal abgearbeitet werden.
Dabei mu\3 ber"ucksichtigt werden, da\3
der variable Glue der vorangegangenen Note vor der Nachbarschaft gesetzt
wird, um einen besseren Zeilenausschlu\3 zu erm"oglichen. Der
Glue innerhalb der Nachbarschaft mu\3 auf den nat"urlichen Abstand
fixiert werden, da die L"angen der Balken und Bogen nicht mehr ver"andert
werden k"onnen.
F"ur die Notenhalsl"ange wird im Falle, da\3 die Note verbalkt wird,
der Wert der |\stemlist| gew"ahlt; andernfalls wird sie anhand
der Funktion f"ur die Notenhalsl"ange neu berechnet.

\vfill\eject