1import type { Damping, Material, PlateGeometry } from "./types";
3/**
4 * Material presets. Values are room-temperature handbook figures for the named
5 * alloy (ASM Handbook, MatWeb, Copper Development Association) and are typical
6 * rather than certified: real stock varies by a few percent in E and rho.
7 * The damping values are illustrative starting points in the two-parameter
8 * loss model, not measurements; damping in a real plate depends heavily on the
9 * mounting.
10 */
11export interface MaterialPreset {
12 id: string;
13 material: Material;
14 damping: Damping;
15 /** Where the numbers come from and what they do not capture */
16 source: string;
17}
19export const MATERIAL_PRESETS: MaterialPreset[] = [
20 {
21 id: "a36-steel",
22 material: { name: "A36 structural steel", E: 200e9, nu: 0.26, rho: 7850 },
23 damping: { sigma0: 1.0, sigma1: 0.005 },
24 source: "ASTM A36 hot-rolled plate; E and nu typical of low-carbon steel.",
25 },
26 {
27 id: "304-stainless",
28 material: { name: "304 stainless steel", E: 193e9, nu: 0.29, rho: 8000 },
29 damping: { sigma0: 1.0, sigma1: 0.005 },
30 source: "Annealed 304 sheet, typical values.",
31 },
32 {
33 id: "6061-t6",
34 material: { name: "6061-T6 aluminium", E: 68.9e9, nu: 0.33, rho: 2700 },
35 damping: { sigma0: 1.2, sigma1: 0.006 },
36 source: "6061-T6 sheet and plate, typical values.",
37 },
38 {
39 id: "c260-brass",
40 material: { name: "C260 cartridge brass", E: 110e9, nu: 0.375, rho: 8530 },
41 damping: { sigma0: 1.0, sigma1: 0.006 },
42 source: "70/30 brass, half-hard sheet, typical values.",
43 },
44 {
45 id: "ti-6al-4v",
46 material: { name: "Ti-6Al-4V titanium", E: 113.8e9, nu: 0.342, rho: 4430 },
47 damping: { sigma0: 0.8, sigma1: 0.004 },
48 source: "Annealed Grade 5 titanium sheet, typical values.",
49 },
50 {
51 id: "b20-bronze",
52 material: { name: "B20 bell bronze (CuSn20)", E: 105e9, nu: 0.34, rho: 8800 },
53 damping: { sigma0: 0.4, sigma1: 0.002 },
54 source:
55 "Bell and cymbal bronze with about 20% tin; E ranges 100 to 110 GPa depending on the casting and working. Low damping is what makes it ring.",
56 },
57 {
58 id: "b8-bronze",
59 material: { name: "B8 bronze (CuSn8)", E: 110e9, nu: 0.34, rho: 8800 },
60 damping: { sigma0: 0.5, sigma1: 0.0025 },
61 source: "8% tin bronze used for cymbals and as phosphor bronze sheet; typical values.",
62 },
63 {
64 id: "1095-spring-steel",
65 material: { name: "1095 spring steel (bar stock)", E: 205e9, nu: 0.29, rho: 7850 },
66 damping: { sigma0: 0.5, sigma1: 0.003 },
67 source:
68 "High-carbon steel used for glockenspiel and chime bars; E and rho typical of carbon steel.",
69 },
70];
72export interface PlatePreset {
73 id: string;
74 name: string;
75 plate: PlateGeometry;
76 /** Notes on what this stands in for */
77 note: string;
78}
80const inch = 0.0254;
82export const PLATE_PRESETS: PlatePreset[] = [
83 {
84 id: "sheet-300x200x2",
85 name: "300 x 200 x 2 mm sheet",
86 plate: { shape: "rectangle", Lx: 0.3, Ly: 0.2, h: 0.002 },
87 note: "A common cut-to-size sheet; the default problem.",
88 },
89 {
90 id: "sheet-12x12x1-8in",
91 name: "12 x 12 x 1/8 in plate",
92 plate: { shape: "rectangle", Lx: 12 * inch, Ly: 12 * inch, h: inch / 8 },
93 note: "Square stock in imperial sizes.",
94 },
95 {
96 id: "sheet-500x300x1",
97 name: "500 x 300 x 1 mm sheet",
98 plate: { shape: "rectangle", Lx: 0.5, Ly: 0.3, h: 0.001 },
99 note: "Thin and large: many modes below 20 kHz, expensive for finite differences.",
100 },
101 {
102 id: "disk-300x2",
103 name: "Disk, 300 mm diameter x 2 mm",
104 plate: { shape: "ellipse", Lx: 0.3, Ly: 0.3, h: 0.002 },
105 note: "A round blank. Free edges and an off-centre strike give the classic Chladni disk; only the finite-difference methods handle the shape.",
106 },
107 {
108 id: "ellipse-300x200x2",
109 name: "Elliptical plate, 300 x 200 x 2 mm",
110 plate: { shape: "ellipse", Lx: 0.3, Ly: 0.2, h: 0.002 },
111 note: "The default sheet cut to an ellipse: same box, same strike, less plate. Compare the two.",
112 },
113 {
114 id: "cymbal-flat-400x1p2",
115 name: "Flat cymbal stand-in, 400 mm diameter x 1.2 mm",
116 plate: { shape: "ellipse", Lx: 0.4, Ly: 0.4, h: 0.0012 },
117 note: "A cymbal is a disk, free at the rim and held at the centre: choose the pinned-centre edge condition. What this flat disk leaves out is the curvature (a real cymbal is a shallow cone with a raised bell) and the taper in thickness.",
118 },
119 {
120 id: "glockenspiel-bar",
121 name: "Glockenspiel bar, 200 x 32 x 6 mm",
122 plate: { shape: "rectangle", Lx: 0.2, Ly: 0.032, h: 0.006 },
123 note: "Real bars are free at both ends and rest on nodal supports; supported or clamped edges give different frequencies. Thickness is a fifth of the width, at the edge of thin-plate validity.",
124 },
125];