Research topic
Simulation-first design
Designs written as code, simulated, optimised and exported as manufacturing files with an open toolchain, on a CPU.
64 projects, each with its own page, code and tests. See them on the full research index.
research/simdesign-bracket · 8 tests
Parametric L-bracket sized by 2D finite elements (scikit-fem) for minimum mass under a stress limit: differential evolution 19.6 g vs random 25.6 g vs grid 31.4 g at equal budget, exported as STL with a printability check. Assumed material inputs. Stylised.
Abstract
A 2D plane-stress scikit-fem model of an L-bracket with a filleted inner corner (arm width, fillet radius, depth) under a 100 N tip load. Differential evolution reaches 19.6 g against 25.6 g for random search and 31.4 g for a grid at 144–150 evaluations each, under a 20 MPa stress and 4 mm deflection limit. The design is exported as a binary STL and checked for minimum wall and overhang. Stylised: material properties and limits are assumed, the optimum stress rises about 7% on mesh refinement (just over the limit), the sharp-corner stress diverges, and the thin optimum was not checked for out-of-plane buckling.
research/selfrep-coverscale · 5 tests
Does greedy substitution search still work past seven items (synthetic instances, assumed generator): 96–100% of the exact optimum on average but optimal in only 33–95 of 100 instances; 64 random evaluations fall to about 89% at 24 items.
Abstract
A synthetic, preliminary test (100 instances per cell, assumed generator) of budgeted weighted coverage, the shape of the printer-redesign search, for 7 to 24 substitutions with 0 to 0.9 overlap. Greedy gain-per-penalty stays at 96–100% of the exact optimum on average but is exactly optimal in only 33–95 of 100 instances, with a worst case of 49.6%. Local search is best on average (about 99.5%); 64 random evaluations are perfect at 7 items and fall to about 89–90% at 24, so small-list random baselines flatter themselves. Nothing here uses the real bill of materials. Computed only.
research/selfrep-alusearch · 7 tests
With an aluminium rod option priced by sag, the penalty-budget search of the printer redesign picks the 12 mm aluminium rod and reaches 40.0% mass closure at budget 2.0 against 33.1% with the wooden rod (41.4% against 35.8% at full budget); the penalty curve is assumed and the metric favours heavy stock; stylised, preliminary.
Abstract
A stylised, preliminary search over 448 designs: a rod choice (steel, hardwood or aluminium at 8, 10 or 12 mm) times subsets of six other part substitutions, with a rod penalty tied to mid-span sag by an assumed log curve. At every budget from 0.5 up the best mass-closure design uses the 12 mm aluminium rod: 40.0% at budget 2.0 against 33.1% for the wooden-rod search of selfrep-redesign, and 41.4% against 35.8% at full budget. The choice sits at the assumed holder limit because the closure metric counts heavier bar stock as makeable, so it says little about the best rod. The pick held for penalty scales from 0.05 to 1. Computed only; nothing was built.
research/selfrep-stockmass · 6 tests
Scoring the printer redesign by the mass the shop must still import (vitamins plus raw stock) instead of closure: the best design imports 5.85 kg against 6.72 kg for the baseline, while the closure-maximising 12 mm aluminium pick imports 6.79 kg (stylised; yield and prices assumed).
Abstract
A stylised, preliminary re-scoring of the 448-design search of selfrep-alusearch: the score is the mass (or cost) the shop must still import per printer copy, vitamins plus raw stock at an assumed 0.8 yield. The import-mass minimiser reaches 5.85 kg against 6.72 kg for the steel-rod baseline, with the light 8 mm hardwood rod; the earlier closure-maximising pick (12 mm aluminium) imports 6.79 kg, no better than baseline. By import cost the 12 mm aluminium rod stays best (147.5 against 173.3). Yield, stock price and penalties are assumed; computed only.
research/selfrep-learnfirst · 7 tests
Which imported printer part to learn to make first (stylised, assumed inputs): by mass or cost the NEMA17 motor (+22 and +26 points of closure, first in 90% and 76% of draws with masses and costs scaled 0.5x to 2x), by unit count the M8 nut; by lines every vitamin ties.
Abstract
A stylised, preliminary ranking of the 29 parts the printer + router + laser shop of selfrep-closure still imports, by the closure gained if that one part became makeable (free and certain, so an upper bound). By mass or cost the NEMA17 stepper motor is first (+22 and +26 points) and stays first in 90% and 76% of 2,000 draws with every assumed mass and cost scaled 0.5× to 2×; by unit count the M8 nut leads, and by distinct lines every vitamin ties. Three lines buy +52 points of cost closure but +39 of mass. Masses, costs and makers are assumed; difficulty of learning is not modelled.
research/selfrep-capability · 7 tests
Which process capabilities (lathe, winding, heat treatment, ...) a printer-replicating shop should learn when one capability unlocks several imported parts (stylised, assumed efforts): a lathe is the best first buy by mass (+31 points for effort 4), winding plus stamping by cost (+30 for effort 8), and exact capability sets beat part-by-part picking by up to 10 points, but the choice is fragile to the assumed efforts.
Abstract
A stylised, preliminary follow-up to selfrep-learnfirst. Each of the 29 imported printer parts needs a set of assumed process capabilities (lathe, heat treatment, winding, stamping, grinding, ...) with an assumed effort each, paid once however many parts share it; all 512 capability sets are enumerated exactly. A lathe with threading is the best first buy by mass (effort 4, +31 points of mass closure but only +10 of cost); winding plus stamping is best by cost (effort 8, +30). Exact capability sets beat picking parts one at a time by up to 10 points at the same real cost, but with efforts scaled 0.5× to 2× the nominal choice stays affordable and optimal in only 20–28% of draws. The efforts and the part-to-capability map are the project’s own assumptions; the controller electronics stays imported.
research/selfrep-capsequence · 6 tests
In what order a printer-replicating shop should learn its process capabilities (stylised, assumed efforts): the exact best order over all 362,880 beats walking the budget frontier (54 to 73% of the optimum over 24 weeks); a gain-per-week bundle rule comes within 0 to 6%.
Abstract
A stylised, preliminary follow-up to selfrep-capability: a shop learns capabilities one at a time, so the choice is an order, scored by closure-weeks (closure held while still learning). With the assumed efforts, all 9! orders are covered exactly. The best order differs from walking the budget frontier, which scores only 54–73% of the optimum over 24 weeks; a gain-per-week bundle rule is within 0–6%, a one-capability-at-a-time rule 69–80%. The optimal order is moderately fragile to the efforts (within 1% of the optimum in 39–88% of draws scaled 0.5×–2×). Efforts and the capability map are assumptions; nothing was built.
research/simdesign-topopt · 7 tests
Python reproduction of Sigmund's 99-line SIMP topology optimisation (cantilever, half-MBB; filter removes 11.5% checkerboards) with the density field exported as a mirrored, extruded STL; stylised 2D compliance only.
Abstract
A Q4 plane-stress SIMP code with the 99-line sensitivity filter and optimality-criteria update, tested against Hooke's law and finite-difference sensitivities. It gives truss-like cantilever (compliance 351.9 → 52.4) and half-MBB (1007.0 → 203.3) designs. Without the filter 11.5% of 2×2 cells are checkerboards; with it none, at the same compliance within 0.03%. The thresholded MBB design is one connected body and is written as an extruded, mirrored STL. Stylised: dimensionless 2D compliance only, no stress or 3D check, not compared with the published codes.
research/simdesign-loadrobust · 5 tests
How much stiffness a topology-optimised cantilever loses when the real load direction differs from the modelled one: 1.57× at 60° and 2.58× at horizontal for the nominal design; a multi-load design at 0, ±60° cuts the worst case to 2.00× for 0.6% nominal cost; stylised 2D, preliminary.
Abstract
Optimises a 48×24 cantilever (volume fraction 0.4) for a straight-down tip load and for weighted sums over several load directions, then analyses each design under load angles from −90° to 90° against the design optimised for that angle alone. The nominal design is within 5% for tilts up to 30°, but 1.57× off at 60° and 2.58× at horizontal. A {0, ±60°} multi-load design cuts the worst case to 2.00× for 0.6% on the nominal load, and {0, ±90°} to 1.88× for 2.9%; no single topology is stiff in every direction. Stylised 2D, one mesh, one run per design; preliminary.
research/simdesign-heaviside · 7 tests
Density filter and Heaviside projection added to the SIMP code: the optimiser's compliance matches the thresholded part's to 0.1% (sensitivity filter: 10% off) but the parts are equally stiff within 0.9%; β continuation needed (β=64 from the start: 344.8 vs 192.1); a minimum-length-scale check found no advantage (negative); stylised 2D.
Abstract
Adds a density filter, a tanh Heaviside projection and β continuation to the SIMP code of simdesign-topopt. On a 90×30 half-MBB beam the sensitivity and density filters leave 26–34% grey elements and a model compliance 10–15% above the thresholded part’s; with projection the two agree to 0.1% (192.1 vs 192.0). The thresholded parts are equally stiff within 0.9% (190.3–192.0), so the gain is an honest model, not a stiffer part. Starting at β = 64 without continuation gives 344.8 against 192.1. A minimum-length-scale check did not separate the formulations (negative): a single projection does not by itself fix a physical minimum feature. Stylised: 2D dimensionless compliance, one problem, one run per setting.
research/simdesign-robust · 3 tests
Does a topology-optimised beam survive a 0.2 threshold error? The plain Heaviside design disconnects when eroded on all three meshes; the robust eroded/blueprint/dilated design stays at 224–226 (14–16% above nominal) for 0.8–3.4% more nominal compliance, but shows no minimum-length-scale gain (negative; stylised).
Abstract
Adds the eroded / blueprint / dilated robust projection formulation to the SIMP code of simdesign-heaviside and tests both on a half-MBB beam at three mesh sizes, each design judged at projection thresholds 0.7, 0.5 and 0.3. The plain Heaviside design fails when eroded on every mesh (a member disconnects; compliance 105–109 against about 190), while the robust design stays at 224–226 eroded, 14–16% above its nominal value. The nominal compliance costs 0.8–3.4% more and the run about 2.5× the time. A minimum-length-scale gain was not shown (negative): feature sizes match Heaviside’s to within a pixel. Stylised: 2D dimensionless compliance, one problem, one run per setting, a density threshold standing in for etch error.
research/simdesign-robustradius · 3 tests
Does the filter radius or the threshold gap set a robust beam's minimum feature size? A gap of 0.1 already stops the erosion failure (eroded compliance 255–276 against 187–200 nominal; plain design disconnects), but solid feature size is 3 px at both radius 4 and 6 (negative; stylised, one mesh).
Abstract
Sweeps filter radius (2, 4, 6 elements) against threshold gap Δη (0, 0.1, 0.2) on a half-MBB beam, 120×40 elements, nine designs each judged at thresholds 0.7, 0.5 and 0.3. A gap of 0.1 already stops the erosion failure: eroded compliance 255–276 against 187–200 nominal, where the plain Heaviside design disconnects (107–109). The radius does not give a clean length-scale control by the opening-rule measure: solid feature size is 3 px at both radius 4 and 6. Stylised: one problem, one mesh, one run per cell, integer-pixel measure.
research/simdesign-robustmesh · 3 tests
Does the minimum feature follow the filter radius once the mesh is refined? No: at 180×60 it is 5 px at radii of 6, 9 and 12 px; across meshes it grows with the grid (1, 3, 5 px), not the radius (negative; two poor 60×20 robust runs reported; stylised).
Abstract
Repeats the simdesign-robustradius sweep on 60×20 and 180×60 meshes with the filter radius held at 1/30, 1/20 and 1/15 of the beam length, plain Heaviside against the robust eroded / blueprint / dilated design (12 runs, one each). On the 180×60 mesh the minimum solid feature is 5 pixels (2.8% of the beam) at all three radii, 6, 9 and 12 elements; on 60×20 it is 1–3 pixels. With the earlier 120×40 runs the feature in pixels grows with the mesh (1, 3, 5) and not with the radius, so it is set by the grid here, not by the filter (negative for radius control; one problem, coarse integer measure). Two robust runs on the 60×20 mesh ended at poor blueprints (compliance about 740 against about 195), reported as such. Stylised: 2D, dimensionless.
research/simdesign-robustmove · 6 tests
Does the move limit decide whether a robust topology optimisation survives its β steps? Yes here: at 0.2 five of nine cases failed (blueprint compliance up to 4× the best), at 0.1 and 0.05 none (stylised; mechanism not tested).
Abstract
Diagnoses two unexplained poor runs from simdesign-robustmesh. The robust eroded / blueprint / dilated half-MBB design is rerun at move limits 0.2, 0.1 and 0.05 over nine mesh-and-radius cases (27 deterministic runs). At 0.2, the value every earlier project used, five of nine blueprint compliances are more than 1.5× the best (e.g. 742 against about 200 on 60×20); at 0.1 and 0.05 none are. The failing runs show worst-case compliance jumping up to 400× in one iteration after β reaches 32–64. The mechanism (a thin member breaking when the eroded field sharpens) is a hypothesis, not tested. Stylised: 2D, dimensionless, one problem.
research/simdesign-robustadapt · 4 tests
Can a move limit that halves after a compliance spike rescue a robust topology optimisation? Partly: fixed 0.2 failed 5 of 9 cases, fixed 0.05 none, the adaptive rule 2 of 9, because it reacts after the damaging step (stylised, one run per cell).
Abstract
Follow-up to simdesign-robustmove. The same nine robust half-MBB cases are run with three move-limit rules (27 deterministic runs): fixed 0.2, fixed 0.05, and an adaptive rule that starts at 0.2 and halves after any iteration whose worst-case compliance jumps more than 3×. Fixed 0.2 fails (blueprint compliance > 1.5× the best of the three) in 5 of 9 cases, fixed 0.05 in none, adaptive in 2 of 9. The rule reacts only after the damaging step, so it rescues some cases and not others; in one 120×40 case its blueprint is fine but its eroded compliance is 2 839 against 284 for the fixed small move. Stylised: 2D, one problem, one run per cell.
research/simdesign-retry · 4 tests
Does rolling back a robust topology-optimisation step that spikes compliance and redoing it at half the move beat shrinking the move afterwards? Mostly: fixed 0.2 failed 5 of 9 cases, adaptive 2, retry 1, fixed 0.1/0.05 none, but retry never beat fixed 0.05 (stylised, one run per cell).
Abstract
Follow-up to simdesign-robustadapt. The same nine robust half-MBB cases are run with five move-limit rules (45 deterministic runs): fixed 0.2, 0.1, 0.05, the earlier adaptive rule, and reject-and-retry, which discards a step whose worst-case compliance jumps more than 3× and redoes it at half the move. Blueprint failures: fixed 0.2, 5 of 9; adaptive, 2; retry, 1; fixed 0.1 and 0.05, none. Retry costs at most 2% more evaluations but never beat fixed 0.05, and on eroded-design quality it is 1.22× the best on average (fixed 0.1 hides one eroded design 25× worse that the blueprint test passes). Stylised: 2D dimensionless, one problem, one run per cell.
research/simdesign-stuck · 4 tests
Can penalty continuation free SIMP starts stuck in a different local optimum? No: it sends all 5 stuck starts of 20 to one design (c 204.01) worse than the 202.83 three reach by running longer at p = 3. Stylised.
Abstract
Follow-up to simdesign-startsconverge. Half-MBB 60×20, p = 3: after 1200 iterations 5 of 20 random starts still differ from the uniform-start design in at least 1% of elements. Penalty continuation (p = 1, 2, 3) frees none of them: all five collapse onto one design, 20.4% different from the uniform-start one, with compliance 204.01 versus 203.29 for the uniform start. Simply running 1200 more iterations at p = 3 takes three of them to 202.83, about 0.6% better than continuation. Stylised: 2D, dimensionless compliance, one mesh, 20 seeds.
research/simdesign-startsconverge · 4 tests
Is the start-dependence of fixed-penalty SIMP just slow convergence? Over 1200 iterations the median of 20 random starts reaches the uniform-start design (0.0% of elements differ, from 3.9% at 150), but the compliance spread only falls 1.43% → 0.85% (stylised, 2D, one mesh).
Abstract
Follow-up to simdesign-starts. Half-MBB 60×20, p = 3, one uniform and 20 random starting fields (noise ±0.3), each run 1200 OC iterations and snapshotted at 150, 300, 600 and 1200. The median random start ends at the uniform-start design (0.0% of elements differ at 1200, 3.9% at 150) and the pair disagreement falls from 15.4% to 0.5%, but the compliance spread only falls from 1.43% to 0.85% and holes still range 2–5, so a minority of starts stay in a different, slightly worse local optimum. Stylised: 2D, one mesh, one noise level, stuck starts not counted.
research/simdesign-starts · 6 tests
How much does a SIMP topology optimisation depend on its starting density field? With a fixed penalty, final compliance spreads 1.4–2.8% over 30 random starts and 2–23% of elements change state; with penalty continuation the spread is 0–0.4% (stylised, 2D, 150 iterations).
Abstract
Half-MBB, volume 0.5, p = 3, 150 sensitivity-filtered OC iterations, 30 random starting fields at each of three noise levels on two meshes, with and without penalty continuation (1 → 3). With a fixed penalty the final compliance spreads by 1.4–2.8% (max/min − 1) and the 0/1 design differs from the uniform-start design in a median 2–23% of elements, with 2–10 enclosed holes. With continuation the spread is 0.0% on 60×20 (identical topology from every start) and at most 0.4% on 90×30. On 90×30 the uniform start, which the 99-line code uses, is worse than 25–28 of 30 random starts at fixed penalty. Stylised: 2D, dimensionless, 150 iterations (not run to convergence), one problem, two meshes.
research/simdesign-contlength · 5 tests
How short can SIMP penalty continuation be and still remove the start dependence? A ramp of 25 iterations or fewer leaves much of it (worst start differs in 16–23% of elements, 27–31% for a fixed penalty); 50 iterations cuts compliance spread to 0.01–0.23%, and a 112-iteration ramp is most repeatable but ends at a worse compliance (stylised, 2D, 150 iterations).
Abstract
Follow-up to simdesign-starts. Half-MBB, volume 0.5, final p = 3, exactly 150 OC iterations, random starts (noise ±0.3; 20 on 60×20, 12 on 90×30), with the penalty ramped 1 → 3 over 0, 6, 12, 25, 50, 75 or 112 iterations. Ramps of 25 iterations or fewer leave most of the start dependence of a fixed penalty (worst start differs from the uniform-start design in 31% and 27% of elements on the two meshes): for ramps of 6–25 it is still 17–23% (60×20) and 16–20% (90×30), and compliance spreads 0.5–1.3%. At 50 iterations the spread falls to 0.01% (60×20) and 0.23% (90×30); at 75 the median disagreement is 0.0–0.3%. A 112-iteration ramp is the most repeatable but gives a worse final compliance (203.55 against 203.08 on 60×20; 197.3 against 196.6 on 90×30), because few iterations remain at full penalty. Stylised: 2D, one problem, two meshes, 150 iterations, not run to convergence.
research/simdesign-fidelity · 6 tests
Cantilever sizing with Euler–Bernoulli, Timoshenko, 2D and 3D finite elements: stress agrees everywhere, deflection differs; cheap models land within ~5% of the 3D depth, unsafe when narrow and stubby (Euler–Bernoulli) and oversized when wide (plane stress). Stylised, assumed material.
Abstract
A rectangular cantilever is sized for minimum mass under a tip-deflection and a top-fibre stress limit with Euler–Bernoulli and Timoshenko beam theory, 2D plane-stress and 3D finite elements (scikit-fem), and each design is judged by the 3D model. Stress read away from the clamp agrees across models; deflection does not. Over 12 length–width cases the cheap models choose a depth within about 5% of the 3D optimum: Euler–Bernoulli is unsafe for narrow, stubby beams (up to 1.05× the deflection limit), while Timoshenko and plane stress are up to about 5% too heavy for wide ones, where plane strain stiffens the beam. Stylised: assumed material, a coarse 3D reference whose deflection still moves about 0.4% under refinement, no stress concentrations, nothing measured.
research/simdesign-llm · 6 tests
Session-agent design proposals vs CMA-ES, Bayesian optimisation and random search on a bracket sized by finite elements, 40 evaluations each: agent 23.0 g vs 32–39 g baseline medians (best known 22.4 g); the agent had prior knowledge, n = 1, not an LLM benchmark. Stylised.
Abstract
The finite-element bracket of simdesign-bracket, with tighter limits (15 MPa, 2.5 mm), is sized for minimum mass with 40 simulator calls per method. The proposer is the session agent itself, writing four rounds of ten designs by hand from the scores (no API key; not a reproducible LLM benchmark). It reaches 23.0 g against medians of 32.2 g (Bayesian optimisation), 33.3 g (CMA-ES) and 39.0 g (random) over 20 seeds, with 22.4 g best known from 1,845 evaluations; no baseline seed beat it. Stylised and weak evidence: n = 1, the agent used mechanics and the sibling project’s results as a prior, baselines were untuned, the stress constraint is mesh-sensitive, assumed material.
research/simdesign-dfm · 12 tests
Manufacturability rules (FDM, CNC routing, laser cutting, sand casting) added to the sized L-bracket: the mass price of each rule set against the same material with no rules (casting +43% from its even-section rule, CNC +24% from plate stock, laser and FDM ~0); designs overshoot the stress limit by 17–26% on a fine mesh (stylised, assumed rule values).
Abstract
The L-bracket of simdesign-bracket is sized for minimum mass under a stress and a deflection limit with and without each process’s rules (tool radius, plate or sheet gauges, minimum walls, draft, an even-section rule), in the same material, so the ratio isolates the rules. Sand casting pays +43% (best of three seeds), driven by its wall-ratio rule rather than draft; CNC routing +24%, from the thinnest plate on the stock list; laser cutting and FDM about nothing, within optimiser noise (three seeds spread over 20%). Re-solved on a fine mesh, every chosen design exceeds its stress limit by 17–26%. Stylised: rule values and materials are assumed, the model is 2D, nothing was built. Exports an STL and DXF profiles.
research/simdesign-holes · 9 tests
Tension plate with a required bolt hole sized under net-section, Kt = 3 and finite-element stress models and per-process hole rules (stylised).
Abstract
A flat plate carrying one required hole is sized for minimum mass under a working-stress limit with three stress models (net section, a fixed Kt = 3, and 2D finite elements over d/W) and with per-process hole rules (minimum hole, centre-to-edge distance, ligament, stock thickness). FE reproduces the large-plate limit of Kt = 3 as the hole shrinks. Ignoring the concentration gives plates 1.9–2.7× overstressed where stress binds; Kt = 3 is safe but 8–26% heavier for FDM. Where an edge-distance rule binds (CNC routing, laser from 8 mm, casting from 8 mm) the stress model is irrelevant and the plate is 2–4× stronger than needed. Stylised: rule values, load and materials are assumed, 2D plane stress, no bolt contact or fatigue, mesh not fully converged (about 1% low), nothing built.
research/simdesign-coverweight · 8 tests
Does weighting parts by mass change which shop process, and which machine, matters? With a tip load FDM covers 0.30 of parts by count and 0.58 by mass, the laser-versus-CNC order flips, and at budgets 600–800 exhaustive search picks the laser cutter by count but the casting setup by mass (one seed). Stylised, assumed rules and prices, simulated only.
Abstract
Follow-up to simdesign-processcover: coverage of a sampled bracket family by FDM, CNC, laser and casting, with each part weighted by arm volume (a same-material mass proxy) instead of counted equally. With a tip load, FDM alone covers 0.30 of parts by count and 0.58 by mass, casting 0.22 and 0.46, laser 0.18 either way, and the laser-versus-CNC order flips. At budgets 600–800 on one seed, exhaustive search picks the laser cutter by count but the casting setup by mass; for the large-part family at 800 it picks the CNC router by count and casting by mass. Stylised: assumed rules and prices, one density, single-seed machine choice. Simulated only.
research/simdesign-flipseeds · 5 tests
Do the mass-weighting machine-choice flips of simdesign-coverweight survive across seeds? Over 20 seeds, log flips from the laser cutter (count) to the casting setup (mass) in 20/20 at budgets 600–800, large only at 800, small never; the 1100–1400 flips are near-ties (≤0.26 points). Stylised, assumed rules and prices, simulated only.
Abstract
Follow-up to simdesign-coverweight, whose machine-choice flips between count and mass weighting came from one seed. Over 20 fresh seeds of 20 000 sampled brackets and three assumed machines, family log picks the laser cutter by count but the casting setup (or, in 2 seeds at 800, the CNC router) by mass in 20 of 20 seeds at budgets 600 to 800 (95% Wilson interval 0.84 to 1.00; about 2.1 points of mass-weighted coverage given up), family large flips only at budget 800 (20 of 20), and small never flips. The log flips at 1100 and 1400 split 10 of 20 but lose at most 0.26 points, a near-tie. The intervals cover sampling noise only; rules, prices and the volume mass proxy are assumptions. Stylised; simulated only.
research/simdesign-pricebands · 5 tests
How wide are the budget bands where mass weighting changes the machine choice when prices are uncertain? With ±20% independent price noise the log flip band widens from budgets 600–800 to 500–1000 but softens at its edges (about one half), and large's single nominal flip at 800 shows up in only 44% of price draws. Stylised, assumed rules and prices, simulated only.
Abstract
Follow-up to simdesign-flipseeds, whose count-vs-mass machine-choice flips sat exactly on thresholds set by assumed round prices. Machine prices (800, 600, 300) are scaled by independent U(1−s, 1+s) factors, 400 draws over 8 samples of 20 000 sampled brackets. For family log the flip band widens from budgets 600–800 to 500–1000, but its edges soften to about one half; large's single nominal flip at 800 appears in 44% of draws at s = 0.2 and spills to 700 and 900; small never flips. Near-tie flips never lose more than 0.5 points. Stylised: assumed prices and rules, uniform independent noise, arbitrary 0.5-point materiality threshold.
research/simdesign-processcover · 10 tests
Share of a sampled bracket family each shop process can make under the simdesign-dfm rules: geometry alone adds nothing beyond FDM (negative), with a tip-load requirement the processes separate (FDM alone 30%, +casting +laser 41%) and the best next machine depends on budget and part size, where greedy sometimes loses 1–2 points to exhaustive search (stylised, assumed rules).
Abstract
Using the assumed rules of simdesign-dfm (FDM, CNC routing, laser cutting, casting) as feasibility checks on 20 000 sampled bracket feature sets, geometry alone gives a degenerate answer: FDM covers 89% and no other process covers anything FDM cannot, so no machine adds coverage (a negative result). With a tip-load requirement of 1–1000 N and closed-form beam checks the processes separate: FDM alone covers 30%, adding casting and a laser cutter 41%, and the best next machine depends on the budget and on the part sizes. Greedy selection from selfrep-nextmachine is sometimes 1–2 coverage points below exhaustive search. Stylised: all rule values, working stresses and prices are assumed, the beam check ignores fillet stress concentration, and nothing was made.
research/simdesign-meshmargin · 4 tests
Re-runs simdesign-dfm with a stress knock-down and a finer search mesh, checking designs at h = 0.7 mm: the price ordering (casting ~1.4, CNC ~1.23, FDM 1.0) survives the mesh, the laser-cutting price does not (1.01–1.22, noisy), and a 1.3 margin leaves designs at 0.88–1.02 of the limit (stylised, assumed rule values).
Abstract
The process-rule search of simdesign-dfm is repeated with a coarse mesh, a coarse mesh with the stress limit divided by 1.3, and a finer mesh, and every design is re-solved on a finer check mesh. The ordering of the mass prices survives: casting about 1.4, CNC routing about 1.23, FDM 1.0 by construction. The laser-cutting price does not (1.01 to 1.22 across settings, with only two seeds). A margin of 1.3 leaves the designs at 0.88 to 1.02 of the limit on the check mesh, at a 17at a 20–35% mass costndash;35% mass cost. Stylised: the peak stress is not converged even on the check mesh, rule values are assumed, and nothing was made.
research/simdesign-patchstress · 5 tests
Compares peak and patch-averaged von Mises stress under mesh refinement on the L-bracket: the peak rises 18–41% from h = 2.5 to 0.55 mm while a 3 mm patch average moves 1–6%, but it reads only 0.45–0.69 of the peak so needs its own limit (stylised, assumed values).
Abstract
On four L-bracket designs solved on five meshes (h = 2.5 to 0.55 mm), the peak von Mises stress rises by 18–41% while a 3 mm patch average moves by 1–6%. The peak is not monotone along the sequence, so a two-mesh check can mislead. The patch average is not conservative: it reads 0.45–0.69 of the fine-mesh peak and would need its own calibrated limit. Stylised: 2D plane stress, one load case, a non-nested mesh family, assumed material, nothing made.
research/simdesign-patchsearch · 4 tests
Repeats the process-rule bracket search with a 3 mm patch-averaged stress instead of the peak: the ordering of mass prices (casting > CNC > laser ≈ FDM) holds, the laser price spread across seeds shrinks from 0.16 to under 0.005, and designs overshoot their limit by 2–12% on a fine mesh against 19–34% for the peak (stylised, assumed values, uncalibrated limit).
Abstract
The minimum-mass bracket search under FDM, CNC-routing, laser-cutting and casting rules is repeated with a 3 mm patch-averaged stress in place of the peak element stress, using the same numeric limit, then every design is re-solved on a fine check mesh (h = 0.55 mm). The ordering of the mass prices survives (casting 1.35, CNC 1.23–1.27, laser 1.03–1.05, FDM 1.0), and the laser-cutting price, which varied from 0.99 to 1.15 across three seeds under the peak measure, varies by under 0.005. Patch-searched designs exceed the limit by 2–12% on the fine mesh, against 19–34% for peak-searched designs, but they are lighter only because the same numeric limit is a looser test; the patch limit is uncalibrated. Three seeds, assumed rules and material, stylised 2D.
research/simdesign-filletfloor · 6 tests
Tests whether a near-sharp fillet floor explains the laser-cutting price scatter seen in simdesign-patchsearch: it does not (peak-stress designs already use 7.6–14.3 mm fillets, so floors of 0.2 and 1 mm give identical designs); the patch-stress price is steady (sd 0.006–0.011) at every floor, and the cause of the peak scatter is not identified (negative, five seeds, stylised).
Abstract
A negative result (stylised). Raising the laser-cutting inner-fillet floor from 0.2 to 1 and 3.175 mm over five seeds does not explain the scatter in the mass price of the rules: the peak-stress designs already use fillets of 7.6–14.3 mm, so the 0.2 and 1 mm floors give identical designs (sd of the price 0.063), and under a 3 mm patch average the price is steady (sd 0.006–0.011) at every floor. The cause of the peak-stress scatter is not identified. Limits: five seeds, one process and load, uncalibrated limit, assumed values, 2D plane stress.
research/simdesign-gaugebudget · 8 tests
Follow-up to simdesign-filletfloor: the peak-stress price scatter of laser-cutting rules (sd 0.063) sits in the 2 mm gauge sub-search, not the fillet floor; a four-times search budget cuts it to 0.025 but not monotonically, so several nearby optima are plausible but not shown (five seeds, stylised).
Abstract
A stylised follow-up to the fillet-floor negative result. Keeping the best mass of each of the ten stock-gauge sub-searches shows that the scatter in the rules mass (price 0.990–1.145 over five seeds) sits in the 2 mm gauge: in one seed that sub-search found nothing feasible and the 3 mm gauge won, giving the 1.145 outlier, while gauges of 3 mm and above agree across seeds to within 0.05 g at four times the budget. Quadrupling the search budget cuts the price sd from 0.063 to 0.025, but not monotonically, the no-rules twin moves too, and the 2 mm gauge still spreads over 2 g, so the data are consistent with several nearby optima there, not proof of it. Five seeds, one process and load case, 2D plane stress, assumed rules. Simulated only. Produced with AI assistance.
research/simdesign-holepatch · 6 tests
Patch-averaged stress for a bolt hole in a tension strip: nearly settled under mesh refinement already, matches Kirsch's disc averages, needs its own limit (stylised).
Abstract
A strip in tension with a central circular hole is solved by finite elements on meshes of 48 to 768 points around the hole, and the pointwise peak of σxx is compared with its average over a disc of 0.1 to 0.5 hole radii, for d/W from 0.05 to 0.4, and with Kirsch’s analytic field. The peak is already nearly settled for a smooth hole (0.3% change over the last refinement; the patch measures 0.0–0.1%), and at d/W = 0.05 the patch values match Kirsch’s disc averages to within 0.4%. The patch reads 65–91% of the peak, so it needs its own limit. One coarse mesh (d/W = 0.4, 96 points) is an unexplained outlier for every measure. Stylised; linear plane stress, no allowable calibrated.
research/simdesign-kirsch · 6 tests
Checks the finite-element peak stress at a circular hole against Kirsch's exact 3× concentration: the element-centroid peak sits 27% (coarse) to 1.1% (fine) below it and closes only at first order, while hole-edge vertex values are within 1% (stylised).
Abstract
A plate with a circular hole under tension has an exact peak stress of 3× the remote stress (Kirsch). On a graded quarter-plate mesh with exact-solution tractions (48 384 elements at the finest), the usual element-centroid peak sits 27% below it on the coarsest mesh and 1.1% below on the finest, closing only at first order, while the field itself converges at second order: the shortfall is sampling position, not solver error. Reading the stress at the hole-edge vertices instead is within 1% on every mesh. Stylised 2D plane stress, one geometry, regular mesh; the numbers do not transfer to other fillets.
research/simdesign-gaugescatter · 8 tests
The peak-stress price scatter of laser-cutting rules is a missed search at the narrow 2 mm gauge (1 seed in 20), not a cost of the rules; stylised, mesh effects untested.
Abstract
A diagnostic with a negative-for-the-rules answer (stylised). The high price in one of five seeds (1.15 vs 1.00–1.01 in the others) is a missed search, not a cost of the laser rules: the 2 mm sheet gauge, which wins, has a feasible region of only 13 of 900 grid cells, and the rules sub-search missed it in 1 of 20 seeds (the rule-free twin in 0 of 20). Feasible 2 mm results fall in two mass groups (33.3–34.0 g and 35.3–35.6 g) whose cause is not identified. Mesh effects were not tested. Stylised 2D plane stress; assumed rules and loads.
research/simdesign-gaugerestart · 5 tests
A second DE restart or a doubled population removes the missed 2 mm sub-search (0 misses in 40 runs against 1 in 20 at baseline) and shifts results to the lighter of two mass groups at about twice the cost; stylised, 2.5 mm search mesh only.
Abstract
A small search-effort experiment (stylised). At the 2 mm sheet gauge, one differential-evolution run missed the narrow feasible region in 1 of 20 seeds; a second independent run or a doubled population missed in 0 of 40 runs each, at about twice the finite-element solves. Results also shift from an even split towards the lighter of two mass groups (to 70–75% with a restart, 85–95% with the larger population), consistent with the heavier group being a local optimum of the search. Zero misses in 20 does not prove a zero miss rate, and the 2 mm region is itself a coarse-mesh effect, so the lower masses are not better physical designs.
research/simdesign-gaugebasins · 5 tests
The two gauge-2 mass groups differ in web width w (about 14.3–14.9 against 15.2–15.6 mm), not fillet radius, and the lighter group matches ragged isolated feasible pockets on the 2.5 mm mesh rather than a second broad basin; stylised, preliminary.
Abstract
A small diagnostic (stylised, preliminary). The lighter and heavier groups of gauge-2 search results differ in web width (about 14.3–14.9 against 15.2–15.6 mm), not in fillet radius. A coarse grid shows one connected feasible region, but a 0.1 mm scan shows the feasible set is ragged in width: isolated feasible pockets lie below a contiguous region, and the lighter group matches those pockets. This is consistent with a coarse-mesh stress artefact rather than two broad basins, a mechanism not tested here. Twenty seeds, one process, one mesh; nothing was built.
research/simdesign-pocketmesh · 5 tests
The isolated feasible pockets of the gauge-2 bracket scan (web width below 15.4 mm) vanish when the mesh is refined from 2.5 to 1.5 mm and the smallest feasible width rises by about 1 mm; stylised, preliminary.
Abstract
A small mesh-refinement scan (stylised, preliminary). Scanning web width in 0.1 mm steps at four fillet radii on 2.5, 2.0 and 1.5 mm meshes, the isolated feasible widths below 15.4 mm seen on the 2.5 mm mesh are absent at 1.5 mm, and the smallest feasible width rises from about 14.4–14.8 to 15.6–15.7 mm. This is consistent with the lighter search group being a coarse-mesh artefact, but the boundary was still moving, so convergence is not shown. No search was rerun on the finer meshes. Simulated only.
research/simdesign-meshconverge · 6 tests
On meshes of 1.0 and 0.5 mm no width in the usable 15.0–16.0 mm window of the gauge-2 bracket scan is feasible (one point at 0.75 mm), and the lowest peak stress rises 11–14% from 1.5 to 0.5 mm; negative, stylised, preliminary.
Abstract
A negative result (stylised, preliminary). Scanning web width from 15.0 to 16.0 mm (the slenderness rule forbids wider) at four fillet radii on 1.5, 1.0, 0.75 and 0.5 mm meshes, the feasible widths found at 1.5 mm are all infeasible at 1.0 and 0.5 mm under the 100 MPa peak-stress limit, with a single feasible point at 0.75 mm. The lowest peak stress rises 11–14% from 1.5 to 0.5 mm and is still creeping up, so convergence is not shown. One gauge, one load, a peak measure at a near-sharp fillet floor; no search was run on the fine meshes.
research/simdesign-lbuckle · 3 tests
The whole 1.5 mm L-bracket as one 3D body clears the buckling floor under the design load (factor 4.01 vs closed-form 3.47) but not with the load reversed (2.25, below 3); sharp corner, ideal sheet, preliminary.
Abstract
A small finite-element check (stylised, preliminary; ideal elastic sheet, sharp inner corner, one design). Meshing the whole L of the 1.5 mm, w = 18.4 mm design from simdesign-bucklebound as one hexahedral body, the lowest buckling factor under the design load (vertical arm in tension) is 4.01, above the closed-form 3.47 and the floor of 3. With the load reversed (arm in compression) it falls to 2.25, below the floor, a case the moment-only formula cannot see. Refinement moved the factors by under 2%. No fillet, no imperfections.
research/simdesign-revwidth · 4 tests
Widening the 1.5 mm L-bracket web from 18.4 to about 22.6 mm lifts the reversed-load buckling factor from 2.27 to the floor of 3, at +5.9 g (+19%) plate mass; buckling only, sharp corner, ideal sheet, preliminary.
Abstract
A small finite-element sweep (stylised, preliminary; ideal elastic sheet, sharp inner corner, buckling only). Reusing the whole-L 3D eigenbuckling model of simdesign-lbuckle, the reversed-load factor of the 1.5 mm bracket rises from 2.27 at w = 18.4 mm to 3.0 at w ≈ 22.5–22.6 mm (coarse root 22.47, finer-mesh bracket 22.54–22.62), about 0.22 per extra millimetre. The plate mass rises from 30.7 to 36.6 g (+19%). Stress, slenderness and minimum-wall limits were not rechecked at the wider web, the floor of 3 is an assumption, and the corner is sharp.
research/simdesign-gaugelayers · 3 tests
More element layers through the thickness (1 to 4) move the L-bracket's reversed-load buckling factor by at most 1.2% and the width needed for the floor of 3 by at most 0.07 mm at 1.5 to 3.0 mm gauges, so the thicker-sheet designs of simdesign-revgauge stand; coarse in-plane mesh, sharp corner, ideal sheet, preliminary.
Abstract
A small finite-element check (stylised, preliminary; ideal elastic sheet, sharp inner corner, coarse in-plane mesh). Raising the number of hexahedral layers through the sheet from one to four moves the whole-L reversed-load buckling factor at the simdesign-revgauge root widths by at most 1.2% (3.0 mm gauge; under 0.7% at 1.5 to 2.5 mm) and the width needed for a factor of 3 by 0.07 mm or less (2.0 mm: 11.84 to 11.77 mm, 27.4 g). The thicker-sheet mass ranking of that project is not an artefact of a single through-thickness layer; its other doubt, a web barely wider than the sheet is thick, stands.
research/simdesign-fwdcheck · 3 tests
Under the forward 100 N load the four reversed-load buckling-limited L-brackets all clear buckling (factor 4.7 to 5.6), but only the 1.5 mm design also meets the 100 MPa and 4 mm limits; the 2.5 and 3.0 mm designs fail by 2 to 8 times, and the 2.0 mm design passes only on the coarse mesh (95.7 vs 144.9 MPa finer). Stylised.
Abstract
A small finite-element check (stylised, preliminary; ideal elastic steel, sharp inner corner, assumed limits). Under the forward 100 N load the four lightest designs that clear the reversed-load buckling floor (1.5 to 3.0 mm sheet) all have forward buckling factors of 4.7 to 5.6, so buckling does not bind. But only the 1.5 mm, 22.5 mm design meets the 100 MPa stress and 4 mm deflection limits; the 2.5 and 3.0 mm designs exceed them by 2 to 8 times, and the 2.0 mm design passes only on the coarse mesh (95.7 MPa against 144.9 MPa on a finer one). The thicker sheet's mass saving is therefore not feasible under these limits.
research/simdesign-revgauge · 4 tests
At the reversed-load buckling floor of 3, a 2 mm sheet needs a web of about 11.8 mm and weighs 27.5 g against 36.6 g for 1.5 mm at 22.6 mm; 2.5 mm gives 20.5 g; buckling only, one element layer through the thickness, preliminary.
Abstract
A small finite-element sweep (stylised, preliminary; ideal elastic sheet, sharp inner corner, buckling only, one element layer through the thickness). Reusing the whole-L 3D eigenbuckling model of simdesign-lbuckle, the smallest web width that lifts the reversed-load factor to 3 falls from 22.6 mm at 1.5 mm sheet to 11.8 mm at 2 mm and 6.8 mm at 2.5 mm, so the plate mass at the floor falls from 36.6 g to 27.5 g (−25%) and 20.5 g (−44%). Thick, narrow webs are where the model is weakest, and forward load, stress and minimum-wall rules were not rechecked, so this is an indication, not a design.
research/simdesign-minwall · 7 tests
Relaxing the 1.2 mm minimum wall of the laser-cut bracket: it does not open 1.0 mm sheet by itself (the buckling floor binds); with floor 1 and wall ≤ 1.0 mm a 24.8 g design appears (unvalidated closed form).
Abstract
A small optimiser study (stylised, preliminary; the buckling factor is an unvalidated ideal-bar closed form). Relaxing the minimum wall from 1.2 to 1.0 or 0.8 mm changes nothing at 1.5 mm (31.0 g in every cell) and does not by itself open 1.0 mm sheet: with a buckling-factor floor of 3 no design exists at 0.8 or 1.0 mm (the widest allowed web reaches a factor of only 1.5 at 1.0 mm). With a floor of 1 and a minimum wall of 1.0 mm or less, a 1.0 mm design appears at 24.8 g (w = 22.7 mm, factor 1.33, 2 of 3 seeds), 20% under the 1.5 mm optimum, but a factor of 1.33 from an ideal-bar formula is no margin. Simulated results only.
research/simdesign-buckle15 · 3 tests
A through-thickness-converged 3D eigenbuckling model agrees with the closed-form buckling factor of the lightest 1.5 mm bracket design to under 1% (3.49 vs 3.47, so it clears the floor of 3); the horizontal-arm formula is about 18% conservative; one design, ideal bar, preliminary.
Abstract
A small finite-element check (stylised, preliminary; ideal elastic clamped arms, one design). Meshing the 1.5 mm, w = 18.4 mm design from simdesign-bucklebound with hexahedra at three resolutions, including two layers through the thickness, the governing vertical-arm buckling factor is 3.49 against 3.47 from the closed form (ratio 1.020 → 1.007 on refinement), so the design clears the floor of 3. The horizontal-arm formula is about 18% conservative. Nothing was made or tested.
research/simdesign-bucklebound · 5 tests
Replacing the w/b ≤ 8 ceiling with a closed-form buckling-factor floor makes the 1.5 mm laser-cut gauge feasible (31.0 g, about 13% lighter than the best 2 mm design) and changes nothing at 2 and 3 mm; at 1 mm the minimum-wall rule, not buckling, blocks every design; stylised, unvalidated factor, preliminary.
Abstract
A small optimiser study (stylised, preliminary; the buckling factor is an unvalidated closed form). Minimising mass over web width and fillet radius at four sheet gauges with differential evolution (three seeds, mesh 1.5 mm): the old ceiling makes the 1.5 mm gauge infeasible, while a buckling-factor floor of 1 or 3 yields a 31.0 g design (w ≈ 18.4 mm, factor 3.5), about 13% lighter than the best 2 mm design (35.8 g). At 2 and 3 mm the three guards agree to 0.1%. At 1 mm no design is feasible under any guard because the 1.2 mm minimum-wall rule, not buckling, rejects it. Mass is the only objective; nothing was made or tested.
research/simdesign-webbuckle · 4 tests
A closed-form lateral-torsional buckling check of the laser-cut bracket arms (stylised, unvalidated by FE): at 2 mm gauge the governing safety factor is 6.9–9.0 for w = 16–20 mm, so the widths of simdesign-widerweb are not buckling-limited, and the factor rises with w, opposite to the w/b ≤ 8 rule; at 1 mm the old rule admits designs below 1.
Abstract
A closed-form check (stylised, preliminary, not validated against a shell or 3D model). Treating each bracket arm as an ideal elastic flat bar, the lateral-torsional buckling safety factor at the 2 mm gauge is 6.9–9.0 for web widths of 16–20 mm, so the wider webs of simdesign-widerweb are not buckling-limited under this model. The factor rises with width, the opposite direction to a w/b ceiling; at a 1 mm gauge the old rule would admit w up to 8 mm, where the factor is 0.41. The two textbook coefficients were checked numerically; real sheet imperfections, residual stress and corner flexibility are left out. Calculated only.
research/simdesign-webshell · 3 tests
A 3D scikit-fem eigenbuckling check of the bracket-arm closed forms (stylised, mesh not converged): within about 1% for the governing vertical arm, conservative by 6–29% for the horizontal arm at the 2 mm gauge.
Abstract
A stylised, preliminary comparison of two idealised models (mesh not fully converged). A 3D scikit-fem linear-buckling model of each bracket arm, checked against the Euler column, gives a critical load within about 1% of the closed form for the governing vertical arm (end moment) at web widths of 8–25 mm at the 2 mm gauge. For the horizontal arm (tip load) the closed form is conservative: the 3D model is 6% higher at w = 8 mm and 29% higher at 25 mm. The governing safety factors (3.2, 7.0, 11.9) therefore support the conclusion of simdesign-webbuckle. Imperfections, residual stress, corner flexibility and plasticity are left out. Simulated only.
research/simdesign-shellconverge · 2 tests
Mesh refinement of the 3D eigenbuckling check of the bracket arms (stylised): refining length, width and thickness lowers every FE/closed-form ratio by 0.9–1.3 points, so the governing vertical arm agrees with the closed form to within 1% (ratio 0.99–1.00 at the finest mesh).
Abstract
A stylised, preliminary mesh study of the model in simdesign-webshell. Refining the quadratic-hexahedron mesh in length, width and thickness lowers the finite-element critical load every time, by 0.9–1.3 percentage points of the closed-form value in total at web widths 8, 16 and 25 mm (2 mm gauge); thickness and width refinement dominate and length refinement contributes under 0.1 point. On the finest mesh (72×8×2) the governing vertical arm sits at 0.992, 0.996 and 1.002 of the closed form, so the two agree within about 1% and the earlier fine-mesh ratios were slightly high. The horizontal-arm closed form stays conservative (ratios 1.046, 1.135, 1.279). Only two refinement levels per direction, so no convergence rate or extrapolated limit is claimed. Simulated only.
research/simdesign-shellaspect · 2 tests
How the 3D eigenbuckling model compares with the slender-beam closed form as a bar gets longer (stylised): the finite-element load is 14.5%, 7.4%, 3.8% and 2.1% above it at l/w = 3, 6, 12, 24.
Abstract
A stylised, preliminary scan of one steel bar cross-section (8×2 mm, tip shear, clamped end) at l/w = 3, 6, 12 and 24 on a fixed element size. The finite-element critical load sits 14.5%, 7.4%, 3.8% and 2.1% above the Timoshenko–Gere closed form, so the gap shrinks roughly in proportion to w/l and is consistent with a short-bar effect rather than mesh error. One cross-section and one cross-section mesh; no refinement at the longer lengths.
research/simdesign-volscale · 4 tests
How much stiffer a thresholded topology-optimised part is than a uniformly thinned plate across volume fractions (stylised): 26–31% lower compliance at v = 0.3–0.5, shrinking to 14% at 0.8, and disconnected designs below that on coarse grids.
Abstract
A stylised, preliminary study of two 2D plane-stress problems (cantilever 60×20, half-MBB 90×30). Thresholded 0/1 SIMP designs have 26–31% lower compliance than a plate thinned uniformly to the same volume at v = 0.3–0.5, the advantage shrinking to about 14% at v = 0.8; fits give C ∝ v−0.8 against v−1 for the plate. At low volume on these grids the design is disconnected and the comparison fails. One run per point, coarse grids, variable-thickness reference.
research/simdesign-shellorder · 1 tests
Observed convergence order of the 3D eigenbuckling model on a short bar (stylised): three uniform meshes give order ≈ 2.6 and a Richardson limit FE/closed-form ratio 1.137, so the gap to the closed form is not discretisation error.
Abstract
A stylised, preliminary study of one short steel bar (24×8×2 mm, tip shear). Three uniformly refined hexahedral meshes give an observed order of about 2.6 and a Richardson limit of 9618 N, 0.12% below the finest mesh. The limit is still 13.7% above the slender-beam closed form, so the gap is not discretisation error (plausibly shear deformation and clamp warping; untested). One geometry, one mesh triple.
research/simdesign-buckleguard · 7 tests
Replacing the w/b ≤ 8 slenderness rule of the laser-cut bracket with a lateral-torsional buckling factor ≥ 3 lets the optimiser use the 1.5 mm gauge at w ≈ 18.7 mm, 31.3 g instead of 35.9 g (about 12% lighter), and the guard does not bind at that optimum; the result depends on the assumed factor (no feasible design for factors ≥ 5 at that gauge); stylised, preliminary.
Abstract
A stylised, preliminary optimisation study (closed-form buckling check, assumed rules, material and load). Replacing the w/b ≤ 8 slenderness rule with a lateral-torsional safety factor of at least 3 lets the differential-evolution optimiser use the 1.5 mm gauge at w ≈ 18.7 mm: 31.1–31.4 g against 35.8–36.0 g under the old rule, about 12% lighter (three seeds each). The guard does not bind at that optimum; the stress limit does. The result depends on the assumed factor: no feasible 1.5 mm design was found for a factor of 5 or more. Simulated only; edge crippling, imperfections and cutting stress are not modelled.
research/simdesign-loadbind · 11 tests
Sweeping tip load (50–400 N) and arm length (60–120 mm) of the laser-cut bracket: the buckling-factor ≥ 3 guard binds only at 120 mm arms (unguarded optimum has factor 1.9; 69 g vs 59 g), while the old w/b ≤ 8 rule costs 14–25% in mass in five of six cases (stylised, two seeds).
Abstract
A stylised, preliminary sweep (closed-form buckling check, assumed rules, material and loads; two seeds). Over tip loads of 50–400 N and arms of 60–120 mm, a lateral-torsional factor ≥ 3 guard binds in only one of six cases: 120 mm arms, where the unguarded optimum has a factor of 1.9 and the guard costs 16% in mass (69 g vs 59 g). The old w/b ≤ 8 rule was 14–25% heavier than the buckling guard in five of six cases. Gauge steps make mass non-smooth in load; the result moves with the assumed factor.
research/simdesign-edgescan · 7 tests
A 0.1 mm scan of the feasible edge of the gauge-2 bracket web (nine mesh/radius cases): peak stress is not monotone in w, with residual jitter of 0.9–2.4 MPa about a quadratic trend, the same size as the 0.1–1.7 MPa gap to the 100 MPa limit just below each edge, so the edge is a band of about 0.5 mm and the earlier refinement shift is not separated from mesh noise; stylised, preliminary.
Abstract
A small scan (stylised, preliminary). Re-scanning web width w in 0.1 mm steps (15.5–17.5 mm) at three radii and three meshes, the peak von Mises stress is not monotone in w in any of the nine series. Its residual jitter about a quadratic trend is 0.9–2.4 MPa, shrinking with refinement, and the stress just below each feasible edge is only 0.1–1.7 MPa over the 100 MPa limit, so the edge is a band of about 0.5 mm and the refinement shift reported in simdesign-widerweb is not separated from mesh noise. The source of the jitter is not identified. Simulated only.
research/simdesign-widerweb · 5 tests
With the assumed slenderness limit raised from 8 to 12.5, gauge-2 bracket webs of 16–17 mm and wider are feasible at h = 1.5, 1.0 and 0.75 mm; refinement from 1.5 to 1.0 mm moves the lightest feasible width up 0.5 mm (about 1 g, 3%); stylised, preliminary.
Abstract
A small scan (stylised, preliminary). With the assumed slenderness limit w/b raised from 8 to 12.5, web widths of 15 to 20 mm at fillet radii 8, 12 and 14 mm are feasible under the peak-stress measure from w = 16.0–17.0 mm upward at every mesh tried (h = 1.5, 1.0 and 0.75 mm), so the empty fine-mesh feasible sets of simdesign-meshconverge came from the rule window. Refinement from 1.5 to 1.0 mm raises the lightest feasible width by 0.5 mm (about 1 g, 3%) at all three radii; at 0.75 mm it is unchanged at two radii and falls back one step at r = 14 mm, so the shift is not resolved beyond about one scan step. The relaxed rule stands in for out-of-plane buckling, which the 2D model cannot see, so these designs are not validated. Simulated results only.
research/simdesign-gaugepockets · 5 tests
The isolated feasible pockets below w = 15 mm at the 2 mm laser-cut gauge vanish at 2.0 and 1.5 mm element size, and the smallest feasible w moves up (14.4 to 15.6 mm at r = 14 mm); stylised, preliminary.
Abstract
A small mesh-refinement scan (stylised, preliminary). The isolated feasible web widths below 15 mm that appear at 2.5 mm element size vanish at 2.0 and 1.5 mm, and the smallest feasible width moves up (14.4 to 15.6 mm at fillet radius 14 mm). Mesh convergence was not reached, and a stress peak at a corner is itself mesh-sensitive, so the least-mass design on the search mesh is optimistic.
research/simdesign-gaugemesh · 4 tests
The narrow 2 mm laser-cut bracket region is a mesh effect: all 39 designs feasible at h = 2.5 mm fail the stress limit at h ≤ 1.5 mm (peak 1.09–1.27× higher, still rising at 0.75 mm); stylised, negative for the search mesh.
Abstract
A negative result for the search mesh (stylised). All 39 gauge-2 bracket designs that were feasible on the 2.5 mm search mesh (19 under laser rules, 20 for the no-rules twin) are infeasible on finer meshes (1.5, 1.0, 0.75 mm): the peak von Mises stress is 1.09–1.27× higher at 0.75 mm and is still rising, at the point where the fillet meets the arm. Tip deflection is unchanged and the fillet facet count is not the cause. Earlier mass prices in the bracket chain are therefore conditional on the coarse mesh; no fine-mesh optimum was searched.
research/simdesign-gaugepatch · 4 tests
A 3 mm patch-averaged stress converges with the mesh (≤2.2% change from h = 1.0 to 0.75 mm) where the centroid peak does not, and all 39 gauge-2 designs stay feasible; stylised, preliminary.
Abstract
Preliminary, stylised 2D plane stress. On the 39 gauge-2 bracket designs that fail the stress limit on fine meshes under the element-centroid peak, a 3 mm patch-averaged stress changes by at most 2.2% between 1.0 and 0.75 mm meshes (the centroid peak rises up to 9.7%), and all 39 stay feasible at every mesh size, with a median of 84–86 MPa on the finest mesh. The verdict flips because the criterion is less strict, not because the model changed; whether a patch average is an adequate design rule was not shown, and no fine-mesh design search was run.
research/simdesign-gradedtip · 4 tests
Does the L-bracket's peak stress at the fillet tangent point converge under graded mesh refinement? Yes for four designs: it flattens at 1.09–1.14× its 1.5 mm value (0.0–1.1% change over the last 4× refinement down to 0.025 mm), so the 2 mm region's mesh dependence is a resolution effect; the 16/15/2 design is marginally over 100 MPa when converged; stylised 2D, no reference solution.
Abstract
Preliminary, stylised 2D plane stress. Uniform meshes left the element-centroid peak stress of the 2 mm laser-cut bracket still rising. Refining only around the fillet tangent point, down to 0.025 mm elements, the peak of four designs flattens at 1.09–1.14× its 1.5 mm value (0.0–1.1% change over the last 4× refinement), so it has a finite limit and the earlier mesh dependence was a resolution effect. The converged plateau shifts about 2% with the grading rate; the 16/15/2 design sits marginally above the 100 MPa limit (101.9 MPa). No independent reference solution was compared; nothing was optimised.
research/simdesign-gaugefine · 3 tests
Under a 3 mm patch-averaged stress rule the least-mass laser-cut bracket is the same on a 2.5 mm and a 1.0 mm mesh (gauge 2: 32.31 vs 32.33 g), while the centroid-peak rule leaves no feasible gauge-2 design on the fine mesh; the patch value hardly sees the fillet radius; stylised, preliminary.
Abstract
Preliminary, stylised 2D plane stress. On a 20×20 grid over arm width and fillet radius, the least mass of a feasible laser-cut bracket under a 3 mm patch-averaged stress rule is the same on a 2.5 mm and a 1.0 mm mesh (2 mm sheet: 32.31 vs 32.33 g; 3 mm: 40.81 vs 40.81 g). Under the element-centroid peak rule the 2 mm sheet has no feasible design on the fine mesh and the 3 mm sheet needs 10.8% more mass. The catch: the patch value hardly depends on the fillet radius (94–102 MPa for r from 0 to 15 mm against a peak of 126–264 MPa), so the rule cannot tell a sharp corner from a generous fillet. Two meshes only; one load case; nothing built or tested.
research/simdesign-rank · 5 tests
Do cheap beam and 2D models rank cantilever designs like 3D finite elements? Yes on 3 seeds of 80 designs: Kendall τ 0.987–0.996 and the 3D-best design always ranked first, even though single-design merit is off by up to 14%; stubby sections agree least; stylised, one load case.
Abstract
Stylised. 80 random cantilever designs per seed (3 seeds) are ranked by stiffness per mass with Euler–Bernoulli and Timoshenko beam theory and 2D plane-stress FE, and compared with a 3D finite-element reference (scikit-fem). Single-design merit is off by up to 14% (Euler–Bernoulli, stubby sections), yet every cheap model ranks the designs almost identically: Kendall τ 0.987–0.996 with 3D, 3D’s best design always ranked first, top-8 overlap 7 or 8 of 8. Stubby designs agree least (τ 0.96–0.99). Limits: one load case, assumed material, a coarse 3D reference, no stress or constraints in the ranking.
Other research topics
Proper scoring & elicitation28Effort & peer prediction9Verification games & slashing19Detection & tolerances14Markets as routers13Prediction-market design9Paying contributors8Decentralised training systems23Digital twins & sim-to-real164LLM chip design loops40Robot manufacturing loops53Ambient AI assistant46Self-replicating manufacturing34Simulation-first design64Engineered clothing45Task-specific AI accelerators40Algorithmic chip-design loops42Open-source purpose-built robots44The software-engineering loop43Adversarial human imitation41Open-source residential construction41Autonomous multi-angle capture34Sensing, imaging and 3D31Energy supply and dense energy storage39Robot societies among people31Agentic co-design of low-cost robots27Laundry-hanging robots25Machine learning on qualitative data23Robots on the building site27Civilizations & group psychology1History & human sciences1
Produced with AI assistance (Claude). Results are from the code in this repository and are simulated or stylised unless the abstract says otherwise; nothing here implies affiliation with or endorsement by any lab, researcher or company cited. MIT licensed.