Skip to content

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:

Classes implementing this interface

The following classes are implementing this interface:

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: