Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Bir yapısal sistemde kolonlar, eksensel ve eksantrik yüklemelere karşı direnen dikey elemanlardır. Kolonların görevi üst yapıdan aldıkları yükü temele aktarmaktır. 

...

Code Block
languagexml
themeEclipse
titleExtends
collapsetrue
<O N="TXS_RectangularPierColumn" T="Project" Extends="[Base_SubColumn,TXSBase_SubUnits,Base_SubFoundRef]" Category="Substructure Components" TransAlignRule="Right">" TransAlignRule="Right">

Obje Linkleri:

Rectangular Pier Column  : https://openbrim.org/objid1xe1mlb66xwh0tcfm3052.libobj

Base_SubColumn             : https://openbrim.org/objidhib85e6m5dd3x809wcrec.libobj

Base_SubUnits                 : https://openbrim.org/objidk0ckggly319oh04s9ja2i.libobj

Base_SubFoundRef         : https://openbrim.org/objidlusuphcg46l8t9rh1xvmm.libobj

"Base_SubColumn", "TXS_SubUnits" ve "Base_SubFoundRef" parent objelerdir, "TXS_RectangularPierColumn" ise parent objelerden türetilmiş bir child objedir.

TXSBase_SubUnits

TXS_SubUnits objesi içerisinde köprü objeleri oluşturulurken kullanılan birim sistemi mevcuttur. Her projenin başında tekrar tekrar birim sistemi tanımlamaktansa, "TXS_SubUnits" objesi extend edilerek zamandan ve kod kalabalığından tasarruf edilmiş olur.

...

Türü ne olursa olsun tüm kolonların bazı ortak parametreleri vardır. Bunlar kolonun konumu ve kolon tabanının yüksekliği temel üst kotu gibi parametrelerdir. Şuan var olan ve gelecekte oluşturulabilecek tüm kolon objelerinde bu parametrelerin olmasını bekleriz. Kolonlara dair ortak bilgi ve parametreler her kolon objesi için yazılmak yerine "Base_SubColumn" objesi içinde tanımlanmıştır. Bir kolon objesi yaratmak için "Base_SubColumn" objesi kullanıldığında, hem zaman tasarrufu yapılmış olur, hem de oluşturulan objeler kontrol altına alınmış olur.

...

Code Block
languagexml
themeEclipse
titleBase_SubColumn Inputları
collapsetrue
<P N="sbcr" V="HPC" T="Base_SubColumnRef" Role="Input" D="Pier Cap" Category="Location" />
<O T="ParamInfo" Min="1" Max="1" Required="1" Pick="1" Param="sbcr" />
<P N="LocY" V="30" D="Transverse Offset" Role="Input" Category="Location" UT="Length" UC="StructU" />
<P N="LocZ" V="-600"  D="Top elevation of foundation" Role="Input" Category="Location" UT="Length" UC="DR_PropU1" />

...

Kolonun hangi alt yapı objesinin altına geleceğini belirler. Input'un türü "Base_SubColumnRef" olarak belirlenmiştir. Kütüphanede oluşturulan bir objenin türünün "Base_SubColumnRef" olabilmesi için, ya obje "Base_SubColumnRef" olmalıdır ya da "Base_SubColumnRef" objesini extend etmelidir. "Base_SubColumnRef" kolona referans çizgisi veren objelerin bir parent objesidir. Tüm bu ifadeler "Kolonun referans alarak kendini yerleştireceği obje, kolona referans çizgisi veren bir obje olmalıdır." anlamına gelir. " anlamına gelir.  Bu örnekte inputun değeri HPC olarak belirlenmiştir. HPC private içinde gelen bir Hammerhead Pier Cap objesidir.

  • Y konumu (LocY)

Kolonun, enine konumudur. Kolonun referans çizgisi üzerindeki konumu olarak da düşünülebilir. Pozitif veya negatif input değerlerine göre kolon sağa veya sola yerleştirilir.

  • Taban yüksekliği Temel üst kotu (LocZ)

Temel yüzeyinin yüksekliğidir. Bu değer alignment fonksiyonlarından etkilenmez, global z koordinatıdır.

...

Kolonun 3d geometrisi başlık kirişinin altındaki kolon referans çizgisine göre oluşturulur. Objeye atanan alignment (ObjAlignment) kodun başka bir kısmında, kolonun referans alacağı alt yapı objesinin alignment'ı olarak belirlenmiştir. AlignH parametresi "Orient" olarak tanımlanarak obje yatay eksende alignment'a sokulmuştur. AlignV parametresi "Warp" olarak tanımlanarak, obje alignment'ın düşey eksendeki koordinatlarına göre konumlandırılmıştır.  AlignT parametresi "Ignore" olarak tanımlanarak, cross-slope'tan gelen yükseklik değerinden etkilenmemesi sağlanmıştır.

CenterCoord parametresi, kolon kolonun merkez koordinatını verir. Kolon referans çizgisinin Y koordinatının noktasının LocY'ye eşit olduğu yerdeki koordinatlardan oluşan bir listedir. Bu parametre tüm kolon objeleri için ortak olduğundan Base_SubColumn objesi içerisinde hesaplanır ve exportlanır.  

Code Block
themeEclipse
titleCenterCoord
collapsetrue
<P N="CenterCoord" V="onliney(toglobal(sbcr.ColumnRefline),LocY)" />

Kolonun Z eksenindeki dönme açısı, altına geldiği yapının dönme açısına eşitlenmiştir. Bu işlem 3D Geometri kod segmenti içerisinde RZ="-sbcr.rot" komutuyla yapılmıştır.



Finite Element Model

Kolon geometrisi kalınlık ve genişlik genişlik (ColT ve ColW) inputları kullanılarak oluşturulmuştur. Kolonun alt yüzeyindeki noktalar oluşturulurken AlignT ve AlignV parametreleri "Fixed" olarak belirlenmiştir. Kolonun alt yüzeyinin yüksekliği, temelin üst yüzeyinin yüksekliğine eşittir. Yani bu noktaların alignmentın yüksekliğiyle bir bağlantısı yoktur. LocZ, noktaların global Z koordinatıdır. 

...

Code Block
languagexml
themeEclipse
titleRectangular Column FEM
collapsetrue
 <O N="FEM" T="Group">
        <O N="FEProperties" T="Group">
            <O N="RigidMat" T="Material">
                <P N="E" V="29000" D="Modulus of Elasticity" />
                <P N="G" V="11200" D="Shear Modulus" />
                <P N="d" V="0" D="Unit Weight" />
            </O>
            <O N="RigidSec" T="Section" w="240" h="240" Ax="w * h" Ay="(5/6)*Ax" Az="Ay" b="(w .GT. h ? h : w)" J="1000000000" Iy="h * w * w * w / 12" Iz="w * h * h * h / 12" Izy="0" a="(w .GT. h ? w : h)">
                <P N="Material" V="RigidMat" T="Material" />
            </O>
            <O N="RectangularPierSec" T="Section">
                <P N="Material" V="PierMaterial" T="Material" />
                <O T="Shape">
                    <O T="Point" X="ColW/2" Y="ColT/2" />
                    <O T="Point" X="-ColW/2" Y="ColT/2" />
                    <O T="Point" X="-ColW/2" Y="-ColT/2" />
                    <O T="Point" X="ColW/2" Y="-ColT/2" />
                </O>
            </O>
        </O>
        <O N="Column" T="Group" Alignment="ObjAlignment" AlignH="Orient" AlignV="Warp" AlignT="Ignore">
            <O N="P_Node1" T="Node" Z="LocZ" X="CenterCoord[0]" Y="CenterCoord[1]" AlignV="Fixed">
                <P N="Tx" V="-1" />
                <P N="Ty" V="-1" />
                <P N="Tz" V="-1" />
                <P N="Rx" V="-1" />
                <P N="Ry" V="-1" />
                <P N="Rz" V="-1" />
            </O>
            <P N="RTopZ" V="alignV(ObjAlignment,CenterCoord[0],CenterCoord[1])" />
            <P N="LLength" V="(CenterCoord[2]+RTopZ-LocZ)/mesh" />
            <O N="PierFERep" T="Repeat" S="0" E="mesh-1" I="1" CTRL="index" index="0">
                <O N="P_Node2" T="Node" Z="LocZ+(index+1)*LLength" Y="CenterCoord[1]" X="CenterCoord[0]" AlignV="Fixed" />
                <O N="PierFE" T="FELine" BetaAngle="PI">
                    <P N="Node1" V="iif(index.EQ. 0, P_Node1,PierFERep[index-1].P_Node2)" T="Node" />
                    <P N="Node2" V="P_Node2" T="Node" />
                    <P N="Section" V="PierSec" T="Section" />
                </O>
            </O>
            <O N="P_Node2" T="Node" Z="CenterCoord[2]" X="CenterCoord[0]" Y="CenterCoord[1]" />
            <O N="PierFE" T="FELine">
                <!-- beta angle? -->
                <P N="Node1" V="P_Node1" T="Node" />
                <P N="Node2" V="P_Node2" T="Node" />
                <P N="Section" V="RectangularPierSec" T="Section" />
            </O>
            <P N="colTopPt" V="onliney(toglobal(sbcr.PedestalRefLine), x.LocY)" />
            <P N="colBotPt" V="onliney(toglobal(sbcr.ColumnRefline), x.LocY)" />
            <O N="P_Node3" T="Node" Z="colTopPt[2]" Y="LocY" X="CenterCoord[0]" />
            <O N="PierFE" T="FELine">
                <P N="Node1" V="PierFERep[E].P_Node2" T="Node" />
                <P N="Node2" V="P_Node3" T="Node" />
                <P N="Section" V="RigidSec" T="Section" />
            </O>
        </O>
    </O>

...