BH.oM.Structure.SectionProperties.CellularSection¶
Steel section to be used on Bars. Defined by a SectionProfile.
Class structure¶
Implemented interfaces and base types¶
The CellularSection is inheriting from the following base type(s) and implements the following interfaces:
- BH.oM.Base.BHoMObject
- BH.oM.Base.IBHoMObject
- BH.oM.Base.IObject
- BH.oM.Structure.SectionProperties.ISteelSection
- BH.oM.Structure.SectionProperties.IGeometricalSection
- BH.oM.Structure.SectionProperties.ISectionProperty
- BH.oM.Structure.IProperty
- BH.oM.Base.IImmutable
Properties¶
Defining properties¶
The following properties are defined on the class
Name | Type | Description | Quantity |
---|---|---|---|
Name | string | A unique name is required for some structural packages to create and identify the object. | - |
Fabrication | SteelFabrication | The fabrication method used for the section. | - |
PlateRestraint | SteelPlateRestraint | Defines whether any of the plates of the section have any external restraint, from for example a connecting slab. | - |
Material | IMaterialFragment | Homogeneous material used throughout the full section. | - |
SectionProfile | IProfile | Profile of the section through the point of the largest opening, containing dimensions and section geometry. | - |
SolidProfile | ISectionProfile | The profile at a cut through the solid section. | - |
Opening | ICellularOpening | Dimensions of the opening. | - |
BaseProfile | ISectionProfile | The IShape from which the cellular beam was cut. | - |
Area | double | Area of the cross section through the section with the largest opening. | Area [m²] |
Rgy | double | Radius of gyration about the local Y-Axis as the arithmetic mean between the solid and open parts of the section. | Length [m] |
Rgz | double | Radius of gyration about the local Z-Axis through the section with the largest opening. | Length [m] |
J | double | Torsion Constant through the section with the largest opening. | TorsionConstant [m⁴] |
Iy | double | Moment of Inertia about the local Y-Axis as the arithmetic mean between the solid and open parts of the section. | SecondMomentOfArea [m⁴] |
Iz | double | Moment of Inertia about the local Z-Axis through the section with the largest opening. | SecondMomentOfArea [m⁴] |
Iw | double | Warping Constant through the section with the largest opening. | WarpingConstant [m⁶] |
Wely | double | Elastic Modulus of the section about the local Y-Axis through the section with the largest opening. | SectionModulus [m³] |
Welz | double | Elastic Modulus of the section about the local Z-Axis through the section with the largest opening. | SectionModulus [m³] |
Wply | double | Plastic Modulus of the section about the local Y-Axis through the section with the largest opening. | SectionModulus [m³] |
Wplz | double | Plastic Modulus of the section about the local Z-Axis through the section with the largest opening. | SectionModulus [m³] |
CentreZ | double | Geometric centre of the section in the local Z direction. | Length [m] |
CentreY | double | Geometric centre of the section in the local Y direction. | Length [m] |
Vz | double | Z distance from the centroid of the section to top edge of the section. | Length [m] |
Vpz | double | Z distance from the centroid of the section to bottom edge of the section. | Length [m] |
Vy | double | Y distance from the centroid of the section to right edge of the section. | Length [m] |
Vpy | double | Y distance from the centroid of the section to Left edge of the section. | Length [m] |
Asy | double | Shear Area in the local Y direction through the section with the largest opening. Only acounts for contributions from the flanges. | Area [m²] |
Asz | double | Shear Area in the local Z direction through the section with the largest opening. Only acounts for contributions from the uncut parts of the web. | Area [m²] |
Inherited properties¶
The following properties are inherited from the base class of the object
Name | Type | Description | Quantity |
---|---|---|---|
BHoM_Guid | Guid | - | - |
Fragments | FragmentSet | - | - |
Tags | HashSet<string> | - | - |
CustomData | Dictionary<string, object> | - | - |
Derived properties¶
The following properties are defined as extension methods in one of the BHoM_Engines
Name | Type | Description | Quantity | Engine |
---|---|---|---|---|
DescriptionOrName | string | Gets the name from a IProperty. If null or empty, a default description name is provided instead. | - | Structure_Engine |
Geometry | IGeometry | Gets the geometry of a GeometricalSection as its profile outlines the global XY plane. Method required for automatic display in UI packages. | - | Structure_Engine |
HasModifiers | bool | Checks if a SectionProperty has any modifiers by first checking if any modifiers has been assigned, and if any of them are set to a value different than 1. | - | Structure_Engine |
IDescription | string | Generates a default description for the SectionProperty, based on type, profile and material. | - | Structure_Engine |
IDescription | string | Generates a default description for the IProperty, based on its properties. | - | Structure_Engine |
IGeometry | IGeometry | Gets the geometry of a SectionProperty, generally as its profile outlines the global XY plane. Method required for automatic display in UI packages. | - | Structure_Engine |
IMassPerMetre | double | Calculates the mass per length for the section, generally as its area mulitplied by the density. General dispatch method that calls the correct method based on type. | MassPerUnitLength [kg/m] | Structure_Engine |
IMaterialComposition | MaterialComposition | Returns a SectionProperty's MaterialComposition. | - | Structure_Engine |
InvalidSectionProfile | bool | - | - | Lusas_Engine |
InvalidSectionProperty | bool | - | - | Lusas_Engine |
IsNull | bool | Checks if a SectionProperty is null and outputs relevant error message. | - | Structure_Engine |
IVolumePerLength | double | Calculates the volume per length for the section, generally as its area mulitplied by the density. General dispatch method that calls the correct method based on type. | MassPerUnitLength [kg/m] | Structure_Engine |
Modifiers | double[] | Gets any modifiers from a section as an array of doubles. The modifiers are used to scale one or more of the section constants for analysis. Constants are multiplied with the modifiers, hence a modifier value of 1 means no change. The values returned are in the following order: Area, Iy, Iz, J, Asy, Asz. Method returns null if no modifiers are found. |
- | Structure_Engine |
VolumePerLength | double | Calculates the volume per length for the section the volume per metre of the concrete section + the volume per metre of the steel section. | MassPerUnitLength [kg/m] | Structure_Engine |
Code and Schema¶
C# implementation¶
C#
public class CellularSection : BH.oM.Base.BHoMObject,
BH.oM.Base.IBHoMObject,
BH.oM.Base.IObject,
BH.oM.Structure.SectionProperties.ISteelSection,
BH.oM.Structure.SectionProperties.IGeometricalSection,
BH.oM.Structure.SectionProperties.ISectionProperty,
BH.oM.Structure.IProperty,
BH.oM.Base.IImmutable
Assembly: Structure_oM.dll
The C# class definition is available on github:
All history and changes of the class can be found by inspection the history.
JSON Schema implementation¶
The object is defined as a JSON schema. You can validate a JSON instance against this schema by reference. To do this, use the schema reference below in a validator like this one.
JSON Schema
{
"$ref" : "https://raw.githubusercontent.com/BHoM/BHoM_JSONSchema/develop/Structure_oM/SectionProperties/CellularSection.json"
}
The JSON Schema is available on github here: