Skip to content

Material Database โ€‹

The material database turns a standard grade name into a consistent elastic material, so you do not have to type E, G, ฮฝ and ฯ by hand and get them to agree.

๐Ÿ”ง Grasshopper component โ€‹

Material Library ElasticAlpaca4d โ–ธ 00_Material
Material Library Elastic component
Inputs
NameMaterial NameText(empty)Type a grade name directly, e.g. S235.
Overrides the dropdowns and moves them to match. An unknown name is an error, not a fallback.
DBPathDatabasePathGeneric(empty)Path to a custom JSON database with the same schema as the built-in ones.
Its type is merged into the Type dropdown, and takes priority over a built-in type of the same name.
ColourColour(empty)The colour the material is drawn in when Model View colours the elements by material โ€” every grade of the list, with Grade set to All.
Left empty, Model View gives each material a colour of its own. Display only: the analysis never reads it.
Outputs
MaterialMaterialA Uniaxial material when Model = Uniaxial, an nD ElasticIsotropic material when Model = nD.
With Grade set to All, a list of them, one per grade.

Options โ€‹

Three dropdowns live on the component body, under the Library menu:

DropdownValuesDefault
TypeSteel, Concrete, Timber, Plastic โ€” plus any type found in a custom databaseSteel
GradeAll, then the grades of the selected typeS235
ModelUniaxial or nDUniaxial

Set Grade to All for every grade of the type as a list, in the order the database lists them โ€” weakest first for steel, S235 to S450. Pick from it with List Item and a slider to let an optimisation choose the grade. Connect a Panel to the output to read the list: each material shows as its name.

Built-in grades:

TypeGrades
SteelS235, S275, S355, S450
ConcreteC25_30, C28_35, C30_37, C32_40, C35_45, C40_50
TimberC14, C16, C18, C20, C22, C24, GOB_Green_Oak
PlasticPVC, HDPE, PE, PP, PS, PET, PC, PLA, PVA, PTFE, PEEK, PVDF

๐Ÿ’ก How the properties are derived โ€‹

Each database entry stores E and G in MPa and rho in kg/mยณ. The component:

  1. Converts E and G to kN/mยฒ by ร—1000.
  2. Derives Poisson's ratio from the pair, ฮฝ = E/(2G) โˆ’ 1, clamped to [0, 0.4999].
  3. Recomputes G = E / (2(1+ฮฝ)) so the triple is internally consistent.
  4. Passes rho through unchanged.

The grade name becomes the material name.

๐Ÿ’ก Design grade โ€‹

For a steel grade the material also carries its design grade โ€” fy and fu from EN 1993-1-1 Table 3.1, including the lower values for plates thicker than 40 mm โ€” which Utilisation checks the beam against. The solver never sees it. Only the Uniaxial model carries one, since that is what beams are made of.

๐Ÿ’ก Custom databases โ€‹

A custom database is a JSON object keyed by grade name. The built-in steel file looks like this:

json
{
  "S235": {
    "rho": 7850,
    "E": 210000,
    "G": 80769,
    "fy": 235,
    "fu": 360,
    "fy_40_80": 215,
    "fu_40_80": 360,
    "epsilon_yield": 0.015,
    "epsilon_max_Stress": 0.11,
    "strainAtRupture": 0.17,
    "material_type": "Steel"
  }
}

E, G, rho and material_type make the elastic material. material_type is what the Type dropdown lists, so give every entry in one file the same value.

An entry whose material_type is Steel and which gives fy is also a design grade, for Utilisation: fy and fu in N/mmยฒ for plates up to 40 mm thick, and fy_40_80 and fu_40_80, if given, for 40 to 80 mm. Strain values are not read.

๐Ÿ“ˆ When to use it โ€‹

Use it when

  • You want a standard grade and want E, G and ฮฝ to agree with each other.
  • Your office has its own grades or a national standard not in the default set โ†’ point DatabasePath at a JSON file.

Do not use it when

  • The material is non-standard โ†’ use Uniaxial or nD directly.
  • You need non-linearity โ†’ the database is elastic only. See Moment Curvature for Concrete01, Steel01 and ReinforcingSteel.