Ein Artikel aus Schneider-Kreuznach Hausmitteilungen 1959-74
Zu den Hausmitteilungen des Dr. Klarmann geht es hier lang. Die Schneider Kreuznach Hausmitteilungen gab es von 1949 bis 1974. Uns liegen sie leider erst ab 1959 vor. Die Inhalte sollten das Haus Schneider /ISCO nicht verlassen, so jedenfalls stand es fast immer hinten drauf.
.
Technische Hilfsmittel für die Errechnung photographischer Objektive
Von W. Albrecht, Kreuznach (Mit einer Abbildung) in 1959
.
1. Einleitung
Zur Entwicklung photographischer Objektive ist ein außerordentlich großer Rechenaufwand notwendig, denn der Weg eines Lichtstrahles durch ein Objektiv muß vom Objektpunkt über den jeweiligen Ein- bzw. Austrittspunkt an jeder Glas-Luftfläche bis zur Bildebene verfolgt werden.
An jeder Fläche des Objektivs, auf die ein Lichtstrahl schiefwinklig auftrifft, ändert er seine Richtung. Er wird gebrochen. Diese Richtungsänderung erfolgt nach dem Snellius'schen Brechungsgesetz.
An arithmetischen Operationen (Addition, Subtraktion, Multiplikation und Division), die durch die Symbole +, -, • und : bezeichnet werden, braucht man bei einem achsennahen Strahl an jeder Fläche 6, bei Strahlen im endlichen Abstand von der optischen Achse mindestens 10 solcher Operationen.
Das einfachste von uns (Schneider Kreuznach) gebaute Objektiv hat drei freistehende Linsen, also 6 Flächen. Wir fertigen aber auch Objektive mit 14 und mehr Flächen. Für ein vierzehnflächiges System (z. B. das Cinegon 1:1,8/10mm) muß der Rechner bei einem Randstrahl mindestens 140 Rechenoperationen durchführen.
Um die Qualität eines vorliegenden optischen Systems auf rechnerischem Wege wenigstens einigermaßen beurteilen zu können, müssen etwa 22 Strahlen durch das System hindurch verfolgt werden.
Das sind für das oben genannte Cinegon mehr als 3000 Rechenoperationen. Bei der Neuentwicklung eines solchen Objektivs ist die Durchrechnung von meist mehr als hundert variierter Systeme notwendig. Dazu sind etwa eine drittel Million Rechenoperationen erforderlich.
Einen ersten Überblick über den Strahlenverlauf in einem optischen System kann man sich mittels eines Durchzeichnungsverfahrens verschaffen (vgl. Hausmitteilungen Band 1 (1949), eite 123 und 124 - Diese Ausgabe liegt uns leider noch nicht vor). Die dafür benutzten Hilfsmittel wie Zirkel, Lineal und Parallelführung sollen hier nicht berücksichtigt werden.
.
2. Logarithmentafeln
Mehr als die Hälfte der oben genannten Rechenoperationen besteht aus Multiplikationen bzw. Divisionen, die besonders mit vierteiligen Zahlen Mühe und Zeit erfordern. Durch Verwendung logarithmischer Tabellen kann man Multiplikationen bzw. Divisionen auf die einfachere Addition 15 bzw. Subtraktion zurückführen.
Das Logarithmieren ist eine Umkehrung des Potenzierens. Über Potenzen war bereits in dem Aufsatz „Das System der Dualzahlen" (vgl. Hausmitteilungen Band 12 (1960)., 3) kurz die Rede.
Hier werden nur Potenzen zur Grundzahl 10 benötigt. Z. B.
1 = 10°; 10 = 10 hoch 1; 100 = 10 hoch 2; 1.000 = 10 hoch 3; usw. log 1 = 0; log 10 = 1; log 100 = 2; log 1000 = 3.
Die Logarithmen der Zahlen zwischen 1 und 10 sind echte Dezimalbrüche, denn die Beispiele zeigen, daß sie zwischen 0 und 1 liegen müssen. So ist z. B. log 2 = 0,30103.
.
Das aufwendige Beispiel übergehen wir hier ....
.
Alle oben notierten Logarithmen haben Mantissen mit 5 Ziffern. Man spricht daher von fünfstelligen Logarithmen. Für optische Durchrechnungen benutzt man - je nach der geforderten Genauigkeit - fünf- und sechsstellige Logarithmen. Diese Logarithmen sind in Tabellen zusammengefaßt.
In der ersten Spalte sucht man den Numerus. Rechts daneben findet man die zugehörige Mantisse. Die Kennziffer muß man sich nach den oben angegebenen Regeln selbst bilden. In fünfstelligen Tabellen sind alle Numeri von 100 bis 999 angegeben. Zwei weitere Stellen kann man interpolieren. Auf dieses Verfahren soll hier nicht eingegangen wer den.
.
3. Rechengeräte (wir isnd immer noch im Jahr 1959)
Für die Errechnung von photographischen Objektiven werden fast nur digitale Maschinen verwendet. Das sind zählende Maschinen. Sie rechnen mit Ziffern. Im Gegensatz dazu arbeiten die Analogierechengeräte mit physikalischen Größen, mit stetig veränderbaren mechanischen oder elektrischen Größen (z. B. Längen, Stromstärken usw.).
.
Der Rechenschieber
Das einfachste Analogierechengerät ist der Rechenschieber. Man verwendet ihn gelegentlich für erste orientierende Vorrechnungen. Jeder Rechenschieber enthält mehrere logarithmische Skalen. Die Teilpunkte einer logarithmischen Skala haben im Gegensatz zu den Teilpunkten einer gleichförmig geteilten Skala, wie man sie auf jedem Maßstab findet, ungleiche Entfernungen voneinander. Diese werden nach dem rechten Skalenende immer kleiner.
Durch Verschieben der auf einer beweglichen Zunge befindlichen Skala gegenüber der zugehörigen festen Skala kann man Strecken addieren oder subtrahieren. Das Ergebnis ist dann - genau wie bei Verwendung einer Logarithmentafel - das Produkt bzw. der Quotient aus den beiden den Streckenabschnitten entsprechenden Zahlen. Ein solcher Rechenschieber ersetzt eine etwa dreistellige Logarithmentafel.
3. 1 Bürorechenmaschinen
Die einfachsten digitalen Geräte sind die Bürorechenmaschinen. Es gibt handgetriebene und vollautomatische. In unserem mathematischen Büro wurden mehrere Typen vollautomatischer Rechenmaschinen verwendet. Beim Übergang von der Logarithmentafel zur vollautomatischen Bürorechenmaschine steigert sich die durchschnittliche Rechengeschwindigkeit auf das Doppelte.
Eine Bürorechenmaschine kann addieren, subtrahieren, multiplizieren und dividieren. Die dazu benutzten Schaltelemente sind sehr verschiedenartig wie Sprossenräder, Staffelwalzen u. ä.
Bei einem Maschinentyp kann man abwechselnd multiplizieren und dividieren, d. h. man kann das Ergebnis einer Rechnung sofort wieder für die folgende Rechnung verwenden. Bei einem anderen Typ muß man die Werte immer wieder eintasten. Durch den schnelleren Motor wird aber erreicht, daß die Gesamtrechenzeit sogar etwas kürzer ist. Das häufige Eintasten von Zahlen bedingt aber auch eine erhöhte Fehlerhäufigkeit und die hohe Geschwindigkeit eine starke Abnutzung der schnellaufenden Teile.
3. 2 Programmgesteuerte Rechenautomaten
Zu diesen Geräten gehören die programmgesteuerten Relais-Rechenautomaten und als Höhepunkt dieser Entwicklung die programmgesteuerten elektronischen Rechenautomaten. Auch diese können nur die vier Grundrechenoperationen ausführen.
Komplizierte Aufgaben (wie z. B. Wurzelziehen) müssen aus diesen Grundrechnungsarten aufgebaut werden. Der wesentliche Fortschritt besteht darin, daß ein solcher Automat neben dem eigentlichen Rechnen noch einen weiteren Teil der Arbeit des menschlichen Rechners übernimmt: das Eingeben der Zahlen, das Steuern die Maschinen einem vorgegebenen Rechenplan entsprechend, das Ablesen und Aufschreiben der Resultate.
Abb. 9. Programmgesteuerter elektronischer Rechenautomat Z 22
.
Die Maschine muß also mehrere Organe enthalten: ein Eingabewerk, einen Zahlenspeicher zum Aufheben von gegebenen Zahlen und Zwischenergebnissen, ein Leitwerk, das die einzelnen Rechenoperationen und die Übernahme vom Speicher ins Rechenwerk und umgekehrt auslöst, das eigentliche Rechenwerk und das Ausgabewerk.
Als weiterer Fortschritt, der allerdings nicht so grundsätzlich ist, kommt bei den elektronisch gesteuerten Maschinen hinzu, daß die mechanischen Schaltelemente durch elektrische ersetzt sind: elektromagnetische Relais,
18 Elektronenröhren, Dioden, Transistoren und Ferritkerne.
Dadurch wird die Rechengeschwindigkeit bedeutend erhöht. So erhielten wir beim Übergang von den Tischrechenmaschinen zum Relais-Rechenautomaten Z11 der Firma Zuse, Bad Hersfeld, eine Steigerung der Rechengeschwindigkeit um den Faktor 10, beim Übergang auf den elektronischen Rechenautomaten Z 22 der gleichen Firma nochmals einen Faktor von etwa 10.
Den Schaltelementen entsprechend, die nur zwei Betriebszustände haben können, verwenden diese Automaten das Dualsystem zur Zahlendarstellung (vgl. Hausmitteilungen Band 12 (1960), 3).
Außer den vier Grundrechenoperationen können die Maschinen auch einfache mathematische und logische Entscheidungen durchführen. Im Leitwerk befindet sich ein Befehlsregister aller möglichen Befehle, die durch feste Schaltungen bereitgestellt sind.
.
3. 21 Das Programm
Jedes größere Problem muß in eine Reihe von Einzelschritten zerlegt werden, die aus den möglichen Operationen bestehen.
Es muß ein Programm aufzurufen, so wird z B. der Sprungbefehl gegeben: „Wende auf vorkommt, wie Quadratwurzelziehen, wird man zu einem Unterprogramm zusammenfassen. Ist es in einem Programm notwendig, das Unterprogramm aufzurufen, so wird z. B. der Sprungbefehl gegeben: „Wende auf die im Rechenwerk befindliche Zahl das Wurzelprogramm an".
Das Wurzelziehen erfolgt nach einem Näherungsverfahren. Am Ende des Programms wird festgestellt, ob das Quadrat der Näherung innerhalb einer vorgeschriebenen Toleranz mit der gegebenen Zahl übereinstimmt. Wenn das nicht der Fall ist, so wird das Verfahren wiederholt, bis die Bedingung erfüllt ist.
Erst dann erfolgt der Rücksprung ins Oberprogramm zur Fortsetzung der Rechnung. Die Maschinen können also auch "bedingte" Befehle ausführen. Aber auch ganze Unterprogramme können unter Bedingung gestellt werden. Z. B. kann man verlangen, daß nur die Durchstoßungshöhe des Lichtstrahls an der 5. Fläche eines optischen Systems berechnet wird.
Beim Durchrechnen des Strahls fragt dann die Maschine an jeder Fläche: „Ist das die 5. ?" Ist n die laufende Flächennummer, so wird das Unterprogramm „Höhe rechnen" nur aufgerufen, wenn n-5=0 ist.
Für einen programmgesteuerten Relais-Rechenautomaten wird das Programm fest verdrahtet und kann später praktisch nicht mehr geändert werden. Man kann allerdings auch mit einem äußeren Programm arbeiten, das auf einen Lochstreifen aufgenommen wird und den Rechenablauf über einen Programmabtaster steuert. Die Rechengeschwindigkeit wird aber dadurch herabgesetzt.
Die elektronischen Automaten
Die elektronischen Automaten sind vielseitiger als die Relais-Automaten. Bei ihnen wird das Programm anstelle einer festen Verdrahtung z. B. mit Hilfe eines Lochstreifens, der die Zahlen und Befehle des Programms im normalen Fernschreibmaschinencode enthält, in die Speicher eingegeben. Das Programm steht hier für vorkommende Rechnungen solange zur Verfügung, bis es durch ein neues Programm überschrieben und damit gelöscht wird.
Diese Automaten können auch Befehle ändern. Ein Beispiel wird das deutlich machen. Es soll ein achsennaher Strahl durch ein optisches System verfolgt werden. Zunächst wird die Brechung an der ersten Fläche des Systems berechnet. Dabei wird das Verhältnis der Brechzahlen n1 : n2 gebraucht.
n1 ist der Wert vor der 1. Fläche und n2 vor der 2. Fläche. Die Konstanten n1, n2, n3, .... seien z. B. in den Speichern mit den Nummern 1181, 1182, 1183 usw. zu finden.
Im Programm steht also bei der Durchrechnung an der ersten Fläche: Hole den Inhalt von Speicher 1181, hole den Inhalt von Speicher 1182, dividiere beide Größen. Das Ergebnis wird weiter verarbeitet. Ist die Strahlbrechung an der 1. Fläche beendet, so erfolgt der Übergang zur folgenden Fläche.
Hier wiederholen sich alle Operationen in der gleichen Reihenfolge, nur sind die „Adressen", unter denen jetzt die beiden zu dividierenden n-Werte zu finden sind 1182 und 1183.
Wiederholung von Operationsfolgen
Die Wiederholung der Operationsfolge legt es nahe, diese Folge als Unterprogramm zu verwenden. Dazu ist es aber notwendig, den ersten Rufbefehl („Hole den Inhalt von Speicher 1181") durch den für jede Fläche geltenden zu ersetzen: Vermehre die Zahl 1180 um die Flächennummer und hole den Inhalt der Zelle mit dieser neuen Adresse.
Die Adresse lautet an der 1. Fläche 1180 + 1 = 1181, an der 2. Fläche 1180 + 2 = 1182, usw. Der 2. Befehl muß entsprechend abgeändert werden: Vermehre 1181 um die Flächennummer; usw. Ähnlich müssen die im gleichen Unterprogramm benutzten Befehle aufgebaut werden, die sich auf die ebenfalls von Fläche zu Fläche variierenden Systemkonstanten Radius und Linsendicke bzw. Luftabstand beziehen.
Der „programmgesteuerte" Rechenablauf in die Sprache der Maschine
Die besprochenen Beispiele zeigen, was man sich unter einem „programmgesteuerten" Rechenablauf vorzustellen hat.
Das Vorbereiten eines mathematischen Problems für den Rechenautomaten erfordert eine Erforschung der Struktur dieses Problems, ein genaues Durchdenken aller möglichen Spezialfälle und die Übersetzung des Ergebnisses dieser Vorbereitung in die Sprache der Maschine.
Diese Vorarbeit nimmt oft viel mehr Zeit in Anspruch, als die Maschine für die spätere Durchführung der Rechnung benötigt.
Die aufgewendete Mühe lohnt sich daher besonders, wenn es sich um ein häufig wiederkehrendes Problem mit sich ändernden Eingangswerten handelt. Die Strahldurchrechnungen der geometrischen Optik sind solche Routineprogramme. Derartige Programme werden immer vielseitiger. Sie wachsen solange, bis schließlich sämtliche Speicherzellen belegt sind.
Bei technischen Berechnungen ist man vor Überraschungen nie ganz sicher. Man kann nicht immer voraussehen, ob alle Zwischenwerte und Ergebnisse in dem von der Maschine verarbeitbaren Zahlenbereich liegen.
Wird z. B. durch eine sehr kleine Zahl "oder gar durch Null" dividiert, so ist das Ergebnis sehr groß bzw. "unendlich groß" = oo. Die Maschine druckt daraufhin „Bereichsüberschreitung" und bleibt stehen.
Wenn zu übersehen ist, daß die Rechnung trotz dieses Zwischenwertes ein vernünftiges Ergebnis bringen müßte, so wird man sich entschließen, das Programm so zu ändern, daß der von der Maschine nicht verarbeitbare Zwischenwert nicht auftritt.
3. 22 Die Arbeitsweise eines elektronischen Rechenautomaten
Die Tätigkeit des Automaten beginnt damit, daß ein Streifen mit den bei der Rechnung benötigten Systemkonstanten und Eingangswerten in den Speicher eingegeben wird. An der letzten Stelle dieses Streifens befindet sich ein Befehl, der angibt, an welcher Stelle des Programms die Rechnung beginnen soll.
Ein in die Maschine eingebautes Befehlszählregister ruft dann die einzelnen Speichernummern nacheinander auf. Der in der Zelle enthaltene Befehl wird abgelesen und vom Leitwerk ausgeführt. Dann folgt der Befehl in der nächsten oder in der durch einen Sprungbefehl angegebenen Speicherzelle. Das Ergebnis wird entweder in einer Speicherzelle zur weiteren Verarbeitung aufgehoben oder durch einen Ausgabebefehl gedruckt oder in einen Streifen gelocht, der dann später gelesen oder auch weiterverarbeitet werden kann.
Man muß aber immer bedenken, daß ein solcher Rechenautomat nur das rechnen kann, das vorher ein Mensch durchdacht hat.
Die Maschine hat keine Phantasie !
Ihr Zustand zu irgend einem Zeitpunkt der Rechnung ist durch ihren Zustand beim Start der Rechnung genau bestimmt. Die Maschine verarbeitet, gezwungen durch das Rechenprogramm, eine große Menge unbenannter Zahlen. Die Deutung des Ergebnisses muß der Mensch vornehmen.
Der Rechenautomat erspart dem Menschen also durchaus nicht die geistige Arbeit, wohl aber die zeitraubende, rein mechanische Rechenarbeit. Diese übernimmt der Automat und erledigt sie in außerordentlich kurzer Zeit.
.