TCL Command ABRELEM, Ergebnisse von Lastfällen und Eigenmodes
Syntax
array set eres [ABRELEM number GET LOADCASE dataid ATNODE k]
array set eres [ABRELEM number GET LOADCASE dataid ATNODE k TNDSUM ATCOG|ATNODE]
array set epts [ABRELEM number GET LOADCASE dataid ATNODE k POINTS]
array set eres [ABRELEM number GET LOADCASE dataid ATNODE k PNTRES pname]
array set eres [ABRELEM number GET EIGENMODE dataid ATNODE k]
array set eres [ABRELEM number GET EIGENMODE dataid ATNODE k POINTS]
array set eres [ABRELEM number GET EIGENMODE dataid ATNODE k PNTRES pname]
Beschreibung
Abfrage der Ergebnisse am angegebenen Element und Knoten für einen bestimmten Lastfall.
Abfrage der Ergebnisssummen der Kabel für einen bestimmten Lastfall, bezogen auf den Elementschwerpunkt oder die Knotenposition.
Abfrage der Ergebnisse am angegebenen Element und Knoten für einen bestimmten Eigenmode. Kabelergebnisse sind für Eigenmodes nicht vorhanden.
|
Argument |
Dimension |
Bedeutung |
|
number |
INT |
Elementnummer |
|
GET |
KEYWORD |
Daten abfragen |
|
LOADCASE |
KEYWORD |
Lastfallergbnisse abfragen |
|
EIGENMODE |
KEYWORD |
Ergebnisse des Eignmodes abfragen |
|
dataid |
OBJID |
Daten-ID des Lastfalls oder des Eigenmodes |
|
ATNODE |
KEYWORD |
Es folgt die Angabe des Elementknotens als nächstes Argument. |
|
k |
INT |
Lokale Knotennummer, 1-basierend |
|
TNDSUM |
KEYWORD |
Summe der Kabelergebnisse abfragen |
|
ATCOG |
KEYWORD |
Schwerpunkt ist die Referenzposition für Kabelergebnisse |
|
ATNODE |
KEYWORD |
Der Elementknoten ist die Referenzposition für Kabelergebnisse |
|
POINTS |
KEYWORD |
Abfrage der Liste der Spannungspunkte am Knoten |
|
PNTRES |
KEYWORD |
Spannungspunktergebnis abfragen |
|
pname |
TEXT |
Spannungspunktname |
Rückgabefeld für [ABRELEM number GET ... dataid ATNODE k], Stabelemente und Federn
|
Feldargument |
Dimension |
Bedeutung |
|
error |
INT |
Fehlerstatus |
|
info |
TEXT |
Fehlerinformation |
|
u |
LIST |
6 Verformungen, wobei die ersten 3 Komponenten von Dimension LSTRUCT und die letzten 3 Komponenten (Rotationen) von Dimension ANGLE sind |
|
Fp |
LIST |
6 Komponenten der Primärkräfte, wobei die ersten 3 Komponenten von Dimension FORCE und die letzten 3 Komponenten (Momente) von Dimension MOMENT sind |
|
F |
LIST |
6 Komponenten der Kräfte, wobei die ersten 3 Komponenten von Dimension FORCE und die letzten 3 Komponenten (Momente) von Dimension MOMENT sind |
|
eps0 |
LIST |
3 dimensionslose Komponenten der initiellen Dehnung; Werte sind mit 1000 zu multiplizieren, um Promille zu erhalten. |
|
epsp |
LIST |
3 dimensionslose Komponenten der Primäredehnung; Werte sind mit 1000 zu multiplizieren, um Promille zu erhalten. |
|
eps |
LIST |
3 dimensionslose Komponenten der Dehnung; Werte sind mit 1000 zu multiplizieren, um Promille zu erhalten. |
Rückgabefeld für [ABRELEM number GET ... dataid ATNODE k], FE
|
Feldargument |
Dimension |
Bedeutung |
|
error |
INT |
Fehlerstatus |
|
info |
TEXT |
Fehlerinformation |
|
u |
LIST |
6 Verformungen, wobei die ersten 3 Komponenten von Dimension LSTRUCT und die letzten 3 Komponenten (Rotationen) von Dimension ANGLE sind; Rotationen mögen nicht für alle FE anwendbar sein. |
|
sig |
LIST |
6 Komponenten der Spannungen der Dimension STRESS |
Rückgabefeld für [ABRELEM number GET LOADCASE dataid ATNODE k TNDSUM ATCOG|ATNODE]
|
Feldargument |
Dimension |
Bedeutung |
|
error |
INT |
Fehlerstatus |
|
info |
TEXT |
Fehlerinformation |
|
F |
LIST |
6 Komponenten der Kräfte, wobei die ersten 3 Komponenten von Dimension FORCE und die letzten 3 Komponenten (Momente) von Dimension MOMENT sind |
|
Fp |
LIST |
6 Komponenten der Primärkräfte, wobei die ersten 3 Komponenten von Dimension FORCE und die letzten 3 Komponenten (Momente) von Dimension MOMENT sind |
|
Fg |
LIST |
6 Komponenten der Kräfte nach dem Verpressen, wobei die ersten 3 Komponenten von Dimension FORCE und die letzten 3 Komponenten (Momente) von Dimension MOMENT sind |
|
Fgp |
LIST |
6 Komponenten der Primärkräfte nach dem Verpressen, wobei die ersten 3 Komponenten von Dimension FORCE und die letzten 3 Komponenten (Momente) von Dimension MOMENT sind |
|
F0 |
LIST |
6 Komponenten der initiellen Kräfte, wobei die ersten 3 Komponenten von Dimension FORCE und die letzten 3 Komponenten (Momente) von Dimension MOMENT sind |
|
Fpl |
LIST |
6 Komponenten der plastischen Kräfte, wobei die ersten 3 Komponenten von Dimension FORCE und die letzten 3 Komponenten (Momente) von Dimension MOMENT sind |
Rückgabefeld für [ABRELEM number GET ... dataid ATNODE k POINTS]
|
Feldargument |
Dimension |
Bedeutung |
|
error |
INT |
Fehlerstatus |
|
info |
TEXT |
Fehlerinformation |
|
points |
LIST |
Liste der Namen der Spannungspunkte |
Rückgabefeld für [ABRELEM number GET ... dataid ATNODE k PNTRES pname]
|
Feldargument |
Dimension |
Bedeutung |
|
error |
INT |
Fehlerstatus |
|
info |
TEXT |
Fehlerinformation |
|
sig |
LIST |
6 Komponenten der Spannungen der Dimension STRESS |
|
sigp |
LIST |
6 Komponenten der Primärspannungen der Dimension STRESS |
Scopes
All
Beispiele
# units
array set uu [ABMUNIT LSTRUCT GET]
array set ur [ABMUNIT ANGLE GET]
array set uf [ABMUNIT FORCE GET]
array set um [ABMUNIT MOMENT GET]
array set us [ABMUNIT STRESS GET]
# get data ID
array set lcret [ABRESULTS "Schedule1" LOADCASE GET "SUM" ATDAY FINAL]
set dataID $lcret(id)
array set lcinfo [ABRESULT $dataID LOADCASE GET]
# list of elements
array set elems [ABAELEMS GET LIST]
# element data - displacements
set format1a " %12s %12s %12s %12s %12s %12s"
set format1b " %7d %-16s %4d %12.8f %12.8f %12.8f %12.8f %12.8f %12.8f"
puts $outfile ""
puts $outfile " ----------------------------------------------------------------"
puts $outfile " Loadcase '$lcinfo(name)' at $lcinfo(day): Displacements (global)"
puts $outfile " ----------------------------------------------------------------"
puts $outfile ""
puts $outfile " Element Type Node Ux Uy Uz Rx Ry Rz"
puts $outfile [format $format1a $uu(symb) $uu(symb) $uu(symb) $ur(symb) $ur(symb) $ur(symb)]
puts $outfile " -----------------------------------------------------------------------------------------------------------"
set ID $elems(first)
for { set ielem 0 } { $ielem < $elems(count) } { incr ielem } {
if { $ielem > 0 } { set ID [OBJNEXT $ID] }
array unset eshape
array set eshape [ABAELEM $ID GET SHAPE]
set nn $eshape(nn)
for { set k 1 } { $k <= $nn } { incr k } {
array unset eres
array set eres [ABRELEM $eshape(number) GET LOADCASE $dataID ATNODE $k]
set ux [lindex $eres(u) 0]
set uy [lindex $eres(u) 1]
set uz [lindex $eres(u) 2]
set rx [lindex $eres(u) 3]
set ry [lindex $eres(u) 4]
set rz [lindex $eres(u) 5]
puts $outfile [format $format1b $eshape(number) $eshape(type) $k $ux $uy $uz $rx $ry $rz]
}
}
Es wird angenommen, dass eine Textdatei outfile zum Schreiben geöffnet wurde. Die Ergebnisdaten werden formatiert in die Textdatei geschrieben.
Die Ausgaben sind projektabhängig und können zum Beispiel wie folgt aussehen:
----------------------------------------------------------------
Loadcase 'SUM' at FINAL: Displacements (global)
----------------------------------------------------------------
Element Type Node Ux Uy Uz Rx Ry Rz
[m] [m] [m] [rad] [rad] [rad]
-----------------------------------------------------------------------------------------------------------
101 BEAM_BERNOULLI 1 0.04681506 -0.00009516 0.00263769 -0.00007414 0.00043993 0.00082885
101 BEAM_BERNOULLI 2 0.04439719 0.00442552 0.00046186 -0.00022485 0.00042666 0.00095191
102 BEAM_BERNOULLI 1 0.04439719 0.00442552 0.00046186 -0.00022485 0.00042666 0.00095191
102 BEAM_BERNOULLI 2 0.04194895 0.00892244 -0.00167216 -0.00037327 0.00041859 0.00081970
103 BEAM_BERNOULLI 1 0.04194895 0.00892244 -0.00167216 -0.00037327 0.00041859 0.00081970
....
Ausgaben zu obiger Script.
# element data - forces
set format1a " %12s %12s %12s %12s %12s %12s"
set format1b " %7d %-16s %4d %12.3f %12.3f %12.3f %12.3f %12.3f %12.3f"
set format1c " %12.3f %12.3f %12.3f %12.3f %12.3f %12.3f"
puts $outfile ""
puts $outfile " --------------------------------------------------------"
puts $outfile " Loadcase '$lcinfo(name)' at $lcinfo(day): Forces (local)"
puts $outfile " --------------------------------------------------------"
puts $outfile ""
puts $outfile " Element Type Node Nx Vy Vz Mx My Mz"
puts $outfile " Primary Nx Primary Vy Primary Vz Primary Mx Primary My Primary Mz"
puts $outfile [format $format1a $uf(symb) $uf(symb) $uf(symb) $um(symb) $um(symb) $um(symb)]
puts $outfile " -----------------------------------------------------------------------------------------------------------"
set ID $elems(first)
for { set ielem 0 } { $ielem < $elems(count) } { incr ielem } {
if { $ielem > 0 } { set ID [OBJNEXT $ID] }
array unset eshape
array set eshape [ABAELEM $ID GET SHAPE]
set nn $eshape(nn)
for { set k 1 } { $k <= $nn } { incr k } {
array unset eres
array set eres [ABRELEM $eshape(number) GET LOADCASE $dataID ATNODE $k]
set Nx [lindex $eres(F) 0]
set Vy [lindex $eres(F) 1]
set Vz [lindex $eres(F) 2]
set Mx [lindex $eres(F) 3]
set My [lindex $eres(F) 4]
set Mz [lindex $eres(F) 5]
puts $outfile [format $format1b $eshape(number) $eshape(type) $k $Nx $Vy $Vz $Mx $My $Mz]
set Nx [lindex $eres(Fp) 0]
set Vy [lindex $eres(Fp) 1]
set Vz [lindex $eres(Fp) 2]
set Mx [lindex $eres(Fp) 3]
set My [lindex $eres(Fp) 4]
set Mz [lindex $eres(Fp) 5]
puts $outfile [format $format1c $Nx $Vy $Vz $Mx $My $Mz]
}
}
Es wird angenommen, dass eine Textdatei outfile zum Schreiben geöffnet wurde. Die Daten-ID wurde bereits ermittelt (vgl. erstes Beispiel). Die Ergebnisdaten werden formatiert in die Textdatei geschrieben.
Die Ausgaben sind projektabhängig und können zum Beispiel wie folgt aussehen:
--------------------------------------------------------
Loadcase 'SUM' at FINAL: Forces (local)
--------------------------------------------------------
Element Type Node Nx Vy Vz Mx My Mz
Primary Nx Primary Vy Primary Vz Primary Mx Primary My Primary Mz
[kN] [kN] [kN] [kNm] [kNm] [kNm]
-----------------------------------------------------------------------------------------------------------
101 BEAM_BERNOULLI 1 -42143.963 2466.186 -63.398 -7115.902 -2344.922 14179.015
4114.948 -820.501 20.132 75.999 347.384 -1412.267
101 BEAM_BERNOULLI 2 -42808.040 3223.557 -82.860 -7077.518 -2781.065 -1008.116
4149.255 -731.188 18.326 60.279 407.986 2617.051
102 BEAM_BERNOULLI 1 -42808.040 3223.556 -82.860 -7077.518 -2781.065 -1008.116
4149.255 -731.188 18.326 60.279 407.986 2617.051
102 BEAM_BERNOULLI 2 -44128.837 2013.964 -51.790 -6907.583 -3263.754 -16297.621
4597.746 -494.434 12.577 36.049 494.789 6270.019
103 BEAM_BERNOULLI 1 -44128.837 2013.964 -51.790 -6907.583 -3263.754 -16297.621
....
Ausgaben zu obiger Script.
# element data - strains
set format1a " %12s %12s %12s"
set format1b " %12s %12s %12s %12s %12s %12s"
set format1c " %7d %-16s %4d %12.6f %12.6f %12.6f"
set format1d " %12.6f %12.6f %12.6f %12.6f %12.6f %12.6f"
puts $outfile ""
puts $outfile " -----------------------------------------------------------"
puts $outfile " Loadcase '$lcinfo(name)' at $lcinfo(day): Strains"
puts $outfile " -----------------------------------------------------------"
puts $outfile ""
puts $outfile " Element Type Node eps-x eps-y eps-z"
puts $outfile " eps0-x eps0-y eps0-z epsp-x epsp-y epsp-z"
set u1 "\[o/oo\]"
puts $outfile [format $format1a $u1 $u1 $u1]
puts $outfile [format $format1b $u1 $u1 $u1 $u1 $u1 $u1]
puts $outfile " -----------------------------------------------------------------------------------------------------------"
set ID $elems(first)
for { set ielem 0 } { $ielem < $elems(count) } { incr ielem } {
if { $ielem > 0 } { set ID [OBJNEXT $ID] }
array unset eshape
array set eshape [ABAELEM $ID GET SHAPE]
set nn $eshape(nn)
for { set k 1 } { $k <= $nn } { incr k } {
array unset eres
array set eres [ABRELEM $eshape(number) GET LOADCASE $dataID ATNODE $k]
set epsx [expr {[lindex $eres(eps) 0] * 1000.0}]
set epsy [expr {[lindex $eres(eps) 1] * 1000.0}]
set epsz [expr {[lindex $eres(eps) 2] * 1000.0}]
puts $outfile [format $format1c $eshape(number) $eshape(type) $k $epsx $epsy $epsz]
set eps0x [expr {[lindex $eres(eps0) 0] * 1000.0}]
set eps0y [expr {[lindex $eres(eps0) 1] * 1000.0}]
set eps0z [expr {[lindex $eres(eps0) 2] * 1000.0}]
set epspx [expr {[lindex $eres(epsp) 0] * 1000.0}]
set epspy [expr {[lindex $eres(epsp) 1] * 1000.0}]
set epspz [expr {[lindex $eres(epsp) 2] * 1000.0}]
puts $outfile [format $format1d $eps0x $eps0y $eps0z $epspx $epspy $epspz]
}
}
Es wird angenommen, dass eine Textdatei outfile zum Schreiben geöffnet wurde. Die Daten-ID wurde bereits ermittelt (vgl. erstes Beispiel). Die Ergebnisdaten werden formatiert in die Textdatei geschrieben.
Die Ausgaben sind projektabhängig und können zum Beispiel wie folgt aussehen:
-----------------------------------------------------------
Loadcase 'SUM' at FINAL: Strains
-----------------------------------------------------------
Element Type Node eps-x eps-y eps-z
eps0-x eps0-y eps0-z epsp-x epsp-y epsp-z
[o/oo] [o/oo] [o/oo]
[o/oo] [o/oo] [o/oo] [o/oo] [o/oo] [o/oo]
-----------------------------------------------------------------------------------------------------------
101 BEAM_BERNOULLI 1 -0.113030 -0.000590 -0.019880
0.000000 0.000000 0.000000 0.010970 0.000090 0.001970
101 BEAM_BERNOULLI 2 -0.114780 -0.000700 0.001740
0.000000 0.000000 0.000000 0.011070 0.000100 -0.003650
102 BEAM_BERNOULLI 1 -0.114780 -0.000700 0.001740
0.000000 0.000000 0.000000 0.011070 0.000100 -0.003650
102 BEAM_BERNOULLI 2 -0.118600 -0.000820 0.023590
0.000000 0.000000 0.000000 0.012290 0.000120 -0.008760
103 BEAM_BERNOULLI 1 -0.118600 -0.000820 0.023590
....
Ausgaben zu obiger Script.
# element data - tendon forces
set format1a " %12s %12s %12s %12s %12s %12s"
set format1b " %7d %-16s %4d %12.3f %12.3f %12.3f %12.3f %12.3f %12.3f"
set format1c " %12.3f %12.3f %12.3f %12.3f %12.3f %12.3f"
puts $outfile ""
puts $outfile " ----------------------------------------------------------------------"
puts $outfile " Loadcase '$lcinfo(name)' at $lcinfo(day): Force sums by tendons, Moments taken at CoG"
puts $outfile " ----------------------------------------------------------------------"
puts $outfile ""
puts $outfile " Element Type Node Nx Vy Vz Mx My Mz"
puts $outfile " Primary Nx Primary Vy Primary Vz Primary Mx Primary My Primary Mz"
puts $outfile " Grout Nx Grout Vy Grout Vz Grout Mx Grout My Grout Mz"
puts $outfile " Grout-p Nx Grout-p Vy Grout-p Vz Grout-p Mx Grout-p My Grout-p Mz"
puts $outfile " Init Nx Init Vy Init Vz Init Mx Init My Init Mz"
puts $outfile " Plastic Nx Plastic Vy Plastic Vz Plastic Mx Plastic My Plastic Mz"
puts $outfile [format $format1a $uf(symb) $uf(symb) $uf(symb) $um(symb) $um(symb) $um(symb)]
puts $outfile " -----------------------------------------------------------------------------------------------------------"
set ID $elems(first)
for { set ielem 0 } { $ielem < $elems(count) } { incr ielem } {
if { $ielem > 0 } { set ID [OBJNEXT $ID] }
array unset eshape
array set eshape [ABAELEM $ID GET SHAPE]
set nn $eshape(nn)
# only beams
if { [string first "BEAM" $eshape(type)] != 0 } continue
for { set k 1 } { $k <= $nn } { incr k } {
array unset eres
array set eres [ABRELEM $eshape(number) GET LOADCASE $dataID ATNODE $k TNDSUM ATCOG]
set Nx [lindex $eres(F) 0]
set Vy [lindex $eres(F) 1]
set Vz [lindex $eres(F) 2]
set Mx [lindex $eres(F) 3]
set My [lindex $eres(F) 4]
set Mz [lindex $eres(F) 5]
puts $outfile [format $format1b $eshape(number) $eshape(type) $k $Nx $Vy $Vz $Mx $My $Mz]
set Nx [lindex $eres(Fp) 0]
set Vy [lindex $eres(Fp) 1]
set Vz [lindex $eres(Fp) 2]
set Mx [lindex $eres(Fp) 3]
set My [lindex $eres(Fp) 4]
set Mz [lindex $eres(Fp) 5]
puts $outfile [format $format1c $Nx $Vy $Vz $Mx $My $Mz]
set Nx [lindex $eres(Fg) 0]
set Vy [lindex $eres(Fg) 1]
set Vz [lindex $eres(Fg) 2]
set Mx [lindex $eres(Fg) 3]
set My [lindex $eres(Fg) 4]
set Mz [lindex $eres(Fg) 5]
puts $outfile [format $format1c $Nx $Vy $Vz $Mx $My $Mz]
set Nx [lindex $eres(Fgp) 0]
set Vy [lindex $eres(Fgp) 1]
set Vz [lindex $eres(Fgp) 2]
set Mx [lindex $eres(Fgp) 3]
set My [lindex $eres(Fgp) 4]
set Mz [lindex $eres(Fgp) 5]
puts $outfile [format $format1c $Nx $Vy $Vz $Mx $My $Mz]
set Nx [lindex $eres(F0) 0]
set Vy [lindex $eres(F0) 1]
set Vz [lindex $eres(F0) 2]
set Mx [lindex $eres(F0) 3]
set My [lindex $eres(F0) 4]
set Mz [lindex $eres(F0) 5]
puts $outfile [format $format1c $Nx $Vy $Vz $Mx $My $Mz]
set Nx [lindex $eres(Fpl) 0]
set Vy [lindex $eres(Fpl) 1]
set Vz [lindex $eres(Fpl) 2]
set Mx [lindex $eres(Fpl) 3]
set My [lindex $eres(Fpl) 4]
set Mz [lindex $eres(Fpl) 5]
puts $outfile [format $format1c $Nx $Vy $Vz $Mx $My $Mz]
}
}
Es wird angenommen, dass eine Textdatei outfile zum Schreiben geöffnet wurde. Die Daten-ID wurde bereits ermittelt (vgl. erstes Beispiel). Die Ergebnisdaten werden formatiert in die Textdatei geschrieben.
Die Ausgaben sind projektabhängig und können zum Beispiel wie folgt aussehen:
----------------------------------------------------------------------
Loadcase 'SUM' at FINAL: Force sums by tendons, Moments taken at CoG
----------------------------------------------------------------------
Element Type Node Nx Vy Vz Mx My Mz
Primary Nx Primary Vy Primary Vz Primary Mx Primary My Primary Mz
Grout Nx Grout Vy Grout Vz Grout Mx Grout My Grout Mz
Grout-p Nx Grout-p Vy Grout-p Vz Grout-p Mx Grout-p My Grout-p Mz
Init Nx Init Vy Init Vz Init Mx Init My Init Mz
Plastic Nx Plastic Vy Plastic Vz Plastic Mx Plastic My Plastic Mz
[kN] [kN] [kN] [kNm] [kNm] [kNm]
-----------------------------------------------------------------------------------------------------------
101 BEAM_BERNOULLI 1 38099.192 -7074.268 0.948 453.322 2439.884 -12730.541
-2390.316 444.866 0.959 -49.245 -266.431 820.953
0.000 0.000 0.000 0.000 0.000 0.000
0.000 0.000 0.000 0.000 0.000 0.000
42176.924 -7832.395 0.001 523.241 2817.662 -14114.072
-1687.330 313.246 0.000 -20.929 -112.738 562.552
101 BEAM_BERNOULLI 2 38736.706 -6279.057 0.469 408.920 2524.576 24465.269
-2351.453 381.266 0.470 -35.923 -219.634 -1483.753
0.000 0.000 0.000 0.000 0.000 0.000
0.000 0.000 0.000 0.000 0.000 0.000
42852.577 -6946.180 -0.006 464.057 2862.786 27065.316
-1770.635 286.821 0.000 -19.164 -118.303 -1120.801
....
Ausgaben zu obiger Script.
# element data - stress points
puts $outfile ""
puts $outfile " ----------------------------------------------------------------------"
puts $outfile " Loadcase '$lcinfo(name)' at $lcinfo(day): Stress points"
puts $outfile " ----------------------------------------------------------------------"
#collact all used stress points
set points ""
set ID $elems(first)
for { set ielem 0 } { $ielem < $elems(count) } { incr ielem } {
if { $ielem > 0 } { set ID [OBJNEXT $ID] }
array unset eshape
array set eshape [ABAELEM $ID GET SHAPE]
set nn $eshape(nn)
# only beams
if { [string first "BEAM" $eshape(type)] != 0 } continue
for { set k 1 } { $k <= $nn } { incr k } {
array unset eres
array set eres [ABRELEM $eshape(number) GET LOADCASE $dataID ATNODE $k POINTS]
set np [llength $eres(points)]
if { $np < 1 } continue
for { set ip 0 } { $ip < $np } { incr ip } {
set pntname [lindex $eres(points) $ip]
set idx [lsearch $points $pntname]
if { $idx < 0 } { lappend points $pntname }
}
}
}
# output head lines
set np [llength $points]
puts $outfile ""
set text " Element Type Node"
for { set ip 0 } { $ip < $np } { incr ip } {
set pntname [lindex $points $ip]
append text [format " %-25s" $pntname]
}
puts $outfile $text
set text " "
for { set ip 0 } { $ip < $np } { incr ip } {
append text " sig-x sigp-x"
}
puts $outfile $text
set text " "
for { set ip 0 } { $ip < $np } { incr ip } {
append text [format " %12s %12s" $us(symb) $us(symb)]
}
puts $outfile $text
set text " -----------------------------"
for { set ip 0 } { $ip < $np } { incr ip } {
append text [format "%s" "--------------------------"]
}
puts $outfile $text
# output result lines
set ID $elems(first)
for { set ielem 0 } { $ielem < $elems(count) } { incr ielem } {
if { $ielem > 0 } { set ID [OBJNEXT $ID] }
array unset eshape
array set eshape [ABAELEM $ID GET SHAPE]
set nn $eshape(nn)
# only beams
if { [string first "BEAM" $eshape(type)] != 0 } continue
set text [format " %7d %-16s" $eshape(number) $eshape(type)]
for { set k 1 } { $k <= $nn } { incr k } {
append text [format " %4d" $k]
for { set ip 0 } { $ip < $np } { incr ip } {
set pntname [lindex $points $ip]
array unset epnt
array set epnt [ABRELEM $eshape(number) GET LOADCASE $dataID ATNODE $k PNTRES $pntname]
if { $epnt(error) == 0 } {
set sigx [lindex $epnt(sig) 0]
set sigxp [lindex $epnt(sigp) 0]
append text [format " %12.4f %12.4f" $sigx $sigxp]
} else {
append text " - -"
}
set idx [lsearch $points $pntname]
if { $idx < 0 } { lappend points $pntname }
}
puts $outfile $text
set text " "
}
}
Es wird angenommen, dass eine Textdatei outfile zum Schreiben geöffnet wurde. Die Daten-ID wurde bereits ermittelt (vgl. erstes Beispiel). Die Ergebnisdaten werden formatiert in die Textdatei geschrieben.
Die Ausgaben sind projektabhängig und können zum Beispiel wie folgt aussehen:
----------------------------------------------------------------------
Loadcase 'SUM' at FINAL: Stress points
----------------------------------------------------------------------
Element Type Node SP1 SP2
sig-x sigp-x sig-x sigp-x
[N/mm²] [N/mm²] [N/mm²] [N/mm²]
---------------------------------------------------------------------------------
101 BEAM_BERNOULLI 1 -4.4885 0.0000 -2.1582 0.0000
2 -3.7465 0.0000 -3.5007 0.0000
102 BEAM_BERNOULLI 1 -3.7465 0.0000 -3.5007 0.0000
2 -3.0012 0.0000 -4.9344 0.0000
103 BEAM_BERNOULLI 1 -3.0012 0.0000 -4.9344 0.0000
....
1201 BEAM_BERNOULLI 1 - - - -
2 - - - -
1202 BEAM_BERNOULLI 1 - - - -
2 - - - -
....
Ausgaben zu obiger Script.
