HP49 WGV-PACK

EXAMPLES

Ó HEUSON SOFTWARE

 

 

INHALT:

 

WGV: Weggrößenverfahren der Baustatik, XZ, XY, XYZ-Rahmen, Theorie I. und II. Ordnung.

CALENDAR: Kalender zur Verwaltung der Termine mit Tages-, Wochen-, Monatsansicht.

CONSTANT: über 70 physikalische Konstanten, Basis- und abgeleitete Einheiten auch in algebraischen Termen.

HELP49: Hilfe mit allen HP49 Kommandos, einzeln oder gruppiert. Editierbare Hilfeliste.

HPDATA: Datenbankprogramm mit Listen und Formularansicht, Dateneingabe am HP oder PC.

HPTEXT: Textprogramm mit vielen Funktionen, Texteingabe am HP oder PC.

PT: Periodensystem der Elemente mit 6 Eigenschaften, Molekulargewichte, vom Symbol zu den Daten.

UTILS: Programmierwerkzeuge, Memory, Ports, Verschiedenes.

VECTOR: Vektoralgebra für Vektoren mit Variablen.

 

Diese Textdatei enthält Beispiele zu den meisten Verzeichnissen.

 

Die Beispiele sind in folgender Form dargestellt:

 

PROG :  O1 O2 .. ON -> O1' .. OM'

 

Dh. stehen die Objekte O1 .. ON im Stack und man drückt PROG, so ergeben

sich daraus O1' .. OM'. Man gibt zuerst O1 ein, dann O2 usw, im Stack er-

scheint also N: O1 .. 1: ON .

 

HINWEIS:

Verwenden Sie stets die neueste ROM-Version

 

 

 

VERZEICHNIS WGV

 

 

 

XZRAHMEN (THEORIE I. ORDNUNG)

 

 

EINGABE

Wechseln Sie ins Verzeichnis WGV XZRAHMEN und drücken Sie die Taste BXZ2 und es erscheint im Stack 1: { { 0 0 0 4 32000 ¥ o } { 0 4 5 4 25000 ¥ r } { 5 4 8 0 25000 ¥ l }}. Der 1. Stab hat somit die Anfangskoordinaten 0 0 und die Endkoordinaten 0 4, EI=32000 [kNm^2], EA=¥, o = ohne Gelenk, analog für die anderen Stäbe. Für Ihre eigenen Berechnungen müssen Sie diese Liste von Hand eingeben und es empfiehlt sich diese Liste in BXZ2 oder einer anderen Variablen zu speichern.

 

PLOT und CHECK der Eingabe MIT [STPLOT],[SRPLOT],[CHECK]

Drücken Sie nun [CUSTOM] [STPLOT] (neben C) oder [CUSTOM] [NEXT] [SRPLOT] um einen Plot zu erhalten, man sieht ob man die Stabkoordinaten richtig eingegeben hat, sowie die Nummerierung der Stäbe und Knoten. Die Stäbe werden nach ihrer Reihenfolge in der Liste nummeriert. Die Nummerierung der Knoten geht folgendermaßen: Stab 1 linkes, rechtes Ende = Knoten 1,2; Stab 2 das noch nicht verwendete Ende erhält Nummer 3 usw. Das Programm SRPLOT liefert ein Bild bei dem die Nummern der Knoten mit Kreisen und die der Stäbe mit Kästen eingerahmt sind ist aber etwas langsamer als STPLOT. Die Position der Gelenke entnimmt man der Eingabeliste. Drücken Sie nach Verlassen der Grafikumgebung mit [ON] die Tasten [CUSTOM] [CHECK] und Sie erhalten die Meldung "Eingabe okay". Wenn Sie bei Ihrer Eingabe die Reihenfolge laut Kurzanleitung falsch haben, dann gibt CHECK eine entsprechende Meldung. Beispiel: { { 0 4 5 4 25000 ¥ r } { 0 0 0 4 32000 ¥ o } { 5 4 8 0 25000 ¥ l }}[CHECK] ->"Stab 2 Koordinaten, Gelenke vertauschen".

 

Berechnung von TI, KIL, KIG MIT [XZKI]

In Stack 1: muß nun das Beispiel BXZ2 stehen. Nach Drücken von [VAR] (Variablenanzeige) und [XZKI] erhält man die Transformationsmatrizen Ti, sowie globale und lokale Steifigkeitsmatrizen kiL, kiG für alle Stäbe nach ca 5 Sek. Die Ausgabe erfolgt in einer Liste {{T1 k1L k1G}..} die für spätere Verwendung zugleich in der Variablen Lki (x NEXT drücken) abgespeichert wird. Ansehen der Liste mit [CUSTOM] [View]. Blättern mit Kursor ab, auf = vor zurück, Kursor links, rechts = erste, letzte Seite des Bildes, beenden der Ansicht mit [ENTER]. Man erhält z.B. die Matrizen des Stabes 3 durch 3 [CUSTOM] [GET]. Das Zerlegen einer Liste in Elemente erfolgt am einfachsten mit [EVAL].

 

Kges und Kges reduziert MIT [XZKG],[XZKR]

Gesamte Steifigkeitsmatrix (reduziert): Drücken Sie nun [VAR] und wieder [BXZ2]. Jetzt muß man die Liste der Randbedingungen RB ( = Nummern der zu löschenden Zeilen und Spalten) von Hand eingeben in diesem Beispiel: {1 2 3 5 9 10 11 12} [ENTER] (4 Knoten => 4x3=12 Elemente).Im Stack steht nun in 2: {{}} (BXZ2) 1:{1 2...}. Erläuterung: U1,W1,F1,W2,F3,U4,W4,F4=0 =>entsprechende Zeilen/Spalten werden gelöscht. Drücken Sie nun XZKR (reduzierte Gesamtsteifigkeitsmatrix) nach ca 20 Sek. erscheint die reduzierte Gesamtsteifigkeitsmatrix im Stack 1 (=4x4-Matrix, zugleich in Kges abgespeichert).

Ergebnis: :Kges(reduziert) [[6000 12000 0 0][12000 47000 0 3000][0 0 384 -288][0 3000 -288 816]].

 

Die nicht reduzierte Gesamtsteifigkeitsmatrix (12x12-Matrix) erhält man mit XZKG, Eingabe {{}} (BXZ2), die auch in Kges gespeichert ist. Man kann nachträglich noch die Zeilen und Spalten löschen mit dem Programm RC-. Gibt man ein: 2:[[]] (Kges) 1:{1 2 3 5 9 10 11 12} und drückt [CUSTOM] [RC-] so erhält man wieder Kges(reduziert)

 

XZKR und XZKG berechnen auch Lki und speichern es in der Variablen 'Lki' ab. Man muß also nicht unbedingt das Programm XZKI ausführen !

 

VERSCHIEBUNGEN, KINEMATIK mit [KVPRED], [KVP]

Einbau der Nebenbedingungen (Kinematik) und lösen von RTKR*V=RT*P: Geben Sie in den Stack ein: 3:Kges(red) berechnet von XZKR 2: Pges: [-10 -18.75 0 11.25] (Lastvektor) 1:[[1 0][0 1][1 0][-.75 0]] (Reduktionsmatrix für Kinematik, W3=-0.75*U2). Drücken Sie nun [VAR] [NXT] [NXT] [KVPR]. Das Programm KVPRED berechnet nun Vges mit Reduktionsmatrix. Ergebnis: 2: :RT*Kges*RT: [[7275 9750][9750 47000]] 1: Vges:[-2.76E-3 1.75E-4 -2.76E-3 2.07E-3]. Die Reduktionsmatrix wird automatisch in der Variablen 'RedMat' , Pges in 'Pges' , Kges in 'Kges' sowie das Ergebnis Vges in 'Vges' gespeichert für spätere Verwendung. Alle Variablen sieht man durch Drücken von [VAR] und mehrmals [NXT]. Das Programm KVP löst das System K*V=P ohne Reduktionsmatrix und Kinematik.

 

LOKALE, GLOBALE LASTVEKTOREN mit [PI0LXZ], [PI0G]

Mit dem Programm PI0LXZ werden lokale Lastvektoren interaktiv berechnet. Drücken Sie VAR NXT PI0LXZ zur Berechnung der lokalen Lasten. Man wird zunächst zur Eingabe des Gelenkes aufgefordert  (o=ohne, l=links, r=rechts, b=beidseitig) danach zur Eingabe des Lastfalles P M q q12 (=q1,q2) DT T Dw, wenn das Gelenk = o,l,r ist bzw. des Lastfalles p p12 pa T wenn das Gelenk = b ist. Die Bezeichnung der Lastfälle finden Sie in der Kurzanleitung.

Beispiel: Drücken Sie [PI0LXZ], Gelenk l (=links), Lastfall q, dann [ENTER] drücken, nun gibt man bei :q:6 (kN) und bei :l:5 (Stablänge in m) ein und man erhält in Stack 2: die Formel für Gleichlast :pql: {0 '-3*q*l/8' 0 0 '-5*q*l/8' '-q*l^2/8'} und in Stack 1: den berechneten Wert: :pql: [0 -11.25 0 0 -18.75 -18.75].

Berechnung globaler Lastvektoren erfolgt entweder durch Transformation von Hand mit Drehmatrix TaXZ oder mit dem Programm PI0G. Voraussetzung zur Anwendung von PI0G ist, daß Lki mit XZKI oder XZKG, XZKR berechnet wurde und in der Variablen Lki gespeichert ist: 2: [0 -11.25 0 0 -18.75 -18.75] (lokaler Lastvektor berechnet von [PI0LXZ]) 1: 3 (Stab 3) [PI0G], daraus folgt [9 -6.75 0 15 -11.25 -18.75], da lokales und globales System beim schiefen Stab nicht identisch sind.

 

SCHIEFE LASTEN MIT [PI0S], [QI0S], [WI0S]

Schiefe Lasten berechnen mit PI0S (S=schief). Beispiel: Eingabe: 4: 15 (P=15KN) 3: 0 (a=Winkel von P zu Vertikalen. 2: 5 (=Abstand der Last vom linken Stabende) 1: {2.5 6 10.5 0 10000 100000 o} (=Eingabeliste von Stab) [VAR][NXT][PI0S] -> 2: pL:[-4.5 -6 15 -4.5 -6 -15] (lokaler Lastvektor) 1: pG:[0 -7.5 15 0 -7.5 -15] (globaler Lastvektor). Das Programm funktioniert bei Gelenk l,r,o,b.

Schiefe Schneelast berechnen mit QI0S: 100 (S) {0 0 2.5 6 0 219700 l} -> pLS: {'-p*l/2' '-3*q*l/8' 0 '-p*l/2' '-5*q*l/8' '-q*l^2/8' } pLS:[115.38 ...] pGS:[11.09..]

Schiefe Windlast mit WI0S: 100 {0 0 2.5 6 0 219700 l} -> pLS: {'-p*l/2' '-3*q*l/8' 0 '-p*l/2' '-5*q*l/8' '-q*l^2/8' } pLS:[115.38 ...] pGS:[-236.09..]

 

EINFLUßLINIEN MIT [PIEL]

Einflußlinien berechnen mit PIEL: Interaktive Eingabe von Lastfall: Dpa,l,r  und Gelenk: o,l,r -> Berechnung von p: {..}(Formel) und p: [..] (Wert). Zur Bezeichnung der Fälle siehe Grafik am Ende der Anleitung.

Beispiel: [PIEL] Eingabe LF: Dpa  GE: l, Werte: Dp: 100  EI:1E5 a:2(Abstand vom linken Stabende in m) l:5(Stablänge)

->  pDpal: { 0 3*EI*a/l^3*Dp 0 0 -3*EI*a/l^3*Dp -3*EI*a/l^2*Dp} pDpal: [0 480000 0 0 -480000 -2400000]

 

LOKALE KNOTENKRÄFTE MIT [XZPI]

Lokale Knotenkräfte für jeden Stab berechnen mit dem Programm XZPI. Beispiel BXZ2. Eingabe: 3: Vi : [0 0 1.7564E-4 0 2.0773E-3 -8.6017E-5] (man gibt Vi als 6-Vektor ein [U1 W1 F1 U2 W2 F2] erhalten aus Vges  2: Pi0 [0 -18.75 18.75 0 -11.25 0] 1:2 (Stab Nummer 2). Voraussetzung: man hat Lki berechnet mit XZPI. Man drückt nun [VAR] [NXT] [XZPI] und erhält 2: ri [[0 0 ...]..] Spannungsauswertematrix ri=ki*Ti sowie 1: pi: [0 -20.53 27.61 0 -9.47 0]. Nullzeilen und Spalten in Matrizen kann man von Hand mit [CUSTOM][RC-] löschen, Nullspalten in Vektoren mit [CUSTOM] [COL-].  In obigem Beispiel bei pi erhält man mit {1 4 6} [COL-] : [-20.53 27.61 -9.47]. Der Vektor pi wird in der Variablen 'Pi' gespeichert.

 

FEDERN IN KGES EINSETZEN MIT [FEDER]

Verwenden Sie hierzu das folgende Beispiel BXZ1 und drücken dann XZKG. Beim einsetzen von Federn muß man stets Kges berechnen. Nun geben Sie die Federliste ein in der Form FL={ Uk a Wk b Pk c } (P=PHI=F, P wurde gewählt, weil das F am HP48 etwas schwer zugänglich ist). Beispiel: 2:Kges (berechnet von XZKG aus Beispiel 1) 1:{U3 1000 P3 1600 } (dh am Knoten 3 greift in U-Richtung eine Zugfeder und in P(=F) eine Drehfeder an). Drücken Sie nun [VAR][NXT][FEDER]. Ausgabe KgesF: [[..]] fast identisch mit der Matrix Kges aus Beispiel 1, die Matrix wird wieder in 'Kges' gespeichert. Das Element {7 7} ist nun 21500 und das Element {9 9 } ist 23600. Durch Löschen der Zeilen und Spalten {1 2 3 10 11 12} mit RC- erhält man die reduzierte Gesamtsteifigkeitsmatrix.

 

DREHMATRIZEN MIT [TaXZ] UND [KaXZ]

[TaXZ] erzeugt eine Drehmatrix um den Winkel a: 30 (Grad) -> T30: [[.86 -.5 0 ...][.5  .86  0 ...][0  0  1  ..]..] (6x6-Matrix)

[KaXZ] dreht eine 6x6 Steifigkeitsmatrix um den Winkel a. Beispiel: [BXZ2] [XZKI] -> {{}}  [CUSTOM] 3 [GET]

2 [GET]  -> k3L   -53,1301 (Drehwinkel a)  [kaXZ]  -> [[..]] Matrix identisch zu k3G ([Lki]  [CUSTOM] 3 [GET]

2 [GET].

 

LÖSCHEN DER ERGEBNISSE MIT [XZSET]

Wenn Sie nach einer Berechnung die Ergebnisse Lki, Kges etc nicht mehr benötigen, empfiehlt es sich diese Daten in den entsprechenden Variablen zu löschen um Speicherplatz auf dem Rechner zu sparen. Dies wird durch das Programm XZSET automatisch getan, welches die Zahl 0 in allen diesen Variablen speichert. Drücken Sie hierzu einfach [VAR] [PREV] [XZSET]. Die Liste in Lki umfasst i.a. mehrere KB.

 

 

 

XZRAHMEN (THEORIE II. ORDNUNG)

 

EINGABE

Wechseln Sie am HP ins Verzeichnis WGV und dann ins Unterverzeichnis XZRAHMEN. Drücken Sie Menütaste B [BXZII] es erscheint : {{0 0 0 8 90000 ¥ o -1116.376}..} im Stack 1: . 0 0 0 8 sind die X und Z Koordinaten vom linken und rechten Ende des Stabes 1, EI=90000, EA=¥ ,o= ohne Gelenke, -1116.376= Normalkraft. ...=analog für die anderen Stäbe. Das Programm [XZKII] bringt eine Fehlermeldung wenn man vergessen hat die Normalkraft einzugeben. Die Orientierung des lokalen Koordinatensystems kann mit dem Programm CHECK : [CUSTOM][CHECK] getestet werden. Vertauschen Sie z.B. beim 2 Stab linke und rechte Koordinaten, so bringt CHECK eine entsprechende Fehlermeldung. Diese Fehlerroutine wurde nicht in XZKI,II eingebaut, damit man Stäbe mit beliebiger lokaler Orientierung berechnen kann.

 

PLOT und CHECK der Eingabe MIT [STPLOT],[SRPLOT],[CHECK]

Drücken Sie nun [CUSTOM] [STPLOT] um einen Plot zu erhalten und überprüfen Sie die Orientierung der Stäbe mit [CHECK]. Sie können auch mit [SRPLOT] eine graphische Darstellung des Tragwerkes erhalten.

 

TI, KIL, KIG MIT [XZKII]

Berechnen Sie nun aus BXZII mit [XZKI] : Ti, kiL, kiG nach Theorie I. Ordnung, das Ergebnis ist auch in Lki gespeichert. Sehen Sie die Liste mit [CUSTOM] [View] an und speichern Sie die Ergebnisse zum späteren Vergleich in der Variablen LkiI ab. Berechnen Sie nun mit Theorie II. Ordnung: [VAR] [BXZII] [NXT] [XZKII]. Und vergleichen Sie mit der Theorie I. Ordnung, das Ergebnis ist wieder in 'Lki' gespeichert. Ansehen und Vergleichen durch Zerlegen der Liste mit EVAL oder mit CST View. Die Werte für die Konstanten der Theorie 2.ter Ordnung e A B C D werden berechnet und in der Variablen 'eABCD' gespeichert, wobei die Nummer in der Liste der Stabnummer entspricht. e=l*Ö(ïNï/EI) Stabkennzahl, A,B,C,D werden aus e berechnet (die in XZKII eingebauten Formeln werden hier nicht angegeben.). obiges Beispiel: BXZII ->

'eABCD'={{:e: .89 :A:3.89 :B: 2.02 :C: 2.87 :D: .79} (<- 1. Stab) {:e: 0 :A: 4  :B: 2  :C: 3. :D: 0} (<- 2. Stab)

{:e: .61 :A: 3.95  :B: 2.01  :C: 2.92  :D:  .37} (<- 3. Stab)}

 

KGES UND KGES REDUZIERT MIT [XZKGII],[XZKRII]

Gesamte Steifigkeitsmatrix (nicht reduziert): Drücken Sie [VAR] und [BXZII] [NXT] [XZKGII] (nicht reduzierte Gesamtsteifigkeitsmatrix) Sie erhalten eine 12x12 Matrix :KgesII: [[1941.75  0  8325.22 ...]]. Durch Streichen der Spalten

{1 2 3 5 7 8 9 10 11 12} mit RC- können Sie die reduzierte Gesamtsteifigkeitsmatrix erhalten. Die Berechnungsergebnisse sind in Lki und Kges gespeichert.

Gesamte Steifigkeitsmatrix (reduziert): Drücken Sie nun [VAR] und wieder [BXZII]. Randbedingungen RB: {1 2 3 5 7 8 9 10 11 12} [ENTER] (4 Knoten => 4x3=12 Elemente). Drücken Sie nun [VAR] [NXT] [XZKRII] (reduzierte Gesamtsteifigkeitsmatrix) und vergleichen Sie das Ergebnis mit der Theorie I. Ordnung. Die Kinematik muß wieder gesondert berücksichtigt werden. Ergebnis: :KgesII: [[1941.75  8325.22][8325.22  95996.60]]

 

 

 

XYRAHMEN

 

PLOT und CHECK der Eingabe MIT [STPLOT],[SRPLOT],[CHECK]

Wechseln Sie ins Verzeichnis XYRAHMEN (Unterverzeichnis von WGV). Sie sehen 2 Beispiele BXY1 und BXY2. Wegen der Symmetrie von BXY1 verwendet BXY2 nur die Stäbe 1 2 4, die von den Programmen jetzt als 1 2 3 numeriert werden. Plotten Sie beide Beispiele mit [CUSTOM] [STPLOT] oder [SRPLOT] zur Ansicht und überprüfen Sie die Orientierung der Stäbe mit [CHECK].

 

Berechnung von TI, KIL, KIG MIT [XYKI]

Im folgenden wird nur Beispiel BXY2 verwendet, was wegen der Symmetrie ausreicht und weniger Speicher benötigt. Drücken Sie BXY2 und dann [XYKI] und Sie erhalten die Matrizen Ti KiL KiG für die drei Stäbe, auch abgespeichert in der Variablen 'Lki'. Sehen Sie die Matrizen mit [CUSTOM] [View] an. Es sind alles 6x6 Matrizen, entsprechend der Randbedingungen nicht benötigte Zeilen und Spalten kann man mit CST RC- selbst von Hand streichen. Streichen Sie nun zb in der Matrix k3G die Zeilen und Spalten {1 2 3}: [VAR] [NXT][NXT] [Lki] [CUSTOM] 3 [GET] 3 [GET] {1 2 3} [RC-] so erhalten Sie: K3G:[[60 120 -90][120 356 -192][-90 -192 244]]

 

Kges und Kges reduziert MIT [XYKG],[XYKR]

Drücken Sie [VAR] [BXY2] [XYKG]. Die gesamte XY-Steifigkeitsmatrix wird berechnet Kges = [[60 -120 -90..]..]

(12x12-Matrix). Die Liste der Transformations- und globalen und lokalen Steifigkeitsmatrizen wird berechnet und in Lki gespeichert. [XYKR] gibt die reduzierte Matrix aus bei Eingabe einer Liste der zu streichenden Zeilen und Spalten. Die Programme XYKR und XYKG entsprechen den Programmen XZKR und XZKG.

 

LOKALE, GLOBALE LASTVEKTOREN mit [PI0LXY], [PI0G]

Berechnen lokaler Lastvektoren für die Lastfälle m,m12,M (Beschreibung der einzelnen Lastfälle siehe Kurzanleitung). Gelenk: o,l,r,gl,gr. (gl,r=Gabellager links rechts). Beispiel: [PI0LXY] Lastfall: q, Gelenk:o ; q:20000 l:5 (Stablänge) ->

pqo: {-q*l/2 0 q*l^2/12 -q*l/2 0 -q*l^2/12}  pqo: [-50000 0 41666.66 -50000 0 -41666.66].

Die Berechnung globaler Lastvektoren erfolgt analog zum XZ-Rahmen mit PI0G.

 

SCHIEFES MOMENT MIT [MI0S]

Berechnung der Lastvektoren bei schiefem Moment M. (S=schief). Beispiel: Eingabe: 4: 20 (M=20KN) 3: 15 (a=Winkel von M zur Vertikalen. 2: 3 (=Abstand M vom linken Stabende) 1: 8 (Stablänge) [VAR][NXT][PI0S] ->

pL: {M*COS(a)*6*a*(l-a)/l^2  ...}  pL:[27.16  -3.23  -96.59  -27.16  -15.52  -50.71] 

 

DREHMATRIZEN MIT [TaXY] UND [KaXY]

[TaXY] erzeugt eine Drehmatrix um den Winkel a: 30 (Grad) -> T30: [[1 0 0 ...][0  .86 -.5 ..][0  .5  .86  ...].] (6x6-Matrix)

[KaXY] dreht eine 6x6 Steifigkeitsmatrix um den Winkel a. Beispiel: [BXZ2] [XYKI] -> {{}}  [CUSTOM] 1 [GET]

2 [GET]  -> k1L   53,1301 (Drehwinkel a)  [kaXZ]  -> [[..]] Matrix identisch zu k1G ([Lki]  [CUSTOM] 3 [GET]

2 [GET].

 

ÜBERTRAGUNGSMATRIZEN MIT [UIX]

UIX erzeugt aus der Eingabe BXY2 die Übertragungsmatrizen für jeden Stab. Eingabe 1: BXY2 Ausgabe : 1: {U1 U2 U3}

{U1: [[1 0 -.5 -3.33 ..] ..] ...}

 

VERSCHIEBUNGEN, KINEMATIK, LOKALE KNOTENKRÄFTE  mit [KVPRED], [KVP], [XYPI]

Berechnungen analog zum XZ-Rahmen

 

LÖSCHEN DER ERGEBNISSE MIT [XYSET]

Wenn Sie nach einer Berechnung die Ergebnisse Lki, Kges etc nicht mehr benötigen, empfiehlt es sich diese Daten in den entsprechenden Variablen zu löschen um Speicherplatz auf dem Rechner zu sparen. Dies wird durch das Programm XYSET automatisch getan, welches die Zahl 0 in allen diesen Variablen speichert. Drücken Sie hierzu einfach [VAR] [PREV] [XYSET]. Die Liste in Lki umfasst i.a. mehrere KB.

 

 

 

XYZRAHMEN:

 

 

Berechnung von KIL MIT [XYZKI]

wechseln Sie ins Verzeichnis XYZRAHMEN und drücken Sie die Taste [BXYZ], Sie sehen ein Beispiel mit mit einem Stab Eingabe = {{Xl Yl Zl Xr Yr Zr EIY EIZ GI}..}. Das Programm XYZKI gibt die lokalen Steifigkeitsmatrizen KiL aus, die zugleich in der Variablen 'Lki' gespeichert sind. BXYZ  -> k1L:[[3571428.57143  0  0  ....]]  (12x12)-Matrix

 

Das Programm [XYZSET]  speichert 0 in der Variablen Lki und spart dadurch Speicherplatz.

 

 

 

CALENDAR

 

(Terminverwaltung)

 

Hinweis: als Datumsformat wird: DD.MM.YYYY verwendet.

 

Calendar = selbsterklärendes Programm mit integrierter Hilfe erhältlich durch Drücken von [MODE] im Programm. Sie können das Programm Calendar z.B. der Benutzertaste hold left shift [9] zuweisen: Drücken Sie hierzu im CALENDAR Verzeichnis [->] [Calendar] 74.21 ASN. Speichern Sie dann eine leere Liste im HOME Verzeichnis: {} 'Cdat' [STO]. Ordnen Sie Cdat dann an die letzte Stelle im HOME Verzeichnis mit FILES ORDER. Durch drücken von hold left shift [9] können Sie dann das Programm starten.

 

 

 

CONSTANT

 

(physikalische Konstanten)

 

Die Konstanten wurden entnommen aus folgenden Quellen :

CODATA recommended values of the fundamental physical constants, Reviews of Modern Physics April 2000

Particle Data Group, Phys. Rev. D50, August 1994 part I; Cohen, Taylor, Physics Today, August 1994, p. 9-13

The European Physical Journal C 1998. Horst Stöcker, Taschenbuch der Physik, Verlag Harri Deutsch, 1998.

In Klammern sind die Unsicherheiten bei einer Standard-Abweichung in den letzten Zahlen angegeben. (Alle Konstanten ohne Gewähr)

 

Const               gibt Wert von Konstanten bei Eingabe des Symbols.

'c' -> 299792458_m/s; 'hb/(me*c)' -> .. UBASE  -> 3.86..E-13_m = Comptonwellenlänge des Elektrons.

'q^2/(4*p*e0*r^2)' (Coulombkraft, r^2 unbestimmt) ->  '(2.30..E-28_C^2*m/F)*r^-2'.

'q^2/(4*p*e0*1E-16_m^2)' ->  UBASE -> 2.30..E-12_kg*m/s^2.

 'Ö(hb*c/G)' -> 1.23..E-6_J*m/C UBASE -> 2.17..E-8_kg Planck Masse.

 (p und e werden durch numerische Werte ersetzt !)    

{c 'h/(me*c)'} -> {:c: 299792458_m/s '2.42631060001E-12_J*s^2/(kg*m)}

'F=G*mE*mS/rES^2' -> [Ubase] [Uderi] -> 'F=3.54_N' Gravitation Erde-Sonne

'EXP(hb/(me*c)' -> [Ubase] -> 'EXP(3.86E-13m)' Const, Tconst werten Konstanten auch innerhalb von Funktionen aus. Um den numerischen Wert zu erhalten muss man natürlich zuerst [Ubval] oder [Uval] ausführen.  'EXP(3.86E-13m)' [Ubval] [->NUM] -> 1.

Tconst             'F=q^2/(4*p*e0*r^2)' {r 1_cm}, 'r=1_cm' -> 'F=2.30..E-24_N'

Ubase              UBASE bei Termen mit Einheiten oder Listen

{:c: 299792458_m/s '2.426E-12_J*s^2/(kg*m)} -> {299792458_m/s 2.426E-12_m }

 'l=hb/(MP*c)' Const -> 'l=2.8808684281E-62_J*s^-2*c^2/(GeV*m)'

 Ubase -> 'l=1.61604796831E-35_m', l ist die Plancklänge,  'lP' Const -> :lP: 1.61605E-35_m

Uval                 UVAL  bei Termen mit Einheiten oder Listen

{:c: 299792458_m/s '2.42631060001E-12_J*s^2/(kg*m)} -> {299792458 2.42631060001E-12 }

 'l=hb/(mP*c)' Const -> 'l=2.88E-62_J*s^-2*c^2/(GeV*m)'

 Uval -> 'l=2.88E-62', l ist die Plancklänge

Ubval               UBASE UVAL  bei Termen mit Einheiten oder Listen

{:c: 299792458_m/s '2.42631060001E-12_J*s^2/(kg*m)} -> {299792458 2.42631060001E-12 }

 'l=hb/(MP*c)' Const -> 'l=2.8808684281E-62_J*s^-2*c^2/(GeV*m)'

Ubval -> 'l=1.61604796831E-35', l is the Plancklänge  (lP=1.61605E-35_m) 

Uderi                abgeleitete SI-Einheiten in Termen oder Listen (Uderi ist die inverse Operation von Ubase)

Die SI Einheiten nach denen uderi vereinfacht sind: N J W Pa C V OHM S F Wb H T lm lx

3.4_kg*m^2/(A^2*s^3) -> 3.4_OHM, 1_s^2/(kg*m) -> 1/1_N,

'A*1.2_kg/s^3' -> 'A*1.2_W/m^2';  {2_A^2*s^4/(kg*m^2) 'V*3_kg/(m*s^2)'} -> {2_F 'V*3_Pa'}

 

UNIVERSAL Universal Constants c ..

ELECTROMAGNETIC electromagnetic constants

ATOMIC-NUCLEAR Atomic and nuclear

PHYSICOCHEMICAL PhysicoChemical Constants

PARTICLEMASS Particle masses in MeVand or kg

ASTROPHSICAL astrophysical constants

SOLARSYSTEM solarsystem data

 

Hinweis : wenn Sie weitere Konstanten verwenden wollen speichern Sie diese mit Wert und Einheit unter Ihrem Symbol im Verzeichnis CONSTANT ab. Mit Const können Sie dann diese Konstanten aufrufen.

In HELP finden Sie die Symbole und Namen der gespeicherten Konstanten.

 

 

 

HELP49

 

Hilfeprogramm mit Hilfe zu allen HP49G(+)-Kommandos.

 

Nach Übertragung des Verzeichnisses HELP49, wechseln Sie in dieses Verzeichnis und drücken die Taste Install, wodurch die Listen Comm49, Commgroup49 und die Hilfeprogramme HelpComm49, HelpGroup49 nach Port 2 kopiert werden und anschließend wird das Verzeichnis HELP49 gelöscht wird. HelpComm49, HelpGroup49 werden den Benutzertasten MODE hold right shift, a right shift zugeordnet. Die CAS Kommandos werden der Taste MODE hold left shift zugeordnet. (Memo H=Help). Um HelpComm49 auszuführen, wechseln Sie in den Usermode durch drücken von <- USER und drücken die beschriebenen Benutzertasten, wonach eine Choose-Box mit allen Kommandos erscheint. Nach Auswahl eines Kommandos erscheint die Hilfe dazu am Bildschirm. HelpGroup49 stellt eine Kopie des ausgewählten Punktes in den Stack, so dass man ihn in einer Variable speichern kann.

                                                                                                      

Sie können die Listen Comm49, Commgroup49 bearbeiten und Beispiele oder Erläuterungen einfügen. Kopieren Sie dazu die Liste ins Home Verzeichnis, stellen Sie die Liste in Stack 1 und zerlegen sie mit EVAL. Danach können Sie mit dem Kursor zum entsprechenden Kommando hochfahren und die Liste bearbeiten. Am Ende bewegen Sie den Kursor in die oberste Liste mit -> cursor up und führen das Kommando ->LIST aus. Die Liste speichern Sie dann in Comm49, Commgroup49 und kopieren sie wieder nach Port2.

 

 

 

HPDATA

 

(Datenbank für den HP49)

 

Ein Datenbankprogramm für den HP49, mit dem man Adressen oder beliebige Datensätze verwalten kann. Das Programm selbst hat nur 4500 KB und ist fast selbsterklärend. Es besitzt einen Listen- und Formularbildschirm und man kann Daten hinzufügen, Löschen, editieren, suchen, sortieren,  ausschneiden, kopieren und einfügen. Zwei Beispiele : adress und particle sind im Verzeichnis vorhanden.

 

Database         Datenbankprogramm. 'name' -> start; _ -> start.

Drücken Sie database bei leerem stack. Sie sehen die Meldung

"create new database or select old one key in name". Drücken Sie

jetzt die Menütaste adress und ENTER und Sie sehen den ersten Datensatz von adress.

Kursor links/rechts : vorheriger/nächster Datensatz

Kursor auf/ab : vorherige/nächste Seite des aktuellen Datensatzes des Listenbildschirm

STO : speichere Datenbank;

ON : beendet Program, normalerweise mit ENTER beenden.

NXT : nächste Seite des Menues. Tipt man nochmals NXT, so kommt man zur ersten Seite zurück.

Menuetasten :

ADD : füge neuen Datensatz hinzu bei aktueller Position

DEL : löscht aktuellen Datensatz

EDIT : editiere aktuellen Datensatz

SRCH : suche Datensatz, Angabe eines beliebigen Suchstrings. 

LIST : schaltet zwischen Listen- und Formular-ansicht hin und her.

Im Listenbildschirm wird die erste Zeile des Formularbildschirms als Titelzeile dargestellt. Jeder

Datensatz ist mit einer Nummer versehen und der aktuelle Datensatz ist markiert. Alle Funktionen

sind im Listenbildschirm verfügber, aber langsamer als im Formularbildschirm.

­STK   aktueller Datensatz in den Stack für spätere Verwendung

NXT => Menuetasten:

GOTO : gehe zu Datensatz Nummer n: n -> ..

SORT : sortiere Daten welches langsamer als das HP49 Kommando ist)

CUT : schneide Datensätze von m bis n aus; man kann diese danach

an jeder Position wieder einsetzen.

COPY : Kopiere Datensätze von m bis n, man kann diese danach an

jeder Position wieder einsetzen.

PASTE : Füge kopierte oder ausgeschnittene Datensätze an Position n wieder ein.

OPEN : öffne neue Datenbank ohne die alte zu speichern.

Man kann Datensätze die in der alten DB kopiert oder ausgeschnitten

wurden in die neue Datenbank einsetzen.

 

ADRESS.DB   Beispiel Adress-Datenbank, PARTICLE.DB Beispiel Datenbank mit Teilchendaten.

S«D               transformiert String in Datenbank, die einzelnen Datensätze müssen durch 2 Newlines

                         getrennt sein. Man kann so ASCII-Daten vom PC -> HP transferieren und mit S->DB

                         formatieren.

PC®D             String vom PC (enthält Sonderzeichen n) Þ Datenbank {} wobei n gelöscht wird.

D®EQ             Datenbank, satz mit Gleichung zB  {"Newtons Law 'F=m*a' " } -> Gleichung {'F=m*a'}

                         zur Verwaltung einer Formelsammlung von Gleichungen

 

 

 

HPTEXT

 

(Textprogramm für den HP49)

 

Ein Textprogramm für den HP49. Die Erläuterungen hierzu befinden sich in der Datei HELP.TXT im Verzeichnis HPTEXT. Drückt man Textview und dann HELP.TXT, so sieht man Erklärungen zu den Dialogprogrammen.

Texte werden in Zeichengröße 1 dargestellt und sind eine Liste von Strings. Man kann daher sehr schnell auf beliebige Seitenzahlen eines Textes zugreifen. Das formatieren eines beliebigen Strings oder anderen Objektes erledigt das Programm S<-->T, wobei newline Zeichen beachtet werden. Ist ein String länger als 33 Zeichen so wird automatisch umgebrochen. Man kann daher die Texte einfach im PC als ASCII-Texte eingeben, zum HP49 übertragen (auch im Binärmodus) und mit S<->T formatieren.

 

Textview         view und edit von Texten die mit S<->T formatiert worden sind.

'TEXT' -> view; leerer Stack oder anderes Object -> Eingabe eines Textnamens wird verlangt.

Kursor auf,ab,links,rechts = vorherige,nächste,erste,letzte Seite.

[STO] : speichere Text unter aktuellem Namen

[NXT] : schaltet zur nächsten Menueseite

[ENTER] Beende Programm mit/ohne Speichern der Änderungen

[ON] unterbricht Programm ohne Speichern der Änderungen

n [] (beliebige Taste ausser ON) : gehe zu Seite n, Zb 3 [] Seite 3 [] 23 Seite 23 etc

open : öffne neuen Text, ohne speichern der Änderungen

savas : speichere Text unter neuem Namen

edit : editiere aktuelle Seite, drücke CONT nach dem Editieren

del : lösche aktuelle Seite

­stck : kopiere Text zwischen Seite Linie p1 l1 p2 l2 in den Stck

p:n zeigt aktuelle Seitenzahl, oder gehe zu Seite ?

Menuetasten (zweite Seite)

cut : schneide Text zwischen Seite Linie p1 l1 p2 l2

copy : kopiere Text zwischen Seite Linie p1 l1 p2 l2

paste : setze (kopierten oder ausgeschnittenen) Text an Seite Linie p1 l1 ein

srch : suche Text beginnend bei nächster Seite, gebe Suchstring ein.

repl : ersetze alten String durch neuen String, beginnend bei nächster Seite.

p:n zeigt aktuelle Seitenzahl, oder gehe zu Seite ?

Man kann das Program mit [ON] bebenden, dann bleibt -1 im Stack (von -1 WAIT)

S«T                beliebiger String (zb. vom PC übertragen) Û Text mit Zeilenumbruch

S«P                String mit korrekter Zeilenlänge <= 33 Û Textseiten ohne Zeilenumbruch

Deln                 PC-string enthält häufig n  von Tabulatoren etc. Þ n gelöscht

HELP.TXT      Text mit Erklärung der Programme. TIMBUKTU.TXT weiteres Textbeispiel

 

PT

 

 (Periodic Table of Elements)

 

Quellen :

Particle Data Group (1998) Internet

Particle Data Group, Phys. Rev. D50, 1243 (1994)

Particle Data Group, Phys. Rev. D54, PartI (1996)

enthält das Periodensystem der Elemente und Programme die einen sehr

schnellen Zugriff auf die Elemente des Periodensystems und deren

Eigenschaften gestatten. Das Verzeichnis PTE muß im HOME-Verzeichnis

gespeichert werden!

 

Pts,l,g              -> Periodensystem, blättern mit cursor up/down

Eldat                gibt Daten des Elementes aus, bei Eingabe des chemischen Symbols:

                         Aa -> { Symbol Name Gruppe El.Konf. Masse Ordnungszahl}. zB: 'O' ->

{ O Oxygen :G: 16 :M: 15.9994 :Z: 8 :EC: "(He)(2s)^2(2p)^2"  }

Elvw                 chemisches Symbol => Bild der Element-daten + Liste

Molwt              Molekulargewicht einer chemischen Verbindung

'AmBCn' -> M(AmBCn): m.n1..nk; Beispiele : 'H2O' ->

 M(H2O): 18.01528_g/mol; 'Fe3O4' -> M(Fe3O4): 231.5386_g/mol;

'CH3COOH' -> M(CH3COOH): 60.05256_g/mol.

Atwt                Atomgewicht M eines Elementes bei Eingabe des Symboles :

Aa -> M(Aa): M zB 'U' -> M(U): 238.0289_g/mol.

Atno                Ordnungszahl Z eines Elementes bei Eingabe des Symboles :

Aa -> Z(Aa): Z; zB 'U' -> Z(U): 92.

Nno                  Neutronenzahl N eines Elementes bei Eingabe des Symboles :

Aa -> N(Aa): N; zB 'U' -> N(U): 146. Hinweis : Die Angabe von N

ist problematisch, wenn mehrere stabile Isotope vorhanden sind.

Das Programm ermittelt die Differenz M-Z und rundet auf bzw ab.

Z->EL              Gibt bei Eingabe von Z die Liste mit den Elementeigenschaften aus:

Z -> { .. }. zB 45 -> { Rh .. }.

N->EL              NAME to ELement-data : 'NAME' -> { .. };

Oxygen ->  { O Oxygen :G: 16 :M: 15.9994 :Z: 8 :EC: "(He).." }

 

Das Unterverzeichnis ELEMENTS enthält die Elemente in alphabetischer

Reihenfolge. Man kann sie editieren, um neue Elemente und Daten hinzuzufügen.

 

Gruppen des Periodensystems : 1..18 LAN (Lanthaniden) ACT (Actiniden).

 

Die Programme ELDAT, MOLWT arbeiten von jedem Verzeichnis aus. Man kann

sie zB in HOME speichern und hat sie dann überall zur Verfügung!

 

 
 

 

UTILS

 

(Utilities: Programmierung, Verschiedenes)

 

Srch                 'FILE' -> { PATH1 }., Suche File in allen Directories in HOME  aber nicht Subdirectories, sowie

in allen Ports.

Srchall             'FILE' -> { PATH1 }.{PATH2} :2: FILE ..., Suche File in allen Directories in HOME  aber nicht

Subdirectories, sowie in allen Ports und gib alle Pfade aus.

Repl                 ersetze String SO in Objekt durch SN   << a b c d >> "c " "xy" ->  << a b xy d >>

                         <<  HALT ALT >>  "ALT"   "NEU"  -> <<  HNEU NEU >>

Replall             ersetze SO in Objekt  total durch SN :    << a b c d a >> "a" "x" -> << x b c d x >>

Rcl                    'FILE' -> <<>> 'FILE' File in Stack gestellt, wenn File in Home, Verzeichnissen in Home und Ports 0,1,2

Preval              'PROG' -> Programm ausgewertet , wenn PROG in irgendeinem Directory in HOME oder Port ist

Strxlist             String zu Liste von Strings, nützlich für Daten vom PC. Der String wir bei jeder neuen Zeile in Substrings          zerlegt.

                         "1

                         2

                         3" <-> {"1" "2" "3" }

                         "1 2

                         3 4" <-> {"1 2" "3 4"}

Strxobj             String zu Liste von Objekten, nützlich für Daten vom PC.

                         gleiches Beispiel wie oben oder "1 2 3" -> {1 2 3}; führt OBJ-> aus. Seien Sie vorsichtig mit Texten vom PC,     die eventuell Programmnamen oder HP49 Kommandos enthalten können.

Typchk            Typecheck: Objekt  { mögliche Typen } -> Objekt,  wenn Objekttyp nicht in Liste -> ERROR

7.5 { 0 1 } -> 7.5 (okay); 'x*y' { 0 1 } -> 'x*y', ERROR

{X (0,1) 2 'X^2+a*X'}{0 1 5 6 9}->{X (0,1) 2 'X^2+a*X'} (okay)

{X (0,1) 2 'X^2+a*X'"a"}{0 1 5 6 9}->{X (0,1) 2 'X^2+a*X'"a"}, ERROR

Ermsg              Errormessage n -> Message. Erzeugt HP-Fehlermeldungen

1 -> "Insufficient Memory", 514 -> "Bad Argument Type"    

Choose            erzeugt Choose Box mit Programmen im aktuellen Verzeichnis

Menus             erzeugt Choose Box mit verborgenen Menus und alten HP48 Menus

Sort                  sortiere Listen mit Zahlen und Variablen in alphabetischer Ordnung 

                         { 2 X 1 a A } -> { 1 2 A X a }

View                 view object (end view mit [okay] oder ON)

Pview               Seitenansicht von Objekt im Minifont, Ansicht von Listen von Listen

                         ¬®­¯=erste, letzte,vorige,nächste Seite

                         5 [] gehe zu Seite 5; 12 [] gehe zu Seite 12 etc, Ende mit [ENTER]

Pview2             Seitenansicht von Objekt im Large Font, Kursortasten wie bei Pview

Vview              Vektoren, Listen in vertikaler Ansicht

Stview             stack view in einem Bild blättern mit Kursor up down

Pictview          Ansicht von Textstrings und Bildern zusammen, scrollen mit Kursortasten.

                         Beispiel: Eine Liste mit Graphikobjekten (grobs) und Textstrings wird als Bild dargestellt.

Txtview           Textview von 10 Zeilen Texten, ¬®­¯=erste, letzte,vorige,nächste Seite

                         5 [] gehe zu Seite 5; 12 [] gehe zu Seite 12 etc, Ende mit [ENTER]

S<->Txt           String <-> Text mit 10 Zeilen; Help.Txt = Textbeispiel und Hilfe

Keymanager   Programm zur Verwaltung der Benutzertastatur, selbsterklärendes Dialogprogramm

                         mit integrierter Hilfe!

Userkeys         speichert folgende nützliche Benutzertastatur                    1:_                                             1:_

                         Wobei [¬],[®] = left,right shift hold (¬,®gedrückt halten)

                         [®]+[F5] = ausmultiplizieren (EXPAND+FDISTRIB), [®]+[F6] = faktorisieren (COLLECT)

                         [APPS] = FILES, [¬]+[­] = large/small Stack; [¬]+[¯] = View Object, [HIST]=CMD (last commands)

                         [®]+[COS]= differenziere nach VX, (DERVX+EXPAND), [®]+[TAN]= integriere nach VX    (INTVX+EXPAND), [®]+[5]=STAT Menü, [¬]+[2]= lösche Variable (PURGE über DEFINE),                                                 [¬]+[3]=CONST. Kommentar: Die [APPS] Taste wird kaum benötigt und ist daher im USER-Modus durch                                                   [FILER] ersetzt. Ebenso wird [HIST] durch CMD ersetzt.

Delkeys           löscht Benutzertastatur (mit Bestätigung)                            1:_                                             1:_

Flagreset         setzt  folgende Flags 

                         -22: Infinite -> +-9E499, -27: 'X+Yxi'-> 'X+Yxi', -28 Simulteanous Plot, -35: Binary transfer

                         -41: 24-hour clock, -42: dd.mm.yy format, -56 Standard beep off, -61: [USR] locks User

                         -62: User keys on, -70 ->GROB x lines str, -90 CHOOSE mini font, -117 Soft MENU,

                         -120: Silent mode on, -128 Vars are reals

Flagprog         erzeugt ein Programm zum Flag Reset, welches die            1:_                                             1:_

                         Flags auf die aktuellen Werte setzt, 

                         und der Benutzertaste hold [®] [Ö] (R=Reset) zugewiesen wird.

STARTUP      speichern Sie dieses Programm in HOME,

                         setzt KEYTIME auf 0, schaltet userkeys ein,                       1:_                                             1:_

          zeigt VAR Menu nach jedem Warmstart [ON]+[F3]

 

 

 

VECTOR

 

(Vektoralgebra)

 

Hinweis: die meisten Programme arbeiten mit Vektoren als Arrays und Listen [1 2 3] <-> {1 2 3},

 

Vadd                [A B C] [1 2 3]->['A+1'  'B+2' 'C+3']

Vsub                [A B C] [1 2 3]->['A-1'  'B-2' 'C-3']

Vsmul              [A B C] A -> ['A^2' 'A*B' 'A*C']

Vdot                 [A B C] [1 2 3]-> '1*A+2*B+3*C'

Vcross             [A B C] [1 2 3]->['3*B-2*C'  '-(3*A-C)'  '2*A-B']

Vabs                [A B C]  -> 'Ö(A^2+B^2+C^2)' (real mode)  , 'Ö(ïAï^2+ïBï^2+ïCï^2)' (complex mode)

Vunit                [1 2 3] -> ['Ö14/14'  'Ö14/7'  '3*Ö14/14']

Vangle             [1 2 3] [4 5 6]-> 12.93 (DEG)  ; .2257  (RAD)

Vtriple              [1 2 3][4 5 6][7 8 1]->  24

Vproj                [1 2 3][4 5 6] -> ['128/77' '160/77' '192/77']

Schmidt           [[-1 2 3 0][0 1 2 1][2 -1 -1 1]] (or [[]]) ->  [ '-Ö14/14'  'Ö14/7'  '3Ö14/14'   0 ][..][..]].

Vouter             [1 2 3] [4 5 6]-> [[4 5 6][8 10 12][12 15 18]]

Vcoord            [[1 2 3][4 5 6][7 8 1]] [2 1 3] -> ['-(73/24) ' '37/12' '-(3/8)']

Vdist                [1 2 3] [4 5 6] -> '3*Ö3'

Vpart                [1 2 3] [4 5 6] 2 -> [3 4 5]

->gij                 [[1 2 3][4 5 6][7 8 1]] -> [[14 32 26][32 77 74][26 74 114]]

C«C               [[1 2 3][4 5 6][7 8 1]] <->  [['-43/24' '19/12' '-1/8']['11/12' '-5/8' '1/4']['-1/8'  '1/4'  '-1/8']]

B->UVECT      [[1 2 3][4 5 6][7 8 1]] -> [['Ö14/14'  'Ö14/7'  '3Ö14/14']['4*Ö77/77' ..][]]

R->SP              [1 2 3] -> ['Ö14' 'ATAN(2)'  'ATAN(Ö5/3)']

SP->R              ['Ö14' 'ATAN(2)'  'ATAN(Ö5/3)'] CST XNUM XQ  -> [1 2 3]

R->CY              [1 2 3] -> ['Ö5' 'ATAN(2)'  3]]

CY->R              ['Ö5' 'ATAN(2)'  3]]-> CST XNUM XQ ->  [1 2 3]

P->V                 [1 2 3] <<Ö >> -> [ 1 Ö2 Ö3]