Syntax
array set sect [ABASECTION sectid GET]
array set unit [ABASECTION sectid GET GET UNIT iunit]
array set unit [ABASECTION sectid GET GET UIDX uidx]
Description
Query the section data.
Query the section unit data
Argument |
Dimension |
Meaning |
sectid |
OBJID |
Object-ID of cross section |
GET |
KEYWORD |
Query data |
UNIT |
KEYWORD |
Query the data of specified unit |
iunit |
INT |
Unit number > 0 |
UIDX |
KEYWORD |
Query the data of specified unit |
uidx |
INT |
Index of the unit, 0-based |
Return array for [ABASECTION sectid GET]
Array item |
Dimension |
Meaning |
error |
INT |
Error code |
info |
TEXT |
Object or error information |
id |
OBJID |
Object-ID |
name |
TEXT |
Cross section name |
refname |
TEXT |
Reference name as back reference to the input section |
variant |
TEXT |
Name of variant |
number |
INT |
Section number |
zlmin |
LCROSSD |
Z-Minimum of the surrounding box |
ylmin |
LCROSSD |
Y-Minimum of the surrounding box |
zlmax |
LCROSSD |
Z-Minimum of the surrounding box |
ylmax |
LCROSSD |
Y-Minimum of the surrounding box |
nunit |
INT |
Number of units in the section |
children |
LIST |
List of unit numbers |
Return array for [ABASECTION sectid GET UNIT iunit]
Return array for [ABASECTION sectid GET UIDX uidx]
Array item |
Dimension |
Meaning |
error |
INT |
Error code |
info |
TEXT |
Object or error information |
id |
OBJID |
Object-ID of cross section |
number |
INT |
Unit number > 0 |
uidx |
INT |
Index of the unit, 0-based |
utype |
ENUM |
Type of unit from {"NONE", "SBEAM", "SCOMP", "SNODE", "SLOAD", "SPRING"} |
zc |
LCROSSD |
Z-coordinate of CoG |
yc |
LCROSSD |
Y-coordinate of CoG |
z0 |
LCROSSD |
Z-coordinate of unit node |
y0 |
LCROSSD |
Y-coordinate of unit node |
bidx |
INT |
Index the boundary, 0-based |
aprinc |
ANGLED |
Direction of principal axis (utype = "SBEAM" or utype = "SCOMP") |
nchild |
LIST |
Number of individual beams of composite (utype = "SBEAM" or utype = "SCOMP") |
childidx |
LIST |
List of individual beams of composite, 0-based list of indexes (utype = "SBEAM" or utype = "SCOMP") |
Ax |
LCROSSD^2 |
Area |
Ay |
LCROSSD^2 |
Shear area in y (utype = "SBEAM" or utype = "SCOMP") |
Az |
LCROSSD^2 |
Shear area in z (utype = "SBEAM" or utype = "SCOMP") |
zs |
LCROSSD |
Z-coordinate of shear center (utype = "SBEAM" or utype = "SCOMP") |
ys |
LCROSSD |
Y-coordinate of shear center (utype = "SBEAM" or utype = "SCOMP") |
Uo |
LCROSSD |
Outer perimeter |
Ui |
LCROSSD |
Inner perimeter |
zlmin |
LCROSSD |
Z-Minimum of the surrounding box |
ylmin |
LCROSSD |
Y-Minimum of the surrounding box |
zlmax |
LCROSSD |
Z-Minimum of the surrounding box |
ylmax |
LCROSSD |
Y-Minimum of the surrounding box |
I1 |
LCROSSD^4 |
Moment of inertia around the 1st principal axis (z) (utype = "SBEAM" or utype = "SCOMP") |
I2 |
LCROSSD^4 |
Moment of inertia around the 2nd principal axis (y) (utype = "SBEAM" or utype = "SCOMP") |
It |
LCROSSD^2 |
Torsional moment of inertia (utype = "SBEAM" or utype = "SCOMP") |
Izz |
LCROSSD^4 |
Moment of inertia around Z (utype = "SBEAM" or utype = "SCOMP") |
Iyy |
LCROSSD^4 |
Moment of inertia around Y (utype = "SBEAM" or utype = "SCOMP") |
Iyz |
LCROSSD^4 |
Deviation moment of inertia (utype = "SBEAM" or utype = "SCOMP") |
Asl |
LCROSSD^2 |
Area (shear lag, utype = "SBEAM" or utype = "SCOMP") |
zcsl |
LCROSSD |
Z-coordinate of CoG (shear lag, utype = "SBEAM" or utype = "SCOMP") |
ycsl |
LCROSSD |
Y-coordinate of CoG (shear lag, utype = "SBEAM" or utype = "SCOMP") |
Izzsl |
LCROSSD^4 |
Moment of inertia around Z (shear lag, utype = "SBEAM" or utype = "SCOMP") |
Iyysl |
LCROSSD^4 |
Moment of inertia around Y (shear lag, utype = "SBEAM" or utype = "SCOMP") |
Scopes
All
Examples
# units
array set uc [ABMUNIT LCROSSD GET]
array set uf [ABMUNIT FORCE GET]
array set um [ABMUNIT MOMENT GET]
array set ua [ABMUNIT ANGLED GET]
array set ut [ABMUNIT TEMP GET]
array set uc2 [ABMUNIT LCROSSD GET POWER 2]
array set uc4 [ABMUNIT LCROSSD GET POWER 4]
# list of sections
array set sects [ABASECTIONS GET LIST]
# section data
set ID $sects(first)
for { set isect 0 } { $isect < $sects(count) } { incr isect } {
if { $isect > 0 } { set ID [OBJNEXT $ID] }
array unset sect
array set sect [ABASECTION $ID GET]
puts $outfile ""
puts $outfile [format " Section Name : %s" $sect(name)]
puts $outfile [format " Reference : %s" $sect(refname)]
puts $outfile [format " Variant : %s" $sect(variant)]
puts $outfile [format " Global Number : %d" $sect(number)]
puts $outfile [format " Bounding Box, Min. : %8.3f%s %8.3f%s" $sect(zlmin) $uc(symb) $sect(ylmin) $uc(symb)]
puts $outfile [format " Bounding Box, Max. : %8.3f%s %8.3f%s" $sect(zlmax) $uc(symb) $sect(ylmax) $uc(symb)]
puts $outfile [format " Number of Units : %d" $sect(nunit)]
set text " Unit Numbers :"
for { set i 0 } { $i < $sect(nunit) } { incr i } {
set child [lindex $sect(children) $i]
append text [format " %2d" $child]
}
puts $outfile $text
for { set iu 0 } { $iu < $sect(nunit) } { incr iu } {
array unset unit
array set unit [ABASECTION $ID GET UIDX $iu]
puts $outfile ""
puts $outfile [format " Unit : %d" $unit(number)]
puts $outfile " -----------------------------------------------------------"
puts $outfile [format " Type : %s" $unit(utype) ]
puts $outfile [format " Index : %s" $unit(uidx) ]
puts $outfile [format " CoG : %8.3f%s %8.3f%s" $unit(zc) $uc(symb) $unit(yc) $uc(symb)]
puts $outfile [format " Origin : %8.3f%s %8.3f%s" $unit(z0) $uc(symb) $unit(y0) $uc(symb)]
puts $outfile [format " Boundary Index : %s" $unit(bidx)]
puts $outfile [format " Perimeter, out : %10.5f%s" $unit(Uo) $uc(symb)]
puts $outfile [format " Perimeter, in : %10.5f%s" $unit(Ui) $uc(symb)]
puts $outfile [format " Area : %10.5f%s" $unit(Ax) $uc2(symb)]
puts $outfile ""
puts $outfile [format " Bounding Box, Min. : %8.3f%s %8.3f%s" $unit(zlmin) $uc(symb) $unit(ylmin) $uc(symb)]
puts $outfile [format " Bounding Box, Max. : %8.3f%s %8.3f%s" $unit(zlmax) $uc(symb) $unit(ylmax) $uc(symb)]
if { $unit(utype) == "SBEAM" || $unit(utype) == "SCOMP" } {
puts $outfile ""
puts $outfile [format " Principal Axis : %10.6f%s" $unit(aprinc) $ua(symb)]
puts $outfile [format " Composite Children : %d" $unit(nchild)]
set text " Composite Index :"
for { set i 0 } { $i < $unit(nchild) } { incr i } {
set child [lindex $unit(childidx) $i]
append text [format " %2d" $child]
}
puts $outfile $text
puts $outfile [format " Area, shear y : %10.5f%s" $unit(Ay) $uc2(symb)]
puts $outfile [format " Area, shear z : %10.5f%s" $unit(Az) $uc2(symb)]
puts $outfile ""
puts $outfile [format " Shear center y : %10.5f%s" $unit(ys) $uc(symb)]
puts $outfile [format " Shear center z : %10.5f%s" $unit(zs) $uc(symb)]
puts $outfile ""
puts $outfile [format " Principal moment of inertia 2 - y : %10.5f%s" $unit(I2) $uc4(symb)]
puts $outfile [format " Principal moment of inertia 1 - z : %10.5f%s" $unit(I1) $uc4(symb)]
puts $outfile [format " Torsional moment : %10.5f%s" $unit(It) $uc4(symb)]
puts $outfile ""
puts $outfile [format " Moment of inertia Iyy : %10.5f%s" $unit(Iyy) $uc4(symb)]
puts $outfile [format " Moment of inertia Izz : %10.5f%s" $unit(Izz) $uc4(symb)]
puts $outfile [format " Moment of inertia Iyz : %10.5f%s" $unit(Iyz) $uc4(symb)]
puts $outfile ""
puts $outfile " Shear lag data"
puts $outfile [format " CoG y : %10.5f%s" $unit(ycsl) $uc(symb)]
puts $outfile [format " CoG z : %10.5f%s" $unit(zcsl) $uc(symb)]
puts $outfile [format " Area : %10.5f%s" $unit(Asl) $uc2(symb)]
puts $outfile [format " Iy : %10.5f%s" $unit(Iyysl) $uc4(symb)]
puts $outfile [format " Iz : %10.5f%s" $unit(Izzsl) $uc4(symb)]
}
}
puts $outfile " -----------------------------------------------------------------------------------------------------------------------------"
}
The list of sections is queried. The list is run through in a for-loop and the data of the respective cross cection object is queried.
It is assumed that a text file outfile has been opened for writing. The result data is written formatted into the text file.
The output is project-dependent and can look like the following, for example:
....
Section Name : v001
Reference : MG-Box:v001
Variant : 5
Global Number : 5
Bounding Box, Min. : -7.416[m] -3.700[m]
Bounding Box, Max. : 7.400[m] 1.250[m]
Number of Units : 6
Unit Numbers : 1 2 4 6 3 5
Unit : 1
-----------------------------------------------------------
Type : SBEAM
Index : 0
CoG : -0.067[m] -1.419[m]
Origin : 0.000[m] 0.000[m]
Boundary Index : 0
Perimeter, out : 33.81138[m]
Perimeter, in : 16.43064[m]
Area : 10.69269[m²]
Bounding Box, Min. : -7.000[m] -3.700[m]
Bounding Box, Max. : 7.000[m] 0.175[m]
Principal Axis : -1.472721[deg]
Composite Children : 0
Composite Index :
Area, shear y : 4.58791[m²]
Area, shear z : 6.24368[m²]
Shear center y : -1.88884[m]
Shear center z : -0.06321[m]
Principal moment of inertia 2 - y : 115.55695[m**4]
Principal moment of inertia 1 - z : 20.46473[m**4]
Torsional moment : 38.83650[m**4]
Moment of inertia Iyy : 115.49414[m**4]
Moment of inertia Izz : 20.52755[m**4]
Moment of inertia Iyz : 2.44316[m**4]
Shear lag data
CoG y : -1.41927[m]
CoG z : -0.06680[m]
Area : 10.69269[m²]
Iy : 115.55695[m**4]
Iz : 20.46473[m**4]
Unit : 2
-----------------------------------------------------------
Type : SLOAD
Index : 1
CoG : 0.000[m] 0.040[m]
Origin : 0.000[m] 0.000[m]
Boundary Index : 6
Perimeter, out : 21.56672[m]
Perimeter, in : 0.00000[m]
Area : 0.85627[m²]
Bounding Box, Min. : -5.350[m] -0.125[m]
Bounding Box, Max. : 5.350[m] 0.214[m]
....
Output for script above.
|
(C) ALLPLAN GmbH |
Privacy policy |