BH.oM.Structure.MaterialFragments.IIsotropic¶
Base interface for isotropic structural materials.
Interface structure¶
Implemented interfaces and base types¶
The IIsotropic is inheriting from the following base type(s) and implements the following interfaces:
- BH.oM.Structure.MaterialFragments.IMaterialFragment
- BH.oM.Base.IFragment
- BH.oM.Base.IObject
- BH.oM.Physical.Materials.IMaterialProperties
- BH.oM.Base.IBHoMObject
- BH.oM.Structure.IProperty
- BH.oM.Physical.Materials.IDensityProvider
Classes implementing this interface¶
The following classes are implementing this interface:
- BH.oM.Structure.MaterialFragments.Aluminium
- BH.oM.Structure.MaterialFragments.Concrete
- BH.oM.Structure.MaterialFragments.GenericIsotropicMaterial
- BH.oM.Structure.MaterialFragments.Steel
Properties¶
Defining properties¶
The following properties are defined on the interface
Name | Type | Description | Quantity |
---|---|---|---|
YoungsModulus | double | Modulus of elasticity of the material. Ratio between axial stress and axial strain. | YoungsModulus [Pa] |
PoissonsRatio | double | Ratio between axial and transverse strain. Used together with YoungsModulus to derive the ShearModulus for isotropic materials. | Ratio [-] |
ThermalExpansionCoeff | double | The strain induced in the material per unit change of temperature. | ThermalExpansionCoefficient [1/K] |
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 |
IDescription | string | Generates a default description for the IProperty, based on its properties. | - | Structure_Engine |
IMaterialType | MaterialType | Gets the material type from the MaterialFragment. | - | Structure_Engine |
IsNull | bool | Checks if a MaterialFragment is null and outputs relevant error message. | - | Structure_Engine |
ShearModulus | double | Shear modulus of the isotropic material fragment. Evaluated based on YoungsModulus and PoissonsRatio as G = E/2(1+ν). | ShearModulus [Pa] | Structure_Engine |
Code and Schema¶
C# implementation¶
C#
public interface IIsotropic : BH.oM.Structure.MaterialFragments.IMaterialFragment,
BH.oM.Base.IFragment,
BH.oM.Base.IObject,
BH.oM.Physical.Materials.IMaterialProperties,
BH.oM.Base.IBHoMObject,
BH.oM.Structure.IProperty,
BH.oM.Physical.Materials.IDensityProvider
Assembly: Structure_oM.dll
The C# interface 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/MaterialFragments/IIsotropic.json"
}
The JSON Schema is available on github here: