/ proof-of-concept / cymbalsim
Sign in
proof-of-concept / cymbalsim
Remove the center holes from the presets
The aluminum square, the flat disc, the crash, the ride and the crash with a bell are solid plates now; the README example follows.
Jeremy Magland <jmagland@flatironinstitute.org> committed commit 7c1c64871e61 parent 2481a63 Browse files
2 changed files+18−21
README.mdmodified+2−2View file
@@ -25,7 +25,7 @@ The script fills in a struct named `design`. All lengths are meters. The outline
2525
2626 ```matlab
2727 inch = 0.0254; mm = 1e-3;
28-D = 16*inch; R = D/2; hole = 13*mm;
28+D = 16*inch; R = D/2;
2929 design.name = '16 inch flat crash';
3030 design.material.E = 110e9; % Pa
3131 design.material.nu = 0.34;
@@ -36,7 +36,7 @@ design.material.cp = 370; % specific heat [J/(kg K)] } thermoe
3636 design.material.k = 40; % conductivity [W/(m K)] }
3737 design.bounds.width = D; % bounding box [m]
3838 design.bounds.height = D;
39-design.inside = @(x, y, r, theta) (r <= R) & (r >= hole/2); % omit for the whole box
39+design.inside = @(x, y, r, theta) r <= R; % omit for the whole box
4040 design.thickness = @(x, y, r, theta) 1.2*mm + (0.7*mm - 1.2*mm) * ramp(40*mm, R, r);
4141 design.profile = 0; % optional stress-free height [m]; a handle for a bow or a bell
4242
src/presets.tsmodified+16−19View file
@@ -36,13 +36,13 @@ design.bounds.height = 18*inch;
3636 design.thickness = 0.79*mm;
3737 `;
3838
39-const aluminumSquare = `% A flat 12 inch square of 6061-T6 aluminum, 1.02 mm thick, with a center
40-% hole. Aluminum is a third the density of steel and a third as stiff, so
39+const aluminumSquare = `% A flat 12 inch square of 6061-T6 aluminum, 1.02 mm thick.
40+% Aluminum is a third the density of steel and a third as stiff, so
4141 % the bending frequencies land near those of a steel plate of the same size
4242 % and thickness. Its high thermal expansion and conductivity give it the
4343 % strongest thermoelastic damping of the three metals here.
4444 inch = 0.0254; mm = 1e-3;
45-W = 12*inch; hole = 13*mm;
45+W = 12*inch;
4646
4747 design.name = 'Aluminum 6061-T6 square';
4848 design.material.E = 68.9e9; % Young's modulus [Pa]
@@ -54,7 +54,6 @@ design.material.cp = 896; % specific heat [J/(kg K)] }
5454 design.material.k = 167; % conductivity [W/(m K)] }
5555 design.bounds.width = W;
5656 design.bounds.height = W;
57-design.inside = @(x, y, r, theta) r >= hole/2;
5857 design.thickness = 1.02*mm;
5958 `;
6059
@@ -86,9 +85,9 @@ v = sag * (1 - t.^2) .* (1 + offset*t);
8685 end
8786 `;
8887
89-const flatDisc = `% A flat 16 inch bronze disc with a center hole, hanging freely.
88+const flatDisc = `% A flat 16 inch bronze disc, hanging freely.
9089 inch = 0.0254; mm = 1e-3;
91-D = 16*inch; hole = 13*mm;
90+D = 16*inch;
9291
9392 design.name = 'Flat bronze disc';
9493 design.material.E = 110e9; % bronze
@@ -100,16 +99,15 @@ design.material.cp = 370; % specific heat [J/(kg K)] }
10099 design.material.k = 40; % conductivity [W/(m K)] }
101100 design.bounds.width = D;
102101 design.bounds.height = D;
103-design.inside = @(x, y, r, theta) (r <= D/2) & (r >= hole/2);
102+design.inside = @(x, y, r, theta) r <= D/2;
104103 design.thickness = 1.0*mm;
105104 `;
106105
107106 const crash16 = `% A 16 inch flat crash: bronze, lathed to a taper from 1.2 mm at the
108-% center to 0.7 mm at the edge, with a center hole. Flat, so
109-% the linear modes are pure bending modes; the tapered profile is what
110-% makes it a crash rather than a ride.
107+% center to 0.7 mm at the edge. Flat, so the linear modes are pure bending
108+% modes; the tapered profile is what makes it a crash rather than a ride.
111109 inch = 0.0254; mm = 1e-3;
112-D = 16*inch; R = D/2; hole = 13*mm;
110+D = 16*inch; R = D/2;
113111 tCenter = 1.2*mm; tEdge = 0.7*mm;
114112
115113 design.name = '16 inch flat crash';
@@ -122,7 +120,7 @@ design.material.cp = 370; % specific heat [J/(kg K)] }
122120 design.material.k = 40; % conductivity [W/(m K)] }
123121 design.bounds.width = D;
124122 design.bounds.height = D;
125-design.inside = @(x, y, r, theta) (r <= R) & (r >= hole/2);
123+design.inside = @(x, y, r, theta) r <= R;
126124 design.thickness = @(x, y, r, theta) tCenter + (tEdge - tCenter) * ramp(40*mm, R, r);
127125
128126 function v = ramp(a, b, x)
@@ -132,11 +130,10 @@ end
132130 `;
133131
134132 const ride20 = `% A 20 inch flat ride: thicker bronze, 2.2 mm at the center to 1.4 mm at
135-% the edge, with a center hole. The thickness raises every frequency in
136-% proportion, and the ride has a clearer ping and a longer decay than the
137-% crash.
133+% the edge. The thickness raises every frequency in proportion, and the
134+% ride has a clearer ping and a longer decay than the crash.
138135 inch = 0.0254; mm = 1e-3;
139-D = 20*inch; R = D/2; hole = 13*mm;
136+D = 20*inch; R = D/2;
140137
141138 design.name = '20 inch flat ride';
142139 design.material.E = 110e9;
@@ -148,7 +145,7 @@ design.material.cp = 370; % specific heat [J/(kg K)] }
148145 design.material.k = 40; % conductivity [W/(m K)] }
149146 design.bounds.width = D;
150147 design.bounds.height = D;
151-design.inside = @(x, y, r, theta) (r <= R) & (r >= hole/2);
148+design.inside = @(x, y, r, theta) r <= R;
152149 design.thickness = @(x, y, r, theta) 2.2*mm + (1.4*mm - 2.2*mm) * ramp(50*mm, R, r);
153150
154151 function v = ramp(a, b, x)
@@ -163,7 +160,7 @@ const crashBell16 = `% A 16 inch crash with a shallow bow and a cosine bell. The
163160 % curved plate. The slopes are kept small; the interface reports the
164161 % largest one.
165162 inch = 0.0254; mm = 1e-3;
166-D = 16*inch; R = D/2; hole = 13*mm;
163+D = 16*inch; R = D/2;
167164 bellR = 55*mm; bellH = 8*mm; bowH = 10*mm;
168165 tCenter = 1.2*mm; tEdge = 0.7*mm;
169166
@@ -177,7 +174,7 @@ design.material.cp = 370; % specific heat [J/(kg K)] }
177174 design.material.k = 40; % conductivity [W/(m K)] }
178175 design.bounds.width = D;
179176 design.bounds.height = D;
180-design.inside = @(x, y, r, theta) (r <= R) & (r >= hole/2);
177+design.inside = @(x, y, r, theta) r <= R;
181178 design.thickness = @(x, y, r, theta) tCenter + (tEdge - tCenter) * ramp(bellR, R, r);
182179 design.profile = @(x, y, r, theta) bowH * (1 - (r/R).^2) + dome(r, bellR, bellH);
183180
↑↓ move↵openescclose