Skip to end of metadata
Go to start of metadata

You are viewing an old version of this content. View the current version.

Compare with Current View Version History

« Previous Version 11 Next »

The following functions are used for calculating the section properties of various shapes defined by using T=”Section” objects. By utilizing these functions, you can seamlessly extract essential properties that aid in design, analysis, and engineering tasks. Explore the following functions to empower your workflow and gain valuable insights into the structural behavior of diverse shapes. The naming convention is informative and helps users understand the purpose of each function.

Here are the functions;

 Example illustration of a composite section.

sectionAx( Section ) number

This function requires a T=”Section” object as input and calculates the section area. If the section is a composite section, the function automatically determines the modulus and calculates the equivalent area.

sectionAg( Section ) → number

This function requires a T=”Section” object as input and calculates the gross area of the section without converting section modulus if the section is composite.

 Difference between sectionAx(Section) and sectionAg(Section) approach

<P N="Ax" V="sectionA(CompositeSection)" />

<P N="Agross" V="sectionAg(CompositeSection)" />

sectionAy( Section ) → number

This function requires a T=”Section” object as input and calculates the shear area in Y axis.

sectionAz( Section ) → number

This function requires a T=”Section” object as input and calculates the shear area in Z axis.

sectionJ( Section ) → number

This function requires a T=”Section” object as input and calculates the torsional constant of the section.

sectionCw( Section ) → number

This function requires a T=”Section” object as input and calculates the warping constant of the section.

sectionIy( Section ) → number

This function requires a T=”Section” object as input and calculates moment of inertia of the section in Y axis.

sectionIz( Section ) → number

This function requires a T=”Section” object as input and calculates moment of inertia of the section in Z axis.

sectionIyz( Section ) → number

This function requires a T=”Section” object as input and calculates product of inertia of the section.

sectionRy( Section ) → number

This function requires a T=”Section” object as input and calculates the radius of gyration along Y axis.

sectionRz( Section ) → number

This function requires a T=”Section” object as input and calculates the radius of gyration along Z axis.

sectionCy( Section ) → number

This function requires a T=”Section” object as input and calculates the Y-coordinate of centroid of the section.

sectionCz( Section ) → number

This function requires a T=”Section” object as input and calculates the Z-coordinate of centroid of the section.

sectionPerimeter( Section ) → number

This function requires a T=”Section” object as input and calculates the total length of the outer boundary of the section.

sectionDepth( Section ) → number

This function requires a T=”Section” object as input and calculates the depth of the section by finding the difference between the maximum and minimum Z coordinates of the points defining the section.

sectionWidth( Section ) → number

This function requires a T=”Section” object as input and calculates width of the section by finding the difference between the maximum and minimum Y coordinates of the points defining the section.

sectionExt( Section ) → list of list of number [[minX,minY],[minX,maxY],[maxX,maxY],[maxX,minY]]

This function requires a T=”Section” object as input and returns boundary rectangle coordinates of the section.

 Relationship between points and width/depth distances

<P N="SDepth" V="sectionDepth(CompositeSection)" />

<P N="SWidth" V="sectionWidth(CompositeSection)" />

<P N="S_Ext" V="sectionExt(CompositeSection)" />

sectionSCy( Section) → number

This function requires a T=”Section” object as input and calculates the elastic section modulus in Y axis.

sectionSCz( Section) → number

This function requires a T=”Section” object as input and calculates the elastic section modulus in Z axis.

crackedInertia( Section) → number

This function requires a T=”Section” object as input and calculates the cracked moment of inertia

Example:

<O N="sectionFunctionsObject1" T="Project" Category="Functions" TransAlignRule="1">
    <!-- created by ParamML Examples on 8/9/2023 -->
    <P N="d" V="14" Role="Input" />
    <P N="bf" V="9" Role="Input" />
    <P N="t" V="1" Role="Input" />
    <O T="Line">
        <O T="Point" X="0" Y="0" />
        <O T="Point" X="14" Y="0" />
        <O N="IGirder" T="Section">
            <O T="Shape">
                <O T="Point" X="bf/2" Y="-d/2" />
                <O T="Point" X="bf/2" Y="-d/2+t" />
                <O T="Point" X="t/2" Y="-d/2+t" />
                <O T="Point" X="t/2" Y="d/2-t" />
                <O T="Point" X="bf/2" Y="d/2-t" />
                <O T="Point" X="bf/2" Y="d/2" />
                <O T="Point" X="-bf/2" Y="d/2" />
                <O T="Point" X="-bf/2" Y="d/2-t" />
                <O T="Point" X="-t/2" Y="d/2-t" />
                <O T="Point" X="-t/2" Y="-d/2+t" />
                <O T="Point" X="-bf/2" Y="-d/2+t" />
                <O T="Point" X="-bf/2" Y="-d/2" />
            </O>
        </O>
    </O>
    <O N="MechanicalProperties" T="Group">
        <P N="Ax" V="sectionA(IGirder)" />
        <P N="Ay" V="sectionAy(IGirder)" />
        <P N="Az" V="sectionAz(IGirder)" />
        <P N="Agross" V="sectionAg(IGirder)" />
        <P N="J" V="sectionJ(IGirder)" />
        <P N="Iy" V="sectionIy(IGirder)" />
        <P N="Iz" V="sectionIz(IGirder)" />
        <P N="ry" V="sectionRy(IGirder)" />
        <P N="rz" V="sectionRz(IGirder)" />
        <P N="Cz" V="sectionCz(IGirder)" />
        <P N="Cy" V="sectionCy(IGirder)" />
        <P N="Cw" V="sectionCw(IGirder)" />
        <P N="SDepth" V="sectionDepth(IGirder)" />
        <P N="SWidth" V="sectionWidth(IGirder)" />
        <P N="SPerimeter" V="sectionPerimeter(IGirder)" />
        <P N="S_Ext" V="sectionExt(IGirder)" />
        <P N="Sy" V="sectionSCy(IGirder)" />
        <P N="Sz" V="sectionSCz(IGirder)" />
        <P N="I_cracked" V="crackedInertia(IGirder)" />
    </O>
</O>

As illustrated in the provided image, this ParamML code defines a specific geometric shape resembling an "I-beam" calculates its mechanical properties using section functions following a consistent pattern of combining the word "section" with a property identifier.This pattern is likely designed to make the functions self-explanatory and easy to understand.

To view this example in the library, see (https://openbrim.org/app/?incubator=1&author=ParamML_Examples_OpenBrIM+Platform&obj=objid8ujix3hluc8r5tct2kua8 )

 

  • No labels

0 Comments

You are not logged in. Any changes you make will be marked as anonymous. You may want to Log In if you already have an account.